C'è un modo per modulare la mia voce al volo?


15

Ho bisogno di un modo per modulare la mia voce al volo (per abbassare o alzare il tono, ecc., Per la privacy) per l'uso in Mumble, TeamSpeak e altri programmi simili. C'è un modo per farlo sotto Linux / Ubuntu?

Ho trovato un paio di possibili programmi in Windows e, se necessario, avrei potuto eseguire Mumble, TeamSpeak, ecc. In VirtualBox / Wine insieme a un modulatore, ma preferirei di gran lunga usare Linux, anche se non sono stato in grado di trovare alcun nativo programmi per Linux che possono farlo durante la mia rapida ricerca su Google.

Risposte:


23
  1. Installa alcuni software necessari:

    sudo apt-get install sox libsox-fmt-pulse pavucontrol
    
  2. Crea un null-sink in pulseaudio:

    pactl load-module module-null-sink
    
  3. Inizia la soxregistrazione dal dispositivo di registrazione predefinito (fonte predefinita) e l'output sul null-sink:

    sox -t pulseaudio default -t pulseaudio null pitch -800
    

    (Se non si desidera registrare dalla sorgente di default, modificare il comando precedente di conseguenza.) L' -800nel comando sopra è il cambiamento passo desiderato, è possibile modificare tale valore come si vuole, ad esempio -300, +200, +500, ecc. soxhanno anche altri "effetti" diversi dal cambio di tonalità che possono essere applicati all'audio, si consiglia di verificarli man sox.

  4. Avvia il tuo programma di acquisizione (Skype, Teamspeak, ecc.).

  5. Inizio pavucontrol.

  6. Mentre il programma di acquisizione sta tentando di acquisire, verrà visualizzato nella pavucontrolscheda Registrazione. Cambia la sua sorgente di registrazione dall'impostazione predefinita a Monitor di uscita nulla .

    impostazioni pavucontrol

  7. Controlla i risultati, dovrebbe funzionare.

Appunti:

  1. Puoi fare in modo che pulseaudio carichi automaticamente il null-sink, se modifichi il /etc/pulse/default.pafile e aggiungi la seguente riga alla fine di quel file:

    load-module module-null-sink
    
  2. Le modifiche apportate pavucontrolverranno ricordate, quindi al successivo avvio del programma di acquisizione proverà automaticamente a registrare dal sink null. Se questo non è OK per te, allora ripristina la fonte ai valori predefiniti pavucontrolquando ne hai bisogno.

  3. Se si preferisce la modalità terminale: è possibile impostare la sorgente di registrazione per il programma di acquisizione nel terminale (senza utilizzare pavucontrol), se si avvia il programma con la PULSE_SOURCEvariabile impostata correttamente. Ad esempio per avviare la registrazione skype dall'origine monitor del sink null:

    PULSE_SOURCE=null.monitor skype
    
  4. Cambiare il tono della tua voce non ti dà un'ottima privacy:

    • Se l'altra estremità ti conosce, conosce la tua vera voce, allora dovrai cambiare molto l'intonazione, quindi sarà ovvio per l'altra estremità che hai alterato il tuo suono. Se lo desidera, può catturare la tua voce alterata e tornare indietro. Oppure l'altra estremità potrebbe semplicemente ignorare / rifiutare la chiamata per ovvi motivi.
    • Se l'altra estremità non conosce la tua vera voce, beh ... In questo caso non c'è alcun vantaggio reale dall'alterare la tua voce, dal momento che non conoscono nemmeno quella vera.
    • Se stai cercando di proteggere da qualcuno che intercetta la tua voce, un attacco man-in-the-middle, ecc., È molto probabile che quei malintenzionati sappiano abbastanza da recuperare il tuo vero suono da quasi tutte le modifiche che fai su di esso con tali software semplici.
    • Inoltre, per tutti i casi di cui sopra: quando parli, non è solo il suono della tua voce ciò che può identificarti, ma il modo in cui parli, il tuo accento, le parole e le frasi che usi, ecc.
    • Se si desidera un modo più sicuro per la comunicazione vocale, è possibile utilizzare un motore di sintesi vocale per trasformare la digitazione in voce. Questo è un modo molto più sicuro. (Naturalmente questo potrebbe non essere possibile se non è possibile digitare i tuoi messaggi, ad esempio in una partita multiplayer.)

Tuttavia, questo metodo offre una migliore privacy e quindi nessuna privacy. E può anche essere divertente ingannare alcuni amici con una voce alterata.


qualche idea su come posso applicare un plugin LADSPA senza usare sox? forse usando lo stesso sink null ( askubuntu.com/questions/43950/… ). Non mi piace l'idea di dover abilitare la "registrazione" e convogliarlo.
Braindamage,

Questo è fantastico ed esattamente quello che stavo cercando, grazie!
xamox,

questo può anche essere usato per cambiare il tono di uscita predefinito, non solo l'ingresso. pavucontrol è davvero potente. grazie
phil294,

2
sfortunatamente, aggiunge anche un ritardo che sembra aumentare notevolmente nel tempo
phil294

@ phil294, ho trovato il modo di ridurre significativamente la latenza. Ad esempio, provare: nice -n -8 sox --buffer 2048 -c 1 -r 48000 -t pulseaudio default -t pulseaudio null pitch -800. La combinazione di un nicevalore inferiore e -c(canali), -r(campionamento) e --buffer(il valore predefinito è 8192 byte (!), Vedi qui ) fa miracoli. Il conteggio dei canali e il campionamento devono corrispondere idealmente alla tua sorgente. (continua ...)
Marc.2377,


1

Ho anche cercato un'applicazione simile. Penso di aver trovato una possibile risposta: LV2 e il suo plugin VocProc

Ho trovato questo tramite questo thread dei forum di Ubuntu , che potrebbe anche essere utile per te.

Ci sono anche plugin per Teamspeak per permetterti di modificare la tua voce. Potrebbero esserci altri plugin per Mumble e continuerò a cercare.


@Oli Questo è un LOA. Rimuovi i collegamenti e non rimane nulla.
Pilota 6

1
@ Pilot6 Non sono assolutamente d'accordo. Porta via i link e la risposta ti dice ancora il nome di un'applicazione che fa quello che ti viene richiesto.
Oli
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.