MediaInfo-based extended columns & commands v0.9, released on GitHub

Is there anyone still interested in this tool? I'm only asking because I made some improvements to it, like multiple audio / video tracks support for all fields and some bugfixing.

I've done this for my private use but maybe someone would still benefit from this. Actually releasing it is another matter though, as it is largely undocumented and untested: I've used this for thousands of my video files - but all similarly encoded.

3 Likes

I'm totally interested! I use this every day. It's a huge time saver. Thanks for the update, I can't wait to check it out.

1 Like

Great then! First, the changelog commences:

  • all of the fields now support multiple audio and video tracks (largely untested but should be easy to fix in case of problems)
  • as a consequence, rescan of all media files is required, as the previous version only stored information about the first audio and video track; as a side note, I don't know why the original author didn't just store the MediaInfo output in full and went the route of partially parsing it; for now, the new version is still storing the parsed output but parsing has been changed
  • fixed / rewritten completely the logic of ME Duration (Combined) to properly detect duration differences between all of the tracks; it was necessary anyway for multiple tracks support but it was previously broken and not always reporting problems properly
  • changed the way of invoking MediaInfo CLI, as the previous one had problems with unicode characters; somehow, whenever certain characters (like ellipsis) occurred in the MediaInfo CLI output, there was an audible 'beep'; the new method might be slightly slower but the beeps are no more; the problem stems from MediaInfo CLI always dumping everything to stdout - even when asking for a file output, which cannot be disabled without recompiling it
  • speedup: for some reason DOpus is calling the column handler multiple times for the same columns, especially when nothing is returned; filling the queried columns' values with '' seems to alleviate that at least partially
  • speedup: while any file can be scanned by the MExt Update Metadata button, unsupported file extensions are skipped during columns generation - this is somewhat faster and also disk access is lessened (for example, I usually have subtitles as separate files alongside the videos and scanning these is pointless); the list of supported extensions is given verbatim inside CuMediaExtenders.js:2905 variable supported_extensions, so can be modified easily in case I missed some filetypes (all extensions must be in uppercase and starting with a dot)
  • it is a common problem with mkv/mka files that some of them are missing the 'track statistics' tag - ffmpeg / HandBrake are notorious for doing that and this results in bitrates being missing from MediaInfo analysis; the proper way of solving this is by using mkvpropedit.exe with --add-track-statistic-tags on all the mkv / mka files; as a convenience I've added a function that will do that for every mkv/mka file during the metadata updates while also preserving the original modtimes - for it to work one must uncomment the call to MKVPropEdit function in CuMediaExtenders.js:3962 and also set a correct path to mkvpropedit.exe inside a string in line CuMediaExtenders.js:5058. It is needed only once per file and will also slow down the scanning process, so it is recommended to leave the call commented out when not needed
1 Like

I'm attaching the CuMediaExtenders.osp file, which is just a renamed .zip. The only file changed by me (inside it) is CuMediaExtenders.js.

I'll try to correct any bugs I've undoubtedly introduced :slight_smile: but it seems something is off with this forum as I didn't receive the notification of someone answering in this thread, so expect some delays; sorry for that.

Other than that, good luck!
CuMediaExtenders.osp (121.7 KB)

2 Likes

Due to how I was treated here (as a paying customer) I am leaving this forum indefinitely (along with DOpus as soon as I find a replacement) so if anyone wants to contact me / in case of any bugs - please write directly to ms-dopus >at< msys.info instead.

Cheers!

Here's the thread in question so people can judge for themselves:

2 Likes

bye bye, we won't be bored

1 Like

Thank you so much for this script. Can Recorded Date and Encoded Date be added as columns?

Sorry for the super late reply; IRL stuff.

As Leo said, you unpack the osp and repack itYou can also put a file with the name CuMediaExtenders.json in script directory (type /dopusdata/Script Addins in location to go there). This is the one I'm using personally (see also the script settings UI - click the underlined script name - last section):

{
    "colPrefix": ".",
    "colRepl": {
        "MExt_HasMetadata": "ADS?",
        "MExt_CombinedDuration": "Duration",
        "MExt_GrossByterate": "Byterate",
        "MExt_MultiAudio": "Multi-Track",
        "MExt_VARCombined": "AspectRatio",
        "MExt_AudioChannels": "Channels",
        "MExt_AudioCompressionMode": "ACompMode"
    },
    "colExtra": {
        "com_apple_quicktime_model": "Camera Make",
        "com_apple_quicktime_software": "Camera Software"
    },
    "colExtraVideo": {
        "CodecConfigurationBox": "Codec Config Box"
    },
    "colExtraAudio": {
        "Source_Delay": "Source Delay"
    }
}

Note: this must be a proper JSON file, so there can be no trailing commas, comments, etc. Any decent editor would tell if it's valid JSON.