Example figure for a complex case (using all the resolution related tools at the same time): 


Master format: 4K

Camera rushes: 5K

VFX images: Many formats (2k, 4k, 8k,...)

Reference monitor: HD 1920x1080

Offline: PAL 720x576

GUI monitor: 1920x1200


http://www.sgo.es/wp-content/uploads/Mistika-quick-sheets-Working-with-different-resolutions-V2-2.png



Resolution management in Mistika Ultima & Boutique


The resolution management in Mistika has been designed to be the extremely powerful and flexible. As a difference to other applications this is not automated to happen in a rigid workflow. Instead, Mistika provides full control to decide when to apply format conversions and how it is done exactly, thus providing non locked workflows in terms of resolution management.   


But unfortunately the extra control comes at the cost of not being a trivial application to learn in this aspect. Mistika provides multiple tools for framing and re-scaling, but they are not interchangeable.  Probably the worst thing that you can do in Mistika is to use the wrong re-scaling tool for a purpose that it is not really intended for, so it is important to understand how it works. 


However, please note that the added complexity is there for a good reason. Understanding a few basic rules will provide a fully predictable behaviour of Mistika format conversions, and great flexibility to match the particular needs of any imaginable project. 


Multiple resolutions may need to coexist due to different reasons, and each of these cases has its own dedicated tools to deal with it. It works as follows:


Master render format ( mConfig->Master Formats -> Render size X/Y & aspect ratio)  

In general these settings represent the main delivery format that you plan to use for the current project 

Note: the mConfig tool is accessed trough the "Mistika Config" icon on your desktop. But for simplicity we will use "mConfig" to refer to it in all the below sections.

In a Mistika session the resolution settings  of the current Master Render Format will always appear in the Timeline status bar,  and all the render jobs will be rendered at that resolution until restarting Mistika with different resolution settings.  Please remember that these settings needs to be decided for the whole session before opening Mistika.  


When creating a new project, first thing is to ask what will be the main mastering format for it,  and it is highly recommended to select the master resolution in mConfig before creating the project (it is also recommended to create a new mConfig preset for that format if not existing yet ).  This is because of this:  when you create a new project it will remember the master format and other important settings that were active at that very moment.  In this way, when you switch to a project that was created with different settings than the current ones then Mistika will be able to show a warning message about the differences.  


Please note that when Mistika shows this message it is just a "warning",  there is nothing wrong with it if you have switched to other resolutions settings on purpose. The only purpose of this warning is to avoid the common mistake to switch to a different project while forgetting to also switch to its mastering format in mConfig, as in Mistika this will not happen automatically.  The reason for this is that Mistika projects are not "locked" to a particular format (you can change the master format of a project as many times as you want, as long as you do it between different Mistika sessions). The project just remembers the master format that was active when it was created, but it is never forced to it.


Note: For that reasons, the "Master render format" (that is, the current settings for the mConfig->Master Format ->render size X/Y and aspect ratio fields) is often called the "Project resolution" although this term can be confusing for our purposes, and in the below sections we will refer to this group of settings as the "Master render format" 


In general, if you decide to change the master render format in a posterior session you will still get similar results without the need for additional adjustments, with all effects producing similar results but just at a different resolution. To help on this, most effect parameters related with sizes or geometries are normalized to 0..1 range rather than being expressed in an specific number of pixels, so they can produce the same effect at a different resolution. (Logically this is only true as long as the aspect ratio is not also changing. If the aspect ratio also changes then you may need to adjust any effects involved on image scaling operations).




Output->Render->Video->SettingsWheel->Scale 


The render tool will always use the master render resolution for rendering.  But it also permits to scale to a different resolution as a post-filter to the render process.  The main purpose of the post-scaling filter is just to provide a fast method to create offline versions at smaller resolutions without the need to reload Mistika, and also to improve the render quality by rendering all effects at full resolution before down-scaling to a particular format.  

But obviously this tool will not reduce the render times,  if what you want is to work at a smaller resolution for faster processing then you will need to switch to a smaller resolution in mConfig->MasterFormats first, and then restart the Mistika application.




Scaling the source footage to the Master render format


Source images of different resolutions and aspect ratios can perfectly coexist in the same Timeline.  In general they will be processed at the original resolution until the user makes an specific scaling decision.  As a difference to some other applications the moment when it happens is entirely let to user discretion. You can apply the conversion from the source format to the render format at the very beginning, and the very end, or in the middle of the effect stack, and you can do in different ways for each shot depending on their particular needs.  


The most common tools in Mistika to control those processes are the following:


Default behaviour for the Record Monitor (GUI): If you do not make any action then the Timeline->Record Monitor and the render processes will display the source images with 1:1 pixels, with "center crop" conversion  to the master format if necessary. This is just a default behaviour while waiting for the user to make a framing decision with the below tools.


