Riproduci l'audio attraverso due o più uscite / dispositivi


79

Penso che questo sia un concetto piuttosto semplice. Ho una scheda audio e un paio di cuffie bluetooth. Voglio riprodurre il mio audio sia attraverso la mia scheda audio che le mie cuffie bluetooth.

Credo che Windows abbia delle caselle di controllo che ti permettono di "controllare" le uscite per abilitarle / disabilitarle, ma Ubuntu sembra avere l'equivalente dei selettori radio (puoi selezionarne solo uno alla volta).

Domanda bonus: su una nota simile, ho 5 canali di uscita analogici sulla mia scheda audio (oltre al mio audio digitale e HDMI) - Vorrei essere in grado di determinare cosa esce da ciascuna di quelle porte (ad esempio "frontale altoparlanti "su tutti i 5 o" frontali "," centrali "," posteriori ", ecc.).

Grazie in anticipo!


Ho letto tutte le risposte, controllando anche la data di risposta. Qual è la soluzione attuale per Ubuntu 18.04?
LeonidMew

Sì, la versione dei paprefsrepository Ubuntu 18.04 è inutile (perché pensa ancora che GConf sia di moda e quindi non funzioni). La migliore alternativa è, sai, caricare module-combine-sinktu stesso PulseAudio (perché comunque è tutto paprefsdietro le quinte). Usa il comando pactl load-module module-combine-sinke controlla la sezione Suoni delle Impostazioni di Ubuntu.
AneesAhmed777 l'

Risposte:


88

Con paprefsl'accesso a un dispositivo di output virtuale che consente l'uscita simultanea su tutte le schede / dispositivi audio collegati:

sudo apt install paprefs 

Quindi, in esecuzione terminale paprefs, selezionare la scheda "Uscita simultanea" e selezionare "Aggiungi uscita virtuale per l'uscita simultanea su tutte le schede audio locali".

paprefs

Il dispositivo di uscita audio creato in aggiunta per l'uscita simultanea può essere selezionato nella scheda "Uscita" dal menu delle preferenze audio di pulseaudio:

inserisci qui la descrizione dell'immagine

In questo esempio viene mostrato per un dispositivo HDMI ma non appena viene riconosciuto il dispositivo Bluetooth sarà disponibile anche per l'uscita simultanea.

Le modifiche potrebbero richiedere un riavvio di pulseaudio per rendere effettive la disconnessione e il ritorno alla sessione o l'esecuzione pulseaudio -kin un terminale.


1
Questo porta a termine il lavoro. Mentre approfondisco lo sviluppo dell'audio, mi piacerebbe davvero poter selezionare dispositivi e / o porte specifici.
Nathan JB,

1
@ NathanJ.Brauer: potresti essere interessato a questa risposta . Per cambiare le porte vedi anche il wiki pulseaudio che ho collegato lì.
Takkat,

1
oh non importa sudo apt install paprefsfunziona
Tatsu

2
questo non funziona per me nel 18.04. Se sai come posso farlo con ALSA, per favore aiutami qui: askubuntu.com/q/1042485/586277
ICE

2
non funziona per me in Ubuntu 16.04. Non vedo nessuna opzione come "Uscita simultanea" nella finestra delle preferenze audio
node_man

21

Ubuntu

Ho appena confermato che questa soluzione (di 4 anni fa) funziona ancora su Ubuntu 14.04 LTS.

Installare

Apri il terminale e digita sudo apt-get install paprefsvai alla scheda esattamente come nella figura sopra e seleziona l'opzione.

Esecuzione iniziale

Poi; rimanendo nel terminale, digitare pulseaudio -kper terminare e riavviare pulseaudio.

Quindi vai alle tue impostazioni audio e vedrai l'opzione per l'output su più dispositivi audio.

Props per chiunque abbia scritto paprefs è un piccolo software geniale che vorrei vedere incluso in Ubuntu senza richiedere installazione aggiuntiva.

Apple Mac OS X.

Una soluzione simile è disponibile tramite un software incluso e la cosa più grande pulseaudioè che il suono sembra perfettamente sincronizzato da entrambe le uscite, quindi deve adattarsi anche al ritardo, motivo per cui è così impressionante; altrimenti sentiremmo una versione leggermente ritardata da un output e un altro.


1
grazie per fare il lavoro per verificare se la soluzione è ancora valida!
Peter Karasev,

2
Questo funziona anche su Ubuntu 16.04.1 LTS
aggsol

5

Per completare l'eccellente risposta di Takkat, ho scoperto che il nome predefinito assegnato al nuovo dispositivo era eccessivamente lungo e distorto la finestra di dialogo Impostazioni audio. Per abbreviare quel nome, ho dovuto eseguire anche il seguente comando:

