Search Unity

  1. Unity 2019.2 is now released.
    Dismiss Notice

Video Unity AOV Recorder update

Discussion in 'Audio & Video' started by marief_unity, Jul 26, 2019.

  1. marief_unity

    marief_unity

    Unity Technologies

    Joined:
    Oct 9, 2018
    Posts:
    111
    Hey there !

    AOVRecorder 0.1.0-preview-3 has been officially released ! This is a Recorder plugin that relies on High Definition Render pipeline.

    AOVRecorderWindow.png

    AOVs (Arbitrary output variables) - sometimes called render passes or render layers - are data that are being calculated to produce the beauty pass (=the final render).
    AOVs examples: depth, normals, albedo...
    Being able to export them separately allows more options at compositing step.

    aovs.png

    Please note, this is a first preview version (beta). There are known issues and limited settings for now :
    • First frame (0) sometimes is black
    • Active Camera target is not supported by HDRP
    • Depth data is incorrect if the scene distance is large with HDRP version < 6.8
    • PNG and JPEG files are written as linear file instead of sRGB.
    • Simultaneous recording of the beauty pass and other render passes if TAA is enabled will generate artifacts
    • Recorder issue: Timeline recording of the beauty pass will record black with HDRP

    Also : it is highly recommended to use this plugin with the latest version of HDRP possible.

    See documentation.

    To install it, open Package Manager window, make sure you enable "show preview packages" advanced option and install com.unity.aovrecorder.

    Please let us know how testing goes. Any feedback is more than welcome :)

    Thanks !
     
    Selzier likes this.
  2. Mad_Banny

    Mad_Banny

    Joined:
    Jun 25, 2018
    Posts:
    4
    Hi!
    Here is my feedback:

    Unity 2019.2, HDRP 6.9.1

    Code (CSharp):
    1. NullReferenceException: Object reference not set to an instance of an object
    2. UnityEditor.Recorder.Input.AOVCameraAOVRequestAPIInput.EnableAOVCapture (UnityEditor.Recorder.RecordingSession session, UnityEngine.Camera cam) (at Library/PackageCache/com.unity.aovrecorder@0.1.0-preview.3/Editor/Sources/Recorders/AOVRecorder/AOVCameraInput.cs:43)
    3. UnityEditor.Recorder.Input.AOVCameraAOVRequestAPIInput.NewFrameStarting (UnityEditor.Recorder.RecordingSession session) (at Library/PackageCache/com.unity.aovrecorder@0.1.0-preview.3/Editor/Sources/Recorders/AOVRecorder/AOVCameraInput.cs:138)
    4. UnityEditor.Recorder.Recorder.SignalInputsOfStage (UnityEditor.Recorder.ERecordingSessionStage stage, UnityEditor.Recorder.RecordingSession session) (at Library/PackageCache/com.unity.recorder@2.0.2-preview.3/Editor/Sources/Recorder.cs:160)
    5. UnityEditor.Recorder.RecordingSession.PrepareNewFrame () (at Library/PackageCache/com.unity.recorder@2.0.2-preview.3/Editor/Sources/RecordingSession.cs:184)
    6. UnityEditor.Recorder.RecorderComponent:Update()
    7.  
    Code (CSharp):
    1. NullReferenceException: Object reference not set to an instance of an object
    2. UnityEditor.Recorder.Input.AOVCameraAOVRequestAPIInput.DisableAOVCapture (UnityEditor.Recorder.RecordingSession session) (at Library/PackageCache/com.unity.aovrecorder@0.1.0-preview.3/Editor/Sources/Recorders/AOVRecorder/AOVCameraInput.cs:127)
    3. UnityEditor.Recorder.Input.AOVCameraAOVRequestAPIInput.FrameDone (UnityEditor.Recorder.RecordingSession session) (at Library/PackageCache/com.unity.aovrecorder@0.1.0-preview.3/Editor/Sources/Recorders/AOVRecorder/AOVCameraInput.cs:150)
    4. UnityEditor.Recorder.Recorder.SignalInputsOfStage (UnityEditor.Recorder.ERecordingSessionStage stage, UnityEditor.Recorder.RecordingSession session) (at Library/PackageCache/com.unity.recorder@2.0.2-preview.3/Editor/Sources/Recorder.cs:168)
    5. UnityEditor.Recorder.RecordingSession.RecordFrame () (at Library/PackageCache/com.unity.recorder@2.0.2-preview.3/Editor/Sources/RecordingSession.cs:134)
    6.  
     

    Attached Files:

  3. jean_unity_film_tv

    jean_unity_film_tv

    Unity Technologies

    Joined:
    Jan 31, 2018
    Posts:
    4
    Hi Mad_Banny,

    Sorry to see that you are having problems.
    Here are a few questions for trying to isolate the issue.
    Are you using the AOVRecorder with an HDRP scene? The AOV Recorder will only record AOVs from an HDRP scene.
    How do you start the recording? With the recorder window or with a record clip on the timeline?
    What are your recording options?
    What is your camera input? Are you trying to record the main camera or a tagged camera?

    Would it be possible to zip and upload you project for us to investigate and try to reproduce the issue here?
    Thanks,

    Jean
     
  4. Mad_Banny

    Mad_Banny

    Joined:
    Jun 25, 2018
    Posts:
    4
    1. Yes, I use it with HDRP scene.
    2. I tried both window and timeline.
    3. I tried all recording options.
    I guess this is due to RP asset settings
     
  5. Mad_Banny

    Mad_Banny

    Joined:
    Jun 25, 2018
    Posts:
    4
    Tried it in the default scene and it worked
     
  6. jit78

    jit78

    Joined:
    Jun 3, 2019
    Posts:
    2
  7. jean_unity_film_tv

    jean_unity_film_tv

    Unity Technologies

    Joined:
    Jan 31, 2018
    Posts:
    4
    Glad to see that it worked for you with the default scene, I will try it here with your render pipeline asset to see if I can reproduce your issue.
     
  8. jean_unity_film_tv

    jean_unity_film_tv

    Unity Technologies

    Joined:
    Jan 31, 2018
    Posts:
    4
    Hi Mad_Banny,
    To give you an update, I wasn't able to reproduce your issues with the AOV Recorder using the HQ_Deffered_HDRenderPipelineAsset that you provided. If you can provide a small project that would reproduce the problems or a list of steps that would be very useful.

    Thanks,

    Jean
     
  9. mahenkumar

    mahenkumar

    Joined:
    Oct 8, 2014
    Posts:
    10
    I can't find this option in my Unity 2019.2. I am using all the required versions.
    Is it only for pro Unity users ?
     

    Attached Files:

  10. marief_unity

    marief_unity

    Unity Technologies

    Joined:
    Oct 9, 2018
    Posts:
    111
    Hey @mahenkumar !

    Did you install the package via package manager ?
    AOVRecorder_packman.png

    If so, do you have errors in the console ?

    Thanks !

    ps: AOV Recorder is available for everyone.
     
  11. xCyborg

    xCyborg

    Joined:
    Oct 4, 2010
    Posts:
    508
    I do hope you intend to quickly integrate that with Unity Recorder, also to extend support of AOVs to LWRP and even standard pipeline.
    Please tell me you don't intend to keep it separate.
     
  12. marief_unity

    marief_unity

    Unity Technologies

    Joined:
    Oct 9, 2018
    Posts:
    111
    Hey @xCyborg

    AOVRecorder is a plugin of Recorder, so it is actually part of Recorder. We choose to make it a separate package because it highly depends on High Definition RP (it's using HDRP new AOV Request API) and we didn't want this dependency to burden Recorder, there are a lot of users that have no interest in AOVs.

    For now, there is no AOV API in LWRP, but when there will be, the plan is to indeed allow AOVRecorder to use it.

    There is no plan to make AOV Recorder work with Legacy Render Pipeline.
     
  13. xCyborg

    xCyborg

    Joined:
    Oct 4, 2010
    Posts:
    508
    @marief_unity Well, as far as I'm concerned, it's another fragmented duplicate package.