VCD文件播放求助!(200分)

  • 主题发起人 主题发起人 TNinja
  • 开始时间 开始时间
T

TNinja

Unregistered / Unconfirmed
GUEST, unregistred user!
怎样自己编程切换vcd的卡拉OK和原唱?其中的.dat文件到底是什么格式?
本人想用delphi编写一个播放VCD中的dat文件(好像是mpeg-1格式)的播放器,但是不知道如何选择文件中的声道(文件中好像有两条声道数据)。本来用的是m$的ActiveMovie控件,播放时在屏幕上右击鼠标,点属性可以打开文件属性,在点高级可以设置播放哪条声道或两条同时播放,但是我翻遍了activemovie的声明也未找到相关属性和方法,到底如何选定?
请问有没有能实现此功能的控件?
如果此方法不行,我打算用directshow实现,不知其中有没有跟上面相关的函数?
如能对我有所帮助,必定给分!谢谢!
 
用delphi编写媒体dat文件,能行吗?
 
用DELPHI自带的媒体播放器加MCI控制即可
查查以前的贴。
 
我在DELPHI 5.0和WIN2000下测试过以下语句.

采用DELPHI中的控件: TMEDIAPLAYER1,TOPENDIALOG1,BUTTON1

在BUTTTON按钮CLICK事件中加入以下语句:
if opendialog1.execute then

begin

medialog1.filename := opendialog1.filename;
medialog1.open;
end;


将opendialog1中的filter加入all file,*.*就可以看所有能用mediaplayer播放的文件.

你是不是在QQ的程序员驿站问我问题的那个人...我的QQ名字是小石头或者是入世.
 
就我的知识而言:计算机中的文件格式不是太多。dat是一种不标准的文件后缀名。
它的真实的文件格式是用Hex进制的编辑器可以看出来的。
文件的后缀名不是真正制约播放器的使用的因素。
请你用超级解霸打开一个你随便修改的一个.dat的文件试一下。超级解霸会给你提示。
.dat不是VCD的文件格式.
 
用Delphi在局域网中实现网上影院
陈经韬
相信用过<<超级解霸>>的人都知道里面有个"接收网络DVB广播",可以在局部网
中实现一台计算机播放视频文件而另一台接收.因为DVB设计的知识面太广,下面
我们用另外一个巧妙的思路来实现局部网中的"网络播放".
因为涉及到多媒体文件的播放,所以我们在程序中使用了一个 Mediaplay控件,
但是很多使用过这个控件做播放器的人都遇到过这样一个问题:就是在播放MPG
等扩展名的文件时出现"MCI初始化错误",如果安装了WindvdPlayer后又没有问题
了,怎么回事呢?现在市面上所有的有关DELPHI多媒体编程的书都没有讲到这个问
题和如何解决.原来,我们要自己修改win.ini里面[mci extensions]小节,另外还
要修改一下system.ini里面的[mci]小节.举例说,你想让Mediaplay可以播放MPG
为扩展名的文件时,可以按照如下格式修改:
[mci extensions]
mpeg=MPEGVideo
mpg=MPEGVideo
...
在这里,我们写了个自定义函数WriteMciConfig来达到这一目的,详细代码请
看源程序.
解霸的左右声道设置好像也没有什么书籍介绍如何实现,实际上我们可以调用
底层API函数mciSendString,不过好像只对Wav,Mid等音频文件有效.比如说左声
道设置:
 
ibasicaudio.put_balance
 
mci的知识
 
mciSendString对mpeg声道好像不能控制,超级解霸的实现完全是利用的directsound。
 
同意yb unique
mcisendstring对mpeg文件肯定不行
需要directsound来做
 
后退
顶部