Jump to content

MediaInfo For Emby Plugin(HDR, Vision, Atmos, DTS:X)


Cheesegeezer

Recommended Posts

After some more research i found out im not alone with the corruption problem.

https://gitlab.com/mbunkus/mkvtoolnix/-/issues/3416

I added my experience to the ticket and provided a test file.

For now i can say, using mkvtoolnix / mkvpropedit V71.0 / V71.1 is not safe to use for some files, at least under linux. Not sure about the windows versions.

For now i downgraded to mkvtoolnix / mkvpropedit V70.0, processing my testfile was ok with this version.

 

Unfortunaly this does not solved my problems with mediainfo 1.0.1.14 (for movies).

Debug log 1.0.1.14:

2022-10-30 22:36:23.166 Info Media Info: New Item Added --- Running Media Info Task for Bekenntnisse.des.Hochstaplers.Felix.Krull
2022-10-30 22:36:23.169 Debug TaskManager: Executing Advanced Media Information
2022-10-30 22:36:23.170 Debug Media Info: MEDIAINFO TASK IS STARTING
2022-10-30 22:36:23.170 Debug Media Info: isEnabled = True
2022-10-30 22:36:23.170 Info Media Info: MediaInfo Individual ID list has been cleared
2022-10-30 22:36:23.170 Info Media Info: Getting Episodes in Library
2022-10-30 22:36:27.143 Info Media Info: Total Episodes in Library = 12024 
2022-10-30 22:36:27.143 Info Media Info: Filtering MKV Episodes
2022-10-30 22:36:27.444 Error Media Info: System.NullReferenceException: Object reference not set to an instance of an object.
   at Emby.MediaInfo.ScheduledTasks.MediaInfoScheduledTask.Execute(CancellationToken cancellationToken, IProgress`1 progress)
2022-10-30 22:36:27.444 Info Media Info: NO MKV EPISODES FOUND
2022-10-30 22:36:29.171 Info Media Info: Total Movies in Library = 3586 
2022-10-30 22:36:29.171 Info Media Info: Filtering MKV Movies
2022-10-30 22:36:29.195 Info Media Info: Actual Movies to process = 1 
2022-10-30 22:36:29.195 Debug Media Info: Ep items = 0
2022-10-30 22:36:29.195 Debug Media Info: mov items = 1
2022-10-30 22:36:29.195 Info Media Info: Total items to process = 1
2022-10-30 22:36:29.195 Info Media Info: PERFORMING MEDIAINFO EXTRACTION ON MOVIES
2022-10-30 22:36:29.199 Info Media Info: PROCESSING OF  Bekenntnisse des Hochstaplers Felix Krull  HAS STARTED
2022-10-30 22:36:29.199 Info Media Info: Item FilePath = \\192.168.0.40\video\Filme\Web-DL HD & UHD\Bekenntnisse.des.Hochstaplers.Felix.Krull.2021.German.1080p.BluRay.x264\Bekenntnisse.des.hochstaplers.felix.krull.2021.german.1080p.bluray.x264.mkv 
2022-10-30 22:36:29.199 Debug Media Info: Starting MediaInfo.exe process
2022-10-30 22:36:29.233 Debug Media Info: Reset Embedded Titles = False
2022-10-30 22:36:29.235 Debug Media Info: Object reference not set to an instance of an object.
2022-10-30 22:36:29.235 Info Media Info: PROCESSING OF Bekenntnisse des Hochstaplers Felix Krull HAS COMPLETED
2022-10-30 22:36:29.235 Debug Media Info: MediaInfo processing for Bekenntnisse des Hochstaplers Felix Krull and took 35 milliseconds

 

Debug log after downgrade to version 1.0.1.10 (and server restart):

 

2022-10-30 22:43:12.531 Debug Media Info: MEDIAINFO TASK IS STARTING
2022-10-30 22:43:12.531 Debug Media Info: isEnabled = True
2022-10-30 22:43:12.535 Info Media Info: 597861 ID has been removed from processed list and new MediaInfo Titles will be generated
2022-10-30 22:43:12.535 Info Media Info: MediaInfo Individual ID list has been cleared
2022-10-30 22:43:12.535 Debug Media Info: TESTING:  include item types: 
2022-10-30 22:43:12.535 Info Media Info: Getting Episodes in Library
2022-10-30 22:43:16.681 Info Media Info: Total Episodes in Library = 12024 
2022-10-30 22:43:16.681 Info Media Info: Filtering MKV Episodes
2022-10-30 22:43:16.972 Error Media Info: System.NullReferenceException: Object reference not set to an instance of an object.
   at Emby.MediaInfo.ScheduledTasks.MediaInfoScheduledTask.Execute(CancellationToken cancellationToken, IProgress`1 progress)
2022-10-30 22:43:16.972 Info Media Info: NO MKV EPISODES FOUND
2022-10-30 22:43:18.826 Info Media Info: Total Movies in Library = 3586 
2022-10-30 22:43:18.827 Info Media Info: Filtering MKV Movies
2022-10-30 22:43:18.852 Info Media Info: Actual Movies to process = 1 
2022-10-30 22:43:18.852 Debug Media Info: Ep items = 0
2022-10-30 22:43:18.852 Debug Media Info: mov items = 1
2022-10-30 22:43:18.852 Info Media Info: Total items to process = 1
2022-10-30 22:43:18.852 Info Media Info: PERFORMING MEDIAINFO EXTRACTION ON MOVIES
2022-10-30 22:43:18.852 Info Media Info: PROCESSING OF  Bekenntnisse des Hochstaplers Felix Krull  HAS STARTED
2022-10-30 22:43:18.852 Info Media Info: Item FilePath = /media/video/Filme/Web-DL HD & UHD/Bekenntnisse.des.Hochstaplers.Felix.Krull.2021.German.1080p.BluRay.x264-DETAiLS/bekenntnisse.des.hochstaplers.felix.krull.2021.german.1080p.bluray.x264.mkv 
2022-10-30 22:43:18.859 Debug Media Info: Starting MediaInfo.exe process
2022-10-30 22:43:19.086 Debug Media Info: ************** Reset Embedded Titles = False
2022-10-30 22:43:19.282 Debug Media Info: Ref Item = /media/video/Filme/Web-DL HD & UHD/Bekenntnisse.des.Hochstaplers.Felix.Krull.2021.German.1080p.BluRay.x264-DETAiLS/bekenntnisse.des.hochstaplers.felix.krull.2021.german.1080p.bluray.x264.mkv
2022-10-30 22:43:19.283 Debug Media Info: GENERAL INFO
2022-10-30 22:43:19.283 Debug Media Info: Video Tracks = 1
2022-10-30 22:43:19.283 Debug Media Info: Audio Tracks = 1
2022-10-30 22:43:19.283 Debug Media Info: Subtitle Tracks = 
2022-10-30 22:43:19.283 Debug Media Info: Overall Bitrate = 5026925
2022-10-30 22:43:19.283 Debug Media Info: *********************
2022-10-30 22:43:19.283 Debug Media Info: VIDEO INFO
2022-10-30 22:43:19.284 Debug Media Info: Track Format = AVC
2022-10-30 22:43:19.284 Debug Media Info: BitRate = 3417889
2022-10-30 22:43:19.284 Debug Media Info: Height =808
2022-10-30 22:43:19.284 Debug Media Info: Width =1920
2022-10-30 22:43:19.285 Debug Media Info: Aspect Ration =2.376
2022-10-30 22:43:19.285 Debug Media Info: HDR Format =
2022-10-30 22:43:19.285 Debug Media Info: HDR Format Profile =
2022-10-30 22:43:19.285 Debug Media Info: HDR Compatibility =
2022-10-30 22:43:19.285 Debug Media Info: *********************
2022-10-30 22:43:19.287 Debug Media Info: Adding Video Tags
2022-10-30 22:43:19.714 Info Media Info: Video Track successfully Written & Exited with Code 0
2022-10-30 22:43:19.714 Info Media Info: Video Track Title Set to HD 1080p AVC [3,4Mb/s]
2022-10-30 22:43:19.745 Debug XmlSerializer: Deserializing file /var/lib/emby/config/xbmcmetadata.xml
2022-10-30 22:43:19.752 Debug Media Info: AUDIO INFO
2022-10-30 22:43:19.752 Debug Media Info: Track Format = DTS
2022-10-30 22:43:19.753 Debug Media Info: No of Channels = 6
2022-10-30 22:43:19.753 Debug Media Info: Track Index = 1
2022-10-30 22:43:19.753 Debug Media Info: Track Additional Features = 
2022-10-30 22:43:19.753 Debug Media Info: *********************
2022-10-30 22:43:19.763 Debug Media Info: Adding Audio Tags
2022-10-30 22:43:19.941 Info Media Info: Audio Track successfully Written & Exited with Code 0
2022-10-30 22:43:19.941 Info Media Info: Audio Stream #1 Updated to: DTS 5.1 (48Khz) [24-Bit] (Default)
2022-10-30 22:43:20.125 Info Media Info: Only 1 Audio Stream - Removing *Default* from Title -  Updated to: DTS 5.1 (48Khz) [24-Bit] 
2022-10-30 22:43:20.126 Info Media Info: Item Tags found =  venice, italy - lie - ladykiller - con man
2022-10-30 22:43:20.126 Info Media Info: PROCESSING OF Bekenntnisse des Hochstaplers Felix Krull HAS COMPLETED
2022-10-30 22:43:20.128 Debug Media Info: MediaInfo processing for Bekenntnisse des Hochstaplers Felix Krull and took 1276 milliseconds

 

