IO

Работа с файлами устройств (запись и IOCTL)

Файлы устройства представляют физические устройства. Многие физические устройства используются для вывода и для ввода, так должен иметься некоторый механизм для драйверов устройства в ядре, чтобы послать вывод устройству из процесса. Это выполняется, открывая файл устройства для вывода и записывая в него точно так же, как в обычный файл. В следующем примере, это выполнено функцией device_write.

Копирование треков с Audio-CD

В статье рассматривается исходный текст программы для считывания
аудиоданных с музыкального компакт-диска (Audio-CD)

и сохранения их в WAV-файле. Программа функционирует под управлением ОС Linux.

Для понимания изложенного в статье материала необходимо знать структуру
и форматы данных, хранящихся на компакт-диске.

Эту информацию можно получить из следующих источников:

Програмирование звука Linux ioctl() пример

#include <stdio.h>
#include <fcntl.h>
#include <sys/soundcard.h>

#define DSPDEVICE "/dev/dsp"

int main() {
  int dsp, rate, realr, stereo, reals, formats, format;

  dsp = open(DSPDEVICE,O_WRONLY,0);
  if(dsp==-1) {
   perror("open: " DSPDEVICE);
   exit(1);
  }

  realr=rate=11025;
  if(ioctl(dsp,SOUND_PCM_WRITE_RATE,&realr)==-1) {
   perror("ioctl(SOUND_PCM_WRITE_RATE): " DSPDEVICE);
   exit(1);
  }

  printf("NOTICE: I asked rate %i, and %i was set.\n",rate,realr);

Звук в Linux

Этот документ описывает поддержку звука в Linux. Перечисляются поддерживаемые звуковые устройства, описывается как настроить драйвера и даются ответы на часто задаваемые вопросы. Основная цель;-- помочь новым пользователям и уменьшить объем трафика в группах новостей Usenet и списках рассылки. Примечание переводчика: Шлите мне любые комментарии и замечания, даже небольшие.

Обратная связь

Интересуют вопросы реализации алгоритмов, программирования, выбора электроники и прочая информация, постараюсь осветить в отдельных статьях

пишите мне на netdm@mail.ru

Подписка на IO