ビデオは YUV 色空間でエンコードされます。Android API は、そのままでは RGB のみをサポートします。VPlayer や MX Player などの一般的な Android ビデオ プレーヤーは、この問題をどの程度解決しますか?
質問する
1301 次
3 に答える
0
opencvでは、これを行うことができます
cv::Mat myuv(height + height / 2, width, CV_8UC1, (unsigned char *) mem);
cv::Mat bgr(width, height, CV_8UC3);
cv::cvtColor(myuv, bgr, CV_YUV420sp2RGB, 3);
于 2016-08-10T21:34:01.320 に答える
0
それらのほとんどは、ffmpeg を使用してオーディオ/ビデオをデコードします。
https://sites.google.com/site/mxvpen/ffmpeg
https://ffmpeg.org/trac/ffmpeg/wiki/How%20to%20compile%20FFmpeg%20for%20Android
于 2013-05-29T16:45:20.500 に答える
0
2 つの一般的な解決策:
- 純粋なソフトウェア アルゴリズムを使用して、YUV -> RGB を変換します。
- 3D シェーダー ハードウェアを使用して、YUV から RGB への変換という面倒な作業を行います。
また、これが最適なアプローチであるかどうか (つまり、これは、ソフトウェアでビデオをデコードしていることを意味します) についても質問してください。そうする必要がありますか? ハードウェアは代わりにそれを処理できますか (同時に表示できますか)?
于 2013-05-29T16:44:30.157 に答える