LInux ossを使用したwavファイル再生

このエントリーをはてなブックマークに追加
1初心者:02/02/14 13:41
初心者なもで教えていただきたいのですが、RedHat6.2JのデストリュビュージョンでOSSを使用したwavファイルの再生プログラムをC言語で作成いたしましたが、
同じソースでもPLAYコマンドで再生したのとは程遠い音質で再生されます。(ノイズがはいる)どなたか、レート、ステレオの設定以外の設定方法もしくは回避策をご存知の方お助けください。下記にソースを載せます。よろしくお願いします。#include <unistd.h>
#include <stdlib.h>
#include <fcntl.h>
#include <sys/soundcard.h>
#include <sys/types.h>
#include <sys/stat.h>
static unsigned char tmp[20480];
int main(void)
{
int out ; /* サウンドデバイスハンドラ取得用 */
int format ; /* 音声デバイス設定用 */
int fp ;
int len ;
out = open("/dev/dsp, O_WRONLY) ; /* デバイスのオープン */
/* --- 音声デバイス設定 --- */
format = AFMT_S16_LE;
ioctl(out, SNDCTL_DSP_SETFMT, &format) ;
format = 0;
ioctl(out, SNDCTL_DSP_STEREO, &format) ;
format = 6300 ;
ioctl(out, SNDCTL_DSP_SPEED, &format) ;
fp = open("/usr/share/sounds/gnobots2/yahoo.wav", O_RDONLY) ;
/* --- 出力ループ --- */
while((len = read(fp, tmp, BUFFER)) > 0)
{
write(out, tmp, len) ;
}
close(fp) ; /* Waveソースのクローズ */
close(out);
}
単発質問スレ断固反対

初心者と書けば何でも許されると思っている>1逝ってよし
>>2
禿しく同意。

質問スレはあるのに、なぜわざわざ単発質問スレを立てる?
いい加減やめろよ。ウザすぎ!
>>2-3
同意。会員になりましょう