INTERACT FORUM
More => Old Versions => JRiver Media Center 31 for Windows => Topic started by: Hendrik on July 07, 2022, 03:53:50 am
-
JRVR Configuration Profiles
JRVR Profiles work similarly to Zone Switch, but are limited to JRVR settings only. For flexibility, the profiles are also contained within one section of the JRVR settings - for example, your Monitor has one set of profiles, and the "Scaling" settings have another set, each with their own selection rules.
For details on the search language:
https://wiki.jriver.com/index.php/Search_Language
Using them would go as follows:
- Identify which section you want to create a profile for - eg. Scaling
- Create a new profile in the "Manage Profiles" dialog
- Setup a rule to activate the profile
- Select the profile in the configuration dialog and adjust the settings as desired
Rules use the well known search syntax used in Zone Switch or Smart Lists. The search expression has access to all database fields of the currently playing file, as well as some special fields:
[JRVR Video Width] -> Width of the video, eg. 1920
[JRVR Video Height] -> Height of the video, eg. 1080
[JRVR Video AR] -> Aspect ratio of the video, as floating point, eg. 1.777
[JRVR Video HDR] -> Video is HDR, 1 or 0
[JRVR Video Gamut] -> Gamut of the video, string, "bt601", "bt709", "bt470m", "ebu3213", "bt2020", "dcip3", "displayp3"
[JRVR Cropped Width] -> Cropped video width (eg. after black bar cropping) (added in MC34)
[JRVR Cropped Height] -> Cropped video height (eg. after black bar cropping) (added in MC34)
[JRVR Cropped AR] -> Cropped video aspect ratio (eg. after black bar cropping) (added in MC34)
[JRVR Target Width] -> Target size of the video after scaling, eg. 3840
[JRVR Target Height] -> Target size of the video after scaling, eg. 2160
[JRVR ScaleX] -> Scale factor in the X direction, eg. 2.0
[JRVR ScaleY] -> Scale factor in the Y direction, eg. 2.0
Note that these fields are not part of the database, and may not fully interact with expression functions - although the search syntax should make expression largely unnneeded.
The current management dialog, with the profile selector in the settings, the profile management dialog, and the rule editor:
(https://i.imgur.com/fxlcZKL.jpg)
If any profiles were activated other then the Default Profile, the JRVR OSD will also indicate which profile for each section is active.
Manual Profile Selection
Starting with Media Center 31.0.41, you can manually select which profile is active. This is available in the context menu, the playback OSD, as well as MCC.
The MCC Commands are 10074 for Output profiles, 10075 for Scaling profiles, 10076 for Filtering profiles, and 10077 for Advanced profiles. The parameter is the profile ID to load, with -2 being "Auto select", and -1 being the default profile.
-
Great news! Thanks :)
One question though. When you say "just JRVR settings", does this mean that I can't include stuff like resolution switching in there? Sorry if that's obvious, but I can't look at the settings page right now.
-
We don't support resolution switching during playback.
-
OK, so I can't use JRVR profiles to work around the multiple zones setup (to increase my display mode switching config slots), like with e.g. madVR internal resolution switching? Too bad, as the zones setup doesn't work reliably with zones not becoming active frequently, although playback starts within them.
-
JRVR is JRiver Video Renderer:
https://yabb.jriver.com/interact/index.php/topic,131214.0.html
-
Nice - I just did a quick test creating a "High Frame Rate" profile for material where "[FPS]=>30" and to use FSRCNNX 8 instead of 16. Works as it says on the tin! This will be great for mid range GPUs where FSRCNNX 16 works well on "film" type material but can't keep up with 50/60 Material.
Next is to test a different profile for Interlaced Material to see what I can find to reduce combing artifacts for these.
-
Is there any existing MC Field that reliably indicates if a video is Interlaced or Progressive? I see in my SOT Media Info output that there is:
Scan type : Interlaced
Scan order : Top Field First
I'd rather use an existing MC Field(s) to make the determination but else I'll just add a New MC Field called "Scan Type" that SOT can populate.
-
I don't think the database has that info, but I can probably add a custom data entry for it - at least in some circumstances. If it gets deinterlaced before JRVR sees it, it would have no clue.
-
Yeah I could not see anything in the existing DB fields that may work. No probs - I'll just get the info from SOT--> Media Info to populate a MC Field that would then work in all circumstances.
-
OK - so that all worked as expected. I've added new MC Database Field called "Scan type" that is then populated with "Interlaced" or "Progressive" from SOT. I've setup a JRVR Rule called "Interlaced" under Scaling that is activated by the rule "[Scan type]=[Interlaced]". The "Scaling Profile" then has the following set:
- Scale in Sigmoidal Light = Unchecked
- SuperRes Enhancement = Unchecked
- Advanced Scaling / Luma Image Doubling = Disabled
The resultant image is certainly very soft, but the artifacts (mostly from FSRCNNX or RAVU) is greatly reduced. No a great image but better than adding sharpened artifacts.
I know that FSRCNNX has options for processing Interlaced material, so I'm now wondering in JRVR's implementation if it is always set to "Progressive"?
-
I'm not aware that FSRCNNX has any options like that. There is a separate version for low-quality sources that tries to clean up some common artifacts, but its not specific to interlacing.
-
Thanks Hendrik - I'm wrong. What I was reading was pre-FSRCNNX processing options.
-
Is there any possibility to save the settings in a backup file or something else maybe for a clean new installation of mc?
-
jmone
"The resultant image is certainly very soft, but the artifacts (mostly from FSRCNNX or RAVU) is greatly reduced. No a great image but better than adding sharpened artifacts. "
Does this effect artifacts from interpolation also, thus reducing them or make them look less noticable or are this of a different kind.
-
I don't know as I always use matched FPS and Freq. To my eyes, sharpening tended to exaggerate the existing artifacts in poor quality video (think 1980's interlaced TV) making them more noticeable. Profiles now gives the option to mix and match processing pending the source material and/or the processing capability of your GPU. I have 3 profiles at present:
- FSRCNNX16 for < 30fps > FSRCNNX8 (for my 1660Ti's that don't have the horsepower to run FSRCNNX16 on high frame rate material)
- Different Scaling if Interlaced (for a softer, less sharpened image on these types).
Works well for me, but YMMV and you would need to test and trust your own eyes on your own setup.
-
I need help.
I left the Tonemapping Algorithm on "auto-select" and I get a correct brightness on everything.
However, there are some movies like "The Meg" where the brightness is excessive and therefore I have to set the TM on BT.2446a. I would therefore like to create a profile, but I have no idea what parameter to set as I don't know what this greater brightness is from.
It should be noted that I use a video projector.
Thank you
-
This sounds like a stylistic override, so if in doubt you could create a custom field to control it, and use that in the search expression to select the profile.
-
I can't seem to use a Profile rule when watching TV. It seems to always use Default. I've tried a few different options in the Rule (such as Media Type=TV) but nothing seems to work.
-
I can't seem to use a Profile rule when watching TV. It seems to always use Default. I've tried a few different options in the Rule (such as Media Type=TV) but nothing seems to work.
Yaobing tells me he hooked up TV playback for the next build. Let us know if it works!
-
Thanks - I will. ;D I'm still chasing down the combing issues I'm seeing with deinterlacing on some material. Had to watch the League again last night using HDHomeRun and MC and I kept seeing combing artifacts come and go (hence the attempt to make a profile so I could play with options). I'll post more on that in a new thread once I can work out some repeatable combo.
-
Thanks for the fix. All working as it should for TV now in MC 30.0.85 onwards.
-
just to check.... displayp3 is dci-p3 with a D65 white point?
-
Yes. Although in the context of this thread you are not likely to see it often, I don't recall ever seeing a video that actually flagged this as the gamut (and the JRVR Video Gamut property reflects the videos metadata, not the selected output)
-
While most screens have been aiming for P3-D65 coverage, I've not seen any actual P3-D65 content per say. Most is P3-D65 limited in a 2020 Container.
-
is "JRVR Video AR" aware of black bar analysis or is crop/zoom handled outside of JRVR?
if the latter, is there a way to make crop/zoom client specific or would this require changes to move it into the JRVR domain?
-
JRVR Video Width/Height and AR are all before cropping (or AR overrides) right now. I can add more properties for post-crop values, probably when I get working on applying black bar cropping metadata automatically.
Technically, cropping logic lives outside of JRVR, but of course the logic that computes it needs to tell JRVR all the data, so giving it to you so you can use it in profiles is not a problem.
The general crop options probably need some refactoring to fit into the per-screen settings design of JRVR.
-
there is a way to use jrvr only for a specific folder and madvr for the rest?
-
Use zoneswitch with an appropriate rule to choose between them
-
thanks, have you an example?
-
It's on the wiki.
-
thanks, have you an example?
Try this:
https://yabb.jriver.com/interact/index.php?topic=76605.0
The Wiki lists this in the FAQ:
https://wiki.jriver.com/index.php/Zones
I could not find a proper manual for Zone Switch on the wiki, but the first link should help you.
-
Just got back from a trip and had a play with the new MCC/MCWS control of profiles. Overall, it works as advertised - Thanks!
A couple of things:
1) Small one, but the naming of "Filtering" is not the same as the GUI JRVR Option of "Processing" and that may cause some confusion (the other names of Output, Scaling, and Advanced all match).
2) It writes the manually selected profiles to the "Playback Info" field in the library and this is used the next time you play the item back. Makes sense on a standalone setup but (and I've not tested this), I suspect it will cause issues with Library Server setups with multiple clients? eg I share the library to different clients that have different screen types (PJ, LCD, OLED) with different GPU Capabilities (4090, 3060, iGPU etc). My profiles are going to be unique to each PC/Screen combo but Playback Info does not differentiate between them (or at least I don't think it does).
-
Just want to check that the difference between selecting the "Auto" and "Default" profiles is:
- Auto: Original JRVR behavior normally selects the "Default Profile" unless the MetaData matching picks a different one
- Default: Manually selects the "Default Profile" profile (as with any other profile) for that title
-
2) It writes the manually selected profiles to the "Playback Info" field in the library and this is used the next time you play the item back. Makes sense on a standalone setup but (and I've not tested this), I suspect it will cause issues with Library Server setups with multiple clients? eg I share the library to different clients that have different screen types (PJ, LCD, OLED) with different GPU Capabilities (4090, 3060, iGPU etc). My profiles are going to be unique to each PC/Screen combo but Playback Info does not differentiate between them (or at least I don't think it does).
Thinking about this (if my assumption above is correct), it may still work if you plan out your JRVR Profile setup carefully to accommodate each HTPC/Screen. You would want the "Default" to be correctly tailored for each HTPC/Screen, and then name and create in the same order the same number of profiles on each specific setup based on the "Default"... but then tailored to the capabilities of each setup. This way, you could have matching Profile Names and #'s across all of the clients but each having their own specs (or just left at default). I think that should work. Also a setup without any custom profiles would just stay in "Default".
-
Yes, Auto means auto-selection, and Default means specifically use "Default Profile".
Storing it in a database field is the only per-file storage we realistically have, which is not per-system. If you require multiple systems that might all want fine-tuning, you will indeed have to do a rather careful setup. Maybe auto-selection rules based on other metadata can be used more extensively, rather then per-file overrides.
-
Yeah, it should work with some planning - I was thinking more from the AVS user POV that seem to want to dynamically and manually select different profiles as they go. The other thought I had was to extend the MCC/MCWS call with a second parram option to not save it to Playback Info?
-
The other thought I had was to extend the MCC/MCWS call with a second parram option to not save it to Playback Info?
this could be quite convenient anyway if you're just doing quick testing between profiles and don't want it to be remembered
I also notice that the MCWS call (to MCC) to set this returns OK regardless of whether you send a valid profile id or not. I think this is a generic MCWS problem but still confusing in this case (it was only after nothing was working that I realised the profile id had been added to the dialog in which you define/create profiles).
-
the contrast recovery option only shows the value to 1 decimal place but the slider is moving in smaller steps, can the displayed value be rounded to 2 decimals instead pls?
the slider ui control is a bit odd btw, it looks like it moves accordingly in some double precision based increment rather than a fixed 0.01 step
-
The slider is just continuous for some reason, its not meant to have any more precision. I don't think it has the ability to have actual steps right now.
-
Is there an MCWS route for getting the current JRVR profile (or specifics about the current profile? )
Additionally, is there a route for getting all the available profiles?
-
similar to the previous question, is there a way to get the current state without parsing the Playback Info field?
for example, I set one advanced override and I get this
(12:JRVRProfiles)(10:(1:3)(1:2))
and I can reverse engineer this to tell me that it appears the 1st token (with value 3) means "advanced" and the 2nd one is the profile id set
an easier to parse format would be nice