web-dev-qa-db-fra.com

Enregistrement AQDefaultDevice étrange

Je joue la vidéo à partir d'un contrôleur comme ceci:

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()
}

Même après que le contrôleur soit détruit et ne soit plus utilisé, je reçois ce message de journalisation toutes les secondes environ:

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

Je ne demande pas comment cacher ces journaux. Je sais comment faire cela en définissant OS_ACTIVITY_MODE sur disable ( Voir ceci pour savoir comment masquer ces journaux ). Mon inquiétude est que le film peut encore être lu même après la destruction du contrôleur. Y at-il quelque chose qui cloche dans la façon dont je joue le film? Ou dois-je effectuer un nettoyage supplémentaire?

138
RajV

J'ai eu ce problème lorsque j'utilise AVPlayer Foundation sur iOS Simulator (xcode 8.1). Cependant, il ne se connecte plus sur les appareils iOS. À mon avis, c'est un bogue du journal. Le joueur ou la couche est détruit.


mise à jour

je l'ai eu pour vous corriger les messages de journal indésirables

66
zippo

Non, vous ne faites rien de mal. Ceci est un bogue avec les journaux dans Xcode8 + iOS10.


Nous pouvons le contourner de cette manière (l’appareil et le simulateur ont besoin de valeurs différentes):

Ajoutez le nom OS_ACTIVITY_MODE et la valeur ${DEBUG_ACTIVITY_MODE} et vérifiez-le (dans Product -> Scheme -> Edit Scheme -> Run -> Arguments -> Environment).

enter image description here

Ajoutez le paramètre défini par l'utilisateur DEBUG_ACTIVITY_MODE, puis ajoutez Any iOS Simulator SDK pour Debug et définissez sa valeur sur disable (dans Projet -> Paramètres de construction -> + -> Paramètre défini par l'utilisateur )

enter image description here

101
Igor

Pas vraiment une réponse, mais plutôt un indice qui pourrait aider quelqu'un à déboguer ceci ...

J'ai commencé à recevoir cet avertissement dès que j'ai supprimé le framework AVFoundation de mon projet Xcode 9/iOS 11. J'utilise AVFoundation (en particulier AVPlayer et AVPlayerLayer), mais il fonctionne toujours et est bien compilé après la suppression de la structure de l'éditeur de Frameworks and Libraries lié à la cible, puis de son retrait du dossier Frameworks (j'essayais d'éliminer un autre avertissement d'exécution). .

La réintégration via l'éditeur de cadres et de bibliothèques liés a éliminé les avertissements d'exécution de la console.

0
Dave Batton