atom 'avc1' is too small.出错的解决办法

使用mp4v2-utils工具查看MP4文件的信息时,有时候会弹出如下错误“atom 'avc1' is too small; overrun at property”。导致看不了文件信息。

 

原因如下。在分析MP4文件时,碰到AVC1这个关键字时,会创建MP4VideoAtom::MP4VideoAtom类,需要在文件里读出这个段的数据。

在读compressorName这个属性时,需要读的是一个字符串,而这个字符串设置了二个属性:

pProp->SetFixedLength(32);

pProp->SetCountedFormat(true);

 

在读取的地方MP4StringProperty::Read()。

其先判断m_useCountedFormat才判断m_fixedLength。所以读取超界出错。

所以这里将判断的先后顺序调转。问题解决。

 

posted on 2013-12-20 10:08  Justin_Wu  阅读(337)  评论(0)    收藏  举报

导航