Registro extraño de AQDefaultDevice

140

Estoy reproduciendo video de un controlador como este:

func playMovie() {
    let path = Bundle.main.path(forResource: "xyz", ofType:"mov")
    let url = URL(fileURLWithPath: path!)

    self.player = AVPlayer(url: url)
    let layer: AVPlayerLayer = AVPlayerLayer(player: self.player)

    layer.frame = self.view.frame
    layer.videoGravity = AVLayerVideoGravityResizeAspectFill
    self.view.layer.addSublayer(layer)

    self.player.play()
}

Incluso después de que el controlador se destruye y ya no está en uso, recibo este mensaje de registro cada segundo más o menos:

AQDefaultDevice (173): skipping input stream 0 0 0x0

No estoy preguntando cómo ocultar estos registros. Sé cómo hacerlo estableciendo OS_ACTIVITY_MODEen disable( Consulte esto para saber cómo ocultar estos registros ). Mi preocupación es que la película todavía se puede reproducir de alguna manera incluso después de que se destruya el controlador. ¿Hay algo malo en la forma en que estoy reproduciendo la película? ¿O necesito realizar alguna limpieza adicional?

RajV
fuente
Supongo que esta respuesta te quedará bien. Explica una forma de eliminar el registro con más detalles. stackoverflow.com/a/40336926/4602597
MessuKilkain
66
Mi pregunta no era sobre cómo ocultar registros no deseados. Lo dejé claro en el último párrafo. Mi pregunta era si ese registro en particular apuntaba a un recurso inédito relacionado con el AVPlayer.
RajV
Posible duplicado de Ocultar extraños registros Xcode 8 no deseados
Alex Hall
La única razón por la que encontré esta pregunta (y la solución vinculada en los comentarios) es para deshabilitar este aspecto molesto del registro en un objeto reproductor multimedia, ya que interfiere con la lectura de otros registros; FWIW Pero sí, aparentemente estás haciendo las cosas bien y el registro no se está comportando como debería.
Alex Hall el
Esto es muy molesto. Pasé horas tratando de determinar por qué el jugador no se detenía y ahora, por lo que puedo decir, es un error de XCode. ¿Alguna vez encontró alguna otra respuesta @RajV?
David Vincent Gagne

Respuestas:

67

Tengo este problema cuando uso AVPlayer Foundation en iOS Simulator (xcode 8.1). Sin embargo, ya no se registra en dispositivos iOS. En mi opinión, es un error de registro. El jugador o la capa se destruyen.


actualizar

Tengo esto para que arregles los mensajes de registro no deseados

Zippo
fuente
Tiene el mismo registro, no usa AVPlayer Foundation.
Dima Deplov
No estoy seguro de esto, cuando uso Xcode 7, el mensaje de registro desaparece
zippo
1
Tengo el mismo problema después de usar AVPlayer
ben
Hola chicos, tengo esto para arreglar mensajes de registro no deseados
zippo
101

No, no haces nada malo. Este es un error con los registros en Xcode8 + iOS10.


Podemos evitarlo de esta manera (el dispositivo y el simulador necesitan valores diferentes):

Agregue el nombre OS_ACTIVITY_MODEy el valor ${DEBUG_ACTIVITY_MODE}y verifíquelo (en Producto -> Esquema -> Editar esquema -> Ejecutar -> Argumentos -> Medio ambiente).

ingrese la descripción de la imagen aquí

Añadir configuración definida por el usuario DEBUG_ACTIVITY_MODE, a continuación, añadir Any iOS Simulator SDKa Debugy establecer su valor a disable(en proyecto -> configuración de generación -> + -> Configuración definida por el usuario)

ingrese la descripción de la imagen aquí

Igor
fuente
8
¿Leíste mi pregunta? Ya he dicho que puedo deshabilitar el registro usando OS_ACTIVITY_MODE. Ese no es el punto de esta pregunta.
RajV
Este es un error con los registros en Xcode8 + iOS10. - Esta es una respuesta a tu pregunta.
Igor
La pregunta que hice no es sobre cómo ocultar estos mensajes de registro. Fue, y cito, "¿Hay algo malo en la forma en que estoy reproduciendo la película. ¿O necesito realizar alguna limpieza?"
RajV
22
Una "solución" que requiere que cambie manualmente una variable de entorno, cada vez que cambio de ejecutar en el simulador a ejecutar en un dispositivo, no es una solución en absoluto.
mate
14
Si encuentra una mejor solución, díganos.
Igor
0

No es realmente una respuesta, pero es más una pista que podría ayudar a alguien a depurar esto ...

Comencé a recibir esta advertencia tan pronto como eliminé el marco de AVFoundation de mi proyecto Xcode 9 / iOS 11. Estoy usando AVFoundation (específicamente AVPlayer y AVPlayerLayer), pero aún así se ejecutó y compiló bien después de eliminar el marco del editor Linked Frameworks and Libraries del objetivo, y luego eliminarlo de la carpeta Frameworks (estaba tratando de eliminar una advertencia de tiempo de ejecución diferente) .

Agregarlo nuevamente a través del editor Linked Frameworks and Libraries eliminó las advertencias de tiempo de ejecución en la consola.

Dave Batton
fuente