Sto scrivendo un'app in cui sto cercando di cambiare il tono dell'audio quando sto registrando un filmato (.m4v). O modificando successivamente il tono audio del film. Voglio che il risultato finale sia un filmato (.m4v) che abbia la lunghezza originale (cioè lo stesso visual dell'originale) ma con una tonalità del suono modificata, ad es. una "chipmunk voice". Una conversione in tempo reale è preferibile se possibile.Modifica l'intonazione audio della clip registrata (m4v)
Ho letto molto sul cambiamento del pitch audio in iOS, ma la maggior parte degli esempi si concentra sulla riproduzione, ovvero il suono con un tono diverso.
Nella mia app sto registrando un film (.m4v/AVFileTypeQuickTimeMovie) e salvandolo utilizzando AVAssetWriter standard. Quando si salva il film Ho l'accesso ai seguenti elementi in cui ho cercato di manipolare l'audio (ad esempio modificare il pitch):
- buffer audio (CMSampleBufferRef)
- scrittore ingresso audio (AVAssetWriterAudioInput)
- ingresso audio opzioni writer (ad esempio AVNumberOfChannelsKey, AVSampleRateKey, AVChannelLayoutKey)
- patrimoniale scrittore (AVAssetWriter)
ho cercato di agganciare negli oggetti di cui sopra per modificare l'aud io passo, ma senza successo.
Ho anche provato con Dirac, come descritto qui: Real Time Pitch Change In iPhone Using Dirac
E OpenAL con AL_PITCH come descritto qui: Piping output from OpenAL into a buffer
E la biblioteca "BASS" da un4seen: Change Pitch/Tempo In Realtime
non ho trovato il successo con una qualsiasi delle librerie precedenti, molto probabilmente perché non so davvero come usarle e dove collegarle al codice di salvataggio dell'audio.
Sembra esserci un sacco di librerie che hanno effetti simili ma si concentra sulla riproduzione o sul codice di registrazione personalizzato. Voglio manipolare il flusso audio che ho già ricevuto (AVAssetWriterAudioInput) o modificare il clip filmato salvato (.m4v). Voglio che il video non sia modificato visivamente, cioè giocato alla stessa velocità. Ma voglio che l'audio vada più veloce (come un chipmunk) o più lento (come un ... mostro?
Hai qualche suggerimento su come posso modificare il tono in tempo reale (quando registri il film) o dopo convertendo l'intero filmato (file .m4v)? Devo esaminare ulteriormente Dirac, OpenAL, SoundTouch, BASS o qualche altra libreria?
Voglio poter condividere il film con altri con audio modificato, questo è il motivo Non posso fare affidamento sulla modifica del pitch solo per la riproduzione