2016-09-15 3 views
-1

私は通りの風景のビデオを約3分持っています。人や車などが認識できないように、ビデオのフルフレームをぼかしておきたい。さらに、私は、ビデオファイルのサイズをできるだけ小さくしたいと思っています。元の映像は1920x1080で、最終的なサイズは800x450です。私の質問です:私はffmpegで圧縮する前にビデオをぼかすか、または最良の結果を得るために圧縮中にビデオをぼかすためにffmpegを使用する必要があります。 ffmpeg Documentation: Detailed descriptionから圧縮前、またはffmpegでフィルタを使用している間にビデオをぼかす必要がありますか?

_______    ______________ 
|  |   |    | 
| input | demuxer | encoded data | decoder 
| file | ---------> | packets  | -----+ 
|_______|   |______________|  | 
              v 
             _________ 
             |   | 
             | decoded | 
             | frames | 
             |_________| 
________    ______________  | 
|  |   |    |  | 
| output | <-------- | encoded data | <----+ 
| file | muxer | packets  | encoder 
|________|   |______________| 

図:あなたはそれが完全に生ビデオに入力をデコードしますので予めかぼやけている入力を使用する場合

+1

従って、これは完全にオフトピック、プログラミングに関連しません。 –

+0

圧縮中にぼかしがありません。圧縮の前に常に必要になります!唯一の悪いことは、圧縮の前にぼやけることですが、中間的な損失のあるエンコーダ(=損失の品質)を使用することです。正しい方法は、フレームサーバを使用する(avisynthのように)/パイプを使用する/ ffmpeg内でぼかす(可能であれば内部配管)/緊急:ぼかしとロスレスエンコード;次にエンコーダを呼び出します。 – sascha

+0

Monkey Supersonicがスタックオーバーフローについて言及したのは、特にプログラミング問題のためのものです。 'ffmpeg'cliの使用に関するその他の質問がある場合は、[su]に問い合わせてください。 – LordNeckbeard

答えて

0

それはffmpegに重要ではありません。 ffmpeg Documentation: Filteringから

_________      ______________ 
|   |      |    | 
| decoded |      | encoded data | 
| frames |\     _ | packets  | 
|_________| \     /||______________| 
      \ __________ /
    simple  _\||   |/encoder 
    filtergraph | filtered |/ 
       | frames | 
       |__________| 

図:あなたはそれを行うだろうその後、フィルタリングする場合は

はそう間はフレームエンコーダをデコード。

ので、最も簡単な方法は、単に代わりに、不必要ffmpegにそれを与える前に+再エンコードをぼかすためにどんなツールを使って、多くのFFmpeg filtersのいずれかを使用して、それをぼかすことです。

例コマンド:

ffmpeg -i input -filter_complex "scale=800:-2,boxblur=8" -preset slow -crf 30 -movflags +faststart -an output.mp4 
関連する問題