This article pertains to both MovieRecorder 3 and 4. With some small differences between the two applications.
The Activity and Logs window can be your best friend in case there are some issues during record. An article already explained what the different gauges mean, and below are the most common logs that you can see, what they mean and what you can do to fix those issues. These are grouped by type of issues.
Encoding and CPU
Encoding is too slow... duplicating 5 frames
This typically shows a CPU issue where the computer can not handle the different encodings going on. You should monitor CPU usage with the application "Activity Monitor" and see if you still have some margin (you should always have at least 10% free.
These are logs that are shown when there are issues to write to your storage.
Writing is too slow... As a result, the destination will stop.
This is shown when the hard drive we are recording to can not sustain the write speed required. Note that we have a 30 seconds buffer in our applications. In the typical and best situation, none of our buffer should be used. We should be able to write right away to the disk. But we know that some disk can be unresponsive for a while, or other network issue, and thus we have this 30 seconds buffer per source and destination.
And we also have logs that warn that this buffer is filling up:
Write buffer is filling up (10 seconds). Check the storage used.
Write buffer is filling up (20 seconds). Recording will soon stop if storage does not catch up.
When we reach the 30 seconds buffer, we stop writing to the disk, because usually there is no way we can recover form that (there is too much to write back to the disk and it may also impact other read/write operations).
Time to flush cache took 9.43
This message indicates that writing 1 second of video + audio took more than 1 second (which is therefore a problem). Since we have buffers up to 30 seconds, that should be ok, but that means your storage is having issues keeping up. In a lot of cases we have seen that this happened on shared storage that had either:
- Caching is enabled on the storage (we disable it in our writing but some storage may ignore this)
- Block size is not optimal (we recommend 4096)
Video device and input
It seems the selected format (NTSC) doesn't match the input signal (1080i 59.94)
This is logged either when you start the application or when you "enable" a source. It tells you that there is a mismatch between the signal that enters and the format selected. It is important because you may have some misbehaviours in such cases. We are working on making this more obvious, but in the meantime, please always make sure that the incoming signal is identical to the selected format.
Video card buffer full (dropped 1 frames)
When the video device receives a frame from the SDI signal it stores it in a buffer (Depending on the type of device used the size of the buffer can vary, but is usually around 7 frames) until MovieRecorder come and get it. Ideally the buffer is empty or has one frame stored. Once we retrieved the frames we indicate to the SDK that we have it. If we are slower than real time, then the buffer is filling up (this is what you see when the gauge is filling up) until it reaches the max number of frames (again depend on the device) and then the oldest frames are deleted from the buffer without us being able to retrieve them.
This can be caused by various things:
- MovieRecorder can be blocked in a process and too slow to retrieve the frames.
- Another process is slowing down the whole computer, and thus slowing down MovieRecorder.
- Thunderbolt connection is too slow. Something else is blocking the communications (can happen if you daisy chain too many things, or ask too much of the TB connection), or an issue in the cable.
- The Card has an issue and has for example wrongly negotiated the PCI speed.
Video PTS Dropped 10 frame(s) - Check Reference Clock or CPU usage
This log is shown with Blackmagic-Design cards only. PTS stands for "Presentation TimeStamp", and it is an information that we use in order to ensure AV sync of the recorded files. When you see this log, it means that the PTS that we received from the card did not follow one another, so we are not sure to be able to ensure AV sync.
WARNING: If you are using a "None" or "Segmented Destination", it is recommended that you stop and restart the source after such a log is shown, or all your subsequent recordings may be out of sync.
Sometimes the log can mean either:
- that the computer was too busy,
- that there is an issue with the incoming video signal (it was interrupted, disconnected, etc...)
- that there is an issue with the card or the driver which do not send us the correct value.
Display and Preview
Graphics card is too slow to deinterlace: stopping deinterlacer
This could be misleading because it can happen also if the computer is too busy, not only if the card is too slow. What we do is that we measure the time it takes for our deinterlacer to deinterlace a frame (which is done on the GPU not on the CPU). If for a given duration it goes over the real time duration, we disable the deinterlacer. This has no impact on the file recorded. Only the preview in the application will look as interlaced.