Delayer

From AVObjects Knowledge Base
(Difference between revisions)
Jump to: navigation, search
Line 19: Line 19:
 
* Waiting mode.
 
* Waiting mode.
 
The delay is implemented by holding the received samples until the required delay is reached (input is closed for the duration of the delay). Additional memory for storing delayed data from samples is not used, only regular buffers from allocators are used.
 
The delay is implemented by holding the received samples until the required delay is reached (input is closed for the duration of the delay). Additional memory for storing delayed data from samples is not used, only regular buffers from allocators are used.
NOTE. This mode can only be used for file sources without stream sync by timer/Reference Clock. Using it for live sources (synchronized by timer/RC) will result in unpredictable frame/sample loss.
+
<br>NOTE. This mode can only be used for file sources without stream sync by timer/Reference Clock. Using it for live sources (synchronized by timer/RC) will result in unpredictable frame/sample loss.
  
 
* Input and output allocators (external or own) can be selected for optimal performance.
 
* Input and output allocators (external or own) can be selected for optimal performance.

Revision as of 11:09, 2 July 2023

This page is a copy of the original page on the AVObjects' web site and can also be viewed here.

DirectShow filter to delay uncompressed video or audio streams in buffering or waiting modes.

Overview

Delayer is DirectShow filter to delay uncompressed video or uncompressed audio (PCM, float) streams. 2 modes of operation are supported: buffering samples in memory and delaying input samples (waiting mode).

Features

  • Buffering mode.

The delay is implemented by storing delayed data from samples in the internal buffers. Additional memory buffers are allocated for this. This mode can be used for any type of source - live and file.

  • Waiting mode.

The delay is implemented by holding the received samples until the required delay is reached (input is closed for the duration of the delay). Additional memory for storing delayed data from samples is not used, only regular buffers from allocators are used.
NOTE. This mode can only be used for file sources without stream sync by timer/Reference Clock. Using it for live sources (synchronized by timer/RC) will result in unpredictable frame/sample loss.

  • Input and output allocators (external or own) can be selected for optimal performance.
  • Delay implementation:
    • Video: the same frame is sent until the required delay is reached
    • Audio: silent samples are sent until the required delay is reached

Specifications and description of user interfaces can be found in the .idl file in the \Idl folder of the filter installation directory.

Types of Streams

  • Uncompressed video (YUY2, UYVY, YVYU, Y422, NV12, YV12, I420, ARGB32, RGB32, RGB24, RGB565, RGB555, v210, r210, etc.).

NOTE. If the color space of the connection is unknown to the filter, then there may be problems with copying frames (invalid alignment).

  • Uncompressed audio (PCM or float).
Personal tools