Search Results for

    Show / Hide Table of Contents

    Capture From Camera 360 ODS

    alt_text

    This component allows accurate rendering of stereo 360 scenes to equi-rectangular format via a technique called Omni-Directional Stereo (ODS) and based on this paper: https://developers.google.com/vr/jump/rendering-ods-content.pdf

    This component takes a very long time to render each frame and is only suitable for offline rendering. This is due to the complex rendering method, but the stereo results are much more accurate than using the stereo option in the CaptureFromCamera360 component. This component always outputs a stereo image and shouldn’t be used for monoscopic rendering.

    Note that Unity may become unresponsive when using this component. This is because each frame takes a long time to render so the Unity editor will only update at the end of each frame. Hopefully we will improve this in the future to keep the UI responsive. It is best to set the “Auto Stop” mode when using this component so that it will stop at the end of a sequence without user intervention.

    Also, please note that this capture component can use a ton of memory if the Unity profiler is enabled due to how many rendering calls it does per frame. Even a simple scene can take over 32GB of memory due to the profiler. You must disable the profiler completely when using this component. This is done by opening the profiler, disabling the record option, closing the profiler, remove the tab if it is docked, then restarting Unity

    From Camera 360 ODS

    alt_text

    Properties
    Property                               Function
    Camera Selector Selects the camera to render from. Using the CameraSelector component allows easy switching between cameras.
    Camera Selects the camera to render from if only one camera is required.
    Resolution The resolution of the final output (before downscale)
    Anti-aliasing Anti-aliasing to use during rendering
    Render 180 Degrees Selecting this option will output only 180 degree rendering
    Interpupillary Distance (IPD) The distance between the pupils. This is set to 0.064 which is the standard for an american male adult. You may wish to alter this if creating content for a wide range of users and quality is important. This value is in meters and assumes a scale of 1 unit = 1 meter
    Pixel Slice Size The size in pixels of each vertical slice. Scene renders per frame = (Resolution.width / Pixel Slice). Increasing this number will make rendering faster, but will decrease quality. Usually best to leave this set to 1 pixel
    Padding Size The amount of padding in pixels to add to each vertical slice. If you’re using post-process effects (bloom etc) then you may need to increase this above 1 so that these effects work.
    Camera Clear Mode How the camera clears
    Camera Clear Color The colour to clear the camera with
    Camera Image Effects Here you can add any legacy Image Effects that are applied to your camera. These effects will then get applied as the rendering is done.

    alt_text

    • The "Open Movie Capture Window" button opens the in-editor capture window which allows capturing without adding components to your scene
    Properties
    Property                               Function
    Capture Mode Capture can either be realtime, or an offline render

    Start/Stop

    alt_text

    Properties
    Property                               Function
    Toggle Key Select a key to toggle the start and end of capturing
    Start Mode The capture can start either when the component starts, or wait until it is manually triggered by the user via scripting
    Start Delay An optional delay can be specified before the frame capturing actually starts
    Stop Mode Without a stop mode the capture will continue forever until it is stopped by the user or script. You can set a stop mode to make the capture stop when it reaches either a certain number of frames, or a duration in seconds

    Output

    alt_text

    Properties
    Property                               Function
    Output Target Select if you want to output to a video file, image sequence, or a named pipe
    Folder
       Folder Select the relative folder to output to
       Subfolder(s) Select a subfolder to output to
    File Name
       Prefix The start of the file name
       Append Timestamp Whether to append an auto-generated timestamp to the file name for videos
       Manual Extension Whether to manually specify an extension to the file name for videos
    Image Sequence
       Format The format of the image sequence (per-platform)
       Start Frame The number to start the frame count with for the file name
       Zero Digits The number to digits to use for the frame count in the file name
    Named Pipe
       Pipe Path The path of the pipe to write to (eg \\.\pipe\test_pipe)

    Visual

    alt_text

    Properties
    Property                               Function
    Down Scale Reduce the resolution of the final output
    Frame Rate The frame rate per second for output file
    Timelapse Scale For real-time captures a scale can be set to allow for timelapse captures
    Frame Update Mode Allows the frame update to be controlled automatically, or manually via scripting. This can be useful when capturing an element that doesn't necessarily update each Unity frame, eg a webcam or custom texture rendering
    Flip Vertically Flip the output image vertically (debug only)
    Video Codecs
       Search By Name Whether or not to search for a codec based on a prioritised list of codec names, or whether to force codec use. On macOS and iOS it is possible to specify the codec directly as they are all generally supported. On Windows it is not always known which codecs are available, so it can be useful to specify a search list.
       Codec Search Order Allows you to list the names of codecs to search for. The first codec in the list that it finds installed on the system will be the one used for encoding. This is useful if you are deploying an app to a system you don’t have codec control over so that it can look for a number of codecs before finally falling back to uncompressed. If you want uncompressed simply add a blank entry to the list
       Force Video Codec Index Only for Windows, allows you to override the search priority list and select a codec directly by index
    Encoder Hints
       Average Bitrate Ideal average bitrate of output video
       Maximum Bitrate Ideal maximum bitrate of output video
       Quality 0..1 range to specify quality preference over other factors (eg encoding speed)
       Keyframe Interval The distance between keyframes
       Support Transparency Whether or not transparency should be supported if possible
       Use Hardware Encoding Whether to prefer to use hardware or software encoding
       Enable Constant Quality Enabled constant quality encoding for H264 and HEVC codecs on Apple Silicon devices. Use the Quality slider to choose the desired level of quality (0 - most compression, least quality, 1 - lossless compression, highest quality)
       Enable Fragmented Writing Enables fragmented writing of QuickTime (mov, mp4, etc.) files. Enabling this feature allows you to open and play a partially written asset should something unrecoverable occur during the writing process. Adjust Movie Fragment Interval to control the fragment size
       Movie Fragment Interval The interval in seconds at which movie fragments should be written, the default is 120 seconds. Making this value too small may result in captures failing
    Motion Blur
       Use Motion Blur Enables an experimental option which is available for offline rendering. It accumulates frames in between the capture frames to create motion blur. This is very useful for high quality rendering but it is very expensive as it is a brute force approach to motion blur
       Samples The number of sub-frames to render which get accumulated into a single output frame
       Cameras

    Audio

    alt_text

    Properties
    Property                               Function
    Audio Source Specified where to capture audio from, this can be set to None, Unity, Microphone, Manual, or Unity Audio Mixer
    Unity Audio Source
       Unity Audio Capture The component to use for capturing audio from Unity. This can be CaptureAudioFromAudioListener, CaptureAudioFromAudioRenderer or CaptureAudioFromWwise
    Microphone Audio Source
       Force Audio Device Index The index of the microphone/recording device to use. Default is zero
    Manual Audio Source
       Sample Rate The sample rate for manual audio encoding
       Channels The number of audio channels for audio audio encoding
    Audio Codec
       Search By Name Whether or not to search for a codec based on a prioritised list of codec names, or whether to force codec use. On macOS and iOS it is possible to specify the codec directly as they are all generally supported. On Windows it is not always known which codecs are available, so it can be useful to specify a search list.
       Codec Search Order Allows you to list the names of codecs to search for. The first codec in the list that it finds installed on the system will be the one used for encoding. This is useful if you are deploying an app to a system you don’t have codec control over so that it can look for a number of codecs before finally falling back to uncompressed. If you want uncompressed simply add a blank entry to the list
       Force Audio Codec Index Only for Windows, allows you to override the search priority list and select a codec directly by index

    Post

    alt_text

    After the video file has been created, an optional post-process can be run to make addition changes to the file.

    Properties
    Property                               Function
    Streamable MP4 Makes the MP4/MOV file suitable for streaming by using 'fast start' encoding method
    Stereo Packing Injects data to specify the stereo format of the video
    Spherical Layout Injects data to specify the spherical format of the video

    Misc

    alt_text

    Properties
    Property                               Function
    Capture Mouse Cursor This option is only available when using the CaptureFromScreen component and allows the mouse cursor to be captured. You have to specify a texture to use for the cursor
    Log Capture Start Stop Log each time the capture is started or stopped. Disable this for less garbage generation
    Allow V-Sync Disable For off-line capturing, allow vsync to be disabled which allows captures to run as fast as possible
    Use Wait For End Of Frame Makes sure capture happens right at the end of the frame - this allows some features such as skinning to be resolved correctly
    Support Texture Recreation
    Persist Across Scene Loads The GameObject will not be destroyed when the scene is unloaded.
    Timeline Controller Optional TimelineController component when capturing Timelines using offline rendering
    VideoPlayer Controller Optional component when capturing VideoPlayers using offline rendering (not currently working)
    Windows Only
       Force GPU Flush Flushing the GPU during each capture results in less latency, but can slow down rendering performance for complex scenes.
       Minimum Disk Space MB Set to -1 to ignore, otherwise it will keep checking the disk space and stop the capture if the free disk space gets below this number of MB

    Help

    Shows the plugin version number and has links to the website, issue tracker, documentation etc

    alt_text

    • The "Start Capture" button will begin capturing. The scene needs to be running.
    • The "Browse Last" button will show a Finder/Explorer window with the last capture selected.
    • The "View Last Capture" button will play back the last captured video using the system media player.
    In This Article