web-dev-qa-db-ja.com

iphone用のavconvでavi(MJPEGコーデック)を作成するにはどうすればよいですか?

Jpgのパックからavconvで動画を作って、iPhoneで開こうとしています。コマンドでMJPEGを使用してaviファイルを作成します。

avconv -r 10 -i %06d.jpg -r 10 -vcodec mjpeg -qscale 1 out.avi 

私のPCではすべて問題ありませんが、このビデオをiPhoneで開くと、黒い画面しか表示されません。入力ファイルのようにすべてのパラメータを使用して、MJPEGからMJPEGに(AVS Video Converterによって)「変換」しようとします。iPhoneは通常どおり再生します。 「変換」前の動画がiPhoneで再生されない理由がわかりません。私は何を間違っていますか?

AvconvからのPS情報:

「変換」する前

/mnt/dav $ avconv -i out.avi
avconv version 0.8.6-6:0.8.6-1+rpi1, Copyright (c) 2000-2013 the Libav developers
  built on Mar 31 2013 13:58:10 with gcc 4.6.3
Input #0, avi, from 'out.avi':
  Metadata:
    encoder         : Lavf53.21.1
  Duration: 00:00:02.30, start: 0.000000, bitrate: 3767 kb/s
    Stream #0.0: Video: mjpeg, yuvj422p, 1280x720, PAR 1:1 DAR 16:9, 10 tbr, 10 tbn, 10 tbc
At least one output file must be specified

「変換」後

/mnt/dav $ avconv -i out_conv.avi
avconv version 0.8.6-6:0.8.6-1+rpi1, Copyright (c) 2000-2013 the Libav developers
  built on Mar 31 2013 13:58:10 with gcc 4.6.3
Input #0, avi, from 'out_conv.avi':
  Duration: 00:00:02.30, start: 0.000000, bitrate: 3804 kb/s
    Stream #0.0: Video: mjpeg, yuvj420p, 1280x720, 10 tbr, 10 tbn, 10 tbc
At least one output file must be specified
2
wattson

問題は、ビデオのピクセル形式がyuvj422pで、4:2:2 クロマサブサンプリング を使用していることです。 iPhoneは4:2:0サブサンプリングのみをサポートしている可能性があります。

代わりにこれを試してください:

avconv -r 10 -i %06d.jpg -r 10 -vcodec mjpeg -pix_fmt yuvj420p -qscale 1 out.avi 
0
slhck