在合并两个除长度外参数相同的 h.264/MP4 文件时,我遇到了问题。
我正在合并mp4box -cat ...
。之后,视频播放器的行为变得很奇怪:如果我将时间滑块拖到文件末尾附近,它会重置以重新启动视频,有时,播放器会显示错误的视频文件长度。
音频同步也存在问题。
输入文件示例参数:
* Movie Info *
Timescale 90000 - Duration 00:15:00.214
Fragmented File no - 2 track(s)
File suitable for progressive download (moov before mdat)
File Brand mp42 - version 0
Created: GMT Thu Jun 7 23:31:52 2012
File has root IOD (9 bytes)
Scene PL 0xff - Graphics PL 0xff - OD PL 0xff
Visual PL: ISO Reserved Profile (0x7f)
Audio PL: High Quality Audio Profile @ Level 2 (0x0f)
No streams included in root OD
iTunes 信息:
Encoder Software: HandBrake 0.9.6 2012022800
Track # 1 Info - TrackID 1 - TimeScale 90000 - Duration 00:14:59.858
Media Info: Language "Undetermined" - Type "vide:avc1" - 21576 samples
Visual Track layout: x=0 y=0 width=853 height=480
MPEG-4 Config: Visual Stream - ObjectTypeIndication 0x21
AVC/H264 Video - Visual Size 864 x 480
AVC Info: 1 SPS - 1 PPS - Profile Main @ Level 3
NAL Unit length bits: 32
Pixel Aspect Ratio 80:81 - Indicated track size 853 x 480
Self-synchronized
Track # 2 Info - TrackID 2 - TimeScale 44100 - Duration 00:15:00.214
Media Info: Language "English" - Type "soun:mp4a" - 38769 samples
MPEG-4 Config: Audio Stream - ObjectTypeIndication 0x40
MPEG-4 Audio MPEG-4 Audio AAC LC - 2 Channel(s) - SampleRate 44100
Synchronized on stream 1
输出:
* Movie Info *
Timescale 90000 - Duration 00:29:24.136
Fragmented File no - 3 track(s)
File suitable for progressive download (moov before mdat)
File Brand isom - version 1
Created: GMT Thu Jun 28 19:40:39 2012
File has root IOD (9 bytes)
Scene PL 0xff - Graphics PL 0xff - OD PL 0xff
Visual PL: AVC/H264 Profile (0x15)
Audio PL: AAC Profile @ Level 2 (0x29)
No streams included in root OD
Track # 1 Info - TrackID 1 - TimeScale 90000 - Duration 00:19:36.968
Media Info: Language "Undetermined" - Type "vide:avc1" - 28219 samples
Visual Track layout: x=0 y=0 width=1024 height=576
MPEG-4 Config: Visual Stream - ObjectTypeIndication 0x21
AVC/H264 Video - Visual Size 1024 x 576
AVC Info: 1 SPS - 1 PPS - Profile Main @ Level 3.1
NAL Unit length bits: 32
Pixel Aspect Ratio 1:1 - Indicated track size 1024 x 576
Self-synchronized
Track # 2 Info - TrackID 2 - TimeScale 44100 - Duration 00:29:24.136
Media Info: Language "English" - Type "soun:mp4a" - 75975 samples
MPEG-4 Config: Audio Stream - ObjectTypeIndication 0x40
MPEG-4 Audio MPEG-4 Audio AAC LC - 2 Channel(s) - SampleRate 44100
Synchronized on stream 1
Track # 3 Info - TrackID 3 - TimeScale 90000 - Duration 00:09:46.503
Media Info: Language "Undetermined" - Type "vide:avc1" - 14062 samples
Visual Track layout: x=0 y=0 width=1280 height=720
MPEG-4 Config: Visual Stream - ObjectTypeIndication 0x21
AVC/H264 Video - Visual Size 1280 x 720
AVC Info: 1 SPS - 1 PPS - Profile Main @ Level 3.1
NAL Unit length bits: 32
Pixel Aspect Ratio 1:1 - Indicated track size 1280 x 720
Synchronized on stream 1
我不明白:为什么输出中有 2 个视频轨道?
答案1
您的视频流具有不同的帧大小。
第一个是 1024x576(看起来像 PAL 576 隔行扫描),而第二个是 1280x720(HD 720 逐行扫描)。
无论如何,这两者可能不适合一起工作,这可以解释您所看到的错误。