python将多个ts文件保存为一个ts文件
时间: 2024-12-17 21:23:06 浏览: 15
在Python中,如果你想要合并多个.ts(MPEG-TS,一种流媒体数据包格式)文件成一个,你可以利用一些第三方库,如`pyav`或`moviepy`,它们提供了处理视频文件的功能。
以下是使用`pyav`库的一个示例:
```python
from av import container, video
def merge_ts_files(input_files, output_file):
# 创建一个MPEG-TS容器
container = container.open(output_file, 'w', format='mpegts')
for input_file in input_files:
with open(input_file, 'rb') as f:
# 解析每个输入文件
stream = container.add_stream(video.H264(), rate=video.default_rate)
for packet in video.Packets(f.read()):
stream.write(packet)
# 将所有数据写入输出文件并关闭
container.close()
# 示例用法
input_files = ['file1.ts', 'file2.ts'] # 指定你要合并的TS文件列表
output_file = 'merged.ts' # 输出合并后的文件名
merge_ts_files(input_files, output_file)
```
请注意,这个操作可能会改变原始文件的时间轴,因为新的TS文件会从头开始写入。如果需要保持时间同步,你可能需要先对所有文件的时间戳进行调整。
阅读全文