2016-09-24 25 views
-1

我编码由JM的高清视频(Beauty.yuv)与IBBBPBBBPBBBP ...模式。B帧发生了什么? MP4Box evalvid,JM 0.264

然后output.264转换为out.mp4由MP4Box做到这一点:

MP4Box -profile高-hint -mtu 1024 -fps 30 -add output.264 out.mp4

然后我做.ST文件:

./mp4trace -f -s 192.168.0.2 12346 out.mp4> st_a01.st

,但我的第一文件的样子:

1 I 142647 140 0.075

2个P 82493 81 0.202

3 P 24373 24 0.204

4 P 29224 29 0.204

5 P 23495 23 0.204

6 P 76393 75 0.331

7 P 22832 23 0.331

8个P 25367 25 0.336

9 P 22635 23 0.336

10个P 120039 118 0.469

11个P 24255 24 0.469

12个P 26783 27 0.469

13 P 23338 23 0.469

14个P 96223 94 0.596

15 P 22626 23 0.602

个P 25306 25 0.602

部17p 26856 27 0.602

18 P 99348 98 0.729

19 P 25576 25 0.735

20页32550 32 0.736

21P中28752 29 0.736

22 P 110795 109 0.869

23 P 23601 24 0.869

24 P 25118 25 0.869

25泊24258 24 0.869

普87966 86 0.991

27 P 21435 21 1。002

数据包中没有B帧或B片! 为什么会发生? 这里有什么问题?

感谢您的关注

+0

当你说_“st file”_你是指TS('.ts')文件吗?否则,请提供一个关于'.st'视频格式信息的链接... –

+0

不,我的意思是.st文件。是一个文件cntain关于我们想要在网络模拟器中流式传输的视频文件的信息。类似ns2的模拟将它和anothere文件“.dat”,并模拟流媒体。 –

回答

0

什么发生在B帧?......为什么出现这种情况?这里有什么问题?

这有可能是MP4Box通过使用基线 Profile编码的H264视频。

用类似MediaInfo的工具进行检查。只有配置文件支持B帧(又名B片)。

http://www.streaminglearningcenter.com/content_images/1/Adobe%20H264_Figure%201.jpg (图片来自:StreamingLearningCenter.com的article

+0

是的,mp4box使用基线配置文件 并导致此问题 谢谢你VC.One –

+0

今天我执行“MP4Box -info out.mp4”,我看到高配置文件正在使用。问题不在于简介 –

+0

你能提供一个链接到'mp4'文件和'st'文件的短样本吗?你为什么要做'-info out.mp4'?为什么要检查一些其他的MP4文件,当你的问题**实际上说**当你这样做的P帧:_ **“..然后我使.st文件:”** _和你的结果是_ **“但我的st文件如下所示:“**(表示所有P帧)。我不熟悉'.st'视频格式(只知道'.TS')。你能确定你的'mp4'和这个'st'文件有完全相同的编码设置吗? ** mp4文件**本身是否没有B帧? –

0

如果执行MP4Box -info out.mp4,你会得到的文件中的一些基本信息。

如果您执行MP4Box -info 1 out.mp4,您将获得关于文件第1首的更多特定信息。

如果您执行MP4Box -diso out.mp4,您将获得MP4文件结构的详细XML(包括计时)。

也许有关“I/P/B帧”的另一个精度。自从H264(2003)以来,只有I/P/B片,这使得您的验证有点困难(因为您需要检查片而不是帧)。

此外MP4Box只是一个复用器,它不会修改您的编码内容的语义。

+0

我执行“MP4Box -info out.mp4”,我看到高配置文件正在使用中。但我的问题在哪里?为什么.st文件中的数据包没有B标签!似乎他们都是P型? –

+0

我不知道mp4trace,我是一个MP4Box维护者。 –