VisualEditor->Rescale indicators and Res mode.:  When you double click in an image clip it will be loaded in the Visual Editor. If the resolution of the source images is different than the master render format then the Visual Editor will show a "Rescaled from XXXX x YYYY"  message, also indicating the original resolution of the selected clip. This is just to warn you that the conversion decision has not yet been made at that point of the effect stack.  Once you apply an scaling effect (see effects below) then the resolution indicator will disappear, as the selected images will already be in the master format.  


If the source images are not in the master format but in a different resolution then the Visual Editor will visualize the whole image adapted to the master format size and aspect ratio by default. It also provides an Unscale button to switch the view mode to the original image size and aspect ratio, but please note that both modes are just for visualization purposes, with the purpose to be able to use the Visual Editor manipulators properly.  Those controls are just view modes of the Visual Editor  and they do not have any effect for rendering, as the actual re-scaling is only controlled with the effects below.  So whenever you see the "Rescaled from"  warning what you see iin the Visual Editor is not what you will get if you render.


Synthetic effects:  In Mistika all the synthetic effects (any effect that is not passed an actual image to it) are created in the master render format resolution and aspect ratio.


There are two principal tools to convert source images to the master render format. The Framing effect (which is the most common tool for this) and the Comp3D (which is specialized on compositing tasks, but can also solve this matter as part of the process). Both of them are discussed below:


FX->Framing effect:  This is the main scaling & crop effect in Mistika (similar to what is called Pan & Scan in some other applications). It is limited to work in 2D, but it is capable of the highest scaling quality that is possible in Mistika (Framing->Options->Filter->15taps).  In general it is the generic framing effect that you should use "by default" whenever you want to scale your source images to the master render format (or to any other format that you want).  It will convert  to the output resolution that you choose depending on the Framing->ResultSize and the associated parameters, while also controlling the aspect ratio, cropping / letterbox, and all the common "framing" aspects in general. 


Please note that you can propagate the Framing parameters to other similar shots (VisualEditor->Propagate), but if their input resolutions are different then you will need to have different framing settings for each shot. In any case the ultimate objective is to convert each effect stack to the master render format at some point,  with full control of this process in a per shot basis. 


FX->Comp3D:  This is a general purpose compositing effect, also capable of working in a 3D environment. Each input layer of the composition can be scaled as necessary.  The top layer (Input1 ) can be used as a background for the composition, and the Options->ResultSizeAs (Project, Input1) parameter permits to decide if the resulting composition is then scaled to the master render format (Project), or if the output is still left at the resolution of the original background image (Input1).  


Please note that if a synthetic effect is used as the input1 to this effect (or if a "solid" color is selected as background) then both the background of the composition and the output resolution will be already at the master render format, so that is a common technique to simplify this process in Mistika  (thus doing the compositing and the conversion to the render format at the same time).


Other specialised effects with scaling capabilities: Some other effects (VR Stitch, Stereo3D, cameraParams ) are also capable of scaling source images in different ways, but as their names indicate they are very specialized tools and not for general purpose scaling, so they are out of the scope of this document. 



Scaling the Mistika output to the Live Video Output resolution (creating a live "display filter")


This point only applies to systems having an external reference display connected to a professional video board (AJA, DVS, etc). It does not apply to users who only have GUI monitors. 


As we have seen, the Master render format only defines the render resolution, which does not need to match the resolution and aspect ratio of the video output at all.  But logically,  if they are different then you will need to define an independent format conversion for the reference display in some way.  The good news is that both scaling processes can perfectly coexist in Mistika simultaneously (an scaling process from the source images to the render format and a specialized  one to the video output format). 


These are the typical tools to control the video output format in Mistika:


Video resolution (mConfig->MasterFormats->VideoResolution):  This will set the resolution of the video signal. Changing it requires to restart Mistika.


RecordMonitor->LiveViedo OFF:  When the Live Video is Off, the RecordMonitor in the GUI monitor will always display the exact images that are going to be rendered (the master render format),  just scaled down to fit the RecordMonitor window (as long as the zoom controls are not active)


RecordMonitor->LiveVideo ON:  If the video output has a different resolution than the Master Render Format and you do not apply any scaling action then the live video is shown at 1:1 pixels, with center crop applied (if the Master Render Format is bigger than the video output signal). To change this behaviour you can use the effects below:


Fx->Framing->ResultSize->LiveOutput: The Framing effect has a specialised mode to control the scaling for the video output. By setting the  ResultSize parameter to LiveOutput it will convert its input images to the live video resolution, whatever it is at each moment. You can control all the aspects of this conversion with the remaining parameters of the Framing effect. 


And here it comes what is probably the most important aspect to understand:  When the Master Render Format  and the video resolution are different, the best way to do the conversion to the Live Output is by using a dedicated Framing effect that will only be applied to the live output (so it will not influence the render output at all).  And the recommended way to do this in Mistika is by creating a "Display Filter" for the Live output path, which will contain this Framing effect on itself. The creation of the "display filter" is described in the next points.  


