# звук в tv (saa7134) и 2.6.17

## bobdva

Есть tv tuner Avermedia 307, смотрелка - tvtime

В 2.6.16 работает хорошо, но не совсем отлично - при переключении каналов звук, словно из трубы (т.е ощущение, что не та частота дискретизации) - а затем, через 2-3 сек приходит всё в норму.

При обновлении до 2.6.17 звук как был из трубы, так и остаётся таковым. Только ОРТ идёт сразу же нормальным.

Что посоветуете подёргать, какие опции модулю saa7134 ?Last edited by bobdva on Sat Aug 05, 2006 4:49 am; edited 2 times in total

----------

## rusxakep

modprobe saa7134-alsa кажется попробуй и поставь по-свежее alsa

----------

## bobdva

 *rusxakep wrote:*   

> modprobe saa7134-alsa кажется попробуй и поставь по-свежее alsa

 

не помогло   :Sad: 

----------

## _al_

У меня была такая же проблема, нашел причину, но общего решения - нет. 

Вот патч к 2.6.17, с которым будет происходить правильный выбор аудио стандарта, когда видео стандарт - secam d. Должно работать со всеми картами на базе saa7134 с подобной проблемой.

патчим в директории drivers/media/video/saa7134

```

diff -uprN 1/saa7134-tvaudio.c 2/saa7134-tvaudio.c

--- 1/saa7134-tvaudio.c   2006-06-21 23:40:43.000000000 +0600

+++ 2/saa7134-tvaudio.c   2006-07-15 10:51:16.000000000 +0600

@@ -140,17 +140,17 @@ static struct saa7134_tvaudio tvaudio[] 

       .carr2         = 5850,

       .mode          = TVAUDIO_NICAM_AM,

    },{

-      .name          = "SECAM-L MONO",

+      .name          = "SECAM-D/K",

       .std           = V4L2_STD_SECAM,

       .carr1         = 6500,

       .carr2         = -1,

-      .mode          = TVAUDIO_AM_MONO,

+      .mode          = TVAUDIO_FM_MONO,

    },{

-      .name          = "SECAM-D/K",

+      .name          = "SECAM-L MONO",

       .std           = V4L2_STD_SECAM,

       .carr1         = 6500,

       .carr2         = -1,

-      .mode          = TVAUDIO_FM_MONO,

+      .mode          = TVAUDIO_AM_MONO,

    },{

       .name          = "NTSC-M",

       .std           = V4L2_STD_NTSC,

```

Clean text file patch http://www.lilo0.nm.ru/patch

----------

## bobdva

 *_al_ wrote:*   

> У меня была такая же проблема, нашел причину, но общего решения - нет. 
> 
> Вот патч к 2.6.17, с которым будет происходить правильный выбор аудио стандарта, когда видео стандарт - secam d. Должно работать со всеми картами на базе saa7134 с подобной проблемой.
> 
> патчим в директории drivers/media/video/saa7134
> ...

 

Спасибо, вот это действительно помогло. Если не секрет - как было обнаружено решение ?

----------

## rusxakep

Вообще-то патчить не надо - надо просто параметр указать в options  :Smile: 

На моем сайте я что-то писал - посмотрите

----------

## bobdva

 *rusxakep wrote:*   

> Вообще-то патчить не надо - надо просто параметр указать в options 
> 
> На моем сайте я что-то писал - посмотрите

 

какой параметр ? alsa = 1 ? не жалейте слов, любезнейший

----------

## rusxakep

ну неужели не понятно из патча?  :Smile:  secam=d конечно

----------

## bobdva

 *rusxakep wrote:*   

> ну неужели не понятно из патча?  secam=d конечно

 

извиняюсь, тупанул... просто помнится, что такой параметр был... может когда убил за ненадобностью - доберусь до дома проверю, есть ли он сейчас

----------

## rusxakep

я просто писал поддержку одной карточки на базе этого филиппского чипа - так что проблема известная.

----------

## bobdva

 *rusxakep wrote:*   

> я просто писал поддержку одной карточки на базе этого филиппского чипа - так что проблема известная.

 

собственно это параметр не для saa7134, а для tda9887 и надо заметить такая опция там стояла - но не помогает...

----------

## rusxakep

у меня сейчас под рукой нет тюнера чтобы проверить то что я скажу, но ты сам подумай что делает этот патч?  :Smile:  Ничего - тока местами переставляет в массиве значения, что не играет роли.

в любом случае включи audio_debug - enable debug messages [tv audio]

и сюда брось что он выводит при старте в messages

в 2.6.16 еще нет SECAM-L MONO btw

----------

## bobdva

 *rusxakep wrote:*   

> у меня сейчас под рукой нет тюнера чтобы проверить то что я скажу, но ты сам подумай что делает этот патч?  Ничего - тока местами переставляет в массиве значения, что не играет роли.
> 
> в любом случае включи audio_debug - enable debug messages [tv audio]
> 
> и сюда брось что он выводит при старте в messages
> ...

 

ok, доберусь до дома - попробую

про параметр secam - modinfo не даёт его в списке параметров для saa7134 и закономертное сообщение "No such option for saa7134" при попытке сделать modprobe saa7134 secam=d

----------

## _al_

Насчет secam=d, да, эта опция должна по идее быть чтобы смотреть наше вещание.

Проблема эта не старая, а как раз новая, появилась вместе с 2.6.17. Разработчики добавили новый аудио формат для secam режима, и, к несчастью, он не работает, но   выбирается автодетектом, и нет никаких еще опций его сменить. Насколько я понял, для PAL режима это нормально и пользователь может выбрать правильный стандарт аудио вещания не в ядре, а на уровне приложения (тот же tvtime). Для secam такого еще нет. 

В данном случае, как ни странно, именно от порядка и зависит, какой режим будет установлен. Поэтому патч нагло ставит на первое место тот режим, который был единственным до 2.6.17. Это никак нельзя считать решением проблемы, скорее временный fix для стран с secam-d стандартом вещания.

----------

## infernoman

Оказывается, что если двинуть SECAM-D/K в самый верх этого списка, то шип, вызванный автодетектом звукового стандарта, исчезнет.

Рулез!

----------

## rusxakep

отписал Николаю Шмыреву. Думаю пофиксят в следующей версии ядра.Last edited by rusxakep on Fri Aug 04, 2006 11:37 am; edited 1 time in total

----------

## rusxakep

Ответ от Николая:

 *Quote:*   

> 
> 
> Да блин, опять разломали. Спасибо за письмо и за патч большое, я думал
> 
> это с настройками проблемы, оказывается это у нас ошибка.
> ...

 

----------

## rusxakep

Hi, folks

I just pushed some fixes for the saa713x sound handling to my personal

repository:

http://linuxtv.org/hg/~hhackmann/v4l-dvb

There are 3 major changes:

- resolve the SECAM-D/K vs SECAM-L conflict.

  It is now possible to choose the exact SECAM version either from

  - the application via the VIDEOIOC_S_STD io control

  - or use the new secam=xx insmod option for saa7134.ko. Valid values

    for the option are L, LC, D (not case sensitive).

- adapt the sound standard search list to the chosen video standard.

  This makes the standard search faster and safer (and resolves the

  D/K vs L conflict)

- don't trigger a sound standard search if sound input is LINE1 or LINE2.

  This simply makes no sense but can cause trouble with the muting.

Some notes:

- If the standard is set in the application, it will be propagated to the

  tuner. So i.e. a secam=l should not be necessary for tuner.ko if it is

  set in the application.

- A sound standard search is still necessary. I.e there are 3 variants of

  PAL-D/K.

- Currently the driver does not try the last used sound standard first.

  This is for safety reasons.

- I.e. tvtime seems to be sloppy with the standard definitions. It seems

  to set V4L2_STD_PAL instead of V4L2_STD_PAL_BG and V4L2_STD_SECAM_BG

  instead of V4L2_STD_SECAM.

I could not test everything the last days - especially not under real life

conditions. I need your help for this.

Sp please test whatever you can. If you report - success or failure - please

don't forget to mention the standard you use resp. the country you are

living in.

I will be on vacation from sunday on. So please be patient if i don't reply

immedeately.

Good luck

  Hartmut

----------