I hope this will help.

  • Like 2
  • Thanks 1
Link to comment
Share on other sites

8 hours ago, Andy2k said:

After some more research i found out im not alone with the corruption problem.

For now i can say, using mkvtoolnix / mkvpropedit V71.0 / V71.1 is not safe to use for some files, at least under linux. Not sure about the windows versions.

For now i downgraded to mkvtoolnix / mkvpropedit V70.0, processing my testfile was ok with this version.

After 362 of my mkv are corrupted, I have to say there is something wrong with v71.1, since I have ruled out bad drives or file system.

Thanks for reporting this and including the link, I think the issue is not limited to Linux because on my Windows 11 I am also experiencing this corruption (but who knows if the trigger of corruption is the same). I will try to upload a pair of files to compare before and after. Luckily I made a copy of my drives before running Mediainfo so the "before" files are available and it's not a catastrophic loss yet.

But still, since the corruption is spread across multiple drives. the thought of replacing 362 files manually is a bit daunting so maybe a "batch fix" can be developed to scan, identity and replace the corrupted files once the root cause is identified 😢

What worries me is, what if some files are already corrupted by mkvtoolnix but they don't appear on the Emby log? Is there a way to perform a full scan of these corrupt files before I delete my temporary backup? Hmm...

@rbjtechI agree with you, perhaps it's best not to reset or touch the files first until it's properly diagnosed. I will try all your suggestions  such as using mediabrowser GUI and mkvtoolnix GUI to open the "corrupt" files.

@Cheesegeezer I am away from home but as soon as I get back I will figure out a way to send you more meaningful logs (after I figure out how to batch remove the porn entries first 🤣) By the way, I don't believe HDR-SDR convert task is turned on so I am not sure why FFMpeg / FFProbe was involved. By the way, how do I get a "mediainfo json output"? I think the option maybe is easily available as an option and when I get back to the server, hopefully I will find it right away.

 

 

Edited by mbguy
  • Like 1
Link to comment
Share on other sites

rbjtech
10 hours ago, Andy2k said:

After some more research i found out im not alone with the corruption problem.

https://gitlab.com/mbunkus/mkvtoolnix/-/issues/3416

I added my experience to the ticket and provided a test file.

For now i can say, using mkvtoolnix / mkvpropedit V71.0 / V71.1 is not safe to use for some files, at least under linux. Not sure about the windows versions.

For now i downgraded to mkvtoolnix / mkvpropedit V70.0, processing my testfile was ok with this version.

 

Unfortunaly this does not solved my problems with mediainfo 1.0.1.14 (for movies).

Debug log 1.0.1.14:

2022-10-30 22:36:23.166 Info Media Info: New Item Added --- Running Media Info Task for Bekenntnisse.des.Hochstaplers.Felix.Krull
2022-10-30 22:36:23.169 Debug TaskManager: Executing Advanced Media Information
2022-10-30 22:36:23.170 Debug Media Info: MEDIAINFO TASK IS STARTING
2022-10-30 22:36:23.170 Debug Media Info: isEnabled = True
2022-10-30 22:36:23.170 Info Media Info: MediaInfo Individual ID list has been cleared
2022-10-30 22:36:23.170 Info Media Info: Getting Episodes in Library
2022-10-30 22:36:27.143 Info Media Info: Total Episodes in Library = 12024 
2022-10-30 22:36:27.143 Info Media Info: Filtering MKV Episodes
2022-10-30 22:36:27.444 Error Media Info: System.NullReferenceException: Object reference not set to an instance of an object.
   at Emby.MediaInfo.ScheduledTasks.MediaInfoScheduledTask.Execute(CancellationToken cancellationToken, IProgress`1 progress)
2022-10-30 22:36:27.444 Info Media Info: NO MKV EPISODES FOUND
2022-10-30 22:36:29.171 Info Media Info: Total Movies in Library = 3586 
2022-10-30 22:36:29.171 Info Media Info: Filtering MKV Movies
2022-10-30 22:36:29.195 Info Media Info: Actual Movies to process = 1 
2022-10-30 22:36:29.195 Debug Media Info: Ep items = 0
2022-10-30 22:36:29.195 Debug Media Info: mov items = 1
2022-10-30 22:36:29.195 Info Media Info: Total items to process = 1
2022-10-30 22:36:29.195 Info Media Info: PERFORMING MEDIAINFO EXTRACTION ON MOVIES
2022-10-30 22:36:29.199 Info Media Info: PROCESSING OF  Bekenntnisse des Hochstaplers Felix Krull  HAS STARTED
2022-10-30 22:36:29.199 Info Media Info: Item FilePath = \\192.168.0.40\video\Filme\Web-DL HD & UHD\Bekenntnisse.des.Hochstaplers.Felix.Krull.2021.German.1080p.BluRay.x264\Bekenntnisse.des.hochstaplers.felix.krull.2021.german.1080p.bluray.x264.mkv 
2022-10-30 22:36:29.199 Debug Media Info: Starting MediaInfo.exe process
2022-10-30 22:36:29.233 Debug Media Info: Reset Embedded Titles = False
2022-10-30 22:36:29.235 Debug Media Info: Object reference not set to an instance of an object.
2022-10-30 22:36:29.235 Info Media Info: PROCESSING OF Bekenntnisse des Hochstaplers Felix Krull HAS COMPLETED
2022-10-30 22:36:29.235 Debug Media Info: MediaInfo processing for Bekenntnisse des Hochstaplers Felix Krull and took 35 milliseconds

 

Debug log after downgrade to version 1.0.1.10 (and server restart):

 

2022-10-30 22:43:12.531 Debug Media Info: MEDIAINFO TASK IS STARTING
2022-10-30 22:43:12.531 Debug Media Info: isEnabled = True
2022-10-30 22:43:12.535 Info Media Info: 597861 ID has been removed from processed list and new MediaInfo Titles will be generated
2022-10-30 22:43:12.535 Info Media Info: MediaInfo Individual ID list has been cleared
2022-10-30 22:43:12.535 Debug Media Info: TESTING:  include item types: 
2022-10-30 22:43:12.535 Info Media Info: Getting Episodes in Library
2022-10-30 22:43:16.681 Info Media Info: Total Episodes in Library = 12024 
2022-10-30 22:43:16.681 Info Media Info: Filtering MKV Episodes
2022-10-30 22:43:16.972 Error Media Info: System.NullReferenceException: Object reference not set to an instance of an object.
   at Emby.MediaInfo.ScheduledTasks.MediaInfoScheduledTask.Execute(CancellationToken cancellationToken, IProgress`1 progress)
