全國最多中醫師線上諮詢網站-台灣中醫網
發文 回覆 瀏覽次數:2102
推到 Plurk!
推到 Facebook!

wav檔無法使用TMediaPlayer撥放....

尚未結案
yoohnn
一般會員


發表:2
回覆:7
積分:1
註冊:2004-10-08

發送簡訊給我
#1 引用回覆 回覆 發表時間:2004-10-08 20:22:17 IP:140.124.xxx.xxx 未訂閱
我是做語音處理的 正在做一個melp語音壓縮介面 最後合成的wav檔在cooledit2000或是winamp都可以成功撥放 就是windows media player不行 因此TMediaPlayer也掛點 不知道是啥米原因勒.....請各位大大解惑 P.S.有其他方法可以代替TMediaPlayer嗎? 我剛剛開始用BCB ^_^
wameng
版主


發表:31
回覆:1336
積分:1188
註冊:2004-09-16

發送簡訊給我
#2 引用回覆 回覆 發表時間:2004-10-08 20:26:16 IP:61.31.xxx.xxx 未訂閱
Uses Mmsystem 直接用 API playsound(pchar('c:\abc.wav'),0,SND_ASYNC); 參數 SND_ASYNC 作用在於,播放後不等聲音結束 便執行下一行程式。 不行嗎!
yoohnn
一般會員


發表:2
回覆:7
積分:1
註冊:2004-10-08

發送簡訊給我
#3 引用回覆 回覆 發表時間:2004-10-08 20:35:18 IP:140.124.xxx.xxx 未訂閱
引言: Uses Mmsystem 直接用 API playsound(pchar('c:\abc.wav'),0,SND_ASYNC); 參數 SND_ASYNC 作用在於,播放後不等聲音結束 便執行下一行程式。 不行嗎!
感謝大大的回答 @_@ 我剛剛開始學BCB... API是啥米阿..真的不知道 playsound這個函式...沒法使用阿
wameng
版主


發表:31
回覆:1336
積分:1188
註冊:2004-09-16

發送簡訊給我
#4 引用回覆 回覆 發表時間:2004-10-08 20:42:40 IP:61.31.xxx.xxx 未訂閱
有 Uses mmsystem 嗎! 大大!這裡是 Delphi 區也。 BCB 應該也有 mmsystem 這個單元吧!
andychang1690
資深會員


發表:20
回覆:694
積分:442
註冊:2003-03-14

發送簡訊給我
#5 引用回覆 回覆 發表時間:2004-10-08 22:35:48 IP:221.169.xxx.xxx 未訂閱
引言: 有 Uses mmsystem 嗎! 大大!這裡是 Delphi 區也。 BCB 應該也有 mmsystem 這個單元吧!
翻譯一下:直接用 API BCB->Help->Windows SDK->索引輸入 PlaySound或sndPlaySound可以找到下面用法說明: BOOL PlaySound(LPCSTR pszSound, HMODULE hmod, DWORD fdwSound ); BOOL sndPlaySound(LPCSTR lpszSound,UINT fuSound ); sndPlaySound("D:\\Andy_File\\煉鐵廠女工的踏腳之歌.mp3",SND_ASYNC); 或 PlaySound("D:\\Andy_File\\煉鐵廠女工的踏腳之歌.mp3",0,SND_ASYNC); 都可以。若使用: AnsiString S="D:\\Andy_File\\煉鐵廠女工的踏腳之歌.mp3"; sndPlaySound(S.c_str(),SND_ASYNC); 或 PlaySound(S.c_str(),0,SND_ASYNC); 都可以! 請參考! Andy Chang
------
Andy Chang
yoohnn
一般會員


發表:2
回覆:7
積分:1
註冊:2004-10-08

發送簡訊給我
#6 引用回覆 回覆 發表時間:2004-10-09 15:08:10 IP:218.166.xxx.xxx 未訂閱
引言:
引言: 有 Uses mmsystem 嗎! 大大!這裡是 Delphi 區也。 BCB 應該也有 mmsystem 這個單元吧!
翻譯一下:直接用 API BCB->Help->Windows SDK->索引輸入 PlaySound或sndPlaySound可以找到下面用法說明: BOOL PlaySound(LPCSTR pszSound, HMODULE hmod, DWORD fdwSound ); BOOL sndPlaySound(LPCSTR lpszSound,UINT fuSound ); sndPlaySound("D:\\Andy_File\\煉鐵廠女工的踏腳之歌.mp3",SND_ASYNC); 或 PlaySound("D:\\Andy_File\\煉鐵廠女工的踏腳之歌.mp3",0,SND_ASYNC); 都可以。若使用: AnsiString S="D:\\Andy_File\\煉鐵廠女工的踏腳之歌.mp3"; sndPlaySound(S.c_str(),SND_ASYNC); 或 PlaySound(S.c_str(),0,SND_ASYNC); 都可以! 請參考! Andy Chang
void __fastcall TForm1::Button1Click(TObject *Sender) { PlaySound("E:\\單曲\\01.mp3",0,SND_ASYNC); } debug出現... [C Error] Unit1.cpp(22): E2268 Call to undefined function 'PlaySound' 我的天阿...到底要怎樣用
yoohnn
一般會員


發表:2
回覆:7
積分:1
註冊:2004-10-08

