Scheda Tv ati tv-wonder b878t [RISOLTO]

Usate questo forum per richieste di aiuto e consigli sull'hardware montato nelle vostre macchine con GNU/Linux Slackware.

Moderatore: Staff

Regole del forum
1) Citare sempre la versione di Slackware usata e la versione del Kernel. Questi dati aiutano le persone che possono rispondere.
2) Citare il tipo di hardware coinvolto in modo dettagliato.
3) Leggere attentamente le risposte ricevute
4) Scrivere i messaggi con il colore di default, evitare altri colori.
5) Scrivere in Italiano o in Inglese, se possibile grammaticalmente corretto, evitate stili di scrittura poco chiari, quindi nessuna abbreviazione tipo telegramma o scrittura stile SMS o CHAT. Non usare termini gergali come procio, mobo e simili per identificare i componenti hardware.
6) Appena registrati è consigliato presentarsi nel forum dedicato.

La non osservanza delle regole porta a provvedimenti di vari tipo da parte dello staff, in particolare la non osservanza della regola 5 porta alla cancellazione del post e alla segnalazione dell'utente. In caso di recidività l'utente rischia il ban temporaneo.
Rispondi
Avatar utente
algol
Linux 3.x
Linux 3.x
Messaggi: 969
Iscritto il: gio 7 set 2006, 1:19
Slackware: 12.1
Kernel: 2.6.26.1
Desktop: xfce4.4.2

Scheda Tv ati tv-wonder b878t [RISOLTO]

Messaggio da algol »

Salve
Scrivo questo post a futuro aiuto di chi dovesse trovarsi nei miei panni; ho messo un titolo quanto più d'aiuto... :D
Ci sono vari post nel forum, ma sono vecchi (vabbè, anche la scheda lo è... :D) ma non sono riusciti ad aiutarmi...

Comunque, ho preso per potenti 7 euro a un mercatino una

Codice: Seleziona tutto

#lspci -vv

02:0d.0 Multimedia video controller: Brooktree Corporation Bt878 Video Capture (rev 02)
	Subsystem: ATI Technologies Inc Unknown device 0001
	Flags: bus master, medium devsel, latency 32, IRQ 23
	Memory at e5000000 (32-bit, prefetchable) [size=4K]

02:0d.1 Multimedia controller: Brooktree Corporation Bt878 Audio Capture (rev 02)
	Subsystem: ATI Technologies Inc TV-Wonder
	Flags: bus master, medium devsel, latency 32, IRQ 23
	Memory at e4800000 (32-bit, prefetchable) [size=4K]
Ebbene, per farla funzionare si deve:
- includere il modulo bt848 (device drivers, multimedia devices, video capture adapters) avendo ovviamente anche video for linux; il modulo Bt87x Audio Capture nella sezione audio, alsa
- caricare v4l in xorg.conf

Codice: Seleziona tutto

Section "Module"
 Load           "v4l"
EndSection
- al riavvio, scaricare il modulo bttv e ricaricarlo con l'id della propria scheda (visibile in http://mythtv.org/wiki/index.php/Bttv#Card_Values ); sicuramente c'è un modo per fissare questo parametro in un file di configurazione, chiedo aiuto...
- per far funzionare l'audio, bisogna fare una piccola magagna, descritta qui: http://tvtime.sourceforge.net/help.html#audioconnect ; a me il primo dispositivo è dsp1 e non dsp2

Così, con kdetv o tvlive funziona, e al cambio del canale cambia anche l'audio, anche se talvolta va un po' a scatti e con un effetto ripetizione tipo "disco incagliato".

Altro link utile: http://www.ibiblio.org/pub/Linux/docs/H ... /BTTV.html

Poi, ho visto che con mplayer si può vedere, anche se un comando come

Codice: Seleziona tutto

mplayer tv:// -ao sdl -tv driver=v4l2:device=/dev/video0:immediatemode=0
a me fa crashare mplayer

Codice: Seleziona tutto

*** glibc detected *** mplayer: double free or corruption (out): 0x0894dd58 ***
======= Backtrace: =========
/lib/libc.so.6[0xb6dfec23]
/lib/libc.so.6(cfree+0x90)[0xb6e020f0]
mplayer[0x822a7ca]
======= Memory map: ========
...
...
...lungo elenco
Domandina: e per registrare? A parte uno screen grabber... :o
Il fatto che l'audio faccia quel giro può creare difficoltà?

Avatar utente
py67
Linux 2.x
Linux 2.x
Messaggi: 489
Iscritto il: mar 4 ott 2005, 18:34

Re: Scheda Tv ati tv-wonder b878t [RISOLTO]

Messaggio da py67 »

Hai provato ad usare Kaffeine? Io ho una Sk tv Sattelletare, il mio me lo riconosce in automatico. Uso kaffeine e registro i programmi che mi interessano.

Avatar utente
natostanco
Linux 1.x
Linux 1.x
Messaggi: 185
Iscritto il: mer 25 ott 2006, 17:47
Slackware: 12.1
Kernel: 2.6.27.7
Desktop: KDE 3.5.9
Località: TV / UD

Re: Scheda Tv ati tv-wonder b878t [RISOLTO]

Messaggio da natostanco »

algol ha scritto:Domandina: e per registrare? A parte uno screen grabber... :o
Il fatto che l'audio faccia quel giro può creare difficoltà?
Se funziona come la mia (basata su saa7134) no!
Anche io devo seguire quel procedimento se voglio sentire l'audio se guardo la tv analogica. Pero per registrare, registra senza problemi con mencoder.
Questo è il comando che uso per ottenere un file avi in 640x480 (divx+mp3):