2022-10-30 22:43:16.972 Info Media Info: NO MKV EPISODES FOUND
2022-10-30 22:43:18.826 Info Media Info: Total Movies in Library = 3586 
2022-10-30 22:43:18.827 Info Media Info: Filtering MKV Movies
2022-10-30 22:43:18.852 Info Media Info: Actual Movies to process = 1 
2022-10-30 22:43:18.852 Debug Media Info: Ep items = 0
2022-10-30 22:43:18.852 Debug Media Info: mov items = 1
2022-10-30 22:43:18.852 Info Media Info: Total items to process = 1
2022-10-30 22:43:18.852 Info Media Info: PERFORMING MEDIAINFO EXTRACTION ON MOVIES
2022-10-30 22:43:18.852 Info Media Info: PROCESSING OF  Bekenntnisse des Hochstaplers Felix Krull  HAS STARTED
2022-10-30 22:43:18.852 Info Media Info: Item FilePath = /media/video/Filme/Web-DL HD & UHD/Bekenntnisse.des.Hochstaplers.Felix.Krull.2021.German.1080p.BluRay.x264-DETAiLS/bekenntnisse.des.hochstaplers.felix.krull.2021.german.1080p.bluray.x264.mkv 
2022-10-30 22:43:18.859 Debug Media Info: Starting MediaInfo.exe process
2022-10-30 22:43:19.086 Debug Media Info: ************** Reset Embedded Titles = False
2022-10-30 22:43:19.282 Debug Media Info: Ref Item = /media/video/Filme/Web-DL HD & UHD/Bekenntnisse.des.Hochstaplers.Felix.Krull.2021.German.1080p.BluRay.x264-DETAiLS/bekenntnisse.des.hochstaplers.felix.krull.2021.german.1080p.bluray.x264.mkv
2022-10-30 22:43:19.283 Debug Media Info: GENERAL INFO
2022-10-30 22:43:19.283 Debug Media Info: Video Tracks = 1
2022-10-30 22:43:19.283 Debug Media Info: Audio Tracks = 1
2022-10-30 22:43:19.283 Debug Media Info: Subtitle Tracks = 
2022-10-30 22:43:19.283 Debug Media Info: Overall Bitrate = 5026925
2022-10-30 22:43:19.283 Debug Media Info: *********************
2022-10-30 22:43:19.283 Debug Media Info: VIDEO INFO
2022-10-30 22:43:19.284 Debug Media Info: Track Format = AVC
2022-10-30 22:43:19.284 Debug Media Info: BitRate = 3417889
2022-10-30 22:43:19.284 Debug Media Info: Height =808
2022-10-30 22:43:19.284 Debug Media Info: Width =1920
2022-10-30 22:43:19.285 Debug Media Info: Aspect Ration =2.376
2022-10-30 22:43:19.285 Debug Media Info: HDR Format =
2022-10-30 22:43:19.285 Debug Media Info: HDR Format Profile =
2022-10-30 22:43:19.285 Debug Media Info: HDR Compatibility =
2022-10-30 22:43:19.285 Debug Media Info: *********************
2022-10-30 22:43:19.287 Debug Media Info: Adding Video Tags
2022-10-30 22:43:19.714 Info Media Info: Video Track successfully Written & Exited with Code 0
2022-10-30 22:43:19.714 Info Media Info: Video Track Title Set to HD 1080p AVC [3,4Mb/s]
2022-10-30 22:43:19.745 Debug XmlSerializer: Deserializing file /var/lib/emby/config/xbmcmetadata.xml
2022-10-30 22:43:19.752 Debug Media Info: AUDIO INFO
2022-10-30 22:43:19.752 Debug Media Info: Track Format = DTS
2022-10-30 22:43:19.753 Debug Media Info: No of Channels = 6
2022-10-30 22:43:19.753 Debug Media Info: Track Index = 1
2022-10-30 22:43:19.753 Debug Media Info: Track Additional Features = 
2022-10-30 22:43:19.753 Debug Media Info: *********************
2022-10-30 22:43:19.763 Debug Media Info: Adding Audio Tags
2022-10-30 22:43:19.941 Info Media Info: Audio Track successfully Written & Exited with Code 0
2022-10-30 22:43:19.941 Info Media Info: Audio Stream #1 Updated to: DTS 5.1 (48Khz) [24-Bit] (Default)
2022-10-30 22:43:20.125 Info Media Info: Only 1 Audio Stream - Removing *Default* from Title -  Updated to: DTS 5.1 (48Khz) [24-Bit] 
2022-10-30 22:43:20.126 Info Media Info: Item Tags found =  venice, italy - lie - ladykiller - con man
2022-10-30 22:43:20.126 Info Media Info: PROCESSING OF Bekenntnisse des Hochstaplers Felix Krull HAS COMPLETED
2022-10-30 22:43:20.128 Debug Media Info: MediaInfo processing for Bekenntnisse des Hochstaplers Felix Krull and took 1276 milliseconds

 

I hope this will help.

Very useful info.  Thanks.

Yes - I am using v 61.0.0 still .. hence I am ok.

