我是用WWW.THECKTHING.NET的SDK作的!可以实现,(它用的是DIRECTSHOW),至于解码MPEG1方式,我也正在作!

解决方案 »

  1.   

    to Nitty:
    记得贴上一点经验之谈。
      

  2.   

    传过来的mpeg流没有mpeg头信息怎么办?
      

  3.   

    参考directx 8.0sdk中的memfile自己写filter。
    对于网络传输的mpeg流,进行实时分析,以GOP为单位在客户端播放。
      

  4.   

    参考directx 8.0sdk中的memfile自己写filter。
    对于网络传输的mpeg流,进行实时分析,以GOP为单位在客户端播放。
    本人现在正在作。
      

  5.   

    好像那个memfile不能读没有mpeg头的文件,这肯定不是source fileter的问题,那么如果
    参考memfile的话,我想是不是要自己写其他两个filter?
      

  6.   

    至于mpeg头,可以自己处理一下插进去。
    好像不用再写其他filter,将自己的filter连入filter graph就行了吧。
    然后就可以调用IMediaControl的Run了。
      

  7.   

    我曾经想每次传输都把mpeg头附加在数据里传过去,不过不知道mpeg头有多少字节?好像用
    32768字节是可以,不过数据太多,带宽不够。烦!
      

  8.   

    创建一个头文件就可以了,关注我作过网络传输,可是是局域网的,还是有延时,。
    要用DIRECTSHOW
      

  9.   

    每次都要把mpeg头传过去可能数据量太大!
      

  10.   

    如果每隔几帧就发个mpeg头好像太浪费带宽了
    不知道要怎样处理才能更节省带宽呢?
      

  11.   

    我作了很久,没解决,最后我用了一个极其愚蠢的办法,用文件播放.
    准备三个文件,每个文件1s,  File0给数据接收程序,存数据.
    File1给Player1(MCI),打开后暂停,
    还有一个File2给Player2(MCI),播放,
    数据接收完毕(1s),将File0---->Player2,打开后暂停,将暂停的Player1播放,一直如此循环,
    蠢蠢蠢....累累累.....不过凑合能用.
      

  12.   

    不知道怎样把mpeg头处理后插入udp包比较方便,省带宽。
      

  13.   

    lin6194有趣的想法,另辟蹊径。
    关注...
      

  14.   

    如果一定要加mpeg头,我建议可以用以下方法:
    1.在接收端定义几种常用的MPEG的头结构(可以从文件中截取),然后进行编号,命名,如"MPEG_HEAD_01".
    2.在发送端判断头结构属于哪一种,发送前在数据包头部或尾部(如果长度固定的话)加入MPEG头的名称.
    3.接收端收到数据后,根据不同的名称,选择不同的头结构加到数据包的前面即可.
    这样就可以每个数据包都有头结构,而且不会占用太多网络带宽.不过接收到数据流后,如何播放,用DirectShow作吗?有没有其他现成的能从Buf中播放的控件,那位高手指点一下!
      

  15.   

    Nitty:
        你说的WWW.THECKTHING.NET的SDK在哪里能下载,怎么用,能不能介绍一下!
      

  16.   

    我都不知道有些什么常用的mpeg头!
      

  17.   

    to lin6194
    在www.thehthink.com下载,它用的dxshow作的
      

  18.   

    你这个问题的原因在于mpeg1数据流里的reference time里面,播放器在播放的时候,每个sample都有一个timestamp,如果该sample的时间先于当前时间,则马上播放,否则要等到该sample的TimeSatmp到了才播放(可以看看directshow帮助文档里面的IMdeiaSample)。这个问题我原来也遇到过,不过现在解决了(也是网络播放),预知相亲,请来信[email protected]探讨
      

  19.   

    Nitty(哈哈哈):
         www.thehthink.com访问不了,能不能麻烦你Mail: [email protected] 给我,我在这里先说声谢谢了!