Re: mplayer и вывод звука
Murat D. Kadirov wrote:
> 2. Снять шнурок, получать звук с тв-тюнера и передавать его на звуковую
> карту, как-то так: arecord -D hw:1,0 -r 32000 -c 2 -f S16_LE | aplay -
Аналоговый шнурок - на свалку истории. Передача звука цифровым способом -
единственное работающее решение с современными материнскими платами (где
иногда просто нет входа, аналогичного "CD") или современными тюнерами
(особенно USB - нет аналогового выхода). Только реализовывать такую
передачу надо по-умному, а не по-собачьи, т.к. частота дискретизации 32 кГц
с точки зрения тюнера - это 32.001 кГц с точки зрения звуковой карты. Нужен
софт, который определяет настоящее отношение частот и производит
соответствующую передискретизацию (в Windows на чипах SAA7134 вместо этого
софт подстраивает частоту дискретизации на тюнере - но в Linux нет API для
такого действия).
К сожалению, делать адаптивную передискретизацию в Linux умеют только два
плеера: mplayer и vlc. Надо поставить и настроить один из них.
mplayer: добавить в /etc/mplayer/mplayer.conf такие строки:
tv=driver=v4l2:norm=SECAM:width=720:height=576:outfmt=yv12:chanlist=russia:audiorate=32000:alsa=1:amode=1:adevice=hw.1:immediatemode=0:forceaudio=1
radio=adevice=hw=1:arate=32000:achannels=2
rawaudio=rate=32000
vf=pp=hb:a/vb:a/dr:a/fd
Запускать mplayer tv://26 или mplayer radio://103.7/capture . Кроме того,
для просмотра TV без использования командной строки можно пользоваться
KPlayer (очевидно, для KDE).
vlc (собранный из git, т.е. не из Debian, из-за бага, не связанного с TV):
создать такой файл и назвать tv.xspf, а затем открыть его и выбрать нужный
канал:
<?xml version="1.0" encoding="UTF-8"?>
<playlist version="0" xmlns="http://xspf.org/ns/0/">
<trackList>
<track>
<identifier>0</identifier>
<location>v4l2:///dev/video0:standard=1:tuner-frequency=77250:size=720x576:chroma=yv12:channel=0:adev=hw.1:audio=0:samplerate=32000:stereo</location>
<title>ORT</title>
</track>
<track>
<identifier>1</identifier>
<location>v4l2:///dev/video0:standard=1:tuner-frequency=183250:size=720x576:chroma=yv12:channel=0:adev=hw.1:audio=0:samplerate=32000:stereo</location>
<title>RTR</title>
</track>
<track>
<identifier>2</identifier>
<location>v4l2:///dev/video0:standard=1:tuner-frequency=191250:size=720x576:chroma=yv12:channel=0:adev=hw.1:audio=0:samplerate=32000:stereo</location>
<title>NTV</title>
</track>
<!-- и так далее, таблицу частот см. в
http://svn.mplayerhq.hu/mplayer/trunk/stream/frequencies.c?view=markup -->
</trackList>
</playlist>
В старом VLC (из Debian) содержимое тега location будет таким:
<location>v4l:/dev/video0:norm=secam:frequency=77250:size=720x576:chroma=yv12:channel=0:adev=/dev/dsp1:audio=0:samplerate=32000:stereo</location>
--
А.Е. Патраков
Reply to: