Skocz do zawartości

HDMI-CEC - głośność (volume) - znalezione rozwiązanie tymaczsowe


Gość maltrash1
 Udostępnij

Rekomendowane odpowiedzi

Gość maltrash1

Cześć,

 

Zastanawiam się, czy komuś z Was działa regulacja głośności na zewnętrznych urządzeniach przez HDMI-CEC.

Mi działa pięknie włączanie-wyłączanie TV pilotem nbox dekodera. (ścieżka dla CEC: nbox -> TV)

Działa też regulacja głośności pomiędzy TV i kinem domowym za pomocą pilota TV (ścieżka dla CEC: TV -> amplituner)

Niestety nie działa regulacja głośności kina domowego pilotem z nboxa (ścieżka dla CEC: nbox -> TV -> amplituner).

 

Trochę pogrzebałem i znalazłem rozwiązanie tymczasowe. Okazało się, że wpisanie z konsoli nboxa polecenia echo "304441" > /proc/stb/hdmi/cec" pięknie podgłośniło dźwięk amplitunera.

 

Moje rozwiązanie tymczasowe:

- pod klawisze pilota "rewind" i "fastforward" przypisałem odpowiednio następujące "skrypty" (zapisane w "/etc/sysconfig/user_scripts/"):

Jako Volume-Up:

echo "304441" > /proc/stb/hdmi/cec

Jako Volume-Down:

echo "304442" > /proc/stb/hdmi/cec

 

Niestety rozwiązanie to jest mało praktyczne, bo przy starcie skryptu, uruchamia się i niknie okienko, które bardzo skutecznie spowalnia jego działanie. Zmiana głośności na reklamach trwa ładnych kilka sekund - czyli jest niekomfortowa i łatwiej sięgnąć po pilota od TV.

 

Wygląda na to, że sam "CEC" działa dla tej sytuacji poprawnie (bo uruchomiony z konsoli działa), ale nie nie do końca jest skonfigurowany pod regulację głośności.

 

Myślicie że da się to poprawić?

Dzięki temu na moim (i nie tylko) stole mógłbym leżeć tylko jeden pilot zamiast dwóch :)

 

Pozdrawiam

 

 

 

[ EDIT ] -------------->

Wpisałem w wywoływanych skryptach po kilka razy polecenie zwiększające/zmniejszające głośność:

np:

echo "304441" > /proc/stb/hdmi/cec

echo "304441" > /proc/stb/hdmi/cec

echo "304441" > /proc/stb/hdmi/cec

echo "304441" > /proc/stb/hdmi/cec

echo "304441" > /proc/stb/hdmi/cec

 

Działa to trochę lepiej... ale czasem załapie tylko pierwsze wywołanie, a czasem wszystkie wywołania z danego skryptu. Czasem głośność zmienia się o 0,5 dB a czasem o 2,5 dB.

 

Mam nadzieję że komuś się przyda...

 

Odnośnik do komentarza
Udostępnij na innych stronach

  • 4 tygodnie później...

Zastanawiam się, czy komuś z Was działa regulacja głośności na zewnętrznych urządzeniach przez HDMI-CEC.

Mi działa.

 

 

Ja jednak zastanawiam się czemu ten temat prawie nikogo nie zainteresował. Dużo wygodniej jest przecież sterować głośnością amplitunera trzymając w ręku pilot od tunera niż zmniejszając głośność w tunerze (zmniejszyć w sumie zawsze można, a zrobić głośniej często skali brakuje). Tym bardziej, że w ogóle nie działa regulacja głośności ścieżek AC3 (przynajmniej na wyjściu HDMI). Nikt nie słucha tych ścieżek bez downmixu?

Mnie temat zainteresował już dawno (za czasów softów Freeboxa), z tym że nie zrobiłem tego przez skrypty (nawet mi to do głowy nie przyszło), a poprzez modyfikację pliku VolumeControl.py. Np. do zwiększania głośności wystarczyło zamienić linijkę:

self.setVolume(+1)

na

open('/proc/stb/hdmi/cec', 'w').write('354441')

Mój tuner jest podłączony bezpośrednio do amplitunera a nie TV, dlatego użyłem adresu 35 a nie 30 jak Ty.