發送簡訊給我
#7 引用回覆 回覆 發表時間:2004-10-09 15:08:28 IP:218.166.xxx.xxx 未訂閱
引言:
引言: 有 Uses mmsystem 嗎! 大大!這裡是 Delphi 區也。 BCB 應該也有 mmsystem 這個單元吧!
翻譯一下:直接用 API BCB->Help->Windows SDK->索引輸入 PlaySound或sndPlaySound可以找到下面用法說明: BOOL PlaySound(LPCSTR pszSound, HMODULE hmod, DWORD fdwSound ); BOOL sndPlaySound(LPCSTR lpszSound,UINT fuSound ); sndPlaySound("D:\\Andy_File\\煉鐵廠女工的踏腳之歌.mp3",SND_ASYNC); 或 PlaySound("D:\\Andy_File\\煉鐵廠女工的踏腳之歌.mp3",0,SND_ASYNC); 都可以。若使用: AnsiString S="D:\\Andy_File\\煉鐵廠女工的踏腳之歌.mp3"; sndPlaySound(S.c_str(),SND_ASYNC); 或 PlaySound(S.c_str(),0,SND_ASYNC); 都可以! 請參考! Andy Chang
void __fastcall TForm1::Button1Click(TObject *Sender) { PlaySound("E:\\單曲\\01.mp3",0,SND_ASYNC); } debug出現... [C Error] Unit1.cpp(22): E2268 Call to undefined function 'PlaySound' 我的天阿...到底要怎樣用
andychang1690
資深會員


發表:20
回覆:694
積分:442
註冊:2003-03-14

發送簡訊給我
#8 引用回覆 回覆 發表時間:2004-10-09 17:16:51 IP:221.169.xxx.xxx 未訂閱
#include 
BCB->Help->Windows SDK->PlaySound->Quick Info 請參考! Andy Chang
------
Andy Chang
yoohnn
一般會員


發表:2
回覆:7
積分:1
註冊:2004-10-08

發送簡訊給我
#9 引用回覆 回覆 發表時間:2004-10-09 22:31:47 IP:218.166.xxx.xxx 未訂閱
引言:
#include 
BCB->Help->Windows SDK->PlaySound->Quick Info 請參考! Andy Chang
感謝大大的詳細 我按照大大教的方法... 設計Button1 Click 事件作為觸動Playsound() 普通檔可以順利撥放 但是我合成出來的語音還是無法撥放 只有咚的一聲 這又為何?
andychang1690
資深會員


發表:20
回覆:694
積分:442
註冊:2003-03-14

發送簡訊給我
#10 引用回覆 回覆 發表時間:2004-10-09 23:45:41 IP:221.169.xxx.xxx 未訂閱
yoohnn:這有意思,你方便告訴你如何合成wav,最好也將此 合成檔放置於會員求助區! Andy Chang
------
Andy Chang
yoohnn
一般會員


發表:2
回覆:7
積分:1
註冊:2004-10-08

發送簡訊給我
#11 引用回覆 回覆 發表時間:2004-10-11 10:58:50 IP:140.124.xxx.xxx 未訂閱
引言: yoohnn:這有意思,你方便告訴你如何合成wav,最好也將此 合成檔放置於會員求助區! Andy Chang
合成語音的方式是melp 2.4kbps 在網路上可以找到他語音編碼的過程 我試過用matlab放 x=wavread('2.wav') wavplay(x,8000) //8000是取樣頻率 可以順利的撥放 BCB可以使用matlab的函式嗎??
wameng
版主


發表:31
回覆:1336
積分:1188
註冊:2004-09-16

發送簡訊給我
#12 引用回覆 回覆 發表時間:2004-10-11 11:29:46 IP:61.222.xxx.xxx 未訂閱
調用 Matlab ActiveX 接口
yoohnn
一般會員


發表:2
回覆:7
積分:1
註冊:2004-10-08

發送簡訊給我
#13 引用回覆 回覆 發表時間:2004-10-11 13:10:25 IP:140.124.xxx.xxx 未訂閱
引言: 調用 Matlab ActiveX 接口
請問要如何調用阿 ....
wameng
版主


發表:31
回覆:1336
積分:1188
註冊:2004-09-16

發送簡訊給我
#14 引用回覆 回覆 發表時間:2004-10-11 13:18:21 IP:61.222.xxx.xxx 未訂閱
或者用 OLE var Matlab:Variant; begin Matlab:=CreateOleObject('matlab.application');
yoohnn
一般會員


發表:2
回覆:7
積分:1
註冊:2004-10-08

發送簡訊給我
#15 引用回覆 回覆 發表時間:2004-10-11 13:24:31 IP:140.124.xxx.xxx 未訂閱
引言: 或者用 OLE var Matlab:Variant; begin Matlab:=CreateOleObject('matlab.application');
呃..@_@ 我剛剛開始學 可以稍微寫詳細一點嗎? 謝謝大大
wameng
版主


發表:31
回覆:1336
積分:1188
註冊:2004-09-16

發送簡訊給我
#16 引用回覆 回覆 發表時間:2004-10-11 16:27:11 IP:61.222.xxx.xxx 未訂閱
BCB 我不熟悉。 用 Delphi 的表達方式。 var Matlab:Variant; begin Matlab:=CreateOleObject('matlab.application'); 建立 OLE 後,就可以對它直接操作了。 例如: Matlab.wavplay...
系統時間:2024-04-29 13:30:32
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!