Differences
This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision | ||
ffmpeg [2019/06/26 13:30] beandog |
ffmpeg [2023/04/09 21:27] beandog |
||
---|---|---|---|
Line 1: | Line 1: | ||
====== ffmpeg ====== | ====== ffmpeg ====== | ||
+ | * [[ffplay]] | ||
+ | * [[ffprobe]] | ||
* [[frameinfo]] | * [[frameinfo]] | ||
+ | * [[framecount]] | ||
+ | * [[detelecine]] | ||
* [[yadif]] | * [[yadif]] | ||
+ | * [[bwdif]] | ||
+ | * [[Subtitles]] | ||
- | To do a clean MPG copy from a DVD: | + | * [[https://amiaopensource.github.io/ffmprovisr/|ffmprovisr]] - excellent page to help you "build" an ffmpeg command |
+ | * [[https://en.wikibooks.org/wiki/FFMPEG_An_Intermediate_Guide]] | ||
+ | * [[http://wiki.indie-it.com/wiki/FFmpeg_DVD]] - lots of good, detailed ffmpeg examples | ||
+ | |||
+ | To do a clean MPG [[dvd_copy|copy]] from a DVD: | ||
+ | |||
+ | <code> | ||
+ | dvd_copy -o - | ffmpeg -i - -map 0:v -map 0:a -map 0:s -codec copy -f vob dvd_copy.mpg | ||
+ | </code> | ||
+ | |||
+ | Or into Matroska: | ||
+ | |||
+ | <code> | ||
+ | dvd_copy -o - | ffmpeg -fflags +genpts -i - -codec copy dvd_copy.mkv | ||
+ | </code> | ||
+ | |||
+ | ''ffmpeg'' can copy a Blu-ray directly as well, once you know the playlist number (see [[bluray_info]]). | ||
+ | |||
+ | <code> | ||
+ | ffmepg -playlist 800 -i bluray:/dev/sr0 -codec copy bluray_playlist.mkv | ||
+ | </code> | ||
+ | |||
+ | ** Adding Chapters ** | ||
+ | |||
+ | * See [[https://ffmpeg.org/ffmpeg-formats.html#Metadata-1]] | ||
+ | |||
+ | Create a file with the metadata. This example here has chapters at each minute mark. | ||
+ | |||
+ | <code> | ||
+ | ;FFMETADATA1 | ||
+ | [CHAPTER] | ||
+ | TIMEBASE=1/1000 | ||
+ | START=0 | ||
+ | END=60000 | ||
+ | title=Chapter 1 | ||
+ | [CHAPTER] | ||
+ | TIMEBASE=1/1000 | ||
+ | START=60000 | ||
+ | END=120000 | ||
+ | title=Chapter 2 | ||
+ | [CHAPTER] | ||
+ | TIMEBASE=1/1000 | ||
+ | START=120000 | ||
+ | END=180000 | ||
+ | title=Chapter 3 | ||
+ | [CHAPTER] | ||
+ | TIMEBASE=1/1000 | ||
+ | START=180000 | ||
+ | END=240000 | ||
+ | title=Chapter 4 | ||
+ | </code> | ||
+ | |||
+ | Use the file as input with the encode, and map the metadata: | ||
+ | |||
+ | <code> | ||
+ | ffmpeg -i video.mpg -i chapters.txt -map_metadata 1 video.mkv | ||
+ | </code> | ||
+ | |||
+ | You can extract the metadata as well: | ||
<code> | <code> | ||
- | dvd_copy -o - | ffmpeg -i - -map 0:v -map i:0x80 -c:v copy -c:a copy -f vob dvd_copy.mpg | + | ffmpeg -i dvd_copy.mkv -f ffmetadata metadata.txt |
</code> | </code> | ||
Line 82: | Line 146: | ||
Also, MV1234.MP4 is the old supported format. My PSP (firmware >5) supports "movie.mp4" naming scheme, as well as folder structures just fine! | Also, MV1234.MP4 is the old supported format. My PSP (firmware >5) supports "movie.mp4" naming scheme, as well as folder structures just fine! | ||
- | |||
- | === archives: Muxing to Matroska === | ||
- | |||
- | ffmpeg seems to have issues creating MKV files. For one, they are much larger than an AVI with the same encoding options. Secondly, they don't seem to work well when AC3 is placed in there. I'd recommend encoding to AVI (or MP4) and then using mkvmerge. |