MX Foundation 4
Basic Acquisition

The way to set a basic acquisition receive application is as follows:

  • A receive channel must be obtained using the mxfModuleChannelGet() function or with the mxfModuleChannelAllGet() function by specifying the MXF_SCLASS_RXACQ_SRV subclass.
  • The acquisition buffer must be allocated using the mxfRxAcqBufferAlloc() function.
  • The acquisition mode can be set using mxfRxAcqModeSet() function.

    Two modes of acquisition are defined:

    Condition Description
    MXF_RXACQ_MODE_LINEAR In this mode the acquisition stops when the buffer is full.
    MXF_RXACQ_MODE_CIRCULAR In this mode the acquisition buffer is circular and never stops receiving.
    Whenever the acquisition queue becomes full, the acquisition process will discard newest received record.
  • The acquisition must be started using the mxfRxAcqStart() function.
  • A read loop can be implemented using the mxfASYNCEHRxAcqRead() function. The mxfASYNCEHNextDataRecordPtrGet() function needs to be used to navigate in the receive buffer.

The MXF_ASYNCEH_DATAREC structure must be used for reading ASYNC messages with acquisition service.

Example

The example below shows how to implement an ASYNC basic receive acquisition application.

async.c

Updated 10/23/2023