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

0 投票する
2 に答える
736 参照

android - stagefright CameraSource::read は、Samsung Galaxy S2 で小さなフレーム (20 バイト) を返します

カメラでキャプチャされたフレームを取得してエンコードし、最終的に RTP/RTSP を使用して送信しようとしています。

キャプチャを行うには、stagefright の CameraSource クラスを使用しています。画面上のプレビュー (Java から渡された Surface) は素晴らしいです。しかし、フレームを抽出しようとすると、20 バイトのフレームが得られます。

私は何を間違っていますか?

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

android - クラッシュを防ぐために、Android でサポートされているオーディオ エンコーダーを検出する「指定されたオーディオ エンコーダー 2 が見つかりません」

Android デバイスが必須のオーディオ エンコーダーをサポートしていない場合は、次のようになります: (X=エンコーダーの数値インデックス)

E/MediaProfiles(4048): 指定されたオーディオ エンコーダー X が見つかりません A/AudioSource(4048): Frameworks/base/media/libstagefright/AudioSource.cpp:58 CHECK(channels == 1 || channels == 2) が失敗しました。A/libc(4048): 0xdeadbaad (code=1) での致命的なシグナル 11 (SIGSEGV) ネイティブ コード。反応する例外はありません。アプリは強制終了です。

AAC AMR-NB と AMR-WB が実際にサポートされている場合、Android >3.x デバイスをクエリする方法はありますか? ドキュメント ( http://developer.android.com/guide/appendix/media-formats.html ) によると、これらはコア メディア フォーマットであり、常にサポートされています。(主要ブランドの)一部の実際の一般的な電話はそうではありません。

MediaCodec.createByCodecName(String name)および Get supported Codec for Android device は API16=Android 4.1 でのみ機能しますが、問題のデバイスは 4.0.x です。また、AMR-NB と AAC も記載されていません。

0 投票する
2 に答える
1900 参照

android - OpenCORE または StageFright を使用して、Android でビデオをエンコードまたはデコードできますか?

この Android フレームワークは、1 つの Android アプリのエンコードおよびデコード機能を開発する機能を提供しますか?

ビデオのエンコードとデコードの機能を提供する MediaCodec という名前の 4.1 の高レベル API が 1 つあることは知っていますが、そのメディア フレームワークの 1 つをコーデックへのアクセスに Stagefright として実際に使用しているかどうかはわかりません。

MediaCodec API を使用するよりも、そのフレームワークの 1 つを直接使用してエンコードまたはデコードする利点はどれですか?

たぶん私は非常に混乱していますが、Androidビデオでのエンコードに関するプロジェクトを作成する必要があり、誰かが私を助けてくれれば、これにより良いオプションを選択する必要があります...

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

android - ICS での HLS サポート

セキュアな m3u8 を再生する必要がある ICS オペレーティング システムがインストールされた特定のハードウェアがあります (IOS が処理するのと同じようにキー ファイルを使用します)。

早送り、巻き戻し、オンザフライでのストリームの操作、広告の表示など、さまざまな方法で再生を制御する必要があります。

Android プレーヤーを使用して .ts ファイルを再生できる場合、これはすべて解決できると考えています。このようにして、一度に多くの m3u8 にアクセスし、独自の (プロキシとして機能する) を作成し、ts ストリームをプレーヤーに提供できます。多くの m3u8 ts ストリームを操作して、オンザフライで結合することもできます。

それが可能かどうかを理解する必要がありますか?Stagefright フレームワークは内部でどのように処理されていますか? 誰でも Stagefright フレームワークの知識を持っていますか?

ハードウェアで再生したいだけで、他の OS サポートは必要ありません。

0 投票する
5 に答える
8935 参照

android - AndroidでStagefrightを使用するには?

アプリケーションでビデオ ファイルを再生したい.tsのですが、どうにもなりません。Androidでそれができるかどうかは疑問です。

フレームワークについて聞いたことがあります。アプリケーションでどのように使用できるか、ファイルを再生できるかどうかStagefright教えてください。Stagefright.ts

または、ファイルを再生する他の方法はあり.tsますか?

ありがとう

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

android - Android - デバイス/メーカー間での Stagefright フレームワークの一貫性

Stagefrightメーカーやデバイス間 での使用において何らかの保証された一貫性はありますか?

AndroidStagefrightは 2.x で導入されましたが、メーカーが Android に変更を加えるのを妨げているものはありますか? ICS の時点で、Android は(少なくとも一部の) のネイティブ API サポートを正式に追加OpenMAX AL 1.0.1しましたが、古いデバイスをサポートできるようにしたいと考えています。

SEIH.264 ビデオから( ) ユーザー データを取得しよNALうとしています。取得するための最良の方法を見つけようとしています。Stagefrightそれを行う適切な方法はありますか、それともデバイス間で保証されていませんか?

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

android - Androidでlibstagefrightを介してHWデコーダーを使用するには、MP4再生の代わりにフレームベースデコード用のメタデータでkKeyAVCCに何を設定しますか?

libstagefright を使用して h264 圧縮フレームをデコードしようとしています。MP4 ファイルがありません。代わりに、フレームごとにデコードしたいと考えています。リンクからサンプルを調べています. このサンプルでは、​​ffmpeg を使用して mp4 ファイルを解析します。ffmpeg の avcodeccontext を使用して、必要なメタデータを設定および検索します。ここで、kKeyAVCC、kKeyWidth、kKeyHeight、kKeyIsSyncFrame、および kKeyTime を設定します。これらの各パラメーターについては明確ではありません。それで、私が知りたいのは、これらすべてのパラメータを設定する必要があるかどうかだけですか? これらのパラメータの目的と、フレームごとのデコード用のメタデータ用に設定するものは何ですか。kKeyTime を設定しないと、omxcodec がメディアバッファの読み取り時にクラッシュします。また、読み取り操作が成功した場合、MediaBuffer の派生読み取りメソッドで設定したメタデータ値を取得していません。フレームのビデオ寸法と INFO_FORMAT_CHANGED のエラー コードを取得します。

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

android - StageFright API にアクセスして h264 ビデオをデコードし、Android (Gb および ICS) のアプリケーション層からレンダリングする方法

StageFright API にアクセスして h264 ビデオをデコードする方法と、Android のアプリケーション層 (GB、ICS) から Surfaceflinger API を使用してデコードされたデータ ( YUV420 になります) をレンダリングする方法についてのアイデアを提供するサンプル コードはありますか。

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

android - Android:ネイティブのサーフェスを使用しようとしたときにmSurfaceのjava.lang.NoSuchField例外が発生しました

ネイティブコードからサーフェスのバッファをフィードしたい。したがって、SurfaceViewのSurfaceHolderのgetSurfaceメソッドからサーフェスを取得します。今私が欲しいのは、画像をレンダリングするためにネイティブからフィードバッファにそれを使用することです。SurfaceClinger/Surface.hを含めました。しかし、mSurfaceプロパティを取得しようとすると、mSurfaceに対してjava.lang.NoSuchFieldExceptionというエラーがスローされます。この点に関する提案は役に立ちます。

コードスニペット:

ありがとう。

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

android - IOMX を使用してコンポーネント名とモデルをリストしているときにエンコーダーが見つかりませんでしたが、Android は H264 でエンコードされたフレームで .mp4 ファイルを記録できます

ここに示すように、メディアプレーヤーサービスとバインドすることにより、IOMX を使用して Android デバイスでサポートされているすべてのコーデックを一覧表示しようとしています。コードが機能し、コンポーネントのリストを取得しました。しかし、エンコーダ コンポーネントがないことがわかりました。すべてのデコーダ コンポーネントのみがリストされました。次に、Android が提供する組み込みのカメラ アプリケーションに移動し、mp4 ファイル形式で保存されたビデオの録画を開始しました。VLCプレーヤーからmp4ファイルのコーデック情報を確認すると、「H264 mpeg4 part10 avc」と表示されていました。ここで私の疑問が生じます。h264/avc エンコーディング用のコンポーネントがリストされていない場合、Android はどのようにフレームを h264 形式でエンコードできますか?

なにか提案を?ありがとう。