none
directshow 播放视频如何叠加透明FLASH动画 RRS feed

  • 常规讨论

  • directshow  播放RMVB视频文件,如何在上面某个区域叠加透明FLASH动画

    rmvb 是用用DSHOW的filter来播放的,但叠加透明的FLASH就不行,这好象与渲染模式有关, 当用系统默认的渲染模式时,总实现不了透明效果,但用VMR时是可以的,但VMR太占CPU,

    哪位先生,有好的实现方式及源代码,

    2010年1月18日 8:08

全部回复

  • 得需要一个支持RMVB的DirectShow Filter,以及一个支持Flash的filter。
    一些开源的编码解码器有支持RMVB的DirectShow Filter,不过我不知道那些支持Visual C++。没有听说过有支持Flash的filter。去forums.adobe.com问问。


    The following is signature, not part of post
    Please mark the post answered your question as the answer, and mark other helpful posts as helpful.
    Visual C++ MVP
    2010年1月23日 15:22
    版主
  • rmvb 的filter 已有我的RMVB就是用DSHOW的filter来播放的,但叠加透明的FLASH就不行,这好象与渲染模式有关, 但我用系统默认的渲染模式时,总实现不了透明效果,但用VMR时是可以的,但VMR太占CPU,

    2010年1月25日 8:43
  • Flash文件得需要设置为透明才可以。另外,透明渲染需要支持alpha通道的filter,这很占CPU。

    The following is signature, not part of post
    Please mark the post answered your question as the answer, and mark other helpful posts as helpful.
    Visual C++ MVP
    2010年1月25日 14:19
    版主
  • flash文件已经是透明的,调用FLASH控件时也设了其透明播放模式,我其实在想做一个在播放器播放文件时在其上面加一个电视上台标一样的东西,这个台标是透明FLASH文件,FLASH没有用alpha通道的filter(也没找到),只是加播放窗口上叠加了一个POP窗口,在此窗口里调用一个在CODEPROJECT网站上下载的,透明FLASH控件的源码:cflashwnd加的,结果叠加时在VMR下是正常的,但在系统默认的渲染模式下,,flash透明的地方为网格状.不是全透明的,flash不透明的地方到时正常.
    2010年1月26日 1:05