Магический .asoundrc, чтобы с OSS работала звукозапись через эмуляцию ALSA · All Blogs

Впервые за много лет получил работающую звукозапись в Linux с M-Audio Audiophile 192/24 в ALSA-приложениях. Эта карта хорошо работает только с OSS-драйверами, и мука с современным отупевшим и потерявшим нормальную поддержку OSS софтом была очень долгой. Секретов успеха два:
1) Можно описать карту как "asym" и задать в ней различные входные и выходные DSP-устройства OSS и в одной виртуальной дефолтной карте поиметь работающие вход и выход, а значит, даже у самых глупых ALSA-приложений не будет сомнений, откуда брать звук.
2) Нужно задать параметры буферизации звука - без этого чудо не происходит!
Итак, волшебный ~/.asoundrc:

·· [Continuing] ··

pcm.oss {
  type asym
  playback.pcm
  {
     type oss
     device /dev/dsp0
  }
  capture.pcm
  {
     type oss
     device /dev/dsp2
  }
  period_time 0
  period_size 1024
  buffer_size 8192
}

pcm.!default {
  type asym
  playback.pcm
  {
     type oss
     device /dev/dsp0
  }
  capture.pcm
  {
     type oss
     device /dev/dsp2
  }
  period_time 0
  period_size 1024
  buffer_size 8192
}

ctl.oss {
  type oss
  device /dev/mixer
}

ctl.!default {
  type oss
  device /dev/mixer
} 

Новые знания почёрпнуты отсюда: http://alsa.opensrc.org/Dmix#3._configure_.asoundrc_for_aoss-testing:
Там же можно почерпнуть ещё интересностей, например, добавить параметры format "S32_LE" и rate 192000 для более качественного звучания.

UPD: Через какое-то время звук перестал работать и параметры буферизации пришлось удалить, но запись продолжила функционировать:

pcm.oss {
  type asym
  playback.pcm
  {
     type oss
     device /dev/dsp0
  }
  capture.pcm
  {
     type oss
     device /dev/dsp2
  }
}

pcm.!default {
  type asym
  playback.pcm
  {
     type oss
     device /dev/dsp0
  }
  capture.pcm
  {
     type oss
     device /dev/dsp2
  }
}

ctl.oss {
  type oss
  device /dev/mixer
}

ctl.!default {
  type oss
  device /dev/mixer
} 

По видимому, основным лекарством является именно использование конфигурации "asym", чтобы в дефолтной виртуальной карте работали и ввод, и вывод.


Tags: Linux.


Comments:

No Comments for this post yet...

Leave a comment:

Your email address will not be displayed on this site.
Your URL will not be displayed on this site. Comments containing URL's of non-personal pages may be removed.
Confirmation Code:
Human Confirmation Code (Captcha)

HTML tags and "<", ">" symbols are not allowed. Links will not be converted to hyperlinks. Any commercials are removed and reported as abuse.

Archives

                                                                                                                                                                                                                                                                   
June 2017
Mon Tue Wed Thu Fri Sat Sun
<<  <   >  >>
      1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30    

Blogs :

Search :

Misc

Powered by


© Sergey A. Galin, 1998-2004 http://sageshome.net/b2e/blogs/