Acceder a una canción cargada con AVPlayer
Frecuentes
Visto 311 veces
0
Quiero guardar una canción que cargué con el método - (id)initWithURL: de AVPlayer, para no tener que cargarla la próxima vez que quiera reproducirla. Pasé horas buscando en la documentación de Apple, pero no encontré una solución.
2 Respuestas
0
Si tiene una URL, simplemente puede usar cualquiera NSURLConnection
o clases similares para descargar la URL al almacenamiento local. AVPlayer
Sin embargo, no hará esto por usted, tendrá que hacerlo manualmente.
contestado el 22 de mayo de 12 a las 18:05
0
Como dijo @iKenndac, no puedes sacar esto de AVPlayer. Puede descargar el archivo usted mismo y almacenarlo en el disco, pero perderá todas las optimizaciones que ofrece AVPlayer en términos de descargar una canción y comenzar a reproducirla lo más rápido posible. Sin duda, la próxima vez que reproduzca la canción obtendrá los beneficios de tener la canción ya en el disco. Si esa compensación está bien para usted, entonces en sus devoluciones de llamada de NSURLConnection hará algo como esto:
- (void)connection:(NSURLConnection *)connection
didReceiveData:(NSData *)data
{
[responseData appendData:data];
}
- (void)connectionDidFinishLoading:(NSURLConnection *)connection
{
NSFileHandle *myHandle = [NSFileHandle fileHandleForUpdatingAtPath:someFilePath];
[myHandle writeData:responseData];
[myHandle synchronizeFile];
[myHandle closeFile];
}
Deberá definir responseData como un objeto NSMutableData y asegurarse de inicializarlo antes de llamar a appendData.
contestado el 22 de mayo de 12 a las 18:05
No es la respuesta que estás buscando? Examinar otras preguntas etiquetadas objective-c save nsdata avplayer or haz tu propia pregunta.