Jump to content

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


Cheesegeezer

Recommended Posts

Cheesegeezer

So i think i can release this tomorrow. 
 

@FrostByte i will add in some more logging but at info level, not debug. So its easy to see comparisons.

thanks everyone for your feedback it’s really appreciated, believe me.

if you have anything else to add now is the time!!

 

  • Like 1
Link to comment
Share on other sites

FrostByte

Will this also display HLG like used in BBC?

I think it mentions DTS:X, Atmos, DV, and HDR10+

Link to comment
Share on other sites

FrostByte

Mediainfo for His Dark Materials

Video 
ID : 1 
Format : HEVC 
Format/Info : High Efficiency Video Coding 
Format profile : Main 10@L5.1@Main 
Codec ID : V_MPEGH/ISO/HEVC 
Duration : 53 min 14 s 
Bit rate : 18.7 Mb/s 
Width : 3 840 pixels 
Height : 2 160 pixels 
Display aspect ratio : 16:9 
Frame rate mode : Constant 
Frame rate : 25.000 FPS 
Standard : Component 
Color space : YUV 
Chroma subsampling : 4:2:0 
Bit depth : 10 bits 
Bits/(Pixel*Frame) : 0.090 
Stream size : 6.95 GiB (94%) 
Title : 4K HLG 
Default : Yes 
Forced : No 
Color range : Limited 
Color primaries : BT.2020 
Transfer characteristics : HLG 
transfer_characteristics_Original : HLG / BT.2020 (10-bit) 
Matrix coefficients : BT.2020 non-constant 

 

Link to comment
Share on other sites

Cheesegeezer
17 minutes ago, FrostByte said:

Mediainfo for His Dark Materials

Video 
ID : 1 
Format : HEVC 
Format/Info : High Efficiency Video Coding 
Format profile : Main 10@L5.1@Main 
Codec ID : V_MPEGH/ISO/HEVC 
Duration : 53 min 14 s 
Bit rate : 18.7 Mb/s 
Width : 3 840 pixels 
Height : 2 160 pixels 
Display aspect ratio : 16:9 
Frame rate mode : Constant 
Frame rate : 25.000 FPS 
Standard : Component 
Color space : YUV 
Chroma subsampling : 4:2:0 
Bit depth : 10 bits 
Bits/(Pixel*Frame) : 0.090 
Stream size : 6.95 GiB (94%) 
Title : 4K HLG 
Default : Yes 
Forced : No 
Color range : Limited 
Color primaries : BT.2020 
Transfer characteristics : HLG 
transfer_characteristics_Original : HLG / BT.2020 (10-bit) 
Matrix coefficients : BT.2020 non-constant 

 

I’ll need to get info on this, would this replace hdr?

Link to comment
Share on other sites

FrostByte

It's a type of HDR, but it isn't HDR10.  I think it should replace it, maybe rbjtech has an opinion

These are the HDR formats I'm aware of

  • DV5,7,8, etc (DV7 and DV8 have a DV and HDR10 layer)
  • HDR10/HDR10+
  • HLG

 

Hybrid Log Gamma: everything you need to know about HLG HDR | TechRadar

 

 

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

MagicDoubleM
14 hours ago, Cheesegeezer said:

I can look at this for sure

Bitrate is doable too, the lang is actually forced by emby not the plugin

I didn’t even think of that. But is that not date modified that changes and not date created, because all my recently added file in the client havent changed.

this would only be available if the information has been stored in the file container, unfortunately it isn't.

it does on both the plugin settings and the wiki in big bold letters. Ill change the color to RED.

Thanks for all the feedback, really appreciated

 

Edited by MagicDoubleM
double post, can't delete
Link to comment
Share on other sites

MagicDoubleM
14 hours ago, Cheesegeezer said:

I can look at this for sure

Bitrate is doable too, the lang is actually forced by emby not the plugin

I didn’t even think of that. But is that not date modified that changes and not date created, because all my recently added file in the client havent changed.

