编写一个视频播放软件,使用TMediaPlayer,    本来打算使用较新的TWindowsMediaPlayer来着,但是后者不支持AlignClient,就是全部填充,只能按原画面比例进行缩放。而TMediaPlayer却可以让播放画面按任意比例拉伸,本人喜欢这种风格。    但TMediaPlayer支持的格式太少,我用媒体播放器从网上下载了wmv格式的支持后,TMediaPlayer也可以播放wmv的格式了,在98和2000下都试过,正常    但是,却在一台windows2000 professional上,媒体播放器可以播放,但TMediaPlayer死活不行,我直接调用了winmm.dll中的mcisendstring来打开也不行,    察看注册表,mciextensions和mci各项也都有,还能有什么原因呢?    不至于还要重装操作系统吧?

解决方案 »

  1.   

    你可以把Windows自带的播放器导入到DELPHI中,通过Import ActiveX,C:\windows\system32\wmp.dll。可以用这个,比自带的那个应该要好。
      

  2.   

    用 ActiveX 控件,稳当!!:)
      

  3.   

    MediaPlayer1.DeviceType:=dtAutoSelect;
    就可以播放了。
    如果是VCD上直接拷下来的DAT文件,要在win.ini里加上一句:
    [MCI Extensions]
    dat=MPEGVideo
    如果没有wmv,也要相应的加上:
    wmv=MPEGVideo
      

  4.   

    建议还是不要使用TMediaPlayer了,用DirectShow写,本人这几天也在研究用DirectShow写播放器,做了个控件,比TMediaPlayer好用多了。但还有个不大不小的问题还没解决,参考http://community.csdn.net/Expert/topic/5250/5250214.xml?temp=.6135218
      

  5.   

    顺便问一下,TMediaPlayer的图像缩放后,咱个锐化图像呢?
    因为直接改变 DisplayRect 后图像质量下降了,有很明显的锯齿
      

  6.   

    用TMediaPlayer还不如用TWindowMediaPlayer
      

  7.   

    但是TWindowsMediaPlayer不能拉伸,只能按原画面比例缩放