现在我又有几个新问题了。
1.就是如何得到FmpPlay什么时候播放完一首歌!
2.网络服务器你是不是FTP共享,但是我这边的服务器是5个硬盘,那么就要有5个FTP 共享目录了,如何知道MPEG在那个目录下。是不是在服务器做个程序,把MPEG发到客户机上去。

解决方案 »

  1.   

    CDSoftwareWj(95927)老兄好人一个。
    我的QQ 45118719。
      

  2.   

    1.这个问题当年也难了我不少时间,试过不少方法,时间长了,我也就只记得当时很辛苦,神龙卡 API 的方法就是不能正确反回,不过我还是用巧办法绕过去了,具体代码我没有代到新公司,明天我看看,因为记的不清不想瞎说 hehe^^
    2. 5个硬盘?!hehe^^ 实际的应用8个硬盘2个服务器都不止呀,要不你的KTV系统就不能符合实际要求 ^^! 我当时的解决方案是在服务器上维护一个SQL Server数据库,里面保存歌曲基本信息,当然一首歌曲记录里也保存了服务器的IP、端口、路径、文件名等信息,客户端从曲库数据库中检索记录后,根据这些服务器相关内容连接到指定服务器、相关盘符、相关目录下下载指定文件,还后放在本地播放,这种方式你可以放心,百M网环境,根本就感觉不到hehe^^
      

  3.   

    FTP 服务器我用的是Serv-U FTP Server
    同一个用户可以设置多个访问路径
    客户端用ChDir就可以改变当前路径的
      

  4.   

    OK,我就明天等你的好消息。
    THANKS。
      

  5.   

    我现在用的是读文件的方式。不是BUF。
      

  6.   

    我现在有个办法解决,功能是可以完成。
    当FmpPlay 后,就用一个TIMER来不停的得到FmpGet(Stream,FMPI_STM_POSITION)的返回值。
    当歌FmpPlay后,FmpGet(Stream,FMPI_STM_POSITION)得到的返回值就是这个歌播放位置的地址,当播放完毕后,返回就是0了。
      

  7.   

    CDSoftwareWj(95927)老兄,我想问一下你服务器的MPEG是硬压缩还是软压缩的。
    如果是软压缩你用的是什么软件呀。
      

  8.   

    不好意思哦 hehe^^    我是双休,休息时老婆(女朋友^^!)不叫我多完电脑,说多完对身体不好,哎,要听老婆的话呀....今天一上来,看见你也绕过去了,我也就不用再说什么,我那段代码和你的做法基本一样也是用Timer来检测的你说的那个Mpeg是硬压缩还是软压缩我不知道你是指的什么。但以我的理解,我告诉你我的曲库由两部分组成,一部分是买现成的,已压好了DVD格式,一部分是自己从质量好的VCD中导下来的没有再压缩,神龙卡支持多种格式的播放,由它来进行处理,咱们的程序呢就要对多种格式进行不同处理,因为VCD与DVD的声道处理方式不同,所以程序必须要适应多种格式,API中有对格式的判断,这样也有助于用户自己增加曲库分是不是要结了 hehe^^有事我们再开帖子聊
      

  9.   

    我指的压缩是指把DVD或VCD通过一些工具转成MPEG2格式。
    再问一下,那个API可以判断格式,另外VCD可以用FmpSet(Stream,FMPI_AUD_BAL_R,0);得到伴乐声道,那DVD是什么来得到伴乐音轨呢。
    此问题结束放分,我答应。
    CDSoftwareWj(95927)老兄有老婆管着不错呀,我还是老爸老妈管着呢。呜..........
      

  10.   

    DVD其实就是MPEG2格式,VCD的是MPEG1格式,VCD转MPEG2我试过了,不行一转声道就
    没有了 :(    我还试LD转MPEG2都不行,据说要用日本进口的一套设备才能转好,这
    套设备要4wRMB hehe^^ 我也是听广州的一家公司说(吹)的,说是一首要压几个小时你不用转了,就那样播吧 hehe^^
      

  11.   

    设置DVD的声道呢
    看我写的VOD类的这部分吧
    //---------------------------------------------------------[ TVOD.SetTrack ]---
    { 设置播放声道-DVD }
    procedure TVOD.SetTrack(TrackIndex: Integer = 2);
    begin
      if ghMPEGStream <> 0 then
        FMPGroup(ghMPEGStream, FMPF_SELECT or FMPF_INDEX, TrackIndex);
    end; {TVOD.SetTrack}你知道当时我为了这句话费了多大劲吗???哎......你再给200分都不怨~~!!!
    当时要是有人点我,我就不用花那么多时间试和找资料了,不过你也少了解决问题的快感 hehe^^再给你讲一下原理,VCD是左右两个声道大家都知道了
    DVD呢就是音轨,一般有5个音轨,一般用2和5 你可做个程序试试 ^^
      

  12.   

    还没有结婚呢 hehe^^ 快了 幸福ing.....再开个帖子,给我二百分吧 ;)....我来这里都好几年了,连个星都没有混上,可怜呐~~~~ 555555可怜可怜我吧....
      

  13.   

    结贴,再开一贴。
    http://expert.csdn.net/Expert/topic/1660/1660732.xml?temp=.6094782