Codice: Seleziona tutto

mencoder tv:// -tv driver=v4l2:input=0:width=640:height=480:forceaudio:audiorate=32000:adevice=/dev/dsp1:amode=1:fps=25:forcechan=1 -oac mp3lame -ovc lavc -lavcopts vcodec=mpeg4:vqscale=4:keyint=12 -lameopts cbr:br=128 -ffourcc DX50 -o nomefile.avi
Prova ad adattarlo al tuo hardware.
Saluti.

Avatar utente
algol
Linux 3.x
Linux 3.x
Messaggi: 969
Iscritto il: gio 7 set 2006, 1:19
Slackware: 12.1
Kernel: 2.6.26.1
Desktop: xfce4.4.2

Re: Scheda Tv ati tv-wonder b878t [RISOLTO]

Messaggio da algol »

Natostanco, grazie!
mencoder funziona molto bene, anche se l'audio sembra venire un po' strano, avrebbe tipo bisogno di essere lowpassato... ma è in sync; dove tende ad avere lag è nella procedura di rerouting con sox

Codice: Seleziona tutto

 sox -r 32000 -w -t ossdsp /dev/dsp1 -t ossdsp /dev/dsp
infatti l'audio con i suoi incagliamenti tende ad accumulare sempre più ritardo rispetto al video; portando il rate a 44100 ciò si riduce ma dopo tipo cinque minuti l'audio ha già un lag di quasi un secondo.

C'è un bel modo semplice semplice per fare uno script che, ad esempio, avvii il comando summenzionato, ed ogni 3 minuti ad esempio, lo killi e lo riavvii?
Stavo pensando a un ciclo for o un while con dentro uno sleep.. il "problema" (cioè per me che so una mezza mazza di bash) è che per un comando che inizia e finisce, basta un "while [ 1 ] do comando sleep done", ma qui dovrei killare e riavviare...
Forse dovrei pensare a cron?

Avatar utente
natostanco
Linux 1.x
Linux 1.x
Messaggi: 185
Iscritto il: mer 25 ott 2006, 17:47
Slackware: 12.1
Kernel: 2.6.27.7
Desktop: KDE 3.5.9
Località: TV / UD

Re: Scheda Tv ati tv-wonder b878t [RISOLTO]

Messaggio da natostanco »

Per la registrazione: prova a togliere dalla riga che ti ho postato il parametro "audiorate=3200" e ascolta se il sonoro migliora.
Per la riproduzione: prova a correlare sox con arecord in questo modo:

Codice: Seleziona tutto

arecord -D hw:1,0 -r 32000 -c 2 -f S16_LE | sox -q -c 2 -r 32000 -w -t wav - -t alsa hw:0,0
(ovviamente adattando i vari parametri alla tua configurazione) e verifica se migliora il sincronismo.
Saluti

Avatar utente
algol
Linux 3.x
Linux 3.x
Messaggi: 969
Iscritto il: gio 7 set 2006, 1:19
Slackware: 12.1
Kernel: 2.6.26.1
Desktop: xfce4.4.2

Re: Scheda Tv ati tv-wonder b878t [RISOLTO]

Messaggio da algol »

Ciao
il tuo metodo fa sì che l'audio regga decisamente un po' di più, ma comunque col tempo si accumula un lag fastidioso...
Mi spiegheresti come mai quella pipe da arecord a sox rende l'audio più stabile??
Come mai non figura più ossdsp?

Comunque ho trovato un rozzo metodo per fare quello che intendevo: salvo la tua stringa in un file tv_audio_script.sh, poi ne faccio un altro così:

Codice: Seleziona tutto

#!/bin/bash
while [ 1 ]
do
sh tv_audio_script.sh&
sleep 5m
killall sox
killall arecord

done
Fondamentale che lo script sia portato in background; così ho una brevissima interruzione ogni 5 minuti, che per vedere e non registrare, è altamente accettabile

Se però non volessi killare indiscriminatamente sox ed arecord, anche se è improbabile che ne abbia in esecuzione altre istanze nel contempo, come dovrei fare? Vorrei poter vedere in esecuzione lo script piuttosto che i comandi al suo interno.
Ho provato anche a mettere la roba nello script di sopra in una funzione, ma il risultato non cambia, in top sempre vedo visibili sox, arecord e sleep, oltre ai due script, ma come argomenti di sh, o di bash se li marco eseguibili e li eseguo...

Avatar utente
natostanco
Linux 1.x
Linux 1.x
Messaggi: 185
Iscritto il: mer 25 ott 2006, 17:47
Slackware: 12.1
Kernel: 2.6.27.7
Desktop: KDE 3.5.9
Località: TV / UD

Re: Scheda Tv ati tv-wonder b878t [RISOLTO]

Messaggio da natostanco »

algol ha scritto: Mi spiegheresti come mai quella pipe da arecord a sox rende l'audio più stabile??
Effettivamente non l'ho ben capito nemmeno io :oops:
Ho trovato quella riga nella documentazione di V4L, effettivamente con la mia scheda sox non produce problemi di sincronia, però usandolo ottengo un audio monofonico. Invece se uso arecord da solo l'audio è stereo ma tende a "restare indietro" rispetto al video. Usandoli insieme ho sincronia e stereofonia. \:D/
Speravo si potesse adattare anche alla tua scheda, evidentemente non è così.
Ossdsp non compare perché uso direttamente alsa come output e non l'emulazione di OSS di alsa. Se però hai problemi di latenza, forse è meglio usare ossdsp.
Saluti

Rispondi