問題タブ [libyuv]

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 に答える
1090 参照

android-studio - LibYUV を Android Studio プロジェクトに統合する

Android Studio プロジェクトに libyuv ライブラリを含めるにはどうすればよいかと考えていました。コンパイル済みのバイナリ ファイルである「libyuv_static.a」ファイルがありますが、プロジェクトに含めるためにあらゆることを行いました。jniLibs という名前の src/main 内にフォルダーを作成し、フォルダー内にバイナリ ファイルを配置しましたが、実行時にライブラリが読み込まれず、次のようになります。

原因: java.lang.UnsatisfiedLinkError: ローダー dalvik.system.PathClassLoader[dexPath=/data/app/com.example.myproject-1.apk,libraryPath=/data/app-lib/com から libyuv2rgb を読み込めませんでした。 example.myproject-1]: findLibrary が null を返しました

. 誰かが彼/彼女の経験を共有してもらえますか.

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

yuv - libyuv::NV21ToI420 は色を台無しにします

libyuv を使用して NV21 イメージ形式を I420 に変換しています。

入力のサイズは 640x480 です。

ImageMagick の表示を使用して、ダンプされたファイルを表示します。

ただし、表示された画像では色がめちゃくちゃです。画像の他の側面は問題ないように見えます。

コードを間違えているのではないかと思っています。おそらく私のストライド計算は正しくありません。

カスタム関数を使用して V1U1V2U2... を U1U2...V1V2... として再配置し、出力をダンプすると、正常に表示されることに注意してください。ただし、neon、SSE2などの最適化が行われているため、libyuvを使用することを好みます。よろしく。

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

android - YUV420Sp 画像を反時計回りに 90 度回転

YUV420SP 画像を反時計回りに 90 回転させたい。画像サイズは 640*480 なので、回転した画像サイズは 480*640 になりたくないので、480*480 データ (または他の正方形サイズ) を抽出してそのデータを回転させたいと思います。

私が見た:AndroidでYUVバイト配列を回転させる

しかし、この答えは時計回りに 90 回転します。

画像のサイズを変更せずに、YUV420Sp データを 90 度 (反時計回り) または 270 度 (時計回り) 回転させる機能を誰かが提案できますか?

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

android - NV21形式のAndroidカメラプレビューデータをlibyuvでi420に変換するには?

次の方法で NV21 形式のプレビュー データを受け取ります。

libyuv でI420data形式に変換したい。それは私が必要としているようです。NV21ToI420ConvertToI420include/libyuv/convert.h

それを行う例はありますか?

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

c - Android フロントカメラ用に libyuv::I420Scale でミラーを実装する方法は?

次の単語はlibyuv#rotationからのものです

ミラー - 水平方向の反転 画像を水平方向に反転するためのミラー機能。Web カメラの「セルフ ビュー」に役立ちます。

ミラー機能は、I420Scale および ARGBScale 関数で負の幅および/または高さを渡すことによって実現することもできます。

I420Scaleただし、次のような実装を見ました。

もしdst_width <= 0 || dst_height <= 0、その後return -1;

それは冗談Mirror functionality can also be achieved with the I420Scale by passing negative width and/or heightですか?

でミラー機能を実装する方法はI420Scale?

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

video - FFMPEG YUV を使用したビデオ ファイルの連結の問題

3 つの動画を FFMPEG で連結しています。

連結の 1 番目と 3 番目のビデオは、FFMPEG を使用して AVI ファイルから取得され、MP4 に変換されました。

コーデック情報は以下のとおりです。

ここに画像の説明を入力

連結の 2 番目のビデオは、FFMPEG を使用してコンパイルされます。このビデオを作成するためにFFMPEGでフレームをコンパイルしています。

そのコーデック情報は以下のとおりです。

ここに画像の説明を入力 ご覧のとおり、ビデオは同じコーデック、解像度、フレーム レートを共有しています。

彼らが共有していない唯一のものは、デコードされた形式です。1 つは 4:4:4 で、もう 1 つは 4:2:2 です。

このリンクからYUVの意味を理解していると思います https://msdn.microsoft.com/en-us/library/windows/desktop/dd391027%28v=vs.85%29.aspx?f=255&MSPPError=-2147217396

concat demuxerを使用してこれら 3 つのビデオを連結すると動作しますが、最終ビデオを見ようとすると、最初のファイルが正しく再生され、最終ビデオの 2 番目のビデオが空白になり、3 番目のビデオが表示されます。も問題なく再生されます。

私の質問は、3 つの MP4 ファイルを連結する方法ですが、2 番目のビデオのデコードされた形式と思われるものを 4:2:2 に変更する方法です。フレームをコンパイルすると、YUV フォーマットを変更できると思いますが、まだ方法がわかりません。

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

android - ビットマップの透明ピクセルが白で表示される

C コードを使用frameして gif ファイルから取得していますが、 ffmpeglibraryを使用して正常に動作しています。次に、このメソッドを使用してav_read_frame、返された画像をこの形式 format から変換します。BGRA to ARGBlibyuv::ABGRToARGB

Java部分bitmapでは、それを透明なピクセルに入れると、ImageView白く描かれます。

返されたものをループしてbitmap pixels各ピクセルをチェックしても、透明であることがわかります!

何も起こらず、まだ白いままです。次に、すべての透明ピクセルを TRANSPARENT に変換しました!! 何を推測しますか、それは働いています!

なぜそれが起こるのか理解できません。どんな助けでも大歓迎です。

編集1: ビットマップからすべてのピクセルを取得し、何もせずに再度設定しましたが、それも機能しました!?