• 5393阅读
  • 8回复

write()用法 [复制链接]

上一主题 下一主题
离线tinglan
 

只看楼主 倒序阅读 楼主  发表于: 2010-03-26
  int fd,id,status;
 // 打开声音设备
  fd = open("/dev/dsp", O_RDONLY);
  if (fd < 0) {
    perror("open of /dev/dsp failed");
    exit(1);
  }
  printf("fd = %d\n", fd);

  id = open("/usr/share/sounds/phone.wav",O_RDONLY);
  if (id < 0) {
    perror("open of /usr/share/sounds/phone.wav failed");
    exit(1);
  }
  printf("id = %d\n", id);

    status = read(id, buf, sizeof(buf)); // 录音
    printf("status = %d\n", status );

    status = write(fd, buf, sizeof(buf)); // 回放
    printf("status = %d\n", status );


        打开声音设备和声音文件都正确,read()调用也成功,但write()总是调用失败,返回-1,请问write()怎么输出声音?linux下还有什么方法可以播放声音?

离线yangfanxing
只看该作者 1楼 发表于: 2010-03-26
Qt?哪个类?
PHPWind好恶心。。。不想看这种界面。。。
离线dbzhang800

只看该作者 2楼 发表于: 2010-03-26
引用楼主tinglan于2010-03-26 09:51发表的 write()用法 :
  int fd,id,status;
 // 打开声音设备
  fd = open("/dev/dsp", O_RDONLY);
  if (fd < 0) {
    perror("open of /dev/dsp failed");
.......
离线dbzhang800

只看该作者 3楼 发表于: 2010-03-26
引用第1楼yangfanxing于2010-03-26 09:56发表的  :
Qt?哪个类?


linux api
离线yangfanxing
只看该作者 4楼 发表于: 2010-03-26
引用第3楼dbzhang800于2010-03-26 09:58发表的  :
linux api

嗯,各种api。。。谢谢张sir。
PHPWind好恶心。。。不想看这种界面。。。
离线benbenmajia

只看该作者 5楼 发表于: 2010-03-26
引用第3楼dbzhang800于2010-03-26 09:58发表的  :
linux api

很好很强大...
安然.....
离线tinglan

只看该作者 6楼 发表于: 2010-03-26
大家能否提供一些技术方面的支持?!
离线午小夜

只看该作者 7楼 发表于: 2010-03-26
2楼不是点睛了么?  ReadOnly 你write当然会失败阿.
[操作系统版本]  Windows XP;Linux Ubuntu;Linux Fedora;
[Qt SDK版本]    4.7.0
[SDK 发布日期]  2010.05
[IDE(集成开发环境)] QtCreator
个人网页:http://hi.baidu.com/午小夜
學歷:Royal Jalidon
离线tinglan

只看该作者 8楼 发表于: 2010-03-26
引用第7楼午小夜于2010-03-26 10:44发表的  :
2楼不是点睛了么?  ReadOnly 你write当然会失败阿.


        不好意思,太粗心了,没看明白!我再试试!谢谢大家了!
快速回复
限100 字节
 
上一个 下一个