Linux + AVerMedia TVPhone98 + eth1

На доскональное знание данной темы, не может претендовать, пожалуй ни один спец, из ныне живущих на земле. ;-)
Так поможем друг другу.

Модераторы: Trinity admin`s, Free-lance moderator`s

Ответить
Аватара пользователя
RedScorp
Advanced member
Сообщения: 158
Зарегистрирован: 24 июл 2003, 11:01
Откуда: Западный Казахстан, г.Уральск
Контактная информация:

Linux + AVerMedia TVPhone98 + eth1

Сообщение RedScorp » 22 авг 2006, 09:47

Всем доброго времени суток.

В общем, есть ASP Linux 11 (Linux version 2.6.14-1.1653.1asp) если пользоваться тюнером (старенький AVerMedia TVPhone98) и прогой либо fmio либо просто fm (из набора fmtools), то звук прямо с выхода карты идет нормально. Проблем с картой нет, линь сам ее поднял, я ни чего не делал (в отличие от версии аспа 9.2 - тут я парился долго), вот кусочек dmesg
bttv: driver version 0.9.16 loaded
bttv: using 8 buffers with 2080k (520 pages) each for capture
bttv: Bt8xx card found (0).
PCI: Found IRQ 10 for device 0000:02:0b.0
PCI: Sharing IRQ 10 with 0000:00:1f.4
PCI: Sharing IRQ 10 with 0000:02:0b.1
bttv0: Bt878 (rev 17) at 0000:02:0b.0, irq: 10, latency: 32, mmio: 0xf46fe000
bttv0: detected: AVerMedia TVPhone98 [card=41], PCI subsystem ID is 1461:0003
bttv0: using: AVerMedia TVPhone 98 [card=41,autodetected]
bttv0: gpio: en=00000000, out=00000000 in=00ccfff3 [init]
bttv0: Avermedia eeprom[0x4821]: tuner=5 radio:yes remote control:yes
bttv0: using tuner=5
bttv0: i2c: checking for MSP34xx @ 0x80... not found
bttv0: i2c: checking for TDA9875 @ 0xb0... not found
bttv0: i2c: checking for TDA7432 @ 0x8a... not found
bttv0: i2c: checking for TDA9887 @ 0x86... not found
tuner 1-0061: chip found @ 0xc2 (bt878 #0 [sw])
tuner 1-0061: type set to 5 (Philips PAL_BG (FI1216 and compatibles))
bttv0: registered device video0
bttv0: registered device vbi0
bttv0: registered device radio0
bttv0: PLL: 28636363 => 35468950 .. ok
bttv0: add subdevice "remote0"
bt878: AUDIO driver version 0.0.0 loaded
bt878: Bt878 AUDIO function found (0).
PCI: Found IRQ 10 for device 0000:02:0b.1
PCI: Sharing IRQ 10 with 0000:00:1f.4
PCI: Sharing IRQ 10 with 0000:02:0b.0
bt878(0): Bt878 (rev 17) at 02:0b.1, irq: 10, latency: 32, memory: 0xf46ff000
Дальше прикручиваем либо icecast либо shoutcast (sc_serv) для вещания потока в локаль (и то и другое работает если скармливать файлики, тут даже звуковая не нужна, правда icecast по сложнее в конфигурации).
Но вот хочется загнать все же радио поток, да еще чтобы вообще без звуковой. Пробовал ставить darkice и указать ему вместо девайса /dev/dsp мой /dev/radio0 ругается мол
Using OOS DSP input device: /dev/radio0
Using POSIX real-time scheduling, priority 98
DarkIce: OssDspSource.cpp:196: can't set fornmat [16]
Тогда скачал ShoutCast TransPosix (sc_trans_linux) и в плане настроек использовал опыт людей см. тут в общем при запуске у меня sc_trans отваливается сражу же... Может просто при привязке потока в sox надо указать что другое, не ossdsp. Но радио продолжает вещать в наушниках (подключенных к карте). Кто знает, помогите разобраться... Просто скучно сидеть без радио, да еще хочется поделиться с друзьями... Может есть другой способ или еще что, в общем жду Ваших советов. Если что надо выложить - говорите, я на связи...

Аватара пользователя
RedScorp
Advanced member
Сообщения: 158
Зарегистрирован: 24 июл 2003, 11:01
Откуда: Западный Казахстан, г.Уральск
Контактная информация:

Сообщение RedScorp » 22 авг 2006, 16:22

В общем в моем /etc/modprobe.conf
alias char-major-81 bttv
options bttv card=41 tuner=5 radio=1

было, но посоветовали дописать:

alias snd-card-2 snd-bt87x
options snd-bt87x index=2 id="tuner"
Мой AVerMedia TVPhone98/TVCapture "построен" на чипе Conexant Fusion 878A (25878-13).
Но на сколько я понял мне нужно устройство получить /dev/dsp (/dev/dsp0). После указания доп.строк и ребута вот что появилось - появилась папка в /dev - "snd", а в ней (ls -al /dev/snd)
crw------- 1 root root 116, 1 Авг 22 2006 seq
crw------- 1 root root 116, 33 Авг 22 2006 timer
далее по команде lsmod теперь видно вот что
video 16197 0
bt878 10681 0
tuner 39029 0
tvaudio 23517 0
bttv 165297 1 bt878
video_buf 21957 1 bttv
i2c_algo_bit 9289 1 bttv
v4l2_common 5953 1 bttv
btcx_risc 5065 1 bttv
tveeprom 13649 1 bttv
videodev 9665 1 bttv
i2c_i801 9165 0
i2c_core 22081 6 tuner,tvaudio,bttv,i2c_algo_bit,tveeprom,i2c_i801
snd_bt87x 14857 0
snd_seq_dummy 4037 0
snd_seq_oss 33857 0
snd_seq_midi_event 7105 1 snd_seq_oss
snd_seq 50385 5 snd_seq_dummy,snd_seq_oss,snd_seq_midi_event
snd_seq_device 9293 3 snd_seq_dummy,snd_seq_oss,snd_seq
snd_pcm_oss 50529 0
snd_mixer_oss 18241 1 snd_pcm_oss
snd_pcm 87365 2 snd_bt87x,snd_pcm_oss
snd_timer 25157 2 snd_seq,snd_pcm
snd 56229 9 snd_bt87x,snd_seq_dummy,snd_seq_oss,snd_seq,snd_seq_device,snd_pcm_oss,snd_mixer_oss,snd_pcm,snd_timer
soundcore 9889 1 snd
snd_page_alloc 10825 2 snd_bt87x,snd_pcm
все что касается "snd_" появилось после добавления указанных строк. Но увы, далее я пока все еще в тупике. Называется хотел обойтись без звуковой, и тут пока не получилось...

все махинации с modprobe творил по мере рытья инфы в инете, но вот на счет "обхода звуковой" через snd-bt87x подсказали на asplinux.ru, но опять же дальше пока тишина... Ребят не ужели ни кто не сталкивался?

Аватара пользователя
RedScorp
Advanced member
Сообщения: 158
Зарегистрирован: 24 июл 2003, 11:01
Откуда: Западный Казахстан, г.Уральск
Контактная информация:

Сообщение RedScorp » 23 авг 2006, 12:13

В общем дело обстоит так. Добрый человек кое что нашел и предложил попробовать.
## bttv
alias char-major-81 bttv
options bttv card=41 tuner=5 radio=1
## alsa
alias char-major-116 snd
## oss
alias snd-card-1 snd-bt87x
alias sound-slot-1 snd-card-1
options snd-bt87x index=1 id="tuner"
alias sound-service-1-0 snd-mixer-oss
alias sound-service-1-1 snd-seq-oss
alias sound-service-1-3 snd-pcm-oss
alias sound-service-1-8 snd-seq-oss
alias sound-service-1-12 snd-pcm-oss
К сожалению, программа sox умеет работать только через OSS. Следовательно надо получить все же /dev/dspN. Хотя есть способ описанный людьми, но... В общем звук можно зацепить и драйвером bttv, но для этого надо написать такой modules.conf
##bttv
alias char-major-81 bttv
pre-install bttv modprobe -k tuner
post-install bttv modprobe -k btaudio
options bttv card=41 tuner=5 radio=1
options tuner type=5 debug=1
Но дело в том что:
1. если прописать все это в modules.conf, то тюнер не виден ситемой (такое ощущение что этот файл вообще не читается при загрузке)
2. если прописать все это в modprobe.conf незя делать pre- & post- install
3. если делать modprobe btaudio в итоге имеем
FATAL: Module btaudio not found.
Везде говорится что данный модуль берется из сырцов bttv, но увы чет я там его не нашел...

Аватара пользователя
Stranger03
Сотрудник Тринити
Сотрудник Тринити
Сообщения: 12979
Зарегистрирован: 14 ноя 2003, 16:25
Откуда: СПб, Екатеринбург
Контактная информация:

Сообщение Stranger03 » 23 авг 2006, 12:19

RedScorp писал(а):В общем дело обстоит так. Добрый человек кое что нашел и предложил попробовать.
У нас по линухе Setar мегачеловек, но он сейчас в отпуске. Вроде как будет в понедельник, может чего посоветует.

Аватара пользователя
RedScorp
Advanced member
Сообщения: 158
Зарегистрирован: 24 июл 2003, 11:01
Откуда: Западный Казахстан, г.Уральск
Контактная информация:

Сообщение RedScorp » 23 авг 2006, 21:37

Stranger03 писал(а):У нас по линухе Setar мегачеловек
Да это я знаю, я честно говоря многим обязан ему (в части конфигов, советов и уроков) и всегда очень признателен. Пусть малость будет оффтопа, но очень очень жаль что таких людей мало (я не имею в виду только линь, я вообще про жизнь и каждую сферу деятельности).

А терь по поводу вещания радио с FM тюнера прямо в сеть (минуя звуковую). Долго читал всякую инфу по поводу ALSA и вот что нашел
В ALSA есть драйвер (snd-dummy) эмулирующий звуковую карту. Ни одна программа не вывалится из за отсутствия звуковой карты.
Щас как же... у меня при подключении данного модуля вооще линю башню свернуло, помог тока ребут и то не командой, а заветной комбинацией клавиш. Ладно едем дальше. Все тот же человек подсказал еще, что:
btaudio - это аналог snd-bt87x, но только для OSS. В свою очеред уровень OSS в ядрах 2.6.x по умолчанию исключен.
Опаньки... Вот тебе и новость. Ну и фигли?! Сырцы есть - щаз перекомпилим ядро. Лезем в сырцы и make menuconfig, оказывается действительно не стоит ни чего из Open Sound System. Ставим <M> и вот он наш заветный список, где в самом верху красуется bt878 audio. Ура, сейв, далее:
make dep; make clean; make & make install
и... и вот тут то грабли:
make[1]: Нет правил для сборки цели `init/main.o', требуемой для `init/built-in.o'. Останов.
make: *** [init] Ошибка 2
Блин, просто полоса невезения (Кстати натыкался на такую же ошибку при компиляции в ядре у ASP Linux Server IV, может совпадение, а может и нет, правда так совсем другая тема была).

Ладно попробую вернуться к OSS. Залез на сайт www.opensound.com и скачал от туда "OSS for linux_26_regparm", но как выяснилось позже это увы не Open продукт, а комерческий! и требует лицензию! Но после его установки в системе появились как /dev/dspN так и /dev/audioN. Однако проверить работу с тюнером пока не удалось. Рабочий день кончился. Так что с нетерпением жду утра и надеюсь за ночь с сервером ни чего случится...

Ответить

Вернуться в «Серверы - ПО, Unix подобные системы»

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и 16 гостей