問題タブ [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.
android - Libyuvを使用してYUV_420 _888をARGBに変換します
Libyuv ライブラリからメソッド I420ToARGB を呼び出して、YUV_420 _888 でエンコードされた Android camera2 プレビュー フレームを処理していますが、画像が間違った色で表示されます。
android - Android 用の Libyuv ライブラリ (PJSIP) のビルドに失敗しました
私はチャットアンドロイドアプリケーションを開発しています。通話機能も使いたい。SIP コール VoIP 用の pjsua2.so ライブラリのビルドに成功しましたが、ビデオ コール用の Libyuv.so ライブラリのビルドに失敗しました。
libyuv building libyuv 1776にリンクするための thhows の指示に従いました。
2 番目のリンクからステップ 2 で ndk-build コマンドを実行した後、この lib libyuv がありません。だから私も持っていません [libyuv_dir]/libs/armeabi
また、openH264の場合、このコマンド/configure-android --with-openh264=/home/ubuntu/openh264-1.0.0/android
を実行した後、次のようになりました:
OpenH264プレフィックスを使用しています... /home/ubuntu/PJSIPTOOLS/openh264-1.0.0/openlib/ OpenH264の使いやすさをチェックしています...いいえ
誰か助けてくれませんか(英語が下手でごめんなさい)
android - NV21 を NV12 に変換し、90 度回転する
私は Android カメラ アプリケーションを開発しています。フレームを扱うとき、いくつかのトラブルに遭遇しました。
Camera のonPreviewFrame(byte[] data, Camera camera)関数で、 NV21 はすべての Android デバイスがサポートされているため、データの形式をNV21 fromat に設定しました。
MediaCodec を使用してフレームをコーデックする場合、KEY_COLOR_FORMAT は COLOR_FormatYUV420SemiPlanar ( NV12 ) です。
したがって、NV21 を NV12 に変換する必要があります。
また、フレームは -90 度回転します。回転したいのは、元に戻す、90 度回転するという意味です。
Javaを使用して作成しました:
関数はうまく機能しますが、50ms 以上の長い時間がかかります。
私が知っているように、libyuvは YUV img をより高速に処理し、Android Camera アプリケーションで使用したいと考えています。
libyuv では、次の3 つの関数が役立つ可能性があることがわかりました。
これらの関数を使用すると、動作する場合があります。ただし、変換と回転には時間がかかる場合があります(推測します..)。
より少ない関数を使用して目標を達成する方法はありますか? ありがとう。
私が望むものではなく、ここでいくつかの答えも見つけました。
c++ - OpenCV での RGB から YUYV への変換
RGB から YUYV (YUY 4:2:2) 形式に変換する方法はありますか? OpenCVには逆の操作がありますが、何らかの理由でRGBからYUYVへの操作はありません。多分誰かがそれを行うコードを指すことができますか(OpenCVライブラリの外でも)?
アップデート
BGR を ARGB に変換し、次に ARGB を YUY2 形式に変換することで、この目的に使用できる libyuv ライブラリを見つけました (うまくいけば、これは YUYV 4:2:2 と同じです)。しかし、うまくいかないようです。yuyv バッファーの次元/型がどのように見えるべきか知っていますか? その歩幅は?
明確にするために、YUYV と YUY2 は同じ形式です。
UPDATE 2 これがlibyuvライブラリを使用する私のコードです:
更新 3
c++ - C++ ランタイム コンポーネント (ユニバーサル Windows) プロジェクト ビルド エラー "LINK: 致命的なエラー LNK1104: ファイル 'LIBCMT.lib' を開けません"
libyuv.lib (Google ライブラリ) を参照する C++ ランタイム コンポーネント (ユニバーサル Windows) プロジェクトを作成します。x64 の参照とビルドを設定した後、「LINK : 致命的なエラー LNK1104: ファイル 'LIBCMT.lib' を開けません」というエラーが表示されました。しかし、別のビジュアル C++ コンソール プロジェクト (win 32) では、同じ参照を libyuv.lib ライブラリに設定しました。できます。問題の解決を手伝ってください。ヘルプ/コメントは大歓迎です。ありがとう。
ジョシュ
android - libyuv ライブラリを使用して YUV 画像をスケーリングする際の問題
に基づいてカメラアプリを開発していますが、 libyuvCamera API 2
を使用していくつかの問題を発見しました。ImageReader から取得した画像を変換したいのですが、再処理可能なサーフェスでのスケーリングに問題があります。YUV_420_888
本質的に: 画像は、対応する色調ではなく緑色の色調で表示されます (.yuv ファイルをエクスポートし、http://rawpixels.net/を使用してチェックしています)。
ストライドに何か問題があるか、無効な YUV 形式を提供していると思います (画像を別の形式に変換する必要があるのでしょうか?)。ただし、緑色をスケーリングアルゴリズムに関連付ける方法がわからないため、エラーがどこにあるのかわかりません。
これは私が使用している変換コードです。問題とは関係のない追加の処理があるため、戻り値 NULL は無視してかまいません。