续~求教 写视频播放器 文件为m4v格式 文件中保存的是MPEG4压缩后的视频流数据 可以直接播放吗?标题要长
上篇帖子的篇幅过长,不利于查看,所以又开一个帖子。这里对上帖子的东西也做一个总结。
重新描述问题:在wince环境下采集视频数据,并用三星的6410硬件加速器压缩原始数据,压缩算法是MPEG-4,压缩后的数据直接存入文件,保存为.m4v格式(此处格式是什么在PC机上没有区别)。注意此处存文件的时候,没有用任何的容器格式,就是视频流数据直接写入文件,不符合任何格式,所以也没什么文件头之类的信息,也导致无法被大部分的播放器打开。
上述文件在PC上可以被强大的暴风影音打开播放,视频播放则无法控制。于是,需要自己写一个播放器来实现这个工作。
准备用dshow来实现这个播放器,现在的问题就是关于MPEG-4解码的问题。如果能找到现成的dshow MPEG-4 解码filter,那么我的dshow程序多了。为了找到这个解码的filter,我安装了DIVX XVID等等一堆的插件,这些插件安装后,如果能正确解码我的视频文件,那么我用GraphEdit应该能打开此文件?,又或者我用media player应该可以播放此文件,这样就证明dshow可以实现播放,不知道这个理解是否正确。
看到CSDN的朋友的建议,我装了个MKPlayer试了试,无法打开视频文件来播放,不过倒是查出点视频文件的信息如下:
未找到可用于流呈现的筛选器组合,ERROR NUM:80040218
--------------------
[文件信息]
--------------------
C:\Documents and Settings\Nicky\桌面\Video_1.m4v
General
Complete name : C:\Documents and Settings\Nicky\桌面\Video_1.m4v
Format : MPEG-4 Visual
File size : 681 KiB
Video
Format : MPEG-4 Visual
Format profile : Simple@L4a
Format settings, BVOP : Yes
Format settings, QPel : No
Format settings, GMC : No warppoints
Format settings, Matrix : Default (H.263)
Width : 640 pixels
Height : 480 pixels
Display aspect ratio : 4:3
Resolution : 24 bits
Scan type : Progressive
各位能不能从上述的信息帮我看出点什么道道。难道真的找不到对应可以解码的direcdshow filter?如果找不到,我是不是需要去找源码来做解码部分,又或是其他的方式,用FFDSHOW FFMPEG的库?等等,请指教