Výběr zvukového výstupu/kanálu ze zvukové karty

Problémy a zkušenosti s hardwarem, perifériemi a jejich ovladači
Zamčeno
Zpráva
Autor
NeffCz
Příspěvky: 5
Registrován: 13 čer 2017, 20:54

Výběr zvukového výstupu/kanálu ze zvukové karty

#1 Příspěvek od NeffCz »

Ahoj,

Windows mne již dostatečně vytočil a tak jsem se rozhodl přejít k Linuxu na trvalo... Tudíž v Linuxu jsem začátečník.

Máme PC v obýváku, proto velmi často přepínám zvuk mezi sluchátky a reproduktory. Mám desku MSI Z97M Gaming. Na OS Win po připojení sluchátek do zvukového výstupu se mne SW od zvukové karty zeptal, co jsem připojil, zda sluchátka, nebo něco jiného. Případně se dala vyvolat nabídka a přepnout stero zvuk do patřičného jacku zapojeného do zvukovky.

Je možné toho dosáhnout i v Linuxu(jsem si jistý, že určitě je)? Mohl by mne někdo zkušenější nakopnout správným směrem? Vše co jsem zatím našel, tak se týkalo přepnutí zvuku z HDMI do jacku...

Předem děkuji za odpověď. NeffCz

NeffCz
Příspěvky: 5
Registrován: 13 čer 2017, 20:54

Re: Výběr zvukového výstupu/kanálu ze zvukové karty

#2 Příspěvek od NeffCz »

Pardon, tyto věci jsem úplně zapomněl uvést:

1.
Host: Kernel: 4.4.0-21-generic x86_64 (64 bit gcc: 5.3.1)
Desktop: Cinnamon 3.2.7 (Gtk 3.18.9-1ubuntu3.3) dm: mdm Distro: Linux Mint 18.1 Serena
Machine: Mobo: MSI model: Z97M GAMING (MS-7919) v: 1.0
2.
Vzadu na MB je 7.1 zvukovka. Ve winech jsem měl do dvou výstupů zapojené klasické stolní repro 2.0 a do druhého sluchátka. Pomocí aplikace od zvukovky jsem si dokázal zapnout zvuk do sluchátek a repro jsem normálně vypnul vypínačem.
3.
V Linuxu jsem to nenašel. Možná jsem jen špatně hledal.

Hrál jsem si s amixerem a zjistil, že když ztiším příslušné kanály, jsem schopen pouštět zvuk buď do sluchátek, nebo do repra. Takže si už jen napíšu nějaký scriptík a umístím na hlavní panel. Ale to budu řešit až po příchodu z práce.

NeffCz
Příspěvky: 5
Registrován: 13 čer 2017, 20:54

Re: Výběr zvukového výstupu/kanálu ze zvukové karty

#3 Příspěvek od NeffCz »

Děkuji za rady, pozítří odjíždím na dovolenou, takže si s tím budu hrát posléze. Dám vědět, jak jsem to vyřešil, třeba se to bude někomu hodit.

NeffCz
Příspěvky: 5
Registrován: 13 čer 2017, 20:54

Re: Výběr zvukového výstupu/kanálu ze zvukové karty

#4 Příspěvek od NeffCz »

Zdravím Vás,
takže máme po dovolené a já se tak trochu ponořil do mého problému... Postnu sem, co jsem vytvořil. Třeba to někomu dalšímu pomůže a Vy zkušenější, můžete mi prosím napsat svůj názor, zda jsem postupoval optimálně?

Na mé 7.1 zvukové kartě mám do dvou výstupů zapojené sluchátka a stereo reproduktory. PC máme v obýváku a já často potřebuji přepnout zvuk z repro do sluchátek. Proto jsem si vytvořil tento scriptík(je to můj první pokus v bashi), nakopíroval do /usr/local/bin a v nastavení klávesnice jsem si k němu přiřadil klávesovou zkratku.

Kód: Vybrat vše

#!/bin/bash
#

#####################################################################
# Front:    Repro
# Side:     Headphones
#####################################################################
# Is headphone on?
function headphone_on()
{
    mixer=$(amixer -c 1 get Side | grep 'Front Left:' | cut -d ' ' -f 7 | tr -dc '0-9')
    if [ $mixer -eq 100 ] 
    then
        echo true
    else
        echo false
    fi
}

# echo $(date -u)
# echo sluchatka:  $(amixer -c 1 get Side | grep 'Front Left:' | cut -d ' ' -f 7 | tr -dc '0-9')
# echo repro:  $(amixer -c 1 get Front | grep 'Front Left:' | cut -d ' ' -f 7 | tr -dc '0-9')
# echo h = $(headphone_on)

if [ $(headphone_on) = true ] ; then #headphone on?
# headphone off, speaker on
    #echo přepínám na repro
    printf "\n"
    amixer -c 1 set Front playback 100% unmute
    amixer -c 1 set Side playback 0% unmute
    
else
# headphone on, speaker off
    #echo přepínám na sluchátka
    printf "\n"
    amixer -c 1 set Front playback 0% unmute
    amixer -c 1 set Side playback 100% unmute    
fi

NeffCz
Příspěvky: 5
Registrován: 13 čer 2017, 20:54

Re: Výběr zvukového výstupu/kanálu ze zvukové karty

#5 Příspěvek od NeffCz »

Kód: Vybrat vše

printf "\n"
Tento řádek byl pouze pro debug. Měl jsem ho hodit nahoru před ten "If".

Notify-send se mi líbí, ale nedá se zrušit to zapisování do historie? Prostě aby se pouze zobrazil popup, zmizel a hotovo? Díky Za odpověď.

Zamčeno