WAVEファイルでの保存方法 – プログラミング – Home

WAVEファイルでの保存方法
 
通知
すべてクリア

[解決済] WAVEファイルでの保存方法


SAN
 SAN
(@SAN)
ゲスト
結合: 23年前
投稿: 9
Topic starter  

音声をWAVEファイルでフォルダに保存したいのですがどのようにすればいいのですか?


引用未解決
トピックタグ
aetos
(@aetos)
Noble Member
結合: 5年前
投稿: 1480
 

waveInXXX 系関数を使うんだと思います。


返信引用
SAN
 SAN
(@SAN)
ゲスト
結合: 23年前
投稿: 9
Topic starter  

お答えありがとうございます
録音はできるのですが、そのデータを保存すると、エラーが出てしまいます。

hFile = CreateFile(str,GENERIC_READ |
GENERIC_WRITE,FILE_SHARE_WRITE,NULL,CREATE_ALWAYS,FILE_ATTRIBUTE_NORMAL,NULL);

if(hFile != INVALID_HANDLE_VALUE)
{
DWORD dwActBytes;
int w_size = 40 + nPlaybackBufferLen;
     strcpy(SENDATA.sendBuf, ((char*)pPlaybackBuffer));
WriteFile(hFile,&SENDATA,w_size,&dwActBytes,NULL);
     CloseHandle(hFile);

こんな感じで保存しようとしているのですが、間違っていますか?


返信引用
aetos
(@aetos)
Noble Member
結合: 5年前
投稿: 1480
 

うーん…そのような断片的なコードだけ示されても、答えようが無いですね。
推測するに、pPlaybackBuffer が WAVE データが入ったバッファ、40 というのはヘッダ
のサイズあたりかと思うのですが…
この推測が正解ならば、WAVE データは文字列ではありませんから、strcpy でコピーす
るのは間違いでしょう。

このコードで言えるのはそれくらいのもんです。
こういう掲示板では、よく「現象を再現できる、必要最小限のコードを載せてくださ
い」と言われます。
プログラム全部コピペしても、問題箇所を特定するのが面倒ですし、かと言って、↑の
ようなコードでは少なすぎますね。


返信引用
SAN
 SAN
(@SAN)
ゲスト
結合: 23年前
投稿: 9
Topic starter  

そうでしたか。
丁寧に答えてくださってありがとうございました。
アドバイスをもとにもう少し考えてみます


返信引用
SAN
 SAN
(@SAN)
ゲスト
結合: 23年前
投稿: 9
Topic starter  

すみません!
チェック入れ忘れました!


返信引用

返信する

投稿者名

投稿者メールアドレス

タイトル *

プレビュー 0リビジョン 保存しました
共有:
タイトルとURLをコピーしました