2013-06-12 7 views
5

Ok, fondamentalmente abbiamo implementato il jRecorder nel nostro sito Web che ci consente di acquisire audio in formato WAV.Durante la codifica su MP3 in ShineRecorder, la codifica si interrompe se il volume è troppo alto

Ora, dopo l'acquisizione, utilizziamo lo ShineMP3Encoder per convertire tale WAV in MP3 (per salvare le dimensioni del file). Tutto funziona bene.

Numerose persone hanno riscontrato un problema in quanto se i livelli audio registrati sono troppo alti, la codifica MP3 si interrompe completamente e il file diventa corrotto/corto. Quando si esegue questo con un WAV, sembra che il WAV non si cura di quanto sia forte l'audio registrato e sarà felice di riprodurlo così com'è.

Apprezzo la mia domanda è incredibilmente di nicchia, ma dopo aver sbattuto la testa contro il muro per giorni, questa è la mia unica altra opzione.

Per quel che vale, questo è il codice ActionScript che è stato utilizzato per registrare (è del bog implementazione ShineMP3 standard):

//recorder.output is outputted from jRecorder 
mp3Encoder = new ShineMP3Encoder(recorder.output); 
mp3Encoder.addEventListener(Event.COMPLETE, mp3EncodeComplete); 
mp3Encoder.start(); 
+0

tentativo di riprodurre il bug. Puoi fornire un file wav? Cosa ti fa pensare ai suoi alti livelli audio? –

+0

Inoltre, stai ascoltando qualsiasi ErrorEvent durante la codifica? –

+0

@PlasticSturgeon Per riprodurlo, puoi semplicemente soffiare nel microfono più forte che puoi. Ho provato ad ascoltare ErrorEvent ma inutilmente. – mattytommo

risposta

0

Una possibilità è che la codifica è in esecuzione più lento del circuito su quei binari, causando un errore. Provare a rallentare l'esecuzione dell'encoder e vedere se questo corregge l'errore.

Nel metodo start() di ShineMP3Encoder.as sostituire

timer = new Timer(1000/30); 

con

timer = new Timer(150); 

Ecco linea 37 nella base di codice attuale.

+0

Cheers per la risposta, ma penso che stia effettivamente generando un errore nella codifica, ma che non venga generato all'interno di ActionScript. Ci proverò e vedrò cosa succede. – mattytommo

Problemi correlati