ねえ、私は次のような同様の問題に直面しています:RGBからYUVへの変換、+ ffmpeg
AIRから、エンコーディングが長すぎてフレームを妥当な速度でレンダリングできないことがわかりました。そのため、argbByteArrayをからbitmap.getPixels(rect)
直接ファイルにエクスポートしました。
したがって、30秒のフラッシュアニメーションの場合、たとえば1500フレームを1500.argb
ファイルにエクスポートします。
この方法はうまく機能します。ffmpegcmdを使用してHDビデオをレンダリングできました。
ffmpeg -f image2 -pix_fmt argb -vcodec rawvideo -s 640x380 -i frame_%d.argb -r 24 -qscale 1.1 -s 640x380 -i ./music.mp3 -shortest render-high.mpg
ここまでは順調ですね!ただし、2つのプロセスの間に、これらの最大3GBのデータを保存する必要があります。
次に、すべてのargbを1つのファイルに追加して、ffmpegにそれを消費させようとしましたが、それから何も得られませんでした... tcp / udpをいじってみましたが、スタックしました...
そのプロセスを合理化し、うまくいけばAirとffmpegの両方を一緒にパイプする方法を知っている人はいますか?