Crate x42ltc_sys

source ·
Expand description

bindgen commandline

The following commandline was used to create the initial bindings:

bindgen vendor/src/ltc.h -o src/bindings.rs --with-derive-defaults

Structs

Constants

Functions

  • Create a new LTC decoder.
  • Release memory of decoder. @param d decoder handle
  • Remove all LTC frames from the internal queue. @param d decoder handle
  • Count number of LTC frames currently in the queue. @param d decoder handle @return number of queued frames
  • Decoded LTC frames are placed in a queue. This function retrieves a frame from the queue, and stores it at LTCFrameExt*
  • Feed the LTC decoder with new audio samples.
  • Wrapper around \ref ltc_decoder_write that accepts 64-bit floating point audio samples. Note: internally libltc uses 8 bit only.
  • Wrapper around \ref ltc_decoder_write that accepts 32-bit floating point audio samples. Note: internally libltc uses 8 bit only.
  • Wrapper around \ref ltc_decoder_write that accepts signed 16 bit audio samples. Note: internally libltc uses 8 bit only.
  • Wrapper around \ref ltc_decoder_write that accepts unsigned 16 bit audio samples. Note: internally libltc uses 8 bit only.
  • reset the write-pointer of the encoder-buffer @param e encoder handle
  • Copy the accumulated encoded audio to the given sample-buffer and flush the internal buffer.
  • Allocate and initialize LTC audio encoder.
  • Move the encoder to the previous timecode frame. This is useful for encoding reverse LTC. uses \ref ltc_frame_decrement() internally.
  • Generate LTC audio for given byte of the LTC-frame and place it into the internal buffer.
  • Encode a full LTC frame at fixed speed. This is equivalent to calling \ref ltc_encoder_encode_byte 10 times for bytes 0..9 with speed 1.0.
  • Encode a full LTC frame at fixed speed -1. This is equivalent to calling \ref ltc_encoder_encode_byte 10 times for bytes 9..0, rolling in reverse at speed 1.
  • Terminate encoding and add final transition
  • Release memory of the encoder. @param e encoder handle
  • Copy the accumulated encoded audio to the given sample-buffer and flush the internal buffer.
  • Retrieve a pointer to the accumulated encoded audio-data.
  • Query the length of the internal buffer. It is allocated to hold audio-frames for exactly one LTC frame for the given sample-rate and frame-rate. ie. (1 + sample-rate / fps) bytes
  • Retrieve a pointer to the accumulated encoded audio-data.
  • Get encoder signal rise-time / signal filtering
  • Low-level access to the encoder internal LTCFrame data
  • Query the current encoder timecode.
  • Query the volume of the generated LTC signal
  • Move the encoder to the next timecode frame. uses \ref ltc_frame_increment() internally.
  • Change the encoder settings without re-allocating any library internal data structure (realtime safe). changing the fps and or sample-rate implies a buffer flush, and biphase state reset.
  • reset ecoder state. flushes buffer, reset biphase state
  • Configure a custom size for the internal buffer.
  • Configure a custom size for the internal buffer.
  • Set encoder signal rise-time / signal filtering
  • Low-level access to the internal LTCFrame data.
  • Set the encoder LTC-frame to the given SMPTETimecode. The next call to \ref ltc_encoder_encode_byte or \ref ltc_encoder_encode_frame will encode this time to LTC audio-samples.
  • Set the user-bits of the frame to the given data.
  • Set the volume of the generated LTC signal
  • LTCFrame sample alignment offset.
  • Decrement the timecode by one Frame (1/framerate seconds) and set the Frame’s parity bit accordingly (see \ref ltc_frame_set_parity)
  • Get the 32-bits unsigned integer from the user-data bits. The data should be written LSB first in the frame
  • Increment the timecode by one Frame (1/framerate seconds) and set the Frame’s parity bit accordingly (see \ref ltc_frame_set_parity)
  • Parse Binary Coded Group Flags into standard independent format: bit 0 (1) - BGF 0, bit 1 (2) - BGF 1, bit 2 (4) - BGF 2
  • Reset all values of a LTC FRAME to zero, except for the sync-word (0x3FFD) at the end. The sync word is set according to architecture (big/little endian). Also set the Frame’s parity bit accordingly (see \ref ltc_frame_set_parity) @param frame the LTCFrame to reset
  • Set the parity of the LTC frame.
  • Convert binary LTCFrame into SMPTETimecode struct
  • Translate SMPTETimecode struct into its binary LTC representation and set the LTC frame’s parity bit accordingly (see \ref ltc_frame_set_parity)

Type Aliases

  • encoder and LTCframe <> timecode operation flags
  • the standard defines the assignment of the binary-group-flag bits basically only 25fps is different, but other standards defined in the SMPTE spec have been included for completeness.
  • sample-count offset - 64bit wide
  • default audio sample type: 8bit unsigned (mono)