2009-09-29 5 views
8

ho inizializzare il mio esempio AVAudioPlayer come:AVAudioPlayer errore di inizializzazione

[self.audioPlayer initWithContentsOfURL:url error:&err]; 

url contiene il percorso di un file .m4a

Il seguente errore viene visualizzato nella console quando questa linea si chiama:" Errore Dominio = NSOSStatusErrorDomain Code = 1685348671 "Impossibile completare l'operazione. (Errore OSStatus 1685348671.) "

Qual è la ragione di questo errore?

risposta

12

Il codice di errore è un quattro-char-codice per 'DTA?' (È possibile utilizzare l'applicazione Calcolatrice in modalità programmatore di convertire i valori int in ASCII). Controlla i "codici risultato" dei vari riferimenti Core Audio e troverai che è definito sia in Audio File Services che in Audio File Stream Services come kAudioFileInvalidFileError o kAudioFileStreamError_InvalidFile rispettivamente, entrambi con lo stesso definizione:

Il file non è valido, non è un'istanza valida di un file audio di questo tipo, o non riconosciuto come file audio. Disponibile in iPhone OS 2.0 e versioni successive.

Hai provato il codice con diversi file .m4a?

+0

Inoltre, poiché si tratta di un errore di Core Audio, è necessario aggiungere il tag core-audio alla domanda. Grazie. – invalidname

+0

@invalidname, grazie per la risposta. Puoi spiegare perché questo si verifica con .m4a? I miei altri file come .caf e .aiff non danno alcun problema di inizializzazione, ma quando uso qualsiasi file .m4a, si presenta questo errore. AVAudioPlayer non funziona con .m4a? –

+0

@Vaish: questi sono gli m4a di iTunes Store? Non ho avuto problemi a riprodurre i file m4a di iTunes non protetti sul dispositivo o nel simulatore. – invalidname