So the corruption is a consequence of using v71 of mkvpropedit from mkvtoolnix... :(

I guess this is totally outside of emby or the plugin's control - so other than maybe it checking it's version is not v71 (?) - there is not a lot we can do ?

 

Edited by rbjtech
  • Like 1
Link to comment
Share on other sites

Cheesegeezer

Phew! I was getting really worried there. Thanks @Andy2k
i will put in a check to ensure that if version > 70 then mediaInfo will not run.

as for the null exception in tv shows i started tracking this yesterday and know where it’s located i need to figure out what is actually null.

cheers

  • Like 1
Link to comment
Share on other sites

Cheesegeezer

A release is on it's way shortly.  quite a bit maintenance done and also some nice features added. 

V1.0.1.16 - will be released Shortly.

  1. Namely the Library Selector instead of the switches for TV and Movies.  
  2. Checks are in for MKVPropEdit Versions
  3. Logging has been cleaned up
  4. Multi-version support 
  5. Logging clean up and improvements
  6. Remove Auto run library scans and Metadata scans.  User will have to set up a Schedule Task for these.

Hoping that this release will fix everyones problems and issues.

I'm quite excited about this.

 

image.thumb.png.eb920826550b3791b8cb1b8f8f049644.png

nothing to process

image.thumb.png.305884b11964e8bed1efbfab17bea599.png

Stuff to do

image.thumb.png.ad6dc491346d12c1a07e2c67a9654ed4.png

Link to comment
Share on other sites

2 hours ago, Cheesegeezer said:

A release is on it's way shortly.  quite a bit maintenance done and also some nice features added. 

V1.0.1.16 - will be released Shortly.

  1. Namely the Library Selector instead of the switches for TV and Movies.  
  2. Checks are in for MKVPropEdit Versions
  3. Logging has been cleaned up
  4. Multi-version support 
  5. Logging clean up and improvements
  6. Remove Auto run library scans and Metadata scans.  User will have to set up a Schedule Task for these.

Hoping that this release will fix everyones problems and issues.

I'm quite excited about this.

I am also quite excited about the enhancements.

If I understood correctly, the "Library Selector" function can be used for "testing" or "validating" MKVPropEdit working version first instead of letting Mediainfo use it on whole bunch of files that may be "assaulted" and eventually corrupted by a bad version/update.

For example, now that I have a whole bunch of files that are known to have been corrupted by MKVPropEdit before, I would group them into a folder and create a new library. Before I would run MediaInfo on the main libraries, I will test Mediainfo on this "corrupt candidate" files first and read the log files or use MKVinfo GUI to open them, whatever is needed to ensure NOTHING is wrong, and only then Mediainfo would be safely deployed to the rest of the library.

I was lucky in a way that Mediainfo hangs (for whatever reasons) several times during the scans in the last few days so total files corrupted by MKVPropEdit are "ONLY" 😂 limited to 350+ files. But had the process gone on, the effect might have been disastrous. This leads me to think that Mediainfo should have another "safeguard" in place @Cheesegeezer. Maybe as soon as "Error in FFprobe" is detected then the scan would be halted?

Of course this safeguard maybe entirely redundant because MKVPropEdit had never failed before and this was just an isolated incidence. But if this type of instability inherently exists for a third-party tool from time to time, I think it's better to at least have an option for users of Mediinfo to turn on or off this safeguard. Just something to think about.

Although 350+ corrupted files is not "too late" for me as I have backup copies of most of them, but I wouldn't want the same to happen to others. In fact, as of now, I still don't know how to batch replace these files, because they are not even readable by MKVToolNix GUI or mediainfo GUI.

Especially if the MKVPropEdit corruption is random in nature, and does not impact specific files or type of encoding at all, then this "Halt scan if error is detected" is crucial safeguard against some third party tool.

  • Like 1
Link to comment
Share on other sites

Cheesegeezer
24 minutes ago, mbguy said:

I am also quite excited about the enhancements.

If I understood correctly, the "Library Selector" function can be used for "testing" or "validating" MKVPropEdit working version first instead of letting Mediainfo use it on whole bunch of files that may be "assaulted" and eventually corrupted by a bad version/update.

For example, now that I have a whole bunch of files that are known to have been corrupted by MKVPropEdit before, I would group them into a folder and create a new library. Before I would run MediaInfo on the main libraries, I will test Mediainfo on this "corrupt candidate" files first and read the log files or use MKVinfo GUI to open them, whatever is needed to ensure NOTHING is wrong, and only then Mediainfo would be safely deployed to the rest of the library.

I was lucky in a way that Mediainfo hangs (for whatever reasons) several times during the scans in the last few days so total files corrupted by MKVPropEdit are "ONLY" 😂 limited to 350+ files. But had the process gone on, the effect might have been disastrous. This leads me to think that Mediainfo should have another "safeguard" in place @Cheesegeezer. Maybe as soon as "Error in FFprobe" is detected then the scan would be halted?

Of course this safeguard maybe entirely redundant because MKVPropEdit had never failed before and this was just an isolated incidence. But if this type of instability inherently exists for a third-party tool from time to time, I think it's better to at least have an option for users of Mediinfo to turn on or off this safeguard. Just something to think about.

Although 350+ corrupted files is not "too late" for me as I have backup copies of most of them, but I wouldn't want the same to happen to others. In fact, as of now, I still don't know how to batch replace these files, because they are not even readable by MKVToolNix GUI or mediainfo GUI.

Especially if the MKVPropEdit corruption is random in nature, and does not impact specific files or type of encoding at all, then this "Halt scan if error is detected" is crucial safeguard against some third party tool.

The safeguard in MKVprop is hard coded to be less than 70. What could be done is give the user the option to override this for testing purposes. 
 

mediaInfo doesn’t need the safeguard as its not editing it only reads info. So the worst that would happen is the title would written wrong. 
 

@rbjtech has been testing this version and it sounds like it definitely a winner winner chicken dinner 👍👍💪💪💪💪
 

there should be only 2 errors in MKVpropedit. Code 1 and code 2.

a code 1 means the task completed successfully but some warnings are present. So we should allow this.

a code 2 is a fail. And we don’t allow it and the item is removed from the processed list

your code 134 should never be possible so i would never have caught it anyway.

Edited by Cheesegeezer
Link to comment
Share on other sites

Cheesegeezer

Quote from mkvpropedit

Quote

6. Exit codes

mkvpropedit(1) exits with one of three exit codes:

  • 0 -- This exit code means that the modification has completed successfully.

  • 1 -- In this case mkvpropedit(1) has output at least one warning, but the modification did continue. A warning is prefixed with the text 'Warning:'. Depending on the issues involved the resulting files might be ok or not. The user is urged to check both the warning and the resulting files.

  • 2 -- This exit code is used after an error occurred.  mkvpropedit(1) aborts right after outputting the error message. Error messages range from wrong command line arguments over read/write errors to broken files.

 

Link to comment
Share on other sites

rbjtech
31 minutes ago, mbguy said:

I am also quite excited about the enhancements.

If I understood correctly, the "Library Selector" function can be used for "testing" or "validating" MKVPropEdit working version first instead of letting Mediainfo use it on whole bunch of files that may be "assaulted" and eventually corrupted by a bad version/update.

For example, now that I have a whole bunch of files that are known to have been corrupted by MKVPropEdit before, I would group them into a folder and create a new library. Before I would run MediaInfo on the main libraries, I will test Mediainfo on this "corrupt candidate" files first and read the log files or use MKVinfo GUI to open them, whatever is needed to ensure NOTHING is wrong, and only then Mediainfo would be safely deployed to the rest of the library.

I was lucky in a way that Mediainfo hangs (for whatever reasons) several times during the scans in the last few days so total files corrupted by MKVPropEdit are "ONLY" 😂 limited to 350+ files. But had the process gone on, the effect might have been disastrous. This leads me to think that Mediainfo should have another "safeguard" in place @Cheesegeezer. Maybe as soon as "Error in FFprobe" is detected then the scan would be halted?

Of course this safeguard maybe entirely redundant because MKVPropEdit had never failed before and this was just an isolated incidence. But if this type of instability inherently exists for a third-party tool from time to time, I think it's better to at least have an option for users of Mediinfo to turn on or off this safeguard. Just something to think about.

Although 350+ corrupted files is not "too late" for me as I have backup copies of most of them, but I wouldn't want the same to happen to others. In fact, as of now, I still don't know how to batch replace these files, because they are not even readable by MKVToolNix GUI or mediainfo GUI.

Especially if the MKVPropEdit corruption is random in nature, and does not impact specific files or type of encoding at all, then this "Halt scan if error is detected" is crucial safeguard against some third party tool.

The 'per library' option does indeed give you many more options for testing.

But it has been made clear on the plugin config page and should be reasonably self-evident, that if you deploy a 3rd part tool to modify ALL your media files, it would probably be a good idea with ANY utility to test it first .. 🙄

Short of creating another emby instance (as I did), this would have been 'difficult' to do with the previous verions I agree - as the only options were all of TV or all of Movies. 

Now you can create a test library - and use that for new releases of mkvtoolnix and/or mediainfo.  (if and when you want to upgrade them for some reason).

The plugin version .16 is working very well for me (*) - using Windows mkvproedit v61 but will not run if  v71 has been downloaded.

I don't believe the plugin can do anymore to safeguard the use of a 3rd party utility.

(*) Issue with multi-version re-processing reported - but everything else looks fantastic.

 

Edited by rbjtech
  • Like 1
  • Agree 1
Link to comment
Share on other sites

@mbguy

It is not totaly random, as i know the corruption depends on certain programs used to make the .mkv. But i dont have any idea how to "filter out" these files.

 

@cheesgeezer

As soon as a new version of mkvtoolnix is up, i will do some tests to make sure the new version is bugfree. I will keep you up to date.

 

  • Like 1
  • Thanks 1
Link to comment
Share on other sites

Cheesegeezer
2 minutes ago, rbjtech said:

.

Now you can create a test library - and use that for new releases of mkvtoolnix and/or mediainfo.  (if and when you want to upgrade them for some reason).

but i would need to give the user an override mkv version option. Then…

bombard them with about a thousand alerts and messages warning them about this.

Then get them to agree to terms and conditions and

then give another 20 windows of…. are you sure….. are you really sure… are you really sure you’re sure… are you absolutely sure your really sure that you’re sure 

hahahahaha 😂🤪🤪🤯🫣

2 minutes ago, rbjtech said:

The plugin version .16 is working very well for me - using Windows mkvproedit v61 but will not run if  v71 has been downloaded.

I don't believe the plugin can do anymore to safeguard the use of a 3rd party utility.

 

 

Agreed 

  • Haha 1
Link to comment
Share on other sites

rbjtech
41 minutes ago, mbguy said:

Although 350+ corrupted files is not "too late" for me as I have backup copies of most of them, but I wouldn't want the same to happen to others. In fact, as of now, I still don't know how to batch replace these files, because they are not even readable by MKVToolNix GUI or mediainfo GUI.

Maybe worth trying ffmpeg or some of the mature stream tools such as eac3to (-demux) or tsmuxer to demux the streams - and then remux.

If the headers really have been fried by mkvpropedit - and the streams are not even identifiable, then I fear recovery may be impossible. 😪

If you can share one of the corrupt files via PM link - then I'm happy to spend a few minutes to see if I can recover it and advise my method if successful.. 

Edited by rbjtech
  • Like 1
Link to comment
Share on other sites

5 minutes ago, rbjtech said:

Maybe worth trying ffmpeg or some of the mature stream tools such as eac3to (-demux) or tsmuxer to demux the streams - and then remux.

If the headers really have been fried by mkvpropedit - and the streams are not even identifiable, then I fear recovery may be impossible. 😪

With the limited time that I could review, I am seeing two types of "corruption". Based on MKVToolNix GUI, one set of files don't have any video or audio streams. Another set of corrupted files show Audio stream only, no video stream. So it seems like more than just headers that have been "fried" and I don't have high hopes these can be repaired. But I am still hoping for a mircale.

I agree that with the new Mediainfo "Library" function now, further safeguards may not be necessary. But this is only if a selection of sample test files happen to be what future MKVToolNix / FFMpeg / FFProbe bugs affect. For example, I could even put 100 files into my test library, but if a future bug affects a specific way of encoding or resolution or something specific that is not covered by the scenarios of these 100 sample files, the same issue of file corruption on an unknown number of files remain.

Having said that, I don't mean to trouble you guys with useless concerns that may not ever happen again. I will look into the "hard-coded" MKVProp 70 errors limit, it didn't seem to apply in my case, because every scan produced hundreds of errors before they paused.

Link to comment
Share on other sites

Cheesegeezer
2 minutes ago, mbguy said:

With the limited time that I could review, I am seeing two types of "corruption". Based on MKVToolNix GUI, one set of files don't have any video or audio streams. Another set of corrupted files show Audio stream only, no video stream. So it seems like more than just headers that have been "fried" and I don't have high hopes these can be repaired. But I am still hoping for a mircale.

I really hope you get it solved.

2 minutes ago, mbguy said:

I agree that with the new Mediainfo "Library" function now, further safeguards may not be necessary. But this is only if a selection of sample test files happen to be what future MKVToolNix / FFMpeg / FFProbe bugs affect. For example, I could even put 100 files into my test library, but if a future bug affects a specific way of encoding or resolution or something specific that is not covered by the scenarios of these 100 sample files, the same issue of file corruption on an unknown number of files remain.

 

2 minutes ago, mbguy said:

Having said that, I don't mean to trouble you guys with useless concerns that may not ever happen again. I will look into the "hard-coded" MKVProp 70 errors limit, it didn't seem to apply in my case, because every scan produced hundreds of errors before they paused.

This 70 check will be in the next release.  It's not available just yet.  

@rbjtech found a bug..... grrrrrrrrrrr :D 

  • Like 1
Link to comment
Share on other sites

It makes me feel uncomfortable, but...more than an error does not happend for me...

My system: Emby server 4.8.0.15, Ubuntu 22.04 Arm64

MediaInfo Plugin 1.0.1.16, mkvtoolnix cli v70.0, mediainfo cli v21.09 (both newly added in the plugin settings)

Plugin enabled for the libraries "Movies" + "TV Shows"

 

2022-10-31 22:21:22.954 Debug Media Info: MEDIAINFO TASK IS STARTING
2022-10-31 22:21:22.954 Debug Media Info: isEnabled = True
2022-10-31 22:21:22.954 Info Media Info: Performing MKV Version Checks.........
2022-10-31 22:21:22.955 Debug Media Info: MKVPROPEDIT EXE: /usr/bin/mkvpropedit 
2022-10-31 22:21:23.029 Error Media Info: Object reference not set to an instance of an object.
	*** Error Report ***
	Version: 4.8.0.15
	Command line: /opt/emby-server/system/EmbyServer.dll -programdata /var/lib/emby -ffdetect /opt/emby-server/bin/ffdetect -ffmpeg /opt/emby-server/bin/ffmpeg -ffprobe /opt/emby-server/bin/ffprobe -restartexitcode 3 -updatepackage emby-server-deb_{version}_arm64.deb
	Operating system: Linux version 5.19.0-odroid-arm64 (tobetter@gmail.com) (gcc-10 (Ubuntu 10.3.0-14ubuntu1) 10.3.0, GNU ld (GNU Binutils for Ubuntu) 2.38) #1 SMP PREEMPT
	Framework: .NET 6.0.8
	OS/Process: arm64/arm64
	Runtime: opt/emby-server/system/System.Private.CoreLib.dll
	Processor count: 4
	Data path: /var/lib/emby
	Application path: /opt/emby-server/system
	System.NullReferenceException: System.NullReferenceException: Object reference not set to an instance of an object.
	   at Emby.MediaInfo.ScheduledTasks.MediaInfoScheduledTask.Execute(CancellationToken cancellationToken, IProgress`1 progress)
	Source: Emby.MediaInfo
	TargetSite: Void MoveNext()
	
2022-10-31 22:21:23.029 Debug TaskManager: Advanced Media Information Completed after 0 minute(s) and 0 seconds

 

Link to comment
Share on other sites

Cheesegeezer
1 minute ago, Andy2k said:

It makes me feel uncomfortable, but...more than an error does not happend for me...

My system: Emby server 4.8.0.15, Ubuntu 22.04 Arm64

MediaInfo Plugin 1.0.1.16, mkvtoolnix cli v70.0, mediainfo cli v21.09 (both newly added in the plugin settings)

Plugin enabled for the libraries "Movies" + "TV Shows"

 

2022-10-31 22:21:22.954 Debug Media Info: MEDIAINFO TASK IS STARTING
2022-10-31 22:21:22.954 Debug Media Info: isEnabled = True
2022-10-31 22:21:22.954 Info Media Info: Performing MKV Version Checks.........
2022-10-31 22:21:22.955 Debug Media Info: MKVPROPEDIT EXE: /usr/bin/mkvpropedit 
2022-10-31 22:21:23.029 Error Media Info: Object reference not set to an instance of an object.
	*** Error Report ***
	Version: 4.8.0.15
	Command line: /opt/emby-server/system/EmbyServer.dll -programdata /var/lib/emby -ffdetect /opt/emby-server/bin/ffdetect -ffmpeg /opt/emby-server/bin/ffmpeg -ffprobe /opt/emby-server/bin/ffprobe -restartexitcode 3 -updatepackage emby-server-deb_{version}_arm64.deb
	Operating system: Linux version 5.19.0-odroid-arm64 (tobetter@gmail.com) (gcc-10 (Ubuntu 10.3.0-14ubuntu1) 10.3.0, GNU ld (GNU Binutils for Ubuntu) 2.38) #1 SMP PREEMPT
	Framework: .NET 6.0.8
	OS/Process: arm64/arm64
	Runtime: opt/emby-server/system/System.Private.CoreLib.dll
	Processor count: 4
	Data path: /var/lib/emby
	Application path: /opt/emby-server/system
	System.NullReferenceException: System.NullReferenceException: Object reference not set to an instance of an object.
	   at Emby.MediaInfo.ScheduledTasks.MediaInfoScheduledTask.Execute(CancellationToken cancellationToken, IProgress`1 progress)
	Source: Emby.MediaInfo
	TargetSite: Void MoveNext()
	
2022-10-31 22:21:23.029 Debug TaskManager: Advanced Media Information Completed after 0 minute(s) and 0 seconds

 

Ok so its not retrieving the version number there. Thats the error. But i like it because its stopping the task 👍

@softworkz how to i check for linux file versions from c# 

Link to comment
Share on other sites

Cheesegeezer
56 minutes ago, Andy2k said:

It makes me feel uncomfortable, but...more than an error does not happend for me...

My system: Emby server 4.8.0.15, Ubuntu 22.04 Arm64

MediaInfo Plugin 1.0.1.16, mkvtoolnix cli v70.0, mediainfo cli v21.09 (both newly added in the plugin settings)

Plugin enabled for the libraries "Movies" + "TV Shows"

 

2022-10-31 22:21:22.954 Debug Media Info: MEDIAINFO TASK IS STARTING
2022-10-31 22:21:22.954 Debug Media Info: isEnabled = True
2022-10-31 22:21:22.954 Info Media Info: Performing MKV Version Checks.........
2022-10-31 22:21:22.955 Debug Media Info: MKVPROPEDIT EXE: /usr/bin/mkvpropedit 
2022-10-31 22:21:23.029 Error Media Info: Object reference not set to an instance of an object.
	*** Error Report ***
	Version: 4.8.0.15
	Command line: /opt/emby-server/system/EmbyServer.dll -programdata /var/lib/emby -ffdetect /opt/emby-server/bin/ffdetect -ffmpeg /opt/emby-server/bin/ffmpeg -ffprobe /opt/emby-server/bin/ffprobe -restartexitcode 3 -updatepackage emby-server-deb_{version}_arm64.deb
	Operating system: Linux version 5.19.0-odroid-arm64 (tobetter@gmail.com) (gcc-10 (Ubuntu 10.3.0-14ubuntu1) 10.3.0, GNU ld (GNU Binutils for Ubuntu) 2.38) #1 SMP PREEMPT
	Framework: .NET 6.0.8
	OS/Process: arm64/arm64
	Runtime: opt/emby-server/system/System.Private.CoreLib.dll
	Processor count: 4
	Data path: /var/lib/emby
	Application path: /opt/emby-server/system
	System.NullReferenceException: System.NullReferenceException: Object reference not set to an instance of an object.
	   at Emby.MediaInfo.ScheduledTasks.MediaInfoScheduledTask.Execute(CancellationToken cancellationToken, IProgress`1 progress)
	Source: Emby.MediaInfo
	TargetSite: Void MoveNext()
	
2022-10-31 22:21:23.029 Debug TaskManager: Advanced Media Information Completed after 0 minute(s) and 0 seconds

 

I've found this.  So I doubt I can check the version using C#.  Hopefully Softworkz may have a solution... he's awesome with this stuff.

Short answer:
The FileVersionInfo.GetVersionInfo() method attempts to read VERSIONINFO resource data from a Win32 PE binary executable image.

On Windows, most executables are PE images which may or may not contain a VERSIONINFO structure.
On macOS and Linux, most (but not all) executables are Mach-O and ELF images respectively, which do not contain a VERSIONINFO structure at all.
.NET assemblies always use the PE format, however, which means they can contain a VERSIONINFO structure in their resources section.
This means that on Mac or Linux you can use FileVersionInfo.GetVersionInfo() to read only PE executable files, with the additional caveat that (as of April 2021) only .NET assemblies specifically can be read, and not non-.NET assembly PE executables) can be read. Because ELF and Mach-O executables do not contain a Win32 resources section you cannot use FileVersionInfo.GetVersionInfo() on those kinds of executables.

Source:

macos - C# FileVersionInfo.GetVersionInfo not working on Mac OS - Stack Overflow

Link to comment
Share on other sites

4 hours ago, Cheesegeezer said:

I've found this.  So I doubt I can check the version using C#.  Hopefully Softworkz may have a solution... he's awesome with this stuff.

Short answer:
The FileVersionInfo.GetVersionInfo() method attempts to read VERSIONINFO resource data from a Win32 PE binary executable image.

On Windows, most executables are PE images which may or may not contain a VERSIONINFO structure.
On macOS and Linux, most (but not all) executables are Mach-O and ELF images respectively, which do not contain a VERSIONINFO structure at all.
.NET assemblies always use the PE format, however, which means they can contain a VERSIONINFO structure in their resources section.
This means that on Mac or Linux you can use FileVersionInfo.GetVersionInfo() to read only PE executable files, with the additional caveat that (as of April 2021) only .NET assemblies specifically can be read, and not non-.NET assembly PE executables) can be read. Because ELF and Mach-O executables do not contain a Win32 resources section you cannot use FileVersionInfo.GetVersionInfo() on those kinds of executables.

The "Short Answer" is accurate.

There is no standardized way for version number indication with ELF binaries. 

The only way I can think of is to execute such binary with a parameter like --version or similar when it supports that. Most Linux CLI executables support this because, well - there's no other common way to determine the version.

  • Thanks 1
Link to comment
Share on other sites

Cheesegeezer
7 hours ago, softworkz said:

The "Short Answer" is accurate.

There is no standardized way for version number indication with ELF binaries. 

The only way I can think of is to execute such binary with a parameter like --version or similar when it supports that. Most Linux CLI executables support this because, well - there's no other common way to determine the version.

I managed to get the version from interrogating the version what is returned by using a CLI command in the mkvpropedit process.  Hopefully it works for MAC and Linux users.

 

Link to comment
Share on other sites

Cheesegeezer

V1.0.1.17 is up

This introduces the override feature

  1. Fix mkv Version SafeGuard for linux and macOS users
  2. Add mkvVersion SafeGuard override utility for users to test new versions.

 

Fix mkvVersion

image.thumb.png.8206924f99d6c128b90778939122dd0e.png

Override function

image.thumb.png.6f409e793bcc09964d02eb311ff773b8.png

Enabling this triggers a dialog box

image.png.5bad04716285b0a413c524a09887d473.png

This is also logged during the process

image.thumb.png.c6867556e27ba580b959a19f884c4fb3.png

Edited by Cheesegeezer
  • Like 2
Link to comment
Share on other sites

Hi,

version check works on Linux

2022-11-01 11:46:25.544 Debug TaskManager: Executing Advanced Media Information
2022-11-01 11:46:25.600 Info Media Info: Current OS = LINUX
2022-11-01 11:46:25.600 Info Media Info: MEDIAINFO TASK IS STARTING
2022-11-01 11:46:25.600 Debug Media Info: isEnabled = True
2022-11-01 11:46:25.600 Info Media Info: Performing MKV Version Checks.........
2022-11-01 11:46:25.601 Debug Media Info: MKVPROPEDIT EXE: /usr/bin/mkvpropedit 
2022-11-01 11:46:25.772 Info Media Info: MKVPropEdit Process Version: mkvpropedit v70.0.0 ('Caught A Lite Sneeze') 64-bit

2022-11-01 11:46:25.778 Info Media Info: MKVPropEdit Process Version Check Completed with Exit Code: 0
2022-11-01 11:46:25.779 Info Media Info: MKVPROPEDIT VERSION IS 70 - CONGRATS..... THIS VERSION IS SUPPORTED!!
2022-11-01 11:46:25.791 Info Media Info: No. of Libraries selected is 2
2022-11-01 11:46:25.792 Debug Media Info: Internal Library Folder Id = 285047 - Folder Name: Filme
2022-11-01 11:46:25.792 Debug Media Info: Internal Library Folder Id = 291790 - Folder Name: Serien
2022-11-01 11:46:25.792 Info Media Info: Getting Root Folder Library Items

 

so far so good, but....there is no real processing, and i cant see any output from mediainfo in the logs.

2022-11-01 12:17:31.404 Info Media Info: PERFORMING MEDIAINFO EXTRACTION ON MOVIES
2022-11-01 12:17:31.438 Info Media Info: PROCESSING OF  Der Gesang der Flusskrebse  HAS STARTED
2022-11-01 12:17:31.438 Info Media Info: Item FilePath = /media/video/Filme/HD-DL/Der Gesang der Flusskrebse (2022)/Der Gesang der Flusskrebse (2022) 1080p DTS Blu-ray.mkv 
2022-11-01 12:17:31.446 Debug Media Info: Starting MediaInfo.exe process
2022-11-01 12:17:31.530 Debug Media Info: Reset Embedded Titles = False
2022-11-01 12:17:31.635 Debug Media Info: Object reference not set to an instance of an object.
2022-11-01 12:17:31.636 Info Media Info: PROCESSING OF Der Gesang der Flusskrebse HAS COMPLETED
2022-11-01 12:17:31.636 Debug Media Info: MediaInfo processing for Der Gesang der Flusskrebse and took 198 milliseconds
2022-11-01 12:17:31.636 Debug XmlSerializer: Serializing to file /var/lib/emby/plugins/configurations/Emby.MediaInfo.xml
2022-11-01 12:17:31.667 Info Media Info: PROCESSING OF  Bekenntnisse des Hochstaplers Felix Krull  HAS STARTED
2022-11-01 12:17:31.667 Info Media Info: Item FilePath = /media/video/Filme/Web-DL HD & UHD/Bekenntnisse des Hochstaplers Felix Krull (1957)/Bekenntnisse des Hochstaplers Felix Krull (1957) 1080p DTS Blu-ray.mkv 
2022-11-01 12:17:31.667 Debug Media Info: Starting MediaInfo.exe process
2022-11-01 12:17:31.694 Debug Media Info: Reset Embedded Titles = False
2022-11-01 12:17:31.695 Debug Media Info: Object reference not set to an instance of an object.
2022-11-01 12:17:31.695 Info Media Info: PROCESSING OF Bekenntnisse des Hochstaplers Felix Krull HAS COMPLETED
2022-11-01 12:17:31.695 Debug Media Info: MediaInfo processing for Bekenntnisse des Hochstaplers Felix Krull and took 27 milliseconds

Files are writeable, one movie was newly added, the other is from the re-procces list.

 

Link to comment
Share on other sites

Cheesegeezer

Hmmmm @Andy2k

It looks like your json file isn't getting populated.  or it's crap.

open one of those items in MediaInfo. and then click on View and JSON

image.png.d4ba1d5a52744acddbdfa05065ace522.png

then click anywhere in the json output --> Ctrl A (select all) and then ctrl C (copy)

image.png.0a6243c659e8acdb49af15d898438a5a.png

 

then paste in a code block or quote here on the forum

image.thumb.png.418054ed5f67f24e4c035965c447991a.png

 

  • Like 1
Link to comment
Share on other sites

andy@odroid:/media/video/Filme/HD-DL/Der Gesang der Flusskrebse (2022)$ mediainfo  'Der Gesang der Flusskrebse (2022) 1080p DTS Blu-ray.mkv' --output=JSON
{
"creatingLibrary": {
"name": "MediaInfoLib",
"version": "21.09",
"url": "https://mediaarea.net/MediaInfo"
},
"media": {
"@ref": "Der Gesang der Flusskrebse (2022) 1080p DTS Blu-ray.mkv",
"track": [
{
"@type": "General",
"VideoCount": "1",
"AudioCount": "2",
"TextCount": "1",
"MenuCount": "1",
"FileExtension": "mkv",
"Format": "Matroska",
"Format_Version": "4",
"FileSize": "9225210906",
"Duration": "7525.476",
"OverallBitRate": "9806913",
"FrameRate": "23.976",
"FrameCount": "180431",
"StreamSize": "183575112",
"IsStreamable": "Yes",
"File_Modified_Date": "UTC 2022-10-29 23:51:26",
"File_Modified_Date_Local": "2022-10-30 01:51:26",
"Encoded_Application": "mkvmerge v6.6.0 ('The Edge Of The In Between') built on Dec 1 2013 17:55:00",
"Encoded_Library": "libebml v1.3.0 + libmatroska v1.4.1"
},
{
"@type": "Video",
"StreamOrder": "0",
"ID": "1",
"UniqueID": "1",
"Format": "AVC",
"Format_Profile": "High",
"Format_Level": "4.1",
"Format_Settings_CABAC": "Yes",
"Format_Settings_RefFrames": "5",
"CodecID": "V_MPEG4/ISO/AVC",
"Duration": "7525.484",
"BitRate": "6593755",
"Width": "1920",
"Height": "808",
"Stored_Height": "816",
"Sampled_Width": "1920",
"Sampled_Height": "808",
"PixelAspectRatio": "1.000",
"DisplayAspectRatio": "2.376",
"FrameRate_Mode": "CFR",
"FrameRate": "23.976",
"FrameCount": "180431",
"ColorSpace": "YUV",
"ChromaSubsampling": "4:2:0",
"BitDepth": "8",
"ScanType": "Progressive",
"Delay": "0.000",
"StreamSize": "6202649974",
"Encoded_Library": "x264 - core 164 r3101 b093bbe",
"Encoded_Library_Name": "x264",
"Encoded_Library_Version": "core 164 r3101 b093bbe",
"Encoded_Library_Settings": "cabac=1 / ref=5 / deblock=1:0:0 / analyse=0x3:0x133 / me=umh / subme=8 / psy=1 / psy_rd=1.00:0.00 / mixed_ref=1 / me_range=16 / chroma_me=1 / trellis=2 / 8x8dct=1 / cqm=0 / deadzone=21,11 / fast_pskip=0 / chroma_qp_offset=-2 / threads=25 / lookahead_threads=4 / sliced_threads=0 / nr=0 / decimate=1 / 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 / intra_refresh=0 / rc_lookahead=50 / rc=crf / mbtree=1 / crf=20.0 / qcomp=0.60 / qpmin=0 / qpmax=69 / qpstep=4 / ip_ratio=1.40 / aq=1:1.00",
"Default": "Yes",
"Forced": "No"
},
{
"@type": "Audio",
"@typeorder": "1",
"StreamOrder": "1",
"ID": "2",
"UniqueID": "2864556435",
"Format": "DTS",
"Format_Settings_Mode": "16",
"Format_Settings_Endianness": "Big",
"CodecID": "A_DTS",
"Duration": "7525.476",
"BitRate_Mode": "CBR",
"BitRate": "1509000",
"Channels": "6",
"ChannelPositions_Original": "Front: L C R, Side: L R, LFE",
"ChannelLayout_Original": "C L R Ls Rs LFE",
"SamplesPerFrame": "512",
"SamplingRate": "48000",
"SamplingCount": "361222848",
"FrameRate": "93.750",
"BitDepth": "24",
"Compression_Mode": "Lossy",
"Delay": "0.000",
"Delay_Source": "Container",
"StreamSize": "1419492910",
"StreamSize_Proportion": "0.15387",
"Title": "dts",
"Language": "de",
"Default": "Yes",
"Forced": "No"
},
{
"@type": "Audio",
"@typeorder": "2",
"StreamOrder": "2",
"ID": "3",
"UniqueID": "2864556437",
"Format": "DTS",
"Format_Settings_Mode": "16",
"Format_Settings_Endianness": "Big",
"CodecID": "A_DTS",
"Duration": "7525.476",
"BitRate_Mode": "CBR",
"BitRate": "1509000",
"Channels": "6",
"ChannelPositions_Original": "Front: L C R, Side: L R, LFE",
"ChannelLayout_Original": "C L R Ls Rs LFE",
"SamplesPerFrame": "512",
"SamplingRate": "48000",
"SamplingCount": "361222848",
"FrameRate": "93.750",
"BitDepth": "24",
"Compression_Mode": "Lossy",
"Delay": "0.000",
"Delay_Source": "Container",
"StreamSize": "1419492910",
"StreamSize_Proportion": "0.15387",
"Title": "dts",
"Language": "en",
"Default": "Yes",
"Forced": "No"
},
{
"@type": "Text",
"StreamOrder": "3",
"ID": "4",
"UniqueID": "2864556439",
"Format": "UTF-8",
"CodecID": "S_TEXT/UTF8",
"Title": "forced",
"Language": "de",
"Default": "Yes",
"Forced": "Yes"
},
{
"@type": "Menu",
"extra": {
"_00_00_00_000": "en:00:00:00.000",
"_00_08_45_358": "en:00:08:45.358",
"_00_15_25_967": "en:00:15:25.967",
"_00_22_13_958": "en:00:22:13.958",
"_00_29_12_834": "en:00:29:12.834",
"_00_36_34_192": "en:00:36:34.192",
"_00_46_39_338": "en:00:46:39.338",
"_00_54_06_660": "en:00:54:06.660",
"_01_00_51_231": "en:01:00:51.231",
"_01_06_53_301": "en:01:06:53.301",
"_01_15_50_463": "en:01:15:50.463",
"_01_22_19_101": "en:01:22:19.101",
"_01_29_23_441": "en:01:29:23.441",
"_01_36_23_152": "en:01:36:23.152",
"_01_43_36_335": "en:01:43:36.335",
"_01_53_24_089": "en:01:53:24.089",
"_02_00_59_461": "en:02:00:59.461"
}
}
]
}
}

And another one...

 

andy@odroid:/media/video/Filme/Web-DL HD & UHD/Bekenntnisse des Hochstaplers Felix Krull (1957)$ mediainfo 'Bekenntnisse des Hochstaplers Felix Krull (1957) 1080p DTS Blu-ray.mkv' --output=JSON
{
"creatingLibrary": {
"name": "MediaInfoLib",
"version": "21.09",
"url": "https://mediaarea.net/MediaInfo"
},
"media": {
"@ref": "Bekenntnisse des Hochstaplers Felix Krull (1957) 1080p DTS Blu-ray.mkv",
"track": [
{
"@type": "General",
"VideoCount": "1",
"AudioCount": "1",
"MenuCount": "1",
"FileExtension": "mkv",
"Format": "Matroska",
"Format_Version": "2",
"FileSize": "4303262405",
"Duration": "6848.342",
"OverallBitRate": "5026925",
"FrameRate": "23.976",
"FrameCount": "164196",
"StreamSize": "85631919",
"IsStreamable": "Yes",
"File_Modified_Date": "UTC 2022-10-19 19:38:42",
"File_Modified_Date_Local": "2022-10-19 21:38:42",
"Encoded_Application": "mkvmerge v6.6.0 ('The Edge Of The In Between') built on Dec 1 2013 17:55:00",
"Encoded_Library": "libebml v1.3.0 + libmatroska v1.4.1"
},
{
"@type": "Video",
"StreamOrder": "0",
"ID": "1",
"UniqueID": "1",
"Format": "AVC",
"Format_Profile": "High",
"Format_Level": "4.1",
"Format_Settings_CABAC": "Yes",
"Format_Settings_RefFrames": "5",
"CodecID": "V_MPEG4/ISO/AVC",
"Duration": "6848.348",
"BitRate": "3417889",
"Width": "1920",
"Height": "808",
"Stored_Height": "816",
"Sampled_Width": "1920",
"Sampled_Height": "808",
"PixelAspectRatio": "1.000",
"DisplayAspectRatio": "2.376",
"FrameRate_Mode": "CFR",
"FrameRate": "23.976",
"FrameCount": "164196",
"ColorSpace": "YUV",
"ChromaSubsampling": "4:2:0",
"BitDepth": "8",
"ScanType": "Progressive",
"Delay": "0.000",
"StreamSize": "2925861976",
"Encoded_Library": "x264 - core 164 r3101 b093bbe",
"Encoded_Library_Name": "x264",
"Encoded_Library_Version": "core 164 r3101 b093bbe",
"Encoded_Library_Settings": "cabac=1 / ref=5 / deblock=1:-3:-3 / analyse=0x3:0x133 / me=umh / subme=8 / psy=1 / psy_rd=1.00:0.00 / mixed_ref=1 / me_range=16 / chroma_me=1 / trellis=2 / 8x8dct=1 / cqm=0 / deadzone=21,11 / fast_pskip=0 / chroma_qp_offset=-2 / threads=25 / lookahead_threads=4 / sliced_threads=0 / nr=0 / decimate=1 / 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 / intra_refresh=0 / rc_lookahead=50 / rc=crf / mbtree=1 / crf=20.0 / qcomp=0.60 / qpmin=0 / qpmax=69 / qpstep=4 / ip_ratio=1.40 / aq=1:1.00",
"Language": "en",
"Default": "Yes",
"Forced": "No"
},
{
"@type": "Audio",
"StreamOrder": "1",
"ID": "2",
"UniqueID": "2864556435",
"Format": "DTS",
"Format_Settings_Mode": "16",
"Format_Settings_Endianness": "Big",
"CodecID": "A_DTS",
"Duration": "6848.342",
"BitRate_Mode": "CBR",
"BitRate": "1509000",
"Channels": "6",
"ChannelPositions_Original": "Front: L C R, Side: L R, LFE",
"ChannelLayout_Original": "C L R Ls Rs LFE",
"SamplesPerFrame": "512",
"SamplingRate": "48000",
"SamplingCount": "328720416",
"FrameRate": "93.750",
"BitDepth": "24",
"Compression_Mode": "Lossy",
"Delay": "0.000",
"Delay_Source": "Container",
"StreamSize": "1291768510",
"StreamSize_Proportion": "0.30018",
"Title": "dts",
"Language": "de",
"Default": "Yes",
"Forced": "No"
},
{
"@type": "Menu",
"extra": {
"_00_00_00_000": "en:00:00:00.000",
"_00_09_40_580": "en:00:09:40.580",
"_00_20_01_617": "en:00:20:01.617",
"_00_29_36_483": "en:00:29:36.483",
"_00_38_37_190": "en:00:38:37.190",
"_00_48_25_611": "en:00:48:25.611",
"_00_58_44_646": "en:00:58:44.646",
"_01_08_55_715": "en:01:08:55.715",
"_01_19_37_022": "en:01:19:37.022",
"_01_27_28_702": "en:01:27:28.702",
"_01_38_34_283": "en:01:38:34.283",
"_01_48_41_515": "en:01:48:41.515"
}
}
]
}
}

 

37 minutes ago, Andy2k said:
2022-11-01 12:17:31.695 Debug Media Info: Object reference not set to an instance of an object.

Looks like mediainfo ist not even called...

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...