用ffmpeg创建多个program的ts
首先分析需要创建多个program(节目),然后查看需要导入的流的内容:ffmpeg -i INPIT1 -i INPUT2 -i INPUT3 .....多少个都可以,我们举个例子,导入两个文件
那么就
ffmpeg-i INPUT1 -i INPUT2
ffmpeg -i ~/Movies/objectC/facebook.mp4 -i ~/Movies/bbs.chinaffmpeg.com孙悟空.mp4
输出信息如下:
可以看到里面包含了四个流
Stream #0:0(und): Video: h264 (High) (avc1 / 0x31637661), yuv420p, 640x480, 797 kb/s, 25 fps, 25 tbr, 12800 tbn, 50 tbc (default)
Stream #0:1(und): Audio: aac (LC) (mp4a / 0x6134706D), 44100 Hz, stereo, fltp, 87 kb/s (default)
Stream #1:0(und): Video: h264 (High) (avc1 / 0x31637661), yuv420p, 480x268, 1038 kb/s, 24 fps, 24 tbr, 90k tbn, 48 tbc (default)
Stream #1:1(und): Audio: aac (LC) (mp4a / 0x6134706D), 44100 Hz, stereo, fltp, 148 kb/s (default)
使用ffmpeg的-map参数,可以将四个流排列输出
可以看到四路流分别是0:1 0:2 0:3 0:4,那么接下来可以考虑做program了参考program的说明
-program st=stream[:st=stream...] (output)
Creates a program with the specified title, program_num and adds the specified stream(s) to it.
使用如下参数,可以创建两个program(节目)ffmpeg -i ~/Movies/objectC/facebook.mp4 -i ~/Movies/guanlangaoshou.mp4 -map 0:0 -map 0:1 -map 1:0 -map 1:1 -c copy -program title=CCTV1:program_num=1:st=0:st=1 -program title=CCTV2:program_num=2:st=2:st=3 -y -f mpegts bbs.chinaffmpeg.com孙悟空.ts
可以看命令行执行后的结果:
页:
[1]