問題タブ [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.

0 投票する
1 に答える
407 参照

android - Android テスト プロジェクト bigflake

BigFlake Android samplesからサンプル コードを実行しようとしています。具体的には、この 1 つの例: CameraToMpegTestです。私は Android 開発に不慣れで、このテスト スイートをどのように扱うべきかわかりません。Eclipse で Android テスト プロジェクトを作成しようとしましたが、実行されません。インターネット上の例では、特定のアプリケーション プロジェクトから Android テスト プロジェクトを作成しているようです。誰かがこれらのコードを実行しようとしましたが、ヒントを教えてもらえますか?

0 投票する
3 に答える
3391 参照

android - Android の MediaMuxer を使用して複数の mp4 オーディオ ファイルを連結する

次の関数を使用して、複数の mp4 オーディオ ファイル (それぞれが 1 つのオーディオ トラックのみを含み、すべて同じ MediaRecorder と同じパラメーターで記録されている) を 1 つに連結しようとしています。

コードはコンパイルされて実行されますが、結果のファイルを再生すると、最初のファイルの内容しか聞こえません。私が間違っていることはわかりません。

しかし、Marlon が私にその方向を示した後、MediaMuxer から受け取っているメッセージに奇妙な点があります。どうぞ:

最初のファイルからデータをコピーした後、MPEG4Writer (なぜ MediaMuxer ではないのですか?) はトラックを停止し、それ以上データを書き込まないようです。どうすればそれを防ぐことができますか? ヘッダーを直接操作する必要がありますか? もしそうなら、どのようにしますか?

どんな助けでも大歓迎です。

よろしくお願いします、

キリスト教徒

0 投票する
1 に答える
177 参照

android - StagefrightRecorder から Video Muxer 部分を抽出するには?

でビデオ録画システムを構築しようとしています。Android 4.2.2を使用しているエンコード部分を完了しましたOMX。を使用すると、ビデオのコード ストリームが少し異なる可能性があるため、現在、Muxer 部分に取り組んでいますFFMpeg。そのため、元のシステムとまったく同じ Muxer ツールを使用したいと考えています。そのため、の Muxer 部分を抽出し、StagefrightRecorderそれを .so ファイルにコンパイルしてから、アプリケーションでそれを呼び出したいとJNI思います。しかし、中にはたくさんのものがありStagefrightRecorder、私は混乱しています。

この方法は機能しますか?MPEG4Writer に関連するコードを抽出することはできますか? 誰でも私に指示を与えることができますか?ありがとう!

0 投票する
1 に答える
375 参照

android - openGL を使用した Android MediaMuxer

を使用してムービーを生成しようとしていMediaMuxerます。このGrafika例は素晴らしい取り組みですが、それを拡張しようとすると、いくつかの問題が発生します。

正方形、三角形、線などの基本的な形状をムービーに描画しようとしています。図形を画面に描画すると、openGL コードはうまく機能しますが、同じ図形をビデオに描画できませんでした。

openGL マトリックス、プログラム、シェーダー、ビューポートの設定についても質問があります。通常、これらをセットアップできるようonSurfaceCreatedに、およびのようなメソッドがあります。onSurfaceChangedでそれを行う最良の方法は何GeneratedMovieですか?

誰でも、より複雑な形状でビデオに書き込む例があれば歓迎します

0 投票する
0 に答える
574 参照

android - MediaMuxer 連続キャプチャ

私はGrafikaの例を試しています。ContinuousCapture動画をファイル システムに記録し、同時に画面に描画する例に興味があります。私が抱えている問題は、ファイル システムへのビデオの録画が非常に遅いように見えることです。コマ落ちが多く、1 秒あたりのフレーム数はわずか 7 ~ 10 fps です。

メインdrawFrame()メソッドの中で、

主なパフォーマンスのボトルネックは

2 つのログ間の時間は 130 ミリ秒です。Android MediaRecorder は、30 fps の高品質ビデオでその仕事を行うことができます。表示部分を無効にしようとしましたが、違いはありません

0 投票する
1 に答える
3877 参照

android - MediaMuxer で作成された非ストリーミング ビデオ ファイル

MediaCodecビデオのエンコードに使用しています。フレームは、カメラ プレビュー コールバックを介してMediaCodecインスタンスに送信されます (サーフェスは使用されません)。多重化にJCodecライブラリを使用しており、生成されたビデオをストリーミングできます (ビデオ プレーヤーは正しい時間を表示し、シーク バーでビデオの位置を変更できます)。

MediaMuxer今日、代わりに使用しようとしJCodecましたが、ビデオはまだ問題なく見えますが、持続時間が完全に正しくなく (1 分ではなく数時間)、シーク バーがまったく機能しません。

を受け取ると、次のコードが遅延して呼び出されますMediaCodec.INFO_OUTPUT_FORMAT_CHANGED

次のコードでフレームをエンコードしています。

byteBufferいくつかのポジショニングの後bufferInfoに直接来ています:MediaCodec

プレゼンテーション時間は正しく設定されています:

そして、記録の最後に私は次のことを行います:

ログ:

私はThe mp4 file will not be streamable.問題についての信号を推測します。

アップデート:

より詳細なログを記録する別のデバイス (LG G2) でアプリをテストしました。同じファイルが膨大な期間で生成されます。ログはこちら、動画ファイルはこちら

0 投票する
1 に答える
7242 参照

android - MediaCodec と MediaMuxer を使用したビデオのエンコードと多重化

MediaMuxerビデオをデコードし、特定のフレームを置き換えて、 を使用して再エンコードするアプリを開発していMediaCodecます。フレームを置き換えなくても (以下で説明する 1080p ビデオを除いて) アプリは機能しますが、置き換えると、置き換えられたフレームの後のフレームがピクセル化され、ビデオが途切れ途切れになります。

また、1920x1080 のビデオでアプリを試してみると、ビデオの先頭までスクロールするまでビデオに何も表示されないという奇妙な出力が得られ、ビデオが表示され始めます (ただし、前述の同じ問題があります)。編集後のピクセル化。

エンコーダーを構成する方法は次のとおりです。

要約すると、2 つの問題があります。

1- ピクセル化されたフレームと、変更されたフレームの後の途切れ途切れのビデオ。

2- 最初までスクロールしないと、1920x1080 のビデオが破損します。

編集

これは未編集の1080p ビデオのサンプルです。VLCで再生すると緑色の画面が表示され、スクロールして開始しない限り電話で正しく再生されず、開始時の緑色のフレームを除いて YouTube で奇妙に正常に動作するようになりました

これは、開始時に緑色のフレームを使用して編集されたサンプル720p ビデオで、編集後のピクセレーションとラグがクリアされています。

再エンコードをデコードするために使用するコードは次のとおりです。

デコード方法:

そして、これがエンコード方法です: