User Tools

Site Tools


ffmpeg:only_keep_english

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Next revision
Previous revision
ffmpeg:only_keep_english [2023/10/30 11:04] – created peterffmpeg:only_keep_english [2023/10/30 17:13] (current) – [ffmpeg - Only keep English] peter
Line 1: Line 1:
 ====== ffmpeg - Only keep English ====== ====== ffmpeg - Only keep English ======
 +
 +<code bash>
 +ffmpeg -i "input.mkv" -c copy -map 0:v -map 0:a:m:language:eng? -map 0:s:m:language:eng? -map 0:d? -map 0:t? "output.mkv"
 +ffmpeg -i "input.mkv" -map 0:v -map 0:a:m:language:eng? -c copy -c:s copy -map 0:s:m:language:eng? -map 0:d? -map 0:t? "output.mkv"
 +
 +or
 +
 +ffmpeg -i "input.mkv" -map 0:0 -map 0:a:m:language:eng? -c copy -c:s copy -map 0:s:m:language:eng? -map 0:d? -map 0:t? "output.mkv"
 +ffmpeg -i "input.mkv" -c copy -map 0:v -map 0:a:m:language:eng? -c:s copy -map 0:s:m:language:eng? -map 0:d? -map 0:t? "output.mkv"
 +</code>
 +
 +<WRAP info>
 +**NOTE:**  
 +
 +  * **-c:s copy**:  Using stream copy to remux (no encoding).
 +  * **-map 0:v**:  Keep the existing Video.
 +    * **-map 0:0**:  Keep the existing map 0:0.  (Assume this is the Video).
 +  * **-map 0:a:m:language:eng?**:  Keep only English Audio. (Optional only if Audio exists).
 +  * **-map 0:s:m:language:eng?**:  Keep only English Subtitles. (Optional only if Subtitles exist).
 +  * **-map 0:d?**:  Keep Data. (Optional only if Data exists).
 +  * **-map 0:t?**:  Keep Attachments. (Optional only if Attachments exists).
 +
 +</WRAP>
 +
 +----
 +
 +<code bash>
 +
 +# QUICK.
 +ffmpeg -i "input.mkv" -c copy -map 0:v -map 0:a:m:language:eng? -c:s copy -map 0:s:m:language:eng? -map 0:d? -map 0:t? "out1.mkv"
 +
 +# SLOW, BUT SLIGHTLY SMALLER.
 +ffmpeg -i "input.mkv" -c:v copy -map 0:v -map 0:a:m:language:eng? -c:s copy -map 0:s:m:language:eng? -map 0:d? -map 0:t? "output.mkv"
 +
 +# VERY SLOW, BUT SMALLER.
 +ffmpeg -i "input.mkv" -map 0:v -c:a copy -map 0:a:m:language:eng? -c:s copy -map 0:s:m:language:eng? -map 0:d? -map 0:t? "output.mkv"
 +
 +# EXTREMELY SLOW, BUT SMALLEST.
 +ffmpeg -i "input.mkv" -map 0:v -map 0:a:m:language:eng? -c:s copy -map 0:s:m:language:eng? -map 0:d? -map 0:t? "output.mkv"
 +ffmpeg -i "input.mkv" -map 0:v -map 0:a:m:language:eng? -map 0:s:m:language:eng? -map 0:d? -map 0:t? "output.mkv"
 +
 +</code>
 +
 +----
 +
 +===== References =====
 +
 +https://trac.ffmpeg.org/wiki/Map
  
ffmpeg/only_keep_english.1698663895.txt.gz · Last modified: 2023/10/30 11:04 by peter

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki