Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
Beide Seiten der vorigen Revision Vorhergehende Überarbeitung Nächste Überarbeitung | Vorhergehende Überarbeitung | ||
becki:linux:multimedia [2015-12-22 11:16] becki |
becki:linux:multimedia [2018-09-15 08:03] (aktuell) becki [Encode to x264] |
||
---|---|---|---|
Zeile 26: | Zeile 26: | ||
lame | lame | ||
x264 | x264 | ||
- | x265 | + | [x265] |
</code> | </code> | ||
+ | |||
+ | Command to build the package with the optional packages enabled: | ||
+ | |||
+ | ASS=yes FAAC=yes LAME=yes X264=yes ./ffmpeg.SlackBuild | ||
+ | |||
+ | FIXME FAAC seems not necessary any morge as of ffmpeg-3.2.4. Instead try FDK_AAC | ||
+ | |||
+ | Note: To install ffmpeg on a headless server (without X) it may be necessary to install additional stock packages first and to disable some features which are enabled by default (tested): | ||
+ | |||
+ | slackpkg install libXi libXtst | ||
+ | CACA=no OPENGL=no X11GRAB=no ASS=yes FAAC=yes LAME=yes X264=yes ./ffmpeg.SlackBuild | ||
=== Docs == | === Docs == | ||
Zeile 35: | Zeile 46: | ||
- https://ffmpeg.org/ffmpeg-all.html | - https://ffmpeg.org/ffmpeg-all.html | ||
- http://trac.ffmpeg.org/wiki | - http://trac.ffmpeg.org/wiki | ||
+ | - https://www.ostechnix.com/20-ffmpeg-commands-beginners/ | ||
Note that these official docs do not contain hints about DVD ripping. | Note that these official docs do not contain hints about DVD ripping. | ||
Zeile 63: | Zeile 75: | ||
===== Audo and video editing by task == | ===== Audo and video editing by task == | ||
+ | ==== Get info about a media file == | ||
+ | |||
+ | ffprobe | ||
+ | | ||
==== Extract a section from an audio/video file == | ==== Extract a section from an audio/video file == | ||
Zeile 85: | Zeile 101: | ||
From https://trac.ffmpeg.org/wiki/Concatenate for format of ''mylist.txt'' | From https://trac.ffmpeg.org/wiki/Concatenate for format of ''mylist.txt'' | ||
+ | ==== Encode to x264 == | ||
+ | |||
+ | Test shows that both commands results in 2 files with the same size and bitrate:((Bitrate can be checked with ''ffprobe'')) | ||
+ | ffmpeg -i IN.VOB out.mkv | ||
+ | ffmpeg -i IN.VOB -c:v libx264 -preset medium -crf 23 -c:a libvorbis out.mkv | ||
+ | |||
+ | - 2-pass encoding (-pass 1/2) needs a certain bitrate option (-b:v) as well and seems to be useful only if you want an exact output file size. | ||
+ | - Constant Rate Factor (CRF) encoding seems not te be inferior compared to 2-pass | ||
+ | - crf 28 still seems to provide acceptable quality | ||
+ | - A slower preset seems to provide smaller file size with same quality at the cost of a higher encoding time. | ||
+ | - ''-preset slow'' helps about 5-10% compared to the ''medium'' preset | ||
+ | Source: http://trac.ffmpeg.org/wiki/Encode/H.264 | ||
+ | |||
+ | Rule of thumb to save space: Make a test encoding with default values (crf=23) and than increase the crf value until quality becomes inacceptable. | ||
+ | |||
+ | Useful opts: | ||
+ | <code> | ||
+ | -tune animation - good for cartoons | ||
+ | -an disable audio | ||
+ | -vn disable video | ||
+ | </code> | ||
+ | |||
+ | ==== Stream selection == | ||
+ | Example: Select all video stream and 2nd audio stream of first (and normally only) input file: | ||
+ | |||
+ | ffmpeg -i input.vob -map 0:v -map 0:a:1 output.mkv | ||
+ | |||
===== Manual DVD ripping == | ===== Manual DVD ripping == | ||
==== Copy raw Media to Disk == | ==== Copy raw Media to Disk == | ||
- | Find the right track by reading DVD content using ''lsdvd''((available on slackbuilds)) or ''%%mencoder dvd:// -v%%'' may be helpfull as well | + | Find the right track by reading DVD content using ''lsdvd''((available on slackbuilds)). ''%%mencoder dvd:// -v -o -%%'' may be helpfull as well |
Extract track n with | Extract track n with | ||
- | mplayer dvd://n -dumpstream -dumpfile title_n.vob | + | mplayer dvd://n -dumpstream -dumpfile title_n.vob [-chapter m-m] |
- | If reading and/or extaction does not work (check for completeness, passages with garbage!): | + | If reading and/or extaction does not work (check for completeness, passages with garbage!) then try the following method: |
+ | |||
+ | ==== Copy raw Media to Disk Alternative == | ||
Mount the DVD and check all VOB-files with mplayer (or ffplay). Copy those you need to disk | Mount the DVD and check all VOB-files with mplayer (or ffplay). Copy those you need to disk | ||
Zeile 108: | Zeile 153: | ||
==== Encode == | ==== Encode == | ||
- | ffmpeg -f concat -i voblist.txt -c:v libx264 -c:a libvorbis output.mkv | + | ffmpeg -i input.vob output.mkv |
+ | |||
+ | See above for more options | ||
==== Todo == | ==== Todo == | ||
- | - Higher Compression / 2 path? | ||
- | - Use ''-map'' to select audio and video tracks | ||
- Chapter markers | - Chapter markers | ||
+ | - subtitles | ||
+ | - multiple audio tracks | ||
+ | - Test ffmpeg -aspect | ||
===== DVD ripping with HandBrake == | ===== DVD ripping with HandBrake == |