Come posso eseguire una query sui metadati dei capitoli da un file m4a?
Domanda
Devo scrivere del codice che mi permetta di interrogare un file m4a ed estrarre le informazioni del capitolo. Tra cui:
- nome capitolo
- ora di inizio del capitolo
- capitolo illustrazioni
Ho fatto qualche ricerca veloce e sembra che questo sia visto come informazione proprietaria da Apple? Ho trovato alcune discussioni, ma la maggior parte erano del 2005. Inoltre ci sono state alcune domande simili qui, ma più per CREARE file m4a con capitoli, non per interrogare.
È solo qualcosa che devo fare per il fai-da-te, perché non c'è una bella API Apple da usare? O mi sto perdendo qualcosa di ovvio?
Inoltre, idealmente ho bisogno di qualsiasi tecnica finisca per funzionare su iPhone.
Soluzione
Il sistema di tag metadati è di proprietà di Apple. Per lavorare con i tag, devi ( sospirare ) decodificarlo o lavorare con una libreria che lo ha già fatto.
Ho trovato i seguenti link, ma onestamente sembra che dovrete estrarre l'editor hex.
Informazioni sul formato binario (specifiche di base per tag generici)
Altri suggerimenti
Si scopre che questo è molto più semplice di quello di cui si parla qui nelle "risposte". Non sono sicuro che funzioni su iPhone, ma l'ho appena testato in un'app da riga di comando:
QTMovie* movie = [QTMovie movieWithFile:@"filename.m4a" error:nil];
NSInteger numChapters = [movie chapterCount];
NSLog(@"Number of Chapters: %d", numChapters);
NSArray* chapterArray = [movie chapters];
for ( NSDictionary* chapDict in chapterArray )
{
NSLog(@"%@", [chapDict objectForKey:@"QTMovieChapterName"] );
}
Facile come una torta. DOH!
questa libreria dovrebbe risolvere le tue esigenze, ma non è eseguibile su iPhone senza jailbreak, penso. http://wmptagext.sourceforge.net/
oops se ne hai bisogno per funzionare su iPhone probabilmente c'è un apple api per ottenere queste informazioni. / io guarda sembra che tu abbia bisogno di giocare con la libreria ipodlibrary ....
Se i file in questione risiedono nella libreria di iPod, forse puoi ottenere le tue informazioni tramite MPMediaLibrary interfaccia di query (3.0 verso l'alto).