Recorder never stops upon rendering (with timecode connected to recorder)

 

Steps:
1) We recorded a track with timecode with the mixed camera compound 3+3
2) Replaced the recorded video clip with a high-res clip recorded in-camera (also timecoded)
3) We setup a sequencer connected to the playback sequence pins
4) We add a video recorder set to EXR
5) We connect the video output to the video recorder
6) We connect the sequencer rendering pin to the video recording pin (so that frames get recorded when rendering)
7) connect master timecode into timecode input of video recorder (to capture the source timecode)


Outcome:
Frames get indefinitely recorded as EXR files as soon as rendering in sequencer gets started. Stopping or finishing the rendering never stops the recording. We are only able to stop recording by force terminating Aximmetry.

Expected outcome:
Recording should stop when rendering is finished automatically



   jim4586

 
Profile Image
EricWest
  -  

I can confirm this behaviour.
When (erratically) setting the recorder to PNG rather than MP4 we experienced the same infinite recording of png files, even when the recorder was stopped.

The only way out was to kill Axy via TaskManager.

 
Profile Image
Eifert@Aximmetry
  -  

Hi Jim,

Make sure that the blue time selector is at the beginning of your timeline:

Otherwise, the timecode will start from the wrong position.
You can check where is currently the master timecode standing, using the System Params module:

If that is not the problem, then we will need more information to figure out what's going wrong.
Also, You could try for example replacing/reverting the camera compound to see if it works if there are no changes in the camera compound.

Warmest regards,




 
Profile Image
Eifert@Aximmetry
  -  

Hi Eric,

Your problem seems to be different.
The recorder module needs to finish writing all the PNG files before it can start recording again.

If that wasn't the case, can you describe in more detail how did this happen?

Warmest regards,

 
Profile Image
jim4586
  -  

This is not about the starting position. This is about the recording running indefinitely. It will never stop. It saves more and more frames (almost in real-time) way beyond the actual sequence to be rendered. Has nothing to do with a changein camera compound.

my guess is that happens with certain file format selections eg we use EXR as output and a R3D high res clip with timecode as input.

 
Profile Image
Eifert@Aximmetry
  -  

Hi,

Does the rendering stop in the sequencer, you can check it by peeking on the Rendering output pin:

Also, was there any "stopped recording" message:

Note, that it might take many minutes for the recorder to finish writing out all the images even after Aximmetry stopped rendering the frames.
EXR and R3D usually have big file sizes, it takes a long time to process and write them.

And, do you have a fixed Frame Rate set:

Note that Aximmetry doesn't play R3D files in real-time, it is designed to use for postproduction.

Warmest regards,

 
Profile Image
jim4586
  -  

The frame count for EXR goes over the length of the sequence and keeps going forever….

will check on these other items.

 
Profile Image
jim4586
  -  

@Eiffert,

Rendering never stops. 

The sequence has maybe 400-500 frames. And here it shows current status in the folder up to frame 3498!
The only way to end it is to kill Aximmetry Composer. It does not even close when pressing the X key.




Here is the render setting. The frame rate is correctly set matching the recorded data and the project.

Here are the connections for this test case.
It's very odd since master timecode is set to track 4 (the tracked camera that we are playing back).


 
Profile Image
Eifert@Aximmetry
  -  

Hi Jim,

Was there a "Stopped recording" message and does the sequencer still going on? Also, is there something longer in the sequencer than your camera 4's video?

Does not even close when pressing the X could be cause Aximmetry is still writing the frames but the recording already stopped.
Also, If I am correct, you don't need Timecode to render image sequences. The image sequence does not save the timecode. (I was wrong)

Warmest regards,

 
Profile Image
jim4586
  -  

 Was there a "Stopped recording" message”

no!

“and does the sequencer still going on?”

no it keeps recording after rendering ended and even click stop rendering on sequencer does not stop the recording, closing the sequencer etc. Neither.

That should not be the case ever.

 Aximmetry is still writing the frames but the recording already stopped.”

This statement isn’t accurate. The recording didn’t stop, we are able to render in almost real-time but it records  frames that should not be rendered as rendering has long stopped and we reached the end of the sequence much earlier. The sequence we are rendering doesn’t have thousands of frames 

 Also, If I am correct, you don't need Timecode to render image sequences.”

correct but the application shouldn’t behave like this ever. This scenario requires terminating Aximmetry to get ever out of it.

“The image sequence does not save the timecode.”

can Timecode be added for EXR sequences and MOV clips? We need timecode to align audio from audio recorder in NLE after. Very important.


 
Profile Image
Eifert@Aximmetry
  -  

Hi Jim,

We still couldn't reproduce this issue.
Does this setup stop the recording?

Also, you could try it while there are no videos exposed to the right side of the flow editor. So there are no video outputs at all.

And I was wrong. The EXR file format can have a timecode. Aximmetry will write the timecode into the metadata of the EXR file if the timecode is connected.

Warmest regards,

 
Profile Image
jim4586
  -  

We had tried the end loop stop before and it made no difference even explicitly pressing stop didn’t work.

what do you mean by no videos on the right side? Disconnect all output pins for the entire compound? So the preview is gone?

which footage format do you use for your tests? Does the clip have timecode?

 
Profile Image
jim4586
  -  

Hi @Eifert,

When disconnecting the video output and preview output, we got these outputs when rendering

The sequence should have maybe 15 or 16 x 24 frames = 360 frames, but it just keeps rendering indefinitely. After few minutes it's at 4000+ frames EXR to disk...

Here is the length of the sequencer to render:


and on disk it just keeps going:


Also one cannot close Aximmetry anymore until one terminates the system process.

 
Profile Image
Eifert@Aximmetry
  -  

Hi Jim,

Yes, I meant disconnecting any video output, the dotted lines going to the right side.

It seems in your error log that there was a recording stopped log and there was some wrong timecode which should be fixed:

It could be that the recording stopped due to the error, but somehow the sequencer still forced out frames to be recorded. I couldn't recreate this behavior.

Warmest regards,

 
Profile Image
jim4586
  -  

This happens with or without this error (the Message has probably to do with a camera not being turned on during this test yesterday). but this happens independent of that…

the recording didn’t stop it keeps going indefinitely…

this is 100% reproducible.

As for your test, I asked earlier what kind of source clip you are using for your test. Does your source clip have timecode?  This relates to the source clip in R3D with timecode.

 
Profile Image
Eifert@Aximmetry
  -  

Hi Jim,

I am actually using your R3D recording that you sent to us through email. (B009_B003_0425O)

You could try to reproduce it after you revert the modification in the camera compound:

Warmest regards,

 
Profile Image
jim4586
  -  

This happens without modifications to mixed cam compound.

what do you use as input timecode for your recorder?



 
Profile Image
jim4586
  -  

@Eifert -

1. Which timecode are you using as input for video recorder in your tests?


In the original scenario, the timecode comes from system params within our TimeCode overlay node. Did you try that?
When playback is on in TRK INPUTS, the master time code is the timecode of the sequence so that is the correct timecode, but then Aximmetry renders and records indefinitely as described in the BUG above.

2. We also tried the following way to get the timecode into the rendered sequence, which also fails but in a different way.

Expected outcome: a sequence of EXRs at 23.976 fps for the 16 seconds sequence with timecode in EXR
Outcome of render:  a single EXR file


Is there maybe a conceptual flaw in the architecture here of how rendering is dealt with?

What information do you utilize to determine what should be rendered? Shouldn't it just go by what's in the sequence? How can the Aximmetry software even possibly decide to render more or less frames than in the rendered sequence. For example here, Aximmetry renders a single frame, which makes no sense. And in the other example, it renders an infinite number of frames.


 
Profile Image
Eifert@Aximmetry
  -  

Hi Jim,

This is not the Original MixedCam compound that can be found in Aximmetry's library:

The original MixedCam compound doesn't have Camera ID Sequence and #,V CAM... input pins.
You have this compound saved somewhere or maybe the original compound in the library has been overwritten by your save.


The sequencer's Time output pin is not in a timecode format. This will create an unusable timecode:

The timecode format is dependent on the frame count (frames per second).


I don't know what is in your Timecode Overlay compound, so I can not try a setup with it. However, I tried various ways to connect the timecode to the recorder or use the System Params module in the video processing...

It would help if you tried to remove the System Params module and connect the timecode directly from the Sequenced Video module to the Video recorder. We found an issue with the System Parms that may affect recordings if there is a video output.

Warmest regards,


 
Profile Image
jim4586
  -  

So where do we get the timecode of the sequence video from its not exposed in your default compound?

During playback, system params timecode should reflect exactly the timecode of the clip right? Sounds like there is an issue with system params then, that’s what we used. When can this be fixed? It’s very irritating that things aren’t working.

 
Profile Image
Eifert@Aximmetry
  -  

Hi Jim,

As a test, you could add the same video again in the following way to get the timecode without using the System Params:

Note, even if this works, it could be that something else causing the problem in the Camera compound other than the System Params.

Warmest regards,

 
Profile Image
jim4586
  -  

Then the computer needs to debayer the same video twice right?

We didn’t really do anything with your camera compound. So no issue there.


 
Profile Image
Eifert@Aximmetry
  -  

Hi Jim,

Since in this case the same video is added twice, there are some optimizations that Aximmetry does, so it won't be exactly double load on your hardware. Also, I am suggesting this to find out the source of the problem. If it works like this, it could suggest the issue is with the Camera compound or with the System Params module, and not with the video file.

Warmest regards,


 
Profile Image
jim4586
  -  

With master timecode this seems no longer to be a problem on 2022.3.0