this would only be available if the information has been stored in the file container, unfortunately it isn't.

it does on both the plugin settings and the wiki in big bold letters. Ill change the color to RED.

Thanks for all the feedback, really appreciated

 

Edited by MagicDoubleM
triple post, can't delete, my internet sucks today
Link to comment
Share on other sites

MagicDoubleM
14 hours ago, Cheesegeezer said:

I can look at this for sure

Bitrate is doable too, the lang is actually forced by emby not the plugin

I didn’t even think of that. But is that not date modified that changes and not date created, because all my recently added file in the client havent changed.

this would only be available if the information has been stored in the file container, unfortunately it isn't.

it does on both the plugin settings and the wiki in big bold letters. Ill change the color to RED.

Thanks for all the feedback, really appreciated

The DV files I mentioned, which aren't yet tagged with DV info, are identified with "Dolby Vision, Version 1.0, dvhe.05.06, BL+RPU" through mediainfo. So far they are only recognized as UHD HEVC

Audio-bitrate would be nice, how about bit-depth and khz too? Just some geeky specs would be nice there.

I assumed you get the remux info from the file name, that's where I'd look for web and such source-tags. Maybe use the trash-guides for inspiration, they're probably the closest thing to a standard due to being used in radarr/sonarr.

You are right it's the modified date that changed. And emby only uses the creation date optionally, so panic/red alert cancelled here. ;)
And "THIS PLUGIN WILL REPLACE EMBEDDED TRACK TITLES TO YOUR MKV FILES",. yeah, LOL, there it was, and I did read it, and I somehow managed to not immediately be warned that it actually touches the files. I'll blame midnight-testing, sorry, my fault.

Link to comment
Share on other sites

FrostByte
13 minutes ago, MagicDoubleM said:

The DV files I mentioned, which aren't yet tagged with DV info, are identified with "Dolby Vision, Version 1.0, dvhe.05.06, BL+RPU" through mediainfo. So far they are only recognized as UHD HEVC

 

Definitely need to know if it's DV5.  My Samsung can't play DV5, but can play DV7 or DV8 which have a HDR10 track for compatibility.  

Link to comment
Share on other sites

MagicDoubleM
5 hours ago, FrostByte said:

Definitely need to know if it's DV5.  My Samsung can't play DV5, but can play DV7 or DV8 which have a HDR10 track for compatibility.  

Yes, that's DV5, the ones with totally off colors when played on hardware that doesn't support it.

Link to comment
Share on other sites

Cheesegeezer
9 hours ago, MagicDoubleM said:

The DV files I mentioned, which aren't yet tagged with DV info, are identified with "Dolby Vision, Version 1.0, dvhe.05.06, BL+RPU" through mediainfo. So far they are only recognized as UHD HEVC

If you can out put an example in json from mediainfo gui i can get these in.

9 hours ago, MagicDoubleM said:


Audio-bitrate would be nice, how about bit-depth and khz too? Just some geeky specs would be nice there.

I can throw them in but it will start to look like an essay lol 😂 

9 hours ago, MagicDoubleM said:



I assumed you get the remux info from the file name, that's where I'd look for web and such source-tags.

this is just a cutoff , anything above these values are classed as Remux. for 4k its 37mb/s and for 1080p its 22Mb/s

8 hours ago, FrostByte said:

Definitely need to know if it's DV5.  My Samsung can't play DV5, but can play DV7 or DV8 which have a HDR10 track for compatibility.  

If you can out put an example in json from mediainfo gui for video i can get these in.

thanks again fellas

