I've been using some ancient java app called jmkvpropedit to do this.
Linux
From Wikipedia, the free encyclopedia
Linux is a family of open source Unix-like operating systems based on the Linux kernel, an operating system kernel first released on September 17, 1991 by Linus Torvalds. Linux is typically packaged in a Linux distribution (or distro for short).
Distributions include the Linux kernel and supporting system software and libraries, many of which are provided by the GNU Project. Many Linux distributions use the word "Linux" in their name, but the Free Software Foundation uses the name GNU/Linux to emphasize the importance of GNU software, causing some controversy.
Rules
- Posts must be relevant to operating systems running the Linux kernel. GNU/Linux or otherwise.
- No misinformation
- No NSFW content
- No hate speech, bigotry, etc
Related Communities
Community icon by Alpár-Etele Méder, licensed under CC BY 3.0
If you are talking about the mkv embedded title, try this:
find -type f -iname "*.mkv" | while read "i" ; do mkvpropedit "${i}" --edit info --set "title=" ; done
thank you for taking the time to write the actual command!
Just to be clear, this command will simply delete all the titles from all of the MKV files in that particular directory.
noted
Current directory and all its subdirectories - to be exact :)
You can execute the find command only (with arguments, so until the pipe) to verify modified files beforehand.
thanks!
Seems like it has a CLI. You can figure out how to do this action with a CLI command, then do something like find -name *mkv -exec ...
to execute that command for all the files.
Combine this with FFmpeg.
Why? mkvpropedit already does everything OP wants. No need to get ffmpeg involved.
Emacs Dired would be my goto here, though it's cumbersome if you dont know the bindings.
kill-rectangle and multiple-cursors within Dired are immensely useful
Edit: Oh, I just understood you want to mass modify the files themselves. In which case wgrep
is useful here within Emacs, for modifying multiple buffers.
It essentially runs a grep command on a directory, collates all the results in a single buffer, lets you modify that buffer for all files, and then save in one go
Someone with more experience on sed or awk should chime in, but out of memory something like this (which MOST LIKELY WONT WORK, verify it before running it on anything important):
find -name *mkv -exec sed -e's/file=.*/file=' > {}.changed \;
That, at least in theory, reads every .mkv file recursively in a current working directory, finds lines that contain "file=" and replace that with "file=" and stores the output to .changed.
I would be very hesitant to run sed on a bunch of files consisting primarily of highly compressed binary data.