Editing MKV flags to stop subtitles

When viewing some mkv files you end to find in some cases that the soft subtitles are enabled by default. To disable, follow this

Check the current  file info:

mkvinfo <filename>.mkv
+ EBML head
|+ EBML version: 1
|+ EBML read version: 1
|+ EBML maximum ID length: 4
|+ EBML maximum size length: 8
|+ Doc type: matroska
|+ Doc type version: 2
|+ Doc type read version: 2
+ Segment, size 4687414538
|+ Seek head (subentries will be skipped)
|+ Segment tracks
| + A track
|  + Track number: 1 (track ID for mkvmerge & mkvextract: 0)
|  + Track UID: 1280263319
|  + Track type: video
|  + Forced flag: 1
|  + Lacing flag: 0
|  + MinCache: 1
|  + Codec ID: V_MPEG4/ISO/AVC
|  + CodecPrivate, length 40 (h.264 profile: High @L4.1)
|  + Default duration: 41.708ms (23.976 frames/fields per second for a video track)
|  + Video track
|   + Pixel width: 1280
|   + Pixel height: 688
|   + Display width: 1280
|   + Display height: 688
|   + Interlaced: 0
|  + Enabled: 1
|  + Default flag: 1
|  + Timecode scale: 1
|  + Max BlockAddition ID: 0
|  + Codec decode all: 1
| + A track
|  + Track number: 2 (track ID for mkvmerge & mkvextract: 1)
|  + Track UID: 1577341855
|  + Track type: audio
|  + Forced flag: 1
|  + Codec ID: A_DTS
|  + Audio track
|   + Sampling frequency: 48000
|   + Channels: 2
|  + Content encodings
|   + Content encoding
|    + Content compression
|     + Algorithm: 3 (header removal)
|     + Settings: length 4, data: 0x7f 0xfe 0x80 0x01
|    + Order: 0
|    + Scope: 1 (1: all frames)
|    + Type: 0 (compression)
|  + Enabled: 1
|  + Default flag: 1
|  + Lacing flag: 1
|  + MinCache: 0
|  + Timecode scale: 1
|  + Max BlockAddition ID: 0
|  + Codec decode all: 1
| + A track
|  + Track number: 3 (track ID for mkvmerge & mkvextract: 2)
|  + Track UID: 957802682
|  + Track type: subtitles
|  + Forced flag: 1
|  + Lacing flag: 0
|  + Codec ID: S_TEXT/UTF8
|  + Language: rum
|  + Enabled: 1
|  + Default flag: 1
|  + MinCache: 0
|  + Timecode scale: 1
|  + Max BlockAddition ID: 0
|  + Codec decode all: 1
|+ EbmlVoid (size: 3734)
|+ Segment information
| + Timecode scale: 1000000
| + Muxing application: libebml v1.0.0 + libmatroska v1.0.0
| + Writing application: mkvmerge v4.1.1 ('Bouncin' Back') built on Jul  3 2010 22:54:08
| + Duration: 5985.440s (01:39:45.440)
| + Date: Tue Feb  8 11:55:23 2011 UTC
| + Segment UID: 0xb4 0xc9 0x7c 0x1f 0x34 0xa2 0x1a 0x42 0xae 0x1c 0x29 0x97 0xe3 0x7d 0xc3 0xb3
|+ EbmlVoid (size: 1351)
|+ Cluster

So we want to disable, and remove the default flag, as well as the forced one

mkvpropedit <filename>.mkv --edit track:3 --set flag-default=0
mkvpropedit <filename>.mkv --edit track:3 --set flag-forced=0
mkvpropedit <filename>.mkv --edit track:3 --set flag-enabled=0
mkvinfo <filename>.mkv
+ EBML head
|+ EBML version: 1
...
| + A track
|  + Track number: 3 (track ID for mkvmerge & mkvextract: 2)
|  + Track UID: 957802682
|  + Track type: subtitles
|  + Forced flag: 0
|  + Lacing flag: 0
|  + Codec ID: S_TEXT/UTF8
|  + Language: rum
|  + Enabled: 0
|  + Default flag: 0

Leave a Reply

Your email address will not be published. Required fields are marked *

Please prove you are human, or at least not a very simple bot :) *