###実現したいこと
題のとおりです。
.mp4の指定フレームの画像を、RAWデータとして取り出したいです。
当方は簡易動画編集ソフトのようなものを開発しており、.mp4の動画データを読み込みたいです。
そのため、つながったRAWデータをリアルタイム再生できる程度の速さもほしいです。
###困っている点
Googleなどで検索し、いくつかの方針を立てたのですが、どれを採用したものか、あまりに一般的でない方法が混じってないか、もしくは知らない、いい方法が無いかなどをご教授いただきたいです。
####建てた方針
- mp4を予め連番pngに変換する。(png -> RAW は既に完成しています)
長い動画を扱う際、保存容量が増大してしまう。
FFmpegを使って試してみたところ、時間も結構かかるように感じました
- mp4をAVIに予め変換し、AVIの指定フレームを切り出しRAWデータを得る
これも無圧縮AVIを扱う時に容量が増大してしまうのでは?と懸念があります。
AVIの指定フレームを切り出しRAWデータを得る方法も、現状では分かっていません。
- 逐一欲しいフレームを(FFmpegなどで)pngに書き出し、png->RAW
容量も少なくて済むのですが、工程が多く、二度手間・一般的でない方法に直感で感じるのと、
リアルタイムで再生するには速度が追いつかないです。
その結果、容量と速度の両立が難しく、一般的な動画編集ソフトはどんな方法を採用しているのか?など、気になった次第です。
何しろ映像編集の分野について初心者なので、他に必要な情報があれば教えていただきたいです。
###補足情報(言語/FW/ツール等のバージョンなど)
Windows10 Home/64Bit
VS Community 2019
C++ 17
###追加情報 - 「RAWデータ」をどのような意味で使っていたか
ここでは、「非圧縮の画像データ」と考えて書いています。
具体的には、
[R,G,B,A,R,G,B,A ....]のように、
左上のピクセルから、x,y座標のR,G,B,Aを
(1,1) (2,1) (3,1) .... (1,2) (2,2) (3,2) ....
のように並べて格納しています。
回答1件
あなたの回答
tips
プレビュー