Ubuntu 13.10でDVDからコピーしたVOBファイルをaviファイルに変換しようとしています。私が試したdvdrip
フレームカウントエラーか何かのために失敗しました、。私もacidripを試しましたが、それはいつも私が使いたくないオーディオトラックを選びました。コマンドラインソリューションを使用して、次の機能を持つaviファイルを作成したいと思います。
- mplayerで使用可能(つまり、step関数を使用)
- 必要に応じて字幕付き(または誰もいない)
- 正しいオーディオトラックで
- ビデオとオーディオの同期
私はいくつか試したffmpeg
し、avconv
コマンドをしてAVIファイルを作成するために管理しますが、映像と音声が同期していcompletlyました。では、VOBファイルをaviファイルに変換するには、どのオプションを使用すればよいですか?
提案されたオプションについての説明をお願いします!
追加情報:
この
ffmpeg
コマンドは、入力ファイルに対して次の出力を提供しますInput #0, mpeg, from 'Videos/Test/VIDEO_TS/VTS_01_1.VOB': Duration: 00:04:53.32, start: 0.045500, bitrate: 29284 kb/s Stream #0.0[0x1e0]: Video: mpeg2video (Main), yuv420p, 720x480 [PAR 8:9 DAR 4:3], 7500 kb/s, 27.68 fps, 59.94 tbr, 90k tbn, 59.94 tbc Stream #0.1[0x82]: Audio: ac3, 48000 Hz, 5.1, s16, 384 kb/s Stream #0.2[0x80]: Audio: ac3, 48000 Hz, 5.1, s16, 448 kb/s Stream #0.3[0x81]: Audio: ac3, 0 channels [buffer @ 0x15ca6e0] w:720 h:480 pixfmt:yuv420p
次のコマンド
ffmpeg -i Videos/Test/VIDEO_TS/VTS_01_1.VOB -ss 589 -t 274 -sameq -acodec copy -ab 320k output.avi
たとえば、Ubuntuセッションがクラッシュしました。
次のコマンド
avconv -i Videos/Test/VIDEO_TS/VTS_01_1.VOB -acodec copy -vcodec copy output.avi
たとえば、次のエラーが発生しました:
Application provided invalid, non monotonically increasing dts to muxer in stream 1: 374 >= 374 av_interleaved_write_frame(): Invalid argument
次のコマンド
avconv -i Videos/Test/VIDEO_TS/VTS_01_1.VOB -f avi -c:v mpeg4 -b:v 800k -g 300 -bf 2 -c:a libmp3lame -b:a 128k output.avi
たとえば、次のエラーが発生しました:
Error while opening encoder for output stream #0:1 - maybe incorrect parameters such as bit_rate, rate, width or height
次のコマンド
avconv -i Videos/Test/VIDEO_TS/VTS_01_1.VOB -f avi -c:v mpeg4 -b:v 800k -g 300 -bf 2 -c:a ac3 -b:a 128k output.avi
たとえば、一部のフレームでは機能するようです。しかし、すぐに私はフォームの多くのエラーに遭遇しました
[ac3 @ 0x120d480] frame sync error Error while decoding stream #0:1 frame CRC mismatch
次のコマンド
mencoder Videos/Test/VIDEO_TS/VTS_01_1.VOB -oac copy -ovc x264 -x264encopts bitrate=2500 -o output.avi
いくつかの変換を行いましたが、(i)使用したくないのに字幕を使用している(ii)音声が間違っている(音声とビデオがひどく間違っている)と(iii)映画が実際に行くよりも遅いようです(かかるかもしれません) 90分の映画の場合は2時間)。
ここで与えられたコマンド(Xeratulからの3番目の投稿)を試みましたが、エラーで停止しました
FATAL: Cannot initialize video driver.
私はmencoderページを見るために以下の提案を試みました。このページでは、2つのパスの使用を提案しています。
1つ目は映画に関する情報を読み取り、2つ目はその情報を使用してエンコードします。
しかし、どの情報を抽出するか、2番目のパスでそれらをどのように使用するかについては説明されていません。したがって、次のコマンドを使用しました。
mencoder Videos/Test/VIDEO_TS/VTS_01_1.VOB -nosound -ovc x264 \ -x264encopts direct=auto:pass=2:bitrate=900:frameref=5:bframes=1:\ me=umh:partitions=all:trellis=1:qp_step=4:qcomp=0.7:direct_pred=auto:keyint=300 \ -vf scale=-1:-10,harddup -o video.avi
これはビデオを変換しましたが、不要な字幕が付いています。字幕の使用をどのように回避できるかは、まったく明確ではありません。
avconv
、VOBファイルをaviファイルに変換する方法を説明します。コマンドavconv -i Videos/Test/VIDEO_TS/VTS_01_1.VOB -acodec copy -vcodec copy test.avi
でエラーが発生しましたApplication provided invalid, non monotonically increasing dts to muxer in stream 1: 374 >= 374 av_interleaved_write_frame(): Invalid argument
...
avconv -i snatch_1.vob -f avi -c:v mpeg4 -b:v 800k -g 300 -bf 2 -c:a libmp3lame -b:a 128k snatch.avi
これを試してください
Error while opening encoder for output stream #0:1 - maybe incorrect parameters such as bit_rate, rate, width or height
mencoder yourvob -oac copy -ovc x264 -x264encopts pass=1:preset=veryslow:fast_pskip=0:tune=film:frameref=15:bitrate=3000:threads=auto -nosub -o /dev/null
そしてmencoder yourvob -oac copy -ovc x264 -x264encopts pass=2:preset=veryslow:fast_pskip=0:tune=film:frameref=15:bitrate=3000:threads=auto -nosub -o video.avi
-リンクdg99 @アーチドキュメントから部分的にことをしました。
ffmpeg
は古くから非推奨であり、独自の後継を使用することになっています:avconv
。