Olympus u5000カメラで記録されたプライベートjpegとavi(mjpeg形式)のコレクションがあります。 mjpegはxbmcでの再生に適した形式ではないため、h264形式にトランスコードしたいと思います。私が持っている最も遠いのは次の行です:
avconv -i P3040001.AVI -strict experimental -c:v libx264 -b:v 8000k -c:a ac3 -b:a 192k output.mp4
この行は以下を変換します:
avconv version 9.11-6:9.11-2ubuntu2, Copyright (c) 2000-2013 the Libav developers
built on Mar 24 2014 06:12:33 with gcc 4.8 (Ubuntu 4.8.2-17ubuntu1)
Guessed Channel Layout for Input Stream #0.1 : mono
Input #0, avi, from 'P3040001.AVI':
Metadata:
creation_time : 2013-03-04 12:21:39
encoder : Olympus u5000
Duration: 00:00:01.99, start: 0.000000, bitrate: 12920 kb/s
Stream #0.0: Video: mjpeg, yuvj422p, 640x480, 30 fps, 30 tbr, 30 tbn
Stream #0.1: Audio: pcm_u8, 8000 Hz, mono, u8, 64 kb/s
に
avconv version 9.11-6:9.11-2ubuntu2, Copyright (c) 2000-2013 the Libav developers
built on Mar 24 2014 06:12:33 with gcc 4.8 (Ubuntu 4.8.2-17ubuntu1)
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'output.mp4':
Metadata:
major_brand : isom
minor_version : 512
compatible_brands: isomiso2avc1mp41
creation_time : 2013-03-04 12:21:39
encoder : Lavf54.20.3
Duration: 00:00:02.09, start: 0.000000, bitrate: 35 kb/s
Stream #0.0(und): Video: h264 (High), yuv420p, 640x480, 17 kb/s, 30 fps, 30 tbr, 30 tbn, 60 tbc
Metadata:
creation_time : 2013-03-04 12:21:39
Stream #0.1(und): Audio: aac, 8000 Hz, mono, fltp, 9 kb/s
Metadata:
creation_time : 2013-03-04 12:21:39
ご覧のとおり、音声に問題があります。 output.mp4には音声がまったくありません。 xubuntu 14.04サーバーに大量のファイルがあるため、avconvを使用したいと思います。
私が間違っているのは何ですか?
よろしく。
コマンドでは、オーディオトラックで何をすべきかを指定していませんでした。
これを試して:
avconv -i P3040001.AVI -strict experimental -c:v libx264 -b:v 8000k -c:a ac3 -b:a 192k output.mp4.
自由にビットレートを調整してください。 avinfo
を使用して、元のビットレートについてのアイデアを得て、同様のビットレートにトランスコードできます。
AvidemuxなどのGUIプログラムを使用することもできます。
これを試して:
avconv -i input.avi -c:v libx264 -b 800k output.mp4
これは、800kのレートでlibx264コーデックを使用してビデオを再エンコードし、mp4コンテナとの互換性を確保するためにエンコーダーがオーディオの処理方法を決定できるようにします。品質設定に合わせてビットレートを調整します。より大きい映画には高いビットレートを許可する必要があると考えられるすべてのもの。 (たとえば、1280x960の映画は、同様の品質を維持するために1つの640x480のビットレートの約4倍を必要とします)
おそらく最良のオプションは、x264エンコーディングにpresetを使用し、固定ビットレートではなく、一定レート係数(CRF)を指定することです。ソースからのサウンドは最初から最適ではありませんが、おそらく比較的低いビットレートのVBR mp3への変換は問題ないかもしれません。以下を試してください:
avconv -i P3040001.AVI \
-c:v libx264 -preset slow -crf 22 -tune film \
-c:a libmp3lame -qscale:a 7 -ar 44100 \
output.mp4
そして、これは合理的なビデオ品質とおそらくより良いサウンドを提供するかもしれません。 -qscale:a 7設定を調整して音を良くします。数値を小さくすると、ビットレートが高くなります。
Avconvがx264またはlibmp3lameで停止する場合、Ubuntuのバージョンに適した適切なlibavcodec-extra *パッケージを追加する必要があります。