Analogicznie wystarczyło zmienić linijki dla vol- i mute.

Potem przerobiłem plugin CEC, żeby można w menu włączać lub wyłączać to sterowanie. Na jakiejś wczesnej wersji Graterli też to sobie odpaliłem, ale oczywiście po którejś aktualizacji szlag to trafił. Następnie pojawił się nowy sterownik do CEC, kolejne aktualizacje, instalacje od nowa systemu i tak jakoś porzuciłem temat.

 

Wczoraj przeczytałem Twego posta i pomyślałem, że trzeba wrócić do tematu. W załączniku załączam przerobiony przeze mnie plugin CEC, w którym możemy sobie włączyć Sterowanie volume oraz wybrać adres (typ urządzenia), którym chcemy sterować (nie pamiętam teraz protokołu CEC, dałem możliwość wyboru od 30 do 39). Oczywiście do kompletu jest również przerobiony VolumeControl.pyo. Wystarczy rozpakować plik cec_audio.tar.gz do katalogu głównego, zrestartować GUI i uaktywnić opcję w ustawieniach HDMI CEC. Aktualnie mam tuner, w którym jest nowy typ sterownika CEC i u mnie to działa, ale starałem się tak wprowadzić poprawki, żeby działało też na starym sterowniku. Nie mam jednak jak tego aktualnie przetestować. Teoretycznie powinno być OK, przynajmniej do jakiejś aktualizacji ;)

Z myślą o tej aktualizacji załączam też pliki źródłowe, może ktoś to kiedyś poprawi żeby było bardziej profesjonalnie zrobione i doda do systemu :) .

 

 

Aktualnie to rozwiązanie ma tylko jeden minus: jak zmieniamy głośność nie pojawia się na ekranie pasek głośności. Teoretycznie sam sam pasek mógłbym zrobić żeby był, ale bez informacji zwrotnej z amplitunera o aktualnym poziomie głośności nie ma to raczej większego sensu. Kiedyś próbowałem przechwycić z amplitunera tą informację (teoretycznie w protokole CEC są odpowiednie komendy) ale nie udało się.

 

 

UWAGA! W momencie uaktywnienia opcji sterownia przez HDMI głośność tunera jest ustawiana na 100%.

 

cec_audio.tar.gz

plugin.py

VolumeControl.py

Odnośnik do komentarza
Udostępnij na innych stronach

  • 1 rok później...
Gość maltrash1

Twoje rozwiązanie o wiele bardziej mi się podoba :)

Jestem po testach:

- ustawienie na adres 35 (jak u Ciebie) zadziałało, ale jedno naciśnięcie guzika potrafiło podkręcić o kilka dB na plus/minus

- ustawienie na adres 30 (my way :) ) zadziałało lepiej - jedno naciśnięcie=0,5dB plus lub minus - jest troszkę wolniej, ale jak najbardziej poprawne

 

Działa na obu adresach u mnie bo TV i amplituner też są CECem połączone i pilot od tv realnie steruje głośnością amplitunera.

 

APEL DO ZARZĄDZAJĄCYCH REPOZYTORIUM: DODAJCIE MODYFIKACJĘ KOLEGI GARUSA DO CEC :)

Niech jeszcze parę osób przetestuje dla pewności... ale moim zdaniem jest świetnie.

 

Właśnie zapominam gdzie leżą pozostałe piloty ;)

Odnośnik do komentarza
Udostępnij na innych stronach

  • 4 tygodnie później...

Dołącz do dyskusji

Możesz dodać zawartość już teraz a zarejestrować się później. Jeśli posiadasz już konto, zaloguj się aby dodać zawartość za jego pomocą.

Gość
Dodaj odpowiedź do tematu...

×   Wklejono zawartość z formatowaniem.   Usuń formatowanie

  Dozwolonych jest tylko 75 emoji.

×   Odnośnik został automatycznie osadzony.   Przywróć wyświetlanie jako odnośnik

×   Przywrócono poprzednią zawartość.   Wyczyść edytor

×   Nie możesz bezpośrednio wkleić grafiki. Dodaj lub załącz grafiki z adresu URL.

 Udostępnij

×
×
  • Dodaj nową pozycję...