2016-05-16 4 views
2

私のIOSアプリケーションでAVPlayerを使用している短いビデオが表示されます。私はこの画面を何度も残して再入力しますが、7回以上経過すると空の画面が表示され、AVReaderForDisplayプロパティは 'NO'になります。AVPlayerは、7回目の画面に再入力した後に表示する準備ができていません。

AVPlayerを一時停止して(nilに設定して)、この画面を終了するときにAVPlayerLayerをビューのレイヤーから削除します。メモリ使用の問題(17Mb使用)ではないようです。

私はこの問題がAVPlayerバッファまたはAVPlayerがビデオファイルから読み込めないブロックを引き起こす他のコンポーネントだと思いますが、このバッファ/ブロックを消去/消去する方法が見つかりませんでした。

誰もこの問題が以前にあったのですか?それとも、7番目の入り口にこの空白の画面が表示されるのですか?あなたがオーバーライド変数layerClassとの見解を持っている場合に発生することができますし、何とかそれはメモリとあなたが訪問するたびから一掃されません。私の経験から、事前に

おかげで、

イーライ

+0

この問題を解決できましたか?私たちは絶対に同じ問題を戦っています、どんな情報にも感謝します! –

答えて

1

、あなたのVCは、それが悪化するだけのビデオレイヤーで。

VideoViewのlayerClassプロパティをオーバーライドする代わりに、insertSublayerによってビデオレイヤーを手動で挿入してみてください。

viewDidDisAppearよりもremoveFromSuperViewをすべて呼び出して、それらに接続されているすべてのものがメモリから消去されるように強制的にnilにしてください。

多分それは最も「正しい」とそれを行うための完璧な方法ではないかもしれませんが、最終的に視覚的な外観に関しては私には何の変化もありませんでした。

また、すべてのAppleのドキュメントを読むことが役に立たなかったため、本当の原因が分かっています。

関連する問題