a-shell icon indicating copy to clipboard operation
a-shell copied to clipboard

mediainfo command for a-Shell

Open woncheol-kim opened this issue 1 year ago • 2 comments

Hi, I’ve just noticed that the mediainfo command is based on the BSD-2-Clause license. This means it can be freely compiled and included in the a-Shell package, right? :)

Please find the link below: https://github.com/MediaArea/MediaInfo

woncheol-kim avatar Aug 14 '24 05:08 woncheol-kim

Hi, I gave it a try and was unable to compile it. They do have an app out on the AppStore from the same authors: https://apps.apple.com/us/app/mediainfo/id1448983823

If you have suggestions for other commands with similar functionality, I can give it a try (including commands licensed with GPL, as long as I can compile them to WebAssembly).

holzschu avatar Oct 31 '24 21:10 holzschu

ffprobe's JSON output option + jq could be used to create a functional equivalent, it's just a matter of formatting it, for the most part.

The only information you might be able to get via mediainfo that wouldn't be available through any invocation of ffprobe (that I am aware of; while I'm an advanced user of ffmpeg and its associated binaries, it's possible I just don't know how) would be the encoder side information e.g. x264 includes, which shows the encoding settings used.

I know that's a terrible description (sorry), so I'll just show an example:

Writing library : x264 core 164 r3161M a354f1 Encoding settings : cabac=1 / ref=5 / deblock=1:1:1 / analyse=0x3:0x113 / me=hex / subme=8 / psy=1 / psy_//rd=1.00 :0.25 / mixed_ref=1 / me_range=16 / chroma_me=1 / trellis=2 / 8x8dct=1 / cqm=0 / deadzone=6,6 / fast_pskip=1 / chroma_qp_offset=-4 / th reads=12 / lookahead_threads=2 / sliced_threads=0 / nr=0 / decimate=0 / interlaced=0 / bluray_compat=0 / constrained_intra=0 / bframes= 3 / b_pyramid=2 / b_adapt=1 / b_bias=0 / direct=3 / weightb=1 / open_gop=0 / weightp=2 / keyint=250 / keyint_min=23 / scenecut=40 / int ra_refresh=0 / rc_lookahead=96 / rc=crf / mbtree=1 / crf=18.0 / qcomp=0.80 / qpmin=2 / qpmax=24 / qpstep=4 / ip_ratio=1.10 / aq=2:0.50

and HDR luminance information, like so: Mastering display luminance : min: 0.0001 cd/m2, max: 1000 cd/m2

Most everything else should be translatable into an equivalent, but it'd probably be quite an undertaking to correctly parse everything. I might give it a go just to see what's possible, but honestly dash doesn't work very well.

(edit: ah, of course GitHub messed up the formatting here. I think you'll know what I mean anyway.)

jroseff avatar Mar 14 '25 22:03 jroseff