gconftool --set --type string /system/pulseaudio/modules/combine/args0 sink_properties=device.description=Combined

Impostazioni audio con dispositivo combinato


3
Come posso annullare questo ?!
Iman Mohamadi,

4

In Debian 8.7 non sono riuscito a far funzionare la proposta di Takkat, anche se ho riavviato il sistema. Presumo che tu abbia completato la proposta di Takkat durante l'installazione paprefs. Estensione sulla risposta di Takkat che funziona basandosi sulla wiki di Arch Linux in cui mantenere input analogico e Pulse chiama "duplex"

# /etc/pulse/default.pa
# http://unix.stackexchange.com/a/180374/16920
load-module module-alsa-sink device=hdmi:0
load-module module-combine-sink sink_name=combined
set-default-sink combined

Quindi riavviare pulseaudio:

pulseaudio -k

Per me, questo ha funzionato quando avevo device = "hw: 0,0" come da aplay -l(vedi forums.linuxmint.com/viewtopic.php?t=264540#p1436479 )
Laurenz

Assicurati di mettere in cima al file! Questo funziona per me (hw: 0,0) su Ubuntu 18.04.2, giocando su due monitor HDMI, dopo che ho spostato le linee verso l'alto.
orangenarwhals,

3

In Kubuntu 18.04, Plasma 5.12 paprefsnon è necessario, poiché esiste già un'impostazione simile:

inserisci qui la descrizione dell'immagine

Una nuova opzione di output dovrebbe diventare disponibile dopo il riavvio, chiamata "Output simultaneo".

inserisci qui la descrizione dell'immagine

O in pavucontrol:

inserisci qui la descrizione dell'immagine


In 18.10 con Plasma 5.13.5 quell'opzione "Uscita simultanea" è stata rimossa, quindi aprefsè necessaria.


0

Perché LeonidMewstava chiedendo circa 18.04 (sto usando 18.04.2), ecco la mia versione.

La GUI ha paprefsprovato a combinare un HDMI con un'uscita analogica, anziché entrambi hdmi. Quindi ho dovuto modificare il file come descritto daLéo Léopold Hertz 준영

$ gedit /etc/pulse/default.pa
# then after changes 
$ pulseaudio -k

Entrambi questi metodi funzionano da soli, quindi scegline uno ( assicurati di aggiungere all'inizio del file , lo metto subito dopo .fail! Altrimenti non funziona).

Metodo A

load-module module-alsa-sink device=hw:1,3 sink_name=hdmi
load-module module-alsa-sink device=hw:1,7 sink_name=hdmi2
load-module module-combine-sink sink_name=combined slaves=hdmi,hdmi2
set-default-sink hdmi-combined

Metodo B

load-module module-alsa-sink device=hw:0,0
load-module module-combine-sink sink_name=combined

Riferimento

Metodo A

Per riferimento, hw:0,0vieneaplay -l

$ aplay -l
**** List of PLAYBACK Hardware Devices ****
card 0: PCH [HDA Intel PCH], device 0: ALC892 Analog [ALC892 Analog]
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 0: PCH [HDA Intel PCH], device 1: ALC892 Digital [ALC892 Digital]
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 1: NVidia [HDA NVidia], device 3: HDMI 0 [HDMI 0]
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 1: NVidia [HDA NVidia], device 7: HDMI 1 [HDMI 1]
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 1: NVidia [HDA NVidia], device 8: HDMI 2 [HDMI 2]
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 1: NVidia [HDA NVidia], device 9: HDMI 3 [HDMI 3]
  Subdevices: 1/1
  Subdevice #0: subdevice #0

Metodo B

E il 1:3viene da

$ pacmd list-sinks | grep -e 'name:' -e 'alsa.device ' -e 'alsa.subdevice '
    name: <alsa_output.pci-0000_00_1b.0.iec958-stereo>
        alsa.subdevice = "0"
        alsa.device = "1"
    name: <alsa_output.pci-0000_01_00.1.hdmi-stereo-extra1>
        alsa.subdevice = "0"
        alsa.device = "7"

Sulle "impostazioni audio" ho impostato l'altro HDMI come uscita e poi ho ottenuto

$ pacmd list-sinks | grep -e 'name:' -e 'alsa.device ' -e 'alsa.subdevice '
    name: <alsa_output.pci-0000_00_1b.0.iec958-stereo>
        alsa.subdevice = "0"
        alsa.device = "1"
    name: <alsa_output.pci-0000_01_00.1.hdmi-stereo>
        alsa.subdevice = "0"
        alsa.device = "3"

Per verificare, ho corso

$ aplay -D plughw:1,3 /usr/share/sounds/alsa/Front_Right.wav
$ aplay -D plughw:1,7 /usr/share/sounds/alsa/Front_Right.wav

che suonava sui rispettivi monitor.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.