1. 源码下载地址:
svn checkout https://github.com/gpac/gpac.git trunk gpac-code
2. 安装包下载地址:
http://gpac.wp.mines-telecom.fr/downloads/
3. 常用命令汇总:
0) mp4box -h general
-tmp dir指定生成临时文件的目录
-inter duration 将chunk的media数据按指定间隔进行交错,用于优化流传输或文件访问,所有meta数据放在文件头部,允许在下载的内容内回放。默认交错0.5s,若指定为0,则所有meta数据存在于文件头。
-tight 对媒体轨道执行基于采样的交错(生成文件较大)。在服务器侧为减少磁盘查找时间,用于hint文件时。
-flat 强制采用平坦存储,媒体数据不进行交错,meta数据在于文件结束。当使用-add创建新文件时,将不会创建临时文件
-frag ms 对媒体文件进行分段,分的小段中含有meta及media数据交错而不是存在文件开始或结束。分段将禁止交错。
-isma 把文件处理为isma规范格式
-3gp 移除mpeg4系统信息,转换成3gp规范,保留音、视、文本轨道等3gp支持的
-brand ABCD 设置主brand
-ab ABCD 设置从brand
-rb ABCD 移除从brand
-rem trackID 从文件中移除轨道
-par trackID=PAR
-lang [trackID=lang] 为轨道指定语言,若没有指定ID,则为全部轨道
-delay trackID=time 设置指定轨道延迟时间,单位为微秒
-name trackID=name 设置指定轨道的处理名,处理名有时用来识别内容
-cprt string: 为文件增加版权信息
-chap chap_file 将chap_fil中的chapter信息增加到目的文件中
1) mp4box -info test.mp4
查看test.mp4文件是否有问题
2) mp4box -add test.mp4 test-new.mp4
修复test.mp4文件格式不标准的问题,并把新文件保存在test-new.mp4中
3) mp4box -inter 10000 test-new.mp4
解决开始播放test-new.mp4卡一下的问题,为HTTP下载快速播放有效,10000ms
4) mp4box -add file.avi new_file.mp4
把avi文件转换为mp4文件
5) mp4box -hint file.mp4
为RTP准备,此指令将为文件创建RTP提示跟踪信息。这使得经典的流媒体服务器像darwinstreamingserver或QuickTime的流媒体服务器通过RTSP/RTP传输文件
6) mp4box -cat test1.mp4 -cat test2.mp4 -new test.mp4
把test1.mp4和test2.mp4合并到一个新的文件test.mp4中,要求编码参数一致
7) mp4box -force-cat test1.mp4 -force-cat test2.mp4 -new test.mp4
把test1.mp4和test2.mp4强制合并到一个新的文件test.mp4中,有可能不能播放
8) mp4box -add video1.264 -cat video2.264 -cat video3.264 -add audio1.aac -cat audio2.aac -cat audio3.aac -new muxed.mp4 -fps 24
合并多段音视频并保持同步
9) mp4box -split time_sec test.mp4
切取test.mp4中的前面time_sec秒的视频文件
10) mp4box -split-size size test.mp4
切取前面大小为size KB的视频文件
11) mp4box -split-chunk S:E test.mp4
切取起始为S秒,结束为E秒的视频文件
12) mp4box -add 1.mp4#video -add 2.mp4#audio -new test.mp4
test.mp4由1.mp4中的视频与2.mp4中的音频合并生成
未完待续,逐步补充
注意:本文归作者所有,未经作者允许,不得转载
原文地址: http://blog.wsmee.com/post/75
版权声明:非商用-非衍生-保持署名| Creative Commons BY-NC-ND 3.0