# Nudebomb
The Nudebomb recursively strips matroska media files of unwanted audio and
subtitle tracks.
## News
You may find user focused nudebomb changes in the
[NEWS file](https://github.com/ajslater/nudebomb/tree/NEWS.md).
## Requirements
- MKVToolNix
- Python3
## Install
pip install
## Usage
### Posix
nudebomb -rl eng,fre /mnt/movies
### Windows
nudebomb -b C:\\Program/ Files\MKVToolNix\mkvmerge.exe -rl eng,jap \\nas\movies
## Config
You may configure Nudebomb options via the command, a yaml config file and
environment variables.
### Environment variable format
Prefix environment variables with `NUDEBOMB_NUDEBOMB__` and enumerate lists
elements:
```sh
NUDEBOMB_NUDEBOMB__RECURSE=True
NUDEBOMB_NUDEBOMB__LANGUAGES__0=und
NUDEBOMB_NUDEBOMB__LANGUAGES__1=eng
```
## Lang Files
While you may have a primary language, you probably want videos from other
countries to keep their native language as well. Lang files let you do this.
Lang files are persistent files on disk that nudebomb parses to keep to all
languages in them in the mkvs in the current directory and all mkvs in sub
directories.
Valid lang file names are: 'lang', 'langs', '.lang', or '.langs' They include
comma separated list of languages to keep like the `-l` option.
e.g. You may have an entire collecttion of different TV shows with a root lang
file containing the `eng` language. Under that directory you may have a specific
TV show directory with lang file containing `jpn`. All mkvs in season
directories under that would then keep both the `eng` and `jpn` languages, while
other TV shows would keep only `eng` languages.
For each mkv file, nudebomb looks up the directory tree for each parent lang
file and uses the union of all languages found to determine what languages to
keep.
### APIs
Langfiles would be obsolete if nudebomb could deterimining native languages for
mkv files by polling and caching results from major online media databases. It's
the right thing to do, but I don't care to implement it. Patches or forks
welcome.
## Inspiration
Nudebomb is a radical fork of [mkvstrip](https://github.com/willforde/mkvstrip).
It adds recursion, lang files, timestamps and more configuration to mkvstrip and
fixes some minor bugs.
Raw data
{
"_id": null,
"home_page": "https://github.com/ajslater/nudebomb",
"name": "nudebomb",
"maintainer": null,
"docs_url": null,
"requires_python": "<4.0,>=3.10",
"maintainer_email": null,
"keywords": "mkv, movie, video, srt, audio, subtitles",
"author": "AJ Slater",
"author_email": "aj@slater.net",
"download_url": "https://files.pythonhosted.org/packages/e0/ff/8f820842622866990052007fc9a112b9c873eb4f39351469cc57e9edce6a/nudebomb-0.3.10.tar.gz",
"platform": null,
"description": "# Nudebomb\n\nThe Nudebomb recursively strips matroska media files of unwanted audio and\nsubtitle tracks.\n\n## News\n\nYou may find user focused nudebomb changes in the\n[NEWS file](https://github.com/ajslater/nudebomb/tree/NEWS.md).\n\n## Requirements\n\n- MKVToolNix\n- Python3\n\n## Install\n\n pip install\n\n## Usage\n\n### Posix\n\n nudebomb -rl eng,fre /mnt/movies\n\n### Windows\n\n nudebomb -b C:\\\\Program/ Files\\MKVToolNix\\mkvmerge.exe -rl eng,jap \\\\nas\\movies\n\n## Config\n\nYou may configure Nudebomb options via the command, a yaml config file and\nenvironment variables.\n\n### Environment variable format\n\nPrefix environment variables with `NUDEBOMB_NUDEBOMB__` and enumerate lists\nelements:\n\n```sh\nNUDEBOMB_NUDEBOMB__RECURSE=True\nNUDEBOMB_NUDEBOMB__LANGUAGES__0=und\nNUDEBOMB_NUDEBOMB__LANGUAGES__1=eng\n```\n\n## Lang Files\n\nWhile you may have a primary language, you probably want videos from other\ncountries to keep their native language as well. Lang files let you do this.\n\nLang files are persistent files on disk that nudebomb parses to keep to all\nlanguages in them in the mkvs in the current directory and all mkvs in sub\ndirectories.\n\nValid lang file names are: 'lang', 'langs', '.lang', or '.langs' They include\ncomma separated list of languages to keep like the `-l` option.\n\ne.g. You may have an entire collecttion of different TV shows with a root lang\nfile containing the `eng` language. Under that directory you may have a specific\nTV show directory with lang file containing `jpn`. All mkvs in season\ndirectories under that would then keep both the `eng` and `jpn` languages, while\nother TV shows would keep only `eng` languages.\n\nFor each mkv file, nudebomb looks up the directory tree for each parent lang\nfile and uses the union of all languages found to determine what languages to\nkeep.\n\n### APIs\n\nLangfiles would be obsolete if nudebomb could deterimining native languages for\nmkv files by polling and caching results from major online media databases. It's\nthe right thing to do, but I don't care to implement it. Patches or forks\nwelcome.\n\n## Inspiration\n\nNudebomb is a radical fork of [mkvstrip](https://github.com/willforde/mkvstrip).\nIt adds recursion, lang files, timestamps and more configuration to mkvstrip and\nfixes some minor bugs.\n",
"bugtrack_url": null,
"license": "GPL-3.0-only",
"summary": "Strip unused languages from mkv files en mass",
"version": "0.3.10",
"project_urls": {
"Documentation": "https://github.com/ajslater/nudebomb",
"Homepage": "https://github.com/ajslater/nudebomb",
"Issues": "https://github.com/ajslater/nudebomb/issues",
"Source": "https://github.com/ajslater/nudebomb"
},
"split_keywords": [
"mkv",
" movie",
" video",
" srt",
" audio",
" subtitles"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "aef6a34e4a1bd198f8437500e99f549158bb23210ea9bd2c76bf9b1547b9e56b",
"md5": "a27d649af1ae3ceb7721e04706f02067",
"sha256": "8b3293f85a3ccac35aa1b4068d3e00e3e59cb508c7d71ea5e896630a792ae9e5"
},
"downloads": -1,
"filename": "nudebomb-0.3.10-py3-none-any.whl",
"has_sig": false,
"md5_digest": "a27d649af1ae3ceb7721e04706f02067",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": "<4.0,>=3.10",
"size": 24891,
"upload_time": "2024-10-24T21:26:08",
"upload_time_iso_8601": "2024-10-24T21:26:08.155038Z",
"url": "https://files.pythonhosted.org/packages/ae/f6/a34e4a1bd198f8437500e99f549158bb23210ea9bd2c76bf9b1547b9e56b/nudebomb-0.3.10-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "e0ff8f820842622866990052007fc9a112b9c873eb4f39351469cc57e9edce6a",
"md5": "e01e7db391fd724237f7be27d6f7f350",
"sha256": "ac24a6cc895c4b255007c87ccb86389290561da71659ea91ca3ed43642552f1c"
},
"downloads": -1,
"filename": "nudebomb-0.3.10.tar.gz",
"has_sig": false,
"md5_digest": "e01e7db391fd724237f7be27d6f7f350",
"packagetype": "sdist",
"python_version": "source",
"requires_python": "<4.0,>=3.10",
"size": 5120693,
"upload_time": "2024-10-24T21:26:09",
"upload_time_iso_8601": "2024-10-24T21:26:09.842415Z",
"url": "https://files.pythonhosted.org/packages/e0/ff/8f820842622866990052007fc9a112b9c873eb4f39351469cc57e9edce6a/nudebomb-0.3.10.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2024-10-24 21:26:09",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "ajslater",
"github_project": "nudebomb",
"travis_ci": false,
"coveralls": false,
"github_actions": false,
"circle": true,
"lcname": "nudebomb"
}