問題タブ [avplayeritem]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
ios - 「AVPlayerItem は、AVPlayer の複数のインスタンスに関連付けることはできません」
この質問は Stack Overflow 全体にあることは知っていますが、それでも、それらのほとんどは古く、ここで質問する内容とは関係ありません。
だから私は と の配列を持っAVPlayerItems
ていAVQueuePlayer
ます。最初に、配列アイテムを再生するように AVQueuePlayer を設定します。
しかし、たとえば、ユーザーが新しいアイテムを追加したり、アイテムを削除したりすると、プレーヤーを更新しようとします (最初に設定したのと同じ方法) が、エラーが発生します。回避策、または解決策があるかどうかを知りたいです。これは、ユーザーが曲を削除する方法です。
私はこれで自殺しているので、誰かが私を助けてくれれば幸いです.
ios - AVPlayer で再生中のビデオのトリミングを実装するには?
私の要件は、AVPlayer で再生されているビデオのトリミングと編集を実装することです。
トリミング: UIImagePickerController を介してビデオのデフォルト編集で行うように、AVPlayer プレーヤーのトリミングをカスタマイズできますか。進行状況バーを表示するリンクはほとんど見つかりませんでしたが、ここでの要件は、UIImage ピッカー コントローラーのデフォルト編集と同様に、編集によってそこに一連の画像を表示することです。
共有された知識が私を助けるかもしれません!!!
avfoundation - iOS9 で AVPlayerItem の値を観察する
リモート URL から (ビデオ)AVPlayer
を再生するために使用するアプリがあります。iOS 6-8では、プレーヤーが を再生する準備ができたときに通知するの値をAVPlayerItem
観察してきました。これは、アイテムの の値を観察するときにも機能すると思います。AVPlayerItem's
loadedTimeRanges
playerItem
duration
iOS 9 ベータ版に更新した後、AVPlayerItem
私が観察した値はどれも - メソッドになりませんobserveValueForKeyPath
。あたかも私がそれらをまったく観察していないかのように。私はまだ on の値で通知されていますが、 onAVPlayer
ではありませんAVPlayerItem
。これはバグでしょうか、それともここの環境で何かが変わったのでしょうか? 私はこれについて何も見つけることができません..
明確にするために、iOS 6-8 では、ロードされた時間範囲があるとすぐにビデオの再生が開始されます。iOS9 では、時間範囲がロードされても通知されません。
アップデート
の値status
をAVPlayerItem
確認したところ、アイテムのステータスが に変更されていることを確認しましたFailed
。NSError
失敗した後にアイテムをログアウトすると、次のようになります。
ios - AVPlayer/AVAudioMix フェードイン効果の最初のクリック
AVPlayer + AVAudioMix + AVAudioMixInputParameters に基づいてフェードイン効果を実装しようとしています。アプリの起動後に初めてオーディオを再生するときを除いて、基本的に機能します。最初にクリックがあります。その後のプレイは完璧に機能しますが、最初のグリッチはかなり安定して再現可能です.
私の再生ボタンは、AVPlayerItemstatus
が準備完了に設定された後にのみ有効になるため、プレーヤーの準備ができていないときに再生メソッドを起動することはできません。実際、オーディオ ファイルを読み込んですべてのオブジェクトを構築した後、どのくらい待つかは問題ではありません。
これは OS X で発生します。iOS ではまだテストしていません。
このテストでは、無音ではなく音声で始まるオーディオ ファイルが必要であることに注意してください。これは、GUI 部分のないコードを簡略化したものです (testFadeIn
はエントリ ポイントです)。
クリック!これの何が問題なのですか?
編集:
現時点で私が使用している明らかな回避策は次のとおりです。プレーヤーが準備ができていると報告したら、ボリューム = 0 で 100 ミリ秒の短い再生を行い、currentTime とボリュームを復元してから、プレーヤーの準備ができていることをメイン アプリに報告します。この方法では、クリックはありません。興味深いことに、100 ミリ秒未満でもクリックが発生します。
これは、最初の再生後に AVFoundation によってキャッシュされているものの問題のようです。フェードインパラメーターを設定したときに利用できるトラックでも、シークステータスでもありません。
ios - AVMutableComposition insertTimeRange: 間違った範囲を使用しています
多くのビデオをトリミングしてから、それらの編集のプレビューを表示する必要があります。ユーザーはすべてのビデオの開始時間と終了時間を編集できます。現在のビデオのプレビューを (ユーザーがトリムしている間) コードで表示します。
GPUImage には単一の AVPlayerItem が必要なので、コンパイル プレビューには AVMutableComposition を使用します。私のコード:
画面にさまざまな範囲のビデオが表示されます。どこが間違っていますか?
ios7 - AVPlayer の現在のビットレートを確認する方法
AVPlayer がビデオ ストリームを再生しているビット レートをフェッチしようとしています。observed bit rate
のプロパティで試してみましAVPlayerItemAccessLogEvent
たが、非常に高い値が得られます。さらにObserved-bit-rate
プロパティを調べたところ、このプロパティが の値を示していることdownload rate of a segment
がわかりました。プレーヤーがストリームを再生しているビット レートを知る必要があります。
以下のグラフは、LIVE ストリームの観測ビットと表示ビット レートを示しています。
この問題についてご提案をお願いします。
次のリンクを試しましたが、うまくいきませんでした:
https://stackoverflow.com/a/14845997/1730345 .
MPMoviePlayerController MovieAccessLogEvent - 膨張したobservedBitrate。