問題タブ [stagefright]
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.
android - QOMX_COLOR_FormatYUV420PackedSemiPlanar64x32Tile2m8ka コンバーター
YUV
Android で H/W デコード出力からのデータを処理する必要があります。
実はNexus4を使っていて、デコードの出力形式はQOMX_COLOR_FormatYUV420PackedSemiPlanar64x32Tile2m8ka
typeです。
しかしYUV420 Planar
、フォーマットデータが必要です。変換する必要があります。
変換機能などを共有できますか?
android - Android: ビデオ デコーダー用の OMX コンポーネントの作成
私は、decoder( HEVC
)FFMPEG
を Android のに統合するという新しいタスクを持っていますStagefright
。これを行うには、まずコンポーネントを作成する必要があります。次にOMX
、コーデックを に登録し、コンポーネントを に登録します。media_codecs.xml
OMX
OMXCore
OMX
ビデオ デコーダー用のコンポーネントを作成するためのガイドや手順はありますか? 次に、このデコーダーは基本ストリーム (.bin
または.h265
ファイル) のみを再生するため、ここにはコンテナー形式はありません。
OMX
ビデオコーデックのコンポーネントを作成する際に従うべきいくつかの手順またはガイドラインを誰かが提供できますか? どんな種類の指針も私にとって本当に役に立ちます。
前もって感謝します。
android - Android NDK アプリケーションに libstagefright を追加する
コードにいくつかの変更を加えてAOSP
コンパイルしました。今、私はアプリケーションで作成したものを追加したいと考えてlibstagefright.so
います。
Android.mk
私はコンパイル済みライブラリとしてパスを追加していLOCAL_SRC_FILES
ますlibstagefright.so
。
こちらです』
プログラムをビルドして実行しているときに、ライブラリに変更が見られません。変更が見られないという問題は何ですか?
前もって感謝します。
android - カスタム デコーダーを統合して Android で再生し、同時に fps を表示する
最終プロジェクトの一部として、カスタム デコーダーを開発しました。私のデコーダーは.steveファイルを受け入れるようになりました。私のデコーダーを Android フレームワークと統合したいと考えています。
私はこの問題について多くのことを調査しましたが、私が見つけた便利なリンクの 1 つがここにあります。 Android: デコーダーをマルチメディア フレームワークに統合する方法
私が直面している問題は、Android ソース コード全体をコンパイルしてデコーダーを統合したくないということです。.steve.apk
ファイルを認識してビデオを再生できるファイルを使用してアプリを作成したいと考えています。私のアプリをテストしたい人は誰でも、ソースコードをコンパイルするのではなく、電話に直接インストールして、大学院で簡単に配布してデコーダをテストできるようにします。apk
apk
android - MediaCodec API を使用して Android ベースのメディア プレーヤー アプリケーションでオーディオ ビデオ同期を実現する最良の方法は何ですか?
MediaCodec
APIを使用してAndroidにメディアプレーヤーを実装しようとしています。
私は 3 つのスレッドを作成しましaudio
たvideo
。
スレッド 2 :audio
コーデックの出力バッファをデキューし、AudioTrack
クラスの書き込みメソッドを使用してレンダリングする
スレッド 3 :video
コーデックの出力バッファをデキューし、releaseBuffer
メソッドを使用してレンダリングするには
フレーム間audio
の同期を達成する際に多くの問題に直面しています。video
フレームをドロップすることはなくaudio
、フレームをレンダリングする前にvideo
、デコードされたフレームが 3 ミリ秒以上遅れているかどうかをチェックします。
との違いを見つけるには、audio
次video
のロジックを使用します
timeUs
ビデオ フレームの表示時間 (マイクロ秒) です。nowUs
再生中のマイクロ秒単位のデュレーションが含まれているはずaudio
です。常に維持する必要があるとフレームstartTimeUs
の初期の違いです。audio
video
最初の if ブロックは、audio
トラックが実際に存在し、それが初期化されているかどうかをチェックし、存在しない
場合(first else)が設定され、初期ギャップがゼロに設定されてnowUs
いることから計算しての値を設定します。メイン関数でゼロに初期化されます。audiotrack
audio
nowUs
SystemTime
startTimeUs
同期ブロックの if ブロックは、最初にレンダリングされるフレームが でaudio
、audio
フレームが後で結合する場合に使用されます。first_audio_sample
flag は最初は true に設定されています。
不明な点があればお知らせください。
また、ビデオ コーデックを使用して av ファイルのメディア プレーヤーが実装されているオープン ソース リンクを知っていれば、それは素晴らしいことです。