Display filters:  In Mistikaa "display filter" is a special FX preset, that is:  an effect or stack or effects that is saved with all the parameters already adjusted but not applied to any particular shot yet.  Saving it as a "Display Filter" permits to apply it later to one or more of the five output paths where Mistika can send the images independently;  Render, Live video, Scopes, GUI monitors, and Streaming,  In this particular example we will only be using a Display Filter for the Live Video path, but just to remind that in other cases you could apply the same technique to the other output paths.  You can also use display filters for other tasks like color space conversions, applying LUTs, watermarks, or any other process that you want to be limited to a specific output path.


If you do not have experience with Display Filters it is recommended to watch this tutorial (Mistika  Display Filters are very powerful, but they are not trivial to understand)

https://www.youtube.com/watch?v=Lf6KEnrNnhE&list=PLPxezwaoLh179l9nGWhDuvgRLHz_OwtvJ&index=19



Creating a rescaling display filter for the Live output path:


First you will work on an example shot without thinking on the reference display at all, just watch the content in the GUI and build the effect stack that can render the final delivery that you want to produce. 


In a second stage you will create a new Framing effect to convert from the render format to the video format, so it looks correct in the reference display. 


 And finally you will use that Framing effect to create a display filter exclusively applied to the live video output. In more detail:


1 -  Go to any shot that you wish to use as an example, and apply all the effects that you expect to use for typical render processes. Apply Framing effects (or Comp3D) as needed to produce the render format without taking into account the live reference display just yet.  Even do an actual render and check that it produces the desired delivery format correctly.


2 -  Now apply a new Framing effect as the last effect of the stack (on top of it).  Set the Framing->ResultSize to LiveOutput and adjust all the parameters that you want until you get a correct visualization in the reference display. 


Note: While adjusting the Framing parameters, it is also recommended to activate the VisualEditor->LiveRes button. It will provide additional visual references in the Visual Editor by overlaying the live video frame on top of the render format.


3 - Once you are satisfied with the live output result we are going to create a display filter that can do the same globally. 


First create a copy of the Framing effect ( the one from Step 2) to an empty area of the Timeline, because in the next step it will disappear from it.  


Now put a reference clip in its effect range. This clip needs to be an image clip (not a synthetic effect), and the main purpose of it is to provide an image to create the icon that will represent the display filter. 


Once applied, select the Framing effect and press VisualEditor->DisplayFilters->CreateDisplayFilter. It will ask a name for it, and then the selected Framing will be moved to the FXPresets->DisplayFilters folder of the project.  


Please note that at this point the selected effect stack will have disappeared from the Timeline, as it has been moved to the said folder. You can still get it from there if you need to modify it in the future. Also notice that the VisualEditor->FXPresets button have been activated automatically ( which is what is giving you access to the FX Presets panel containing that folder ).


4 - Now go to the VisualEditor->DisplayFilters table, in the left column select the new display filter that you have created in the previous step and activate the "Live" button for it.  You can switch this button On and Off to appreciate what it does. It should be affecting the live video output as expected, but it will not affect the render path at all. 


5 - Please notice that activating the "Live" button will also activate a T1 toggle (these toggles are located at the bottom right  side of the image area). The purpose of this toggle is to provide a fast way to switch the display filter On and Off at any time (the particular toggle number can be selected at the right column of the  display filters table). Having that toggle already configured you will not need to come back to the display filters table anymore, so now you can switch off the VisualEditor->FXPresets button to continue your work.  From now, you can simply use the said toggle button when you want to activate or deactivate the associated display filter.


Note 1: Once you save a display filter it will be remembered with the project, so you can easily select it on other timelines of the same project.  Restricting display filters to the project where they are created is a good thing in order to prevent the display filter list growing like crazy over the time (showing uncounted specialised filters that were only used in one project...).  But in some cases this is not what you want:  Other times you may want to associate a display filter to a particular conversion between a specific render format and a specific video format that you want to use in many different projects.  


This can be easily achieved by associating the display filter to an mConfig preset (as both the render format and the video format are specifically saved for each mConfig preset). To do this, simply activate the "Display filters for mConfig preset" button (find it on top of the Display Filters table) and select the display filter that you want to associate to the current mConfig preset. From this point it will be offered whenever you are working with the same mConfig preset, independently of the project.


Note 2:  Please note that the "display filter" workflow only works well when the same framing parameters are valid for all the Timeline segments. But interestingly, in the previous stage we had already used one framing effect per shot in order to convert from the source images (which could be made of different resolutions) to the render format, so in principle all the shots are already prepared for using the same display filter (which converts from the master render format to the live output format).  Other format conversion workflows are possible, but this is the most common technique for solving this matter in Mistika.



Apendix A:  Notes about rescaling ACES images


It is important to be careful about rescaling processes (Framing, Comp3D, Stitch,...).  Rescaling processing works much better on Log images.  A rescale process applied on Linear images can reduce quality and produce "ringing" artifacts.  In the case of ACES you should do the framing on ACEScc (which is Log),  not in pure ACES (which is linear).  


For example, a convenient way is to apply  cameraParams extraction to ACEScc and then apply a Framing effect.