Здравствуйте.
Мне нужно запустить потоковое вещание с ТВ-тюнера Beholder BeholdTV 509 FM.
Работает тюнер на чипе SAA7134.
Проблем возникало несколько, все они странные, но картинки мне получить так и не удалось.
Использую дистрибутив Ubuntu Server 11.10, вывод команды uname -a:
Linux nyanserv 3.0.0-29-generic-pae #46-Ubuntu SMP Tue Dec 4 12:38:10 UTC 2012 i686 i686 i386 GNU/Linux
Пытался отправить поток с помощью ffserver+ffmpeg и VLC.
При попытке отправить поток с VLC всё вроде бы работает, но, при подключении к потоку видим тупо зелёный экран.
Команда запуска VLC:
vlc -I dummy v4l2:///dev/video0 :input-slave=alsa://hw:0,0 --sout '#transcode{vcodec=mp4v,vb=850,width=300,height=240,acodec=ogg,ab=64} :standard{access=http,mux=ogg,dst=0.0.0.0:9999}'
При попытке оперировать с FFMPEG вообще ничего не выходит. Даже попытка записать в файл не оканчивается успешно:
ffmpeg -an -f video4linux2 -s 320x240 -r 25 -i /dev/video0 -y out.mpg
ffmpeg version git-2012-03-23-adb98a3 Copyright (c) 2000-2012 the FFmpeg developers
built on Mar 23 2012 23:22:24 with gcc 4.6.1
configuration: --enable-gpl --enable-libfaac --enable-libmp3lame --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libtheora --enable-libvorbis --enable-libx264 --enable-nonfree --enable-version3 --enable-x11grab
libavutil 51. 44.100 / 51. 44.100
libavcodec 54. 12.100 / 54. 12.100
libavformat 54. 2.100 / 54. 2.100
libavdevice 53. 4.100 / 53. 4.100
libavfilter 2. 65.102 / 2. 65.102
libswscale 2. 1.100 / 2. 1.100
libswresample 0. 7.100 / 0. 7.100
libpostproc 52. 0.100 / 52. 0.100
[video4linux2,v4l2 @ 0xa10dc40] ioctl set time per frame(1/25) failed
/dev/video0: Input/output error
Естественно, Google был просмотрен от и до.
В dmesg летит куча ошибок:
[ 2472.808021] saa7133[0]: dsp access error
Немного настораживает то, что у меня во всех полях EEPROM одни ff (у других какие-то значения):
[ 323.816034] saa7133[0]: i2c eeprom 00: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
[ 323.816056] saa7133[0]: i2c eeprom 10: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
[ 323.816076] saa7133[0]: i2c eeprom 20: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
[ 323.816096] saa7133[0]: i2c eeprom 30: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
[ 323.816116] saa7133[0]: i2c eeprom 40: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
[ 323.816136] saa7133[0]: i2c eeprom 50: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
[ 323.816156] saa7133[0]: i2c eeprom 60: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
[ 323.816176] saa7133[0]: i2c eeprom 70: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
[ 323.816195] saa7133[0]: i2c eeprom 80: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
[ 323.816215] saa7133[0]: i2c eeprom 90: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
[ 323.816245] saa7133[0]: i2c eeprom a0: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
[ 323.816259] saa7133[0]: i2c eeprom b0: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
[ 323.816274] saa7133[0]: i2c eeprom c0: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
[ 323.816289] saa7133[0]: i2c eeprom d0: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
[ 323.816304] saa7133[0]: i2c eeprom e0: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
[ 323.816318] saa7133[0]: i2c eeprom f0: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
Их я тоже, естественно, прогуглил, но у всех была проблема только со звуком, а видео работало нормально.
При попытке изменить какие-нибудь настройки (например, поменять частоту тюнера), первый раз всё получается, а далее вылетает ошибка:
~$ v4lctl -c /dev/video0 setfreq 195.25
ioctl: VIDIOC_S_CTRL(id=9963785;value=1): Invalid argument
ioctl: VIDIOC_S_CTRL(id=9963785;value=0): Invalid argument
Информация, которую могут востребовать:
~$ lspci
01:02.0 Multimedia controller: Philips Semiconductors SAA7131/SAA7133/SAA7135 Video Broadcast Decoder (rev f0)
Устройства (файлы) /dev/video0, /dev/vbi0 и /dev/radio имеются.
Пожалуйста, подскажитие, как всё-таки смотреть телевизор с ТВ-тюнера без GUI на машине?