問題タブ [mediamuxer]
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 - Android: MediaCodec: Nexus で 480x480 用に生成された悪いビデオが、640x640 では正常に動作する
MediaCodec (および MediaMuxer) を使用して、Android で Mpeg4/avc ビデオをレンダリングしています。
LG Nexus 4 と Samsung Galaxy 5 の両方でテストしています。
サムスンでは、レンダリングされたビデオは、640x640 と 480x480 の両方のフレーム サイズで期待どおりに見えます。
ただし、Nexus では、480x480 では見栄えの悪いビデオが生成されますが、640x640 では適切なビデオが生成されます。
質問です:理由は何ですか?これはバグですか、それとも私が認識していない「機能」ですか。
すべての Android デバイスで正しくレンダリングされると信頼できる既知のフレーム サイズはありますか? それとも、さまざまなデバイスでテストする必要がありますか?
android - Android のテストケース外で ExtractDecodeEditEncodeMuxTest を実行する
Android でビデオを抽出、デコード、編集、エンコード、および多重化する機能を追加しようとしています。したがって、Android CTS ExtractDecodeEditEncodeMuxTestの一部である非常に便利な実装を見つけました。残念ながら、コードはテストケースの一部として実行された場合にのみ機能します。通常のアクティビティから実行して取得しようとしました:
E/ExtractDecodeEditEncodeMuxTest (18781): java.lang.IllegalStateException: マルチプレクサの停止に失敗しました
W/System.err(18781): java.lang.RuntimeException: Surface フレームの待機がタイムアウトしました W/System.err(18781): at ...OutputSurface.awaitNewImage(OutputSurface.java:216)
出力サーフェスがフレームを受信しない理由はありますか?
更新: 動作中のテスト ケースと動作していない実装のログ ファイルは次のとおりです。両方のコードはまったく同じです。唯一の違いは、動作中のものは AndroidTestCase であり、もう 1 つは IntentService 内のアプリケーションで実行されていることです。
約 6 フレーム後に抽出とデコードがすべて停止するようです。何か案は?
android - Android OS 4.1.2 以降の Muxer と同等のライブラリ
現在、Android 動画編集アプリを開発中です。私たちは2つの大きな問題に直面しています
メディア コーデックを使用して H264 ストリームを取得するバイト バッファーがあります。ここから、mp4 ビデオを作成します。4.3 以降では、メディア マルチプレクサを使用できることを認識しています。ただし、MediaCodec ライブラリがあるため、4.1.2 などの古い OS をサポートする必要があります。マルチプレクサを使用せずに H264 ストリームから mp4 ファイルを作成する他の方法があることを知りたいと思いました。
android - Android MediaMuxer オーディオの問題
MediaMuxer を使用してオーディオ トラックをビデオに追加しようとしています。次のコードは機能しますが、オーディオはビデオの途中で停止します。ビデオ ファイルとオーディオ ファイルの両方に 1 つのトラックしかありません。オーディオとビデオの再生速度は問題ないようです。音声ファイルは動画よりも長いので、それは問題ではないと思います。私はしばらくこれに取り組んでいましたが、今では理解できません。
メディア形式のプリントアウトは次のとおりです。
ガイダンスをいただければ幸いです。
ありがとう
android - Android MediaMuxer readSampleData IllegalStateException
次のコードを使用してビデオを生成しています。ただし、5 回に 1 回の試行で readSampleData が IllegalArgumentException または IllegalStateException を発生させます。例外を停止するにはどうすればよいですか。readSampleData を呼び出す前にエクストラクタの状態を確認できますか。もしそうなら、どのように?
実際のコードは、ビデオ エクストラクタ ループの後にオーディオをビデオに追加します。
android - MediaMuxer と MediaCodec を使用して wmv ビデオ ファイルを mp4 ビデオ ファイルに変換する
.wmv ビデオ ファイルを mp4 ビデオ ファイルに変換したい。MediaMuxerおよびMediaCodecクラスを使用することは可能ですか?
android - MediaCodec と MediaMuxer を使用してビデオとオーディオを記録する方法
MediaCodec と MediaMuxer を使用してビデオを録画 (エンコード) できます。次に、MediaCodec と MediaMuxer を使用して、オーディオ部分とビデオを含むオーディオを多重化する必要があります。
私は2つの問題に直面しています:
MediaCodec でオーディオをエンコードする方法。オーディオとビデオを別々のスレッドでエンコードする必要がありますか?
オーディオとビデオのデータを MediaMuxer に渡すにはどうすればよいですか (writeSampleData() メソッドは一度に 1 種類のデータしか取りません)。
MediaMuxerTestを参照しましたが、MediaExtractor を使用しています。ビデオのエンコードは MediaCodec で行われるため、MediaCodec を使用する必要があります。間違っている場合は修正してください。
これらの新しい API に関する適切なドキュメントがないため、提案やアドバイスは非常に役立ちます。
ノート:
- 私のアプリは API 18+ (Android 4.3+) をターゲットにしています。
- ビデオのエンコーディングについては、Grafikaを参照しました。
android - メディアコーデックを使用したビデオ圧縮
Androidで圧縮する必要があるビデオがあります.現在、ffmpegを使用していますが、正常に動作していますが、メディアコーデックとメディアマルチプレクサを試してみたい. 私はすでにhttp://developer.android.com/reference/android/media/MediaCodec.htmlのドキュメントを読んでおり、これらのリンクも試しました:
https://github.com/hoolrory/MediaCodecDemo
および上記のメディアコーデックに関する多くのリンクのように.
正確にどのように機能し、どのような手順が取られているか教えてもらえますか??
前もって感謝します!!