{
"@type": "Video",
"StreamOrder": "0",
"ID": "1",
"UniqueID": "1",
"Format": "HEVC",
"Format_Profile": "Main 10",
"Format_Level": "5.1",
"Format_Tier": "High",
"HDR_Format": "Dolby Vision / SMPTE ST 2086",
"HDR_Format_Version": "1.0 / ",
"HDR_Format_Profile": "dvhe.07 / ",
"HDR_Format_Level": "06 / ",
"HDR_Format_Settings": "BL+EL+RPU / ",
"HDR_Format_Compatibility": "Blu-ray / HDR10",
"CodecID": "V_MPEGH/ISO/HEVC",
"Duration": "224.390833333",
"BitRate": "51549385",
"Width": "3840",
"Height": "2160",
"Sampled_Width": "3840",
"Sampled_Height": "2160",
"PixelAspectRatio": "1.000",
"DisplayAspectRatio": "1.778",
"FrameRate_Mode": "CFR",
"FrameRate": "23.976",
"FrameCount": "5380",
"ColorSpace": "YUV",
"ChromaSubsampling": "4:2:0",
"ChromaSubsampling_Position": "Type 2",
"BitDepth": "10",
"Delay": "0.000",
"StreamSize": "1445895826",
"Title": "UHD DV7  HDR10 Remux  [51.5Mb/s]",
"Language": "en",
"Default": "No",
"Forced": "No",
"colour_description_present": "Yes",
"colour_description_present_Source": "Stream",
"colour_range": "Limited",
"colour_range_Source": "Stream",
"colour_primaries": "BT.2020",
"colour_primaries_Source": "Stream",
"transfer_characteristics": "PQ",
"transfer_characteristics_Source": "Stream",
"matrix_coefficients": "BT.2020 non-constant",
"matrix_coefficients_Source": "Stream",
"MasteringDisplay_ColorPrimaries": "Display P3",
"MasteringDisplay_ColorPrimaries_Source": "Stream",
"MasteringDisplay_Luminance": "min: 0.0050 cd/m2, max: 4000 cd/m2",
"MasteringDisplay_Luminance_Source": "Stream",
"MaxCLL": "1000 cd/m2",
"MaxCLL_Source": "Stream",
"MaxFALL": "362 cd/m2",
"MaxFALL_Source": "Stream"
},

 

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

FrostByte

json from Moon Knight DV5 file

{
"@type": "Video",
"StreamOrder": "0",
"ID": "1",
"UniqueID": "14332962216991161246",
"Format": "HEVC",
"Format_Profile": "Main 10",
"Format_Level": "5.2",
"Format_Tier": "Main",
"HDR_Format": "Dolby Vision",
"HDR_Format_Version": "1.0",
"HDR_Format_Profile": "dvhe.05",
"HDR_Format_Level": "06",
"HDR_Format_Settings": "BL+RPU",
"CodecID": "V_MPEGH/ISO/HEVC",
"Duration": "2838.375000000",
"BitRate": "22415925",
"Width": "3840",
"Height": "2160",
"Sampled_Width": "3840",
"Sampled_Height": "2160",
"PixelAspectRatio": "1.000",
"DisplayAspectRatio": "1.778",
"FrameRate_Mode": "CFR",
"FrameRate": "24.000",
"FrameCount": "68121",
"ColorSpace": "YUV",
"ChromaSubsampling": "4:2:0",
"ChromaSubsampling_Position": "Type 0",
"BitDepth": "10",
"Delay": "0.000",
"StreamSize": "7953100275",
"Default": "No",
"Forced": "No",
"colour_description_present": "Yes",
"colour_description_present_Source": "Stream",
"colour_range": "Full",
"colour_range_Source": "Stream",
"colour_primaries_Source": "Stream",
"transfer_characteristics_Source": "Stream",
"matrix_coefficients_Source": "Stream"
},

 

  • Like 2
Link to comment
Share on other sites

FrostByte

HLG episode in json format if you need

{
"@type": "Video",
"StreamOrder": "0",
"ID": "1",
"UniqueID": "1",
"Format": "HEVC",
"Format_Profile": "Main 10",
"Format_Level": "5.1",
"Format_Tier": "Main",
"CodecID": "V_MPEGH/ISO/HEVC",
"Duration": "3278.800000000",
"BitRate": "18636140",
"Width": "3840",
"Height": "2160",
"Sampled_Width": "3840",
"Sampled_Height": "2160",
"PixelAspectRatio": "1.000",
"DisplayAspectRatio": "1.778",
"FrameRate_Mode": "CFR",
"FrameRate": "25.000",
"FrameCount": "81969",
"Standard": "Component",
"ColorSpace": "YUV",
"ChromaSubsampling": "4:2:0",
"BitDepth": "10",
"Delay": "0.000",
"StreamSize": "7638022382",
"Title": "4K HLG",
"Default": "Yes",
"Forced": "No",
"colour_description_present": "Yes",
"colour_description_present_Source": "Container / Stream",
"colour_range": "Limited",
"colour_range_Source": "Container / Stream",
"colour_primaries": "BT.2020",
"colour_primaries_Source": "Container / Stream",
"transfer_characteristics": "HLG",
"transfer_characteristics_Source": "Container",
"transfer_characteristics_Original": "HLG / BT.2020 (10-bit)",
"transfer_characteristics_Original_Source": "Stream",
"matrix_coefficients": "BT.2020 non-constant",
"matrix_coefficients_Source": "Container / Stream"
},

 

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

Cheesegeezer
5 minutes ago, FrostByte said:

json from Moon Knight DV5 file

{
"@type": "Video",
"StreamOrder": "0",
"ID": "1",
"UniqueID": "14332962216991161246",
"Format": "HEVC",
"Format_Profile": "Main 10",
"Format_Level": "5.2",
"Format_Tier": "Main",
"HDR_Format": "Dolby Vision",
"HDR_Format_Version": "1.0",
"HDR_Format_Profile": "dvhe.05",
"HDR_Format_Level": "06",
"HDR_Format_Settings": "BL+RPU",
"CodecID": "V_MPEGH/ISO/HEVC",
"Duration": "2838.375000000",
"BitRate": "22415925",
"Width": "3840",
"Height": "2160",
"Sampled_Width": "3840",
"Sampled_Height": "2160",
"PixelAspectRatio": "1.000",
"DisplayAspectRatio": "1.778",
"FrameRate_Mode": "CFR",
"FrameRate": "24.000",
"FrameCount": "68121",
"ColorSpace": "YUV",
"ChromaSubsampling": "4:2:0",
"ChromaSubsampling_Position": "Type 0",
"BitDepth": "10",
"Delay": "0.000",
"StreamSize": "7953100275",
"Default": "No",
"Forced": "No",
"colour_description_present": "Yes",
"colour_description_present_Source": "Stream",
"colour_range": "Full",
"colour_range_Source": "Stream",
"colour_primaries_Source": "Stream",
"transfer_characteristics_Source": "Stream",
"matrix_coefficients_Source": "Stream"
},

 

So i can see here that color_primaries aren't set for DV5 which is what i've been using to see if it's DV.  I can get a fix out shortly for this. the same with HLG.

 

Standby......

  • Like 1
Link to comment
Share on other sites

FrostByte

If you start to add more information, it may be too much for me if it's not an option.  Some clients like ATV have a lot less room than others and then just start chopping things off.  I'll look at mediainfo if I need more. 

Link to comment
Share on other sites

Cheesegeezer
3 minutes ago, FrostByte said:

If you start to add more information, it may be too much for me if it's not an option.  Some clients like ATV have a lot less room than others and then just start chopping things off.  I'll look at mediainfo if I need more. 

i understand this, which is why i have allow for options.  The Abbreviations for Audio have come from @rbjtech which he uses on ATV, so i know these will look fine.

  • Like 1
Link to comment
Share on other sites

Cheesegeezer
8 minutes ago, Cheesegeezer said:

i understand this, which is why i have allow for options.  The Abbreviations for Audio have come from @rbjtech which he uses on ATV, so i know these will look fine.

you free for quick test on HLG and DV5?

 

Link to comment
Share on other sites

FrostByte
5 minutes ago, Cheesegeezer said:

you free for quick test on HLG and DV5?

 

I'm here

Link to comment
Share on other sites

Cheesegeezer

I found a bug in my code @FrostByte

i'm just doing some tests, you may or may not get the episodes to work.

 

@MagicDoubleM  added some options for the geek in you

 

image.png.8b71d34597934715e1e2fec54745d52b.png

image.png.e726fd4dfd12e784fe4678a30eb65420.png

  • Like 1
Link to comment
Share on other sites

FrostByte

I got the following in my log

2022-05-30 07:26:23.321 Info Media Info: PERFORMING MEDIAINFO EXTRACTION ON MOVIES
2022-05-30 07:26:23.323 Info Media Info: MEDIAINFO EXTRACTION ON MOVIES Completed for 1276 Movies
2022-05-30 07:26:23.323 Info Media Info: PERFORMING MEDIAINFO EXTRACTION ON TV EPISODES
2022-05-30 07:26:23.324 Error Media Info: Object reference not set to an instance of an object.
	*** Error Report ***
	Version: 4.8.0.0
	Command line: /volume1/@appstore/EmbyServer/system/EmbyServer.dll -programdata /var/packages/EmbyServer/var -ffdetect /var/packages/EmbyServer/target/bin/ffdetect -ffmpeg /var/packages/EmbyServer/target/bin/ffmpeg -ffprobe /var/packages/EmbyServer/target/bin/ffprobe -nolocalportconfig -ignore_vaapi_enabled_flag -pidfile /var/packages/EmbyServer/var/EmbyServer.pid -defaultdirectory /volume1/Public -updatepackage emby-server-synology7_{version}_x86_64.spk
	Operating system: Linux version 4.4.180+ (root@build17) (gcc version 8.5.0 (GCC) ) #42661 SMP Fri Apr 1 15:31:10 CST 2022
	Framework: .NET 6.0.2
	OS/Process: x64/x64
	Runtime: volume1/@appstore/EmbyServer/system/System.Private.CoreLib.dll
	Processor count: 8
	Data path: /var/packages/EmbyServer/var
	Application path: /volume1/@appstore/EmbyServer/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()

 

Link to comment
Share on other sites

Cheesegeezer
4 minutes ago, FrostByte said:

I got the following in my log

2022-05-30 07:26:23.321 Info Media Info: PERFORMING MEDIAINFO EXTRACTION ON MOVIES
2022-05-30 07:26:23.323 Info Media Info: MEDIAINFO EXTRACTION ON MOVIES Completed for 1276 Movies
2022-05-30 07:26:23.323 Info Media Info: PERFORMING MEDIAINFO EXTRACTION ON TV EPISODES
2022-05-30 07:26:23.324 Error Media Info: Object reference not set to an instance of an object.
	*** Error Report ***
	Version: 4.8.0.0
	Command line: /volume1/@appstore/EmbyServer/system/EmbyServer.dll -programdata /var/packages/EmbyServer/var -ffdetect /var/packages/EmbyServer/target/bin/ffdetect -ffmpeg /var/packages/EmbyServer/target/bin/ffmpeg -ffprobe /var/packages/EmbyServer/target/bin/ffprobe -nolocalportconfig -ignore_vaapi_enabled_flag -pidfile /var/packages/EmbyServer/var/EmbyServer.pid -defaultdirectory /volume1/Public -updatepackage emby-server-synology7_{version}_x86_64.spk
	Operating system: Linux version 4.4.180+ (root@build17) (gcc version 8.5.0 (GCC) ) #42661 SMP Fri Apr 1 15:31:10 CST 2022
	Framework: .NET 6.0.2
	OS/Process: x64/x64
	Runtime: volume1/@appstore/EmbyServer/system/System.Private.CoreLib.dll
	Processor count: 8
	Data path: /var/packages/EmbyServer/var
	Application path: /volume1/@appstore/EmbyServer/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()

 

I thought so,  as i said i found it while i was refactoring and improving the progress bar accuracy.

2 secs and i'll get another dll up.

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...