Sound input in S-Video saa7134 AVerMedia Cardbus
5 answers - 2069 bytes -

Hi guys and thanks for help.
I tried to update driver as per advice by Hartmut from linuxtv.org , but after I re-compiling the driver I lost the sound even on TV, so I went to downgrade to original driver so at least TV sound again works. I used these files for upgrade.
Jun 8 13:40 saa7134-oss.c
Jun 8 13:40 saa7134-tvaudio.c
for this exercise.
Normally I use sox -t ossdsp -w -r 32000 -c 2 /dev/sound/dsp5 -t ossdsp /dev/sound/dsp as I don't have hw audio out in my TV card.
Would you have another idea how to continue?
Hi,
Please update the driver from the cvs at linuxtv.org.
About a week ago, i checked in a bug fix for the SS sound
routing. The affected files are saa7134-tvaudio.c and
saa7134-oss.c
Please be also aware that the driver supports only 1 format
for digital sound routing:
2 channels, 16bit signed, 32kHz sampling rate, so the appropriate
sox command is:
soc -c 2 -s -w -r 32000 -t ossdsp /dev/dsp1 -t ossdsp /dev/dsp
By the way, the saa 7133 section has the same bug, i will check in
the fix the next days.
Good luck
Hartmut
Bartos wrote:
Hi,
I use AVerMedia Cardbus TV (E500) and I'd like to use also S-video. This party works, means I have video with excelent quality but I don't hear any sound. To be exact I hear the sound that is TV sound and coming from TV source. Does anybody can help me what to do, to be able switch between TV and S-Video sound inputs?
My driver setup is attached.
Thanks
saa7134-cards.c
[SAA7134_BARD_AVERMEDIA_CARDBUS] = {
/* Kees.Blom@xxxxxx */
.name = "AVerMedia Cardbus TV (E500)",
.audio_clock = 0x187de7,
.tuner_type = TUNER_PHILIPS_TDA8290,
.inputs = {{
.name = name_tv,
.vmux = 1,
.amux = LINE2,
.tv = 1,
},{
.name = name_comp1,
.vmux = 3,
.amux = LINE2,
},{
.name = name_svideo,
.vmux = 8,
.amux = LINE2,
}},
.radio = {
.name = name_radio,
.amux = LINE1,
},
},
No.1 | | 1431 bytes |
| 
Hi,
I tried to update driver as per advice by Hartmut from linuxtv.org , but after
I re-compiling the driver I lost the sound even on TV, so I went to downgrade to
original driver so at least TV sound again works. I used these files for upgrade.
Jun 8 13:40 saa7134-oss.c
Jun 8 13:40 saa7134-tvaudio.c
I was totally wrong with the date. There is a mistake in the config entry
for your card, see below. If i remember things correctly, sound routing did
only work for TV previously, this explains why you did not recognise this
previously. I don't know the defaults of sox, but the only streaming
format supported now is 16bit signed, 2 channels 32 kHz. For sox this is
sox -c 2 -s -w -r 32000 . . .
When you try the sound routing, you might use i.e. gaumux to modify the
channel assignment.
But you will definitely need the patch.
good luck
Hartmut
saa7134-cards.c
[SAA7134_BARD_AVERMEDIA_CARDBUS] = {
/* Kees.Blom@xxxxxx */
.name = "AVerMedia Cardbus TV (E500)",
.audio_clock = 0x187de7,
.tuner_type = TUNER_PHILIPS_TDA8290,
.inputs = {{
.name = name_tv,
.vmux = 1,
.amux = LINE2,
amux must be TV in your case
.tv = 1,
},{
.name = name_comp1,
.vmux = 3,
.amux = LINE2,
},{
.name = name_svideo,
.vmux = 8,
.amux = LINE2,
}},
.radio = {
.name = name_radio,
.amux = LINE1,
},
},
No.2 | | 2755 bytes |
| 
Hi Hartmut,
I also own an AVerMedia Cardbus E500 and mailed to this list on March
29, 2005
what I did to make this card work (with some problems left) for Linux.
Following your instructions, I downloaded these files from linuxtv.org:
saa7134-oss.c,v 1.14 2005/05/18 22:45:16 hhackmann
saa7134-tvaudio.c,v 1.23 2005/05/18 22:46:17 hhackmann
and set .amux = TV.
After compiling and loading the module saa7134, the commands:
tvtime /dev/mixer:vol&
sox -c 2 -s -w -r 32000 -t ossdsp /dev/dsp2 -t ossdsp -w -r 32000 /dev/dsp &
starts tvtime with sound and sound is now restored when changing channels.
The only flaw left is that, when changing channel, during ~1 sec. sound
of the new channel
is heard, followed by ~1 sec. of noise, whereafter sound is restored
properly.
Thank you very much for the update.
Kees Blom.
Hartmut Hackmann wrote:
Hi,
>
>I tried to update driver as per advice by Hartmut from linuxtv.org ,
>but after I re-compiling the driver I lost the sound even on TV, so I
>went to downgrade to original driver so at least TV sound again
>works. I used these files for upgrade.
>>
>Jun 8 13:40 saa7134-oss.c
>Jun 8 13:40 saa7134-tvaudio.c
>>
I was totally wrong with the date. There is a mistake in the config entry
for your card, see below. If i remember things correctly, sound
routing did
only work for TV previously, this explains why you did not recognise this
previously. I don't know the defaults of sox, but the only streaming
format supported now is 16bit signed, 2 channels 32 kHz. For sox this is
sox -c 2 -s -w -r 32000 . . .
When you try the sound routing, you might use i.e. gaumux to modify the
channel assignment.
But you will definitely need the patch.
good luck
Hartmut
>
>saa7134-cards.c
>>
>[SAA7134_BARD_AVERMEDIA_CARDBUS] = {
>/* Kees.Blom@xxxxxx */
>.name = "AVerMedia Cardbus TV (E500)",
>.audio_clock = 0x187de7,
>.tuner_type = TUNER_PHILIPS_TDA8290,
>.inputs = {{
>.name = name_tv,
>.vmux = 1,
>.amux = LINE2,
>
.amux must be TV in your case
>
>.tv = 1,
>},{
>.name = name_comp1,
>.vmux = 3,
>.amux = LINE2,
>},{
>.name = name_svideo,
>.vmux = 8,
>.amux = LINE2,
>}},
>.radio = {
>.name = name_radio,
>.amux = LINE1,
>},
>},
>>
>--
>
>
No.3 | | 874 bytes |
| 
Hi, Kees
starts tvtime with sound and sound is now restored when changing channels.
The only flaw left is that, when changing channel, during ~1 sec. sound
of the new channel
is heard, followed by ~1 sec. of noise, whereafter sound is restored
properly.
That sounds odd. Are you shure that it is not just the lag that occurs due
to the digital streaming?
The patch i made does not more than change the data routing inside the chip
and i assume that the streaming just goes on without interruption, The
saa7134/33/35 internally have only small buffers of less than 1/2k to
overcome the pci latency.
BTW: We really need a tv application that can handle digital sound
streaming including a lag compensation (actually delay the video by at
least 1/2 seconds. Is anybody working on such a project?
Best regards
Hartmut
No.4 | | 1786 bytes |
| 
Hi Hartmut,
the noise I hear when changing channels has nothing to do with your changes.
Without these changes, Bartos found that with sox running, when
pressing 'M' (Mute) in tvtime, after some noise sound was restored as well.
It's just another problem, I guess.
Further, with proper settings of "sox", there is hardly any noticeable
delay (lag)
of the sound w.r.t. the picture on my 1.6GHz machine. I use now:
sox -c 2 -s -w -r 32000 -t ossdsp /dev/dsp2 -c 2 -r32000 -t ossdsp /dev/dsp&
If you don't specify the same arguments for the sox output as for the input,
sox assumes its defaults for the output, which may result in audio data
conversions
by sox, implying delay of the sound.
Thank you and best regards,
Kees.
Hartmut Hackmann wrote:
Hi, Kees
>
>starts tvtime with sound and sound is now restored when changing
>channels.
>The only flaw left is that, when changing channel, during ~1 sec.
>sound of the new channel
>is heard, followed by ~1 sec. of noise, whereafter sound is restored
>properly.
>
>
That sounds odd. Are you shure that it is not just the lag that occurs
due
to the digital streaming?
The patch i made does not more than change the data routing inside the
chip
and i assume that the streaming just goes on without interruption, The
saa7134/33/35 internally have only small buffers of less than 1/2k to
overcome the pci latency.
BTW: We really need a tv application that can handle digital sound
streaming including a lag compensation (actually delay the video by at
least 1/2 seconds. Is anybody working on such a project?
Best regards
Hartmut
No.5 | | 449 bytes |
| 
, 11/06/2005 01:35 +0200, Kees Blom :
Hi Hartmut,
I also own an AVerMedia Cardbus E500 and mailed to this list on March
29, 2005
what I did to make this card work (with some problems left) for Linux.
Hi
Since card entry looks basically right, I've merged it in v4l CVS,
please test. Probably, your problems with sound can be solved with gpio,
look at fields .gpio and .gpiomask in other card's entries.