2013-02-07 8 views
9

Qui è il problema,C'è un modo per selezionare il dispositivo di output per un audio da una pagina web?

La webapp Sto costruendo hanno le notifiche audio e un'opzione conferenza vide, in modo che l'utente normalmente sta per avere altoparlanti e una cuffia collegata al PC, il mio cliente vuole che le notifiche audio verrà riprodotto nei diffusori principali e la videoconferenza può essere eseguita utilizzando l'auricolare.

In questo momento sto utilizzando tutto html5 per l'audio e webrtc per la videoconferenza, non sono riuscito a trovare alcuna informazione su come farlo. Può essere con il flash ma non riesco a trovare questo neanche.

grazie in anticipo

+4

Il browser non è a conoscenza dei dispositivi audio. Sono controllati a livello di sistema operativo. –

+0

Sarebbe bello se ti lasciassero, comunque. Io uso più uscite audio e mi piacerebbe avere un certo controllo su questo senza ricorrere a brutti plugin nel browser. – cambraca

+2

Si potrebbe voler controllare [API Web Audio] (https://dvcs.w3.org/hg/audio/raw-file/tip/webaudio/specification.html). Non so se è possibile modificare la destinazione del contesto audio, ma potrebbe essere una via d'uscita. – jpatiaga

risposta

7

Solutions in questo spazio stanno emergendo attraverso l'uso di WebRTC. È possibile vedere un esempio di una soluzione di lavoro al https://webrtc.github.io/samples/src/content/devices/input-output/

Il supporto del browser per questo è limitato in questo momento però.

+0

Esiste già un'app per farlo. Vedi https://chrome.google.com/webstore/detail/audiopick/gfhcppdamigjkficnjnhmnljljhagaha – Joniale

0

In realtà l'uscita audio è solo su Oslevel ... potrebbe essere necessario leggere sull'API chrome.audio che è ancora a livello sperimentale ... "L'API chrome.audio viene fornita per consentire agli utenti di ottenere informazioni su e controlla i dispositivi audio collegati al sistema. Questa API è attualmente implementata solo per ChromeOS. "

Questo sarebbe utile se fosse disponibile per tutti i sistemi operativi in ​​modo da poter reindirizzare il suono utilizzando questa API ... Come esempio di alcuni metodi da questa API posso elencare:

getInfo − chrome.audio.getInfo(function callback) 

che retu Rn uscita e di ingresso tutti i dispositivi audio

setActiveDevices − chrome.audio.setActiveDevices(array of string ids, function callback) 

che imposta i dispositivi attivi ai dispositivi specificati da | ids |

Il problema è API Chrome.audio è solo per ChromeOS e suoni in uscita è controllata da altri sistemi operativi ... il gioco è fatto due linee parallele ..

1

semplicemente fare questo nel codice javascript.

audioElement.setSinkId(deviceId); 
0

V'è ora un dispositivo audio un'estensione Chrome redirector HTML5 chiamato AudioPick. Il sito Web è qui: https://rain-fighters.github.io/AudioPick/

Questo è OpenSource sotto la licenza pubblica GNU, con un Github repo.

Esistono alcune limitazioni (nessuna fonte Flash e alcuni tipi di sorgenti HTML5 non verranno trovati), come indicato nella home page.

Problemi correlati