windows mobile 6.0 的DSHOW 应用程序的开发环境
现在我想开发一个实时流媒体播放器,在WM6的手机上使用,播放器要采用H.264解码。现在想调用dshow中的API来作,请问应该采用什么样的环境
。我有几个选择
1.用PlatForm Builder 5.0,加上wince dshow 的sdk
2.用VC++,加上wince dshow 的sdk。
3.用VS2005的C#,托管264的C代码的方式。
前两种用C++,第三种用C#。
或者各位在这方面有经验的,建议下用什么环境比较合适,这里关键是H.264的解码,应该用什么方式解决。谢谢。
[解决办法]
1和2其实差不多,所用代码是完全一样,只是project的一些文件信息稍有不同。
2的VS2005更适合做应用开发。2开发出来的project可以很容易的合入PB中去。
建议还是用2 VS2005下,C++开发,因为能找到的大部分开源资料都会是C++的,C#是M$自己设计的语言,并不被全世界的开源者们认可和接受。而可参考性最大的开源项目基本都是基于C++的。
[解决办法]
如果想做视频,可以找TCPMP,在2.72之前是开源的,很不错的。而且针对了很多CPU平台做到汇编级优化。
eVC是相对以前的VCx.0而言的,嵌入式开发版本,使用环境和操作流程跟VCx.x系列一致。
VC2005是VS2005的一个组成部分,就和VC6是VStudio6.0的一个部分一样。VS200x集成度很高,并且将PC平台和嵌入式平台(WINCE/WINMobile)的开发都集中到一起了,只要在建立project时选择针对不同的平台(WIN32表示对PC平台,SmartDevice表示对智能设备,就是嵌入式的了),生成的代码就会针对不同平台进行改动。
只要你的机子安装了需要的WINCE/WMOBILE的SDK,eVC和VS2005都可选,两者的开发都可行,没太大差别。
WM6/WINCE下的Dshow差的不大,但是这两者下的和PC上的差别就不小了,倒不是函数名称、参数差别,而是功能和性能差别。这也是平台限制造成的。毕竟嵌入式平台上不可能有PC平台下那么强劲视频解码系统。