WebM Splitter Filter
最近在看Xiph.org的源码,学习如何解析webm视频格式以及开发对应的directshow filter。发现一个问题,在源码包里无论是自己编译,还是用Xiph编译好的WebM Splitter Filter都无法正常工作,VS2010定位到音频部分,发现parser在解析vorbis音频时候,并没有正确读出音频的channel条数。
1 BYTE AudioStream::GetChannels() const 2 { 3 const AudioTrack* const pTrack = static_cast<const AudioTrack*>(m_pTrack); 4 5 const __int64 channels = pTrack->GetChannels(); 6 assert(channels > 0); 7 assert(channels <= 255); 8 9 const BYTE result = static_cast<BYTE>(channels); 10 return result; 11 }
音频parser解析部分的源码很大,就不全部列出来了,有兴趣的童鞋可以帮我看看问题出在那。
这个是我在vs2010工程里面调试的结果,我在工程里跟踪channels结果是:0(channel怎么可能是0呢...),我用的webm视频文件是从http://www.webmfiles.org/demo-files/下载的,我想问题应该不会出在我的webm视频文件的上面,再说我用mediainfo查看了视频文件,的确存在一条音轨。
目前纠结中,难道是源码里解析音频部分的bug?
Xiph的官网是:http://xiph.org/