AVBlocks for C++  1.13
Audio and Video Software Development Kit
AVBlocks.h File Reference

Classes

class  Parameter
 Parameter is the base class for named parameters passed to various classes in AVBlocks. More...
 
class  ByteArrayParameter
 The parameter represents a byte array (buffer). More...
 
class  MediaBufferParameter
 The parameter represents a MediaBuffer object. More...
 
class  StringParameter
 The parameter represents an untyped value which is stored in a char_t string. More...
 
class  IntParameter
 The parameter represents a 64-bit integer. More...
 
class  FloatParameter
 The parameter represents a 64-bit floating point number (double precision). More...
 
class  ParameterList
 A collection of Parameter objects. More...
 
class  MediaInfo
 Analyzes a file or a stream and provides information about its type and properties. More...
 
class  MediaPin
 MediaPin represents an elementary media stream. More...
 
class  MediaPinList
 MediaPinList represents the elementary pins within a MediaSocket object. More...
 
class  MediaSocket
 An input or output point of the Transcoder. More...
 
class  MediaSocketList
 MediaSocketList represents the inputs or outputs of a Transcoder. More...
 
class  TranscoderCallback
 The TranscoderCallback provides a way to receive notifications from the Transcoder and also to control its operation while it is running (Transcoder::run). More...
 
class  Transcoder
 Provides functionality for audio and video encoding, decoding and transforming. More...
 

Namespaces

 primo
 Top namespace for all libraries developed by Primo Software Corp.
 
 primo::error
 Shared namespace for error definitions.
 
 primo::error::ErrorFacility
 Common error facilities.
 
 primo::avblocks
 AVBlocks Application Programming Interface.
 
 primo::avblocks::ErrorFacility
 AVBlocks error facilities.
 
 primo::avblocks::AVBlocksError
 Defines API usage errors.
 
 primo::avblocks::TranscoderError
 Defines Transcoder specific errors.
 
 primo::avblocks::MediaInfoError
 Deprecated.
 
 primo::avblocks::DemuxerError
 Deprecated.
 
 primo::avblocks::MuxerError
 Deprecated.
 
 primo::avblocks::CodecError
 Deprecated.
 
 primo::avblocks::StreamError
 Deprecated.
 
 primo::avblocks::PinConnection
 These constants are used as special values of MediaPin.ID.
 
 primo::avblocks::Use
 Specifies whether particular feature should be used.
 
 primo::avblocks::Param
 Defines parameters that can be passed to the transcoder and to the components that are used in the transcoding process.
 
 primo::avblocks::Param::Video
 Parameters specific to video filter processing.
 
 primo::avblocks::Param::Video::FrameRateConverter
 Parameters specific to video frame rate processing.
 
 primo::avblocks::Param::Video::Deinterlacing
 Parameters specific to video deinterlacing.
 
 primo::avblocks::Param::Video::Resize
 Parameters specific to video resizing.
 
 primo::avblocks::Param::Video::Crop
 Parameters specific to video cropping.
 
 primo::avblocks::Param::Video::Pad
 Parameters specific to video padding.
 
 primo::avblocks::Param::Decoder
 Parameters specific to decoders.
 
 primo::avblocks::Param::Decoder::Video
 Parameters specific to video decoders.
 
 primo::avblocks::Param::Decoder::Video::H264
 Parameters specific to H.264 decoders.
 
 primo::avblocks::Param::Decoder::Video::H264::VUI
 Parameters the are part of the Video Usability Information in the H.264 stream.
 
 primo::avblocks::Param::Encoder
 Parameters specific to encoders.
 
 primo::avblocks::Param::Encoder::Audio
 Parameters specific to audio encoders.
 
 primo::avblocks::Param::Encoder::Audio::MPEG1
 Parameters specific to MPEG1 audio encoders.
 
 primo::avblocks::Param::Encoder::Audio::Vorbis
 Parameters specific to Vorbis audio encoders.
 
 primo::avblocks::Param::Encoder::Audio::WMA
 Parameters specific to WMA audio encoders.
 
 primo::avblocks::Param::Encoder::Video
 Parameters specific to video encoders.
 
 primo::avblocks::Param::Encoder::Video::MPEG2
 Parameters specific to MPEG-1 and MPEG-2 video encoders.
 
 primo::avblocks::Param::Encoder::Video::H264
 Parameters specific to H.264 encoders.
 
 primo::avblocks::Param::Muxer
 Parameters specific to muxers.
 
 primo::avblocks::Param::Muxer::MP4
 Parameters specific to MP4 muxers.
 
 primo::avblocks::ParamType
 The ParamType represents the type of the data stored in a Parameter.
 
 primo::avblocks::Preset
 Defines output presets supported by AVBlocks.
 
 primo::avblocks::Preset::Audio
 Describes output audio presets structured by codec and device type.
 
 primo::avblocks::Preset::Audio::Generic
 Generic audio presets (unrelated to specific devices)
 
 primo::avblocks::Preset::Audio::Generic::M4A
 M4A presets (AAC audio in MP4 container)
 
 primo::avblocks::Preset::Audio::Generic::MP3
 MP3 presets (MPEG-1 Layer 3)
 
 primo::avblocks::Preset::Audio::Generic::WMA
 Presets for Windows Media Audio.
 
 primo::avblocks::Preset::Audio::Generic::WMA::Standard
 Presets for the WMA standard codec.
 
 primo::avblocks::Preset::Audio::Generic::WMA::Professional
 Presets for the WMA Pro codec.
 
 primo::avblocks::Preset::Audio::Generic::OggVorbis
 Presets for Vorbis audio in Ogg container.
 
 primo::avblocks::Preset::Audio::AudioCD
 Presets for audio compatible with AudioCD (LPCM, 44100 Hz, stereo, 16-bit)
 
 primo::avblocks::Preset::Audio::DVD
 Presets for audio compatible with DVD-Video.
 
 primo::avblocks::Preset::Video
 Describes output video presets structured by codec and device type.
 
 primo::avblocks::Preset::Video::Generic
 Generic video presets (unrelated to specific devices)
 
 primo::avblocks::Preset::Video::Generic::MP4
 MP4 presets (audio and video streams in MP4 container)
 
 primo::avblocks::Preset::Video::Generic::WebM
 WebM presets.
 
 primo::avblocks::Preset::Video::DVD
 Presets for DVD-Video.
 
 primo::avblocks::Preset::Video::VCD
 Presets for Video CD.
 
 primo::avblocks::Preset::Video::iPad
 Presets for iPad devices.
 
 primo::avblocks::Preset::Video::AppleTV
 Presets for AppleTV devices.
 
 primo::avblocks::Preset::Video::iPhone
 Presets for iPhone devices.
 
 primo::avblocks::Preset::Video::iPod
 Preset for iPod devices.
 
 primo::avblocks::Preset::Video::AppleLiveStreaming
 Presets for Apple Live Streaming.
 
 primo::avblocks::Preset::Video::AndroidPhone
 Presets for Android phones.
 
 primo::avblocks::Preset::Video::AndroidTablet
 Presets for Android tablets.
 
 primo::avblocks::Preset::Video::BDAV
 Presets for Blu-ray Disc Audio-Visual MPEG-2 Transport Stream.
 
 primo::avblocks::Preset::Video::Fast
 Presets for fastest possible encoding.
 
 primo::avblocks::Preset::Video::Fast::MP4
 Fast MP4 presets (audio and video streams in MP4 container)
 
 primo::avblocks::TranscoderStatus
 Defines the status of a transcoder operation.
 
 primo::avblocks::Library
 Initializes AVBlocks and manages license information.
 

Enumerations

enum  Enum {
  UnlicensedFeature = 9,
  Failed = AVBLOCKS_UNUSED_INT_RANGE,
  NullPointer,
  InvalidParams,
  Alloc,
  NotImplemented,
  InvalidOperation,
  UnsupportedFormat,
  MissingDependency
}
 AVBlocksError::Enum. More...
 
enum  Enum {
  NoChain = 1,
  UndefinedSocketType = 2,
  UnsupportedInterlacedConversion = 3,
  NoCodec = 4,
  UnsupportedVideoConversion = 5,
  BufferFull = 6,
  InputNeeded = 7
}
 TranscoderError::Enum. More...
 
enum  Enum {
  Disabled = -1,
  Auto = 0
}
 PinConnection::Enum. More...
 
enum  Enum {
  Off = 0,
  On = 1,
  Auto = 2
}
 Use::Enum. More...
 
enum  Enum {
  Float = 1,
  ByteArray = 2,
  MediaBuffer = 3,
  VideoStreamInfo = 4,
  String = 5,
  Int = 6
}
 ParamType::Enum. More...
 
enum  Enum { Completed = 0 }
 TranscoderStatus::Enum. More...
 

Functions

enum PRIMO_DEPRECATED ("primo::avblocks::ErrorFacility::Enum is deprecated. Please use constants from primo::error::ErrorFacility instead.") Enum
 ErrorFacility::Enum. More...
 
enum PRIMO_DEPRECATED ("primo::avblocks::MediaInfoError::Enum is deprecated. It is not used anymore.") Enum
 Deprecated. More...
 
enum PRIMO_DEPRECATED ("primo::avblocks::DemuxerError::Enum is deprecated. It is not used anymore.") Enum
 Deprecated. More...
 
enum PRIMO_DEPRECATED ("primo::avblocks::MuxerError::Enum is deprecated. It is not used anymore.") Enum
 Deprecated. More...
 
enum PRIMO_DEPRECATED ("primo::avblocks::CodecError::Enum is deprecated. Please use primo::codecs::CodecError::Enum.") Enum
 Codec Error. More...
 
enum PRIMO_DEPRECATED ("primo::avblocks::StreamError::Enum is deprecated. Please use primo::codecs::CodecError::Enum instead.") Enum
 Stream Error. More...
 
AVBLOCKS_API bool_t AVBLOCKS_CALL avb_initialize ()
 Initializes the AVBlocks library. More...
 
AVBLOCKS_API void AVBLOCKS_CALL avb_shutdown ()
 Closes the AVBlocks library and frees the resources that are used (if any). More...
 
AVBLOCKS_API int32_t AVBLOCKS_CALL avb_get_major_version ()
 Gets library major version. More...
 
AVBLOCKS_API int32_t AVBLOCKS_CALL avb_get_minor_version ()
 Gets library minor version. More...
 
AVBLOCKS_API int32_t AVBLOCKS_CALL avb_get_patch_version ()
 Gets library patch version. More...
 
AVBLOCKS_API const char
*AVBLOCKS_CALL 
avb_get_description ()
 Gets library build description. More...
 
AVBLOCKS_API int32_t AVBLOCKS_CALL avb_set_license (const char *license)
 Sets a license string. More...
 
AVBLOCKS_API
primo::license::LicenseInfo
*AVBLOCKS_CALL 
avb_create_license_info ()
 Creates a new LicenseInfo instance. More...
 
AVBLOCKS_API
primo::avblocks::Transcoder
*AVBLOCKS_CALL 
avb_create_transcoder ()
 Creates a Transcoder. More...
 
AVBLOCKS_API
primo::codecs::AudioStreamInfo
*AVBLOCKS_CALL 
avb_create_audio_stream_info ()
 Creates an empty audio stream info. More...
 
AVBLOCKS_API
primo::codecs::VideoStreamInfo
*AVBLOCKS_CALL 
avb_create_video_stream_info ()
 Creates an empty video stream info. More...
 
AVBLOCKS_API
primo::codecs::MediaSample
*AVBLOCKS_CALL 
avb_create_media_sample ()
 Creates an empty media sample. More...
 
AVBLOCKS_API
primo::codecs::MediaBuffer
*AVBLOCKS_CALL 
avb_create_media_buffer (int32_t capacity)
 Creates a media buffer with the specified capacity. More...
 
AVBLOCKS_API
primo::avblocks::MediaPin
*AVBLOCKS_CALL 
avb_create_media_pin ()
 Creates a media pin. More...
 
AVBLOCKS_API
primo::avblocks::MediaSocket
*AVBLOCKS_CALL 
avb_create_media_socket ()
 Creates a media socket. More...
 
AVBLOCKS_API
primo::avblocks::MediaSocket
*AVBLOCKS_CALL 
avb_create_media_socket_from_media_info (primo::avblocks::MediaInfo *mediaInfo)
 Creates a media socket from a MediaInfo object. More...
 
AVBLOCKS_API
primo::avblocks::MediaSocket
*AVBLOCKS_CALL 
avb_create_media_socket_from_preset (const char *preset)
 Creates a media socket from an AVBlocks Preset. More...
 
AVBLOCKS_API
primo::avblocks::MediaInfo
*AVBLOCKS_CALL 
avb_create_media_info ()
 Creates a media information object. More...
 
AVBLOCKS_API
primo::avblocks::ByteArrayParameter
*AVBLOCKS_CALL 
avb_create_byte_array_parameter ()
 Creates a parameter that represents a byte array. More...
 
AVBLOCKS_API
primo::avblocks::MediaBufferParameter
*AVBLOCKS_CALL 
avb_create_media_buffer_parameter ()
 Creates a parameter that holds a MediaBuffer object. More...
 
AVBLOCKS_API
primo::avblocks::StringParameter
*AVBLOCKS_CALL 
avb_create_string_parameter ()
 Creates a parameter that holds a char_t* string. More...
 
AVBLOCKS_API
primo::avblocks::IntParameter
*AVBLOCKS_CALL 
avb_create_int_parameter ()
 Creates an integer parameter. More...
 
AVBLOCKS_API
primo::avblocks::FloatParameter
*AVBLOCKS_CALL 
avb_create_float_parameter ()
 Creates a float parameter. More...
 
AVBLOCKS_API
primo::avblocks::ParameterList
*AVBLOCKS_CALL 
avb_create_parameter_list ()
 Creates an empty collection of filter parameters. More...
 
AVBLOCKS_API
primo::codecs::Metadata
*AVBLOCKS_CALL 
avb_create_metadata ()
 Creates an empty Metadata object. More...
 
AVBLOCKS_API
primo::codecs::MetaAttribute
*AVBLOCKS_CALL 
avb_create_meta_attribute ()
 Creates an empty MetaAttribute object. More...
 
AVBLOCKS_API
primo::codecs::MetaPicture
*AVBLOCKS_CALL 
avb_create_meta_picture ()
 Creates an empty MetaPicture object. More...
 
bool_t initialize ()
 see avb_initialize
 
void shutdown ()
 see avb_shutdown
 
const char * description ()
 see avb_get_description
 
int32_t minorVersion ()
 see avb_get_minor_version
 
int32_t patchVersion ()
 see avb_get_patch_version
 
int32_t majorVersion ()
 see avb_get_major_version
 
int32_t setLicense (const char *license)
 see avb_set_license
 
primo::license::LicenseInfocreateLicenseInfo ()
 see avb_create_license_info
 
Transcoder * createTranscoder ()
 see avb_create_transcoder
 
primo::codecs::AudioStreamInfocreateAudioStreamInfo ()
 see avb_create_audio_stream_info
 
primo::codecs::VideoStreamInfocreateVideoStreamInfo ()
 see avb_create_video_stream_info
 
primo::codecs::MediaSamplecreateMediaSample ()
 see avb_create_media_sample
 
primo::codecs::MediaBuffercreateMediaBuffer (int32_t capacity)
 see avb_create_media_buffer
 
primo::avblocks::MediaPincreateMediaPin ()
 see avb_create_media_pin
 
primo::avblocks::MediaSocketcreateMediaSocket ()
 see avb_create_media_socket
 
primo::avblocks::MediaSocketcreateMediaSocket (const char *preset)
 see avb_create_media_socket_from_preset
 
primo::avblocks::MediaSocketcreateMediaSocket (MediaInfo *mediaInfo)
 see avb_create_media_socket_from_media_info
 
primo::avblocks::MediaInfocreateMediaInfo ()
 see avb_create_media_info
 
primo::avblocks::ByteArrayParametercreateByteArrayParameter ()
 see avb_create_byte_array_parameter
 
primo::avblocks::MediaBufferParametercreateMediaBufferParameter ()
 see avb_create_media_buffer_parameter
 
primo::avblocks::StringParametercreateStringParameter ()
 see avb_create_string_parameter
 
primo::avblocks::IntParametercreateIntParameter ()
 see avb_create_int_parameter
 
primo::avblocks::FloatParametercreateFloatParameter ()
 see avb_create_float_parameter
 
primo::avblocks::ParameterListcreateParameterList ()
 see avb_create_parameter_list
 
primo::codecs::MetadatacreateMetadata ()
 see avb_create_metadata
 
primo::codecs::MetaAttributecreateMetaAttribute ()
 see avb_create_meta_attribute
 
primo::codecs::MetaPicturecreateMetaPicture ()
 see avb_create_meta_picture
 

Variables

const int32_t AVBlocks = 5
 AVBlocks Error. More...
 
const int32_t Transcoder = 6
 Transcoder Error. More...
 
static const char ReEncode [] = "REENCODE_STREAM"
 Specifies whether a stream will be reencoded. More...
 
static const char Use [] = "VIDEO_FRAME_RATE_FILTER"
 Video: Specifies whether a video frame rate filter is inserted in the processing chain. More...
 
static const char Method [] = "DEINTERLACING_METHOD"
 Video: Specifies the deinterlacing method used by the deinterlacing filter. More...
 
static const char Threshold [] = "DEINTERLACING_THRESHOLD"
 Video: Specifies the deinterlacing threshold that is used by some deinterlacing methods. More...
 
static const char Use [] = "DEINTERLACING_FILTER"
 
static const char InterpolationMethod [] = "RESIZE_INTERPOLATION_METHOD"
 Video: Specifies the interpolation method that is used for resizing video frames. More...
 
static const char Left [] = "CROP_LEFT"
 Video: Specifies the area to be cropped inside the left edge of the input frame. More...
 
static const char Right [] = "CROP_RIGHT"
 Video: Specifies the area to be cropped inside the right edge of the input frame. More...
 
static const char Top [] = "CROP_TOP"
 Video: Specifies the area to be cropped inside the top edge of the input frame. More...
 
static const char Bottom [] = "CROP_BOTTOM"
 Video: Specifies the area to be cropped inside the bottom edge of the input frame. More...
 
static const char Left [] = "PAD_LEFT"
 Video: Specifies the area to be padded inside the left edge of the output frame. More...
 
static const char Right [] = "PAD_RIGHT"
 Video: Specifies the area to be padded inside the right edge of the output frame. More...
 
static const char Top [] = "PAD_TOP"
 Video: Specifies the area to be padded inside the top edge of the output frame. More...
 
static const char Bottom [] = "PAD_BOTTOM"
 Video: Specifies the area to be padded inside the bottom edge of the output frame. More...
 
static const char Color [] = "PAD_COLOR"
 Video: Specifies the padding color if any padding is set. More...
 
static const char Config [] = "DECODER_CONFIG"
 Decoder configuration data. More...
 
static const char MaxDecFrameBuffering [] = "DECODER_H264_MAX_DEC_FRAME_BUFFERING"
 H264 Video: Specifies the requested size of the Decoded Picture Buffer. More...
 
static const char ConcealDefects [] = "DECODER_VIDEO_CONCEAL_DEFECTS"
 Video: Specifies whether to conceal bitstream defects and errors. More...
 
static const char ForceV1 [] = "ENCODER_MPEGAUDIO_FORCE_V1"
 MPEG Audio: Forces MPEG audio to version 1. More...
 
static const char Quality [] = "ENCODER_VORBIS_QUALITY"
 Vorbis Audio: Specifies the quality of the compressed audio. More...
 
static const char Quality [] = "ENCODER_WMA_QUALITY"
 Windows Media Audio: Specifies the quality of the compressed audio. More...
 
static const char GOPSize [] = "ENCODER_MPEG2VIDEO_GOPSIZE"
 MPEG-1 and MPEG-2 Video: Size of the Group of Pictures (GOP, N). More...
 
static const char IPDistance [] = "ENCODER_MPEG2VIDEO_IPDISTANCE"
 MPEG-1 and MPEG-2 Video: Distance between successive reference pictures (GOP, M). More...
 
static const char VBVBufferSize [] = "ENCODER_MPEG2VIDEO_VBV_BUFFER_SIZE"
 MPEG-1 and MPEG-2 Video: Size of the internal VBV buffer in units of 16384 bits. More...
 
static const char Profile [] = "ENCODER_H264_PROFILE_IDC"
 H.264 Video: Encoding profile. More...
 
static const char EntropyCodingMode [] = "ENCODER_H264_ENTROPY_CODING_MODE"
 H.264 Video: Entropy coding mode. More...
 
static const char NumBFrames [] = "ENCODER_H264_NUM_B_FRAMES"
 H.264 Video: Number of B-frames between consequent I-frames or P-frames. More...
 
static const char TreatBFramesAsReference [] = "ENCODER_H264_TREAT_B_FRAMES_AS_REFERENCE"
 H.264 Video: Allows B-pictures to be used as reference pictures. More...
 
static const char NumRefFrames [] = "ENCODER_H264_NUM_REF_FRAMES"
 H.264 Video: Maximum number of reference pictures. More...
 
static const char NumSlices [] = "ENCODER_H264_NUM_SLICES"
 H.264 Video: Number of slices per frame/field. More...
 
static const char Level [] = "ENCODER_H264_LEVEL_IDC"
 H.264 Video: Computation level. More...
 
static const char DeblockingFilter [] = "ENCODER_H264_DEBLOCKING_FILTER_IDC"
 H.264 Video: De-blocking filter mode. More...
 
static const char DeblockingFilterAlpha [] = "ENCODER_H264_DEBLOCKING_FILTER_ALPHA"
 H.264 Video: De-blocking filter strength. More...
 
static const char DeblockingFilterBeta [] = "ENCODER_H264_DEBLOCKING_FILTER_BETA"
 H.264 Video: De-blocking filter threshold. More...
 
static const char Transform8x8 [] = "ENCODER_H264_TRANSFORM8X8"
 H.264 Video: Transform 8x8 mode. More...
 
static const char DirectPredMode [] = "ENCODER_H264_DIRECT_PRED_MODE"
 H.264 Video: Direct prediction mode. More...
 
static const char QualitySpeed [] = "ENCODER_H264_QUALITY_SPEED"
 H.264 Video: Quality/Speed trade off. More...
 
static const char MERangeSearchX [] = "ENCODER_H264_ME_RANGE_SEARCH_X"
 H.264 Video: Specifies how far motion estimation should be done in a horizontal direction. More...
 
static const char MERangeSearchY [] = "ENCODER_H264_ME_RANGE_SEARCH_Y"
 H.264 Video: Specifies how far motion estimation should be done in a vertical direction. More...
 
static const char MESplitMode [] = "ENCODER_H264_ME_SPLIT_MODE"
 H.264 Video: Specifies the block size for which motion estimation should be done. More...
 
static const char MEMethod [] = "ENCODER_H264_ME_METHOD"
 H.264 Video: Motion estimation method. More...
 
static const char PictureCodingType [] = "ENCODER_H264_PIC_CODING_TYPE"
 H.264 Video: Picture coding type. More...
 
static const char RateControlMethod [] = "ENCODER_H264_RATE_CONTROL_METHOD"
 H.264 Video: Rate control method. More...
 
static const char RateControlQuantI [] = "ENCODER_H264_RATE_CONTROL_QUANT_I"
 H.264 Video: Rate control quantizer for I slices. More...
 
static const char RateControlQuantP [] = "ENCODER_H264_RATE_CONTROL_QUANT_P"
 H.264 Video: Rate control quantizer for P slices. More...
 
static const char RateControlQuantB [] = "ENCODER_H264_RATE_CONTROL_QUANT_B"
 H.264 Video: Rate control quantizer for B slices. More...
 
static const char KeyFrameInterval [] = "ENCODER_H264_KEY_FRAME_INTERVAL"
 H.264 Video: Distance between two sequential I-pictures. More...
 
static const char KeyFrameIDRInterval [] = "ENCODER_H264_KEY_FRAME_IDR_INTERVAL"
 H.264 Video: Distance between two sequential IDR-pictures in terms of I pictures. More...
 
static const char AccessUnitDelimiters [] = "ENCODER_H264_ACCESS_UNIT_DELIMITERS"
 H.264 Video: Use access unit delimiters. More...
 
static const char FixedFramerate [] = "ENCODER_H264_FIXED_FRAMERATE"
 H.264 Video: Write timing info with a fixed frame rate in the bitstream. More...
 
static const char FastStart [] = "MUXER_MP4_FAST_START"
 Run a second pass moving the moov atom before the mdat atom. More...
 
static const char FastStartUseTempFile [] = "MUXER_MP4_FAST_START_USE_TEMP_FILE"
 Specifies whether a temp file will to be used during the second pass. More...
 
static const char FastStartTempFileDirectory [] = "MUXER_MP4_FAST_START_TEMP_FILE_DIRECTORY"
 Specifies the temp file directory. More...
 
static const char DVD_PAL_4x3_MP2 [] = "dvd.pal.4x3.mp2"
 Video: MPEG-2, 25 fps, 720 x 576, aspect 4:3
Audio: MPEG-1 Layer 2, 48000 Hz, stereo.
 
static const char DVD_PAL_16x9_MP2 [] = "dvd.pal.16x9.mp2"
 Video: MPEG-2, 25 fps, 720 x 576, aspect 16:9
Audio: MPEG-1 Layer 2, 48000 Hz, stereo.
 
static const char DVD_NTSC_4x3_PCM [] = "dvd.ntsc.4x3.pcm"
 Video: MPEG-2, 29.97 fps, 720 x 480, aspect 4:3
Audio: PCM, 16-bit, 48000 Hz, stereo.
 
static const char DVD_NTSC_4x3_MP2 [] = "dvd.ntsc.4x3.mp2"
 Video: MPEG-2, 29.97 fps, 720 x 480, aspect 4:3
Audio: MPEG-1 Layer 2, 48000 Hz, stereo.
 
static const char DVD_NTSC_16x9_PCM [] = "dvd.ntsc.16x9.pcm"
 Video: MPEG-2, 29.97 fps, 720 x 480, aspect 16:9
Audio: PCM, 16-bit, 48000 Hz, stereo.
 
static const char DVD_NTSC_16x9_MP2 [] = "dvd.ntsc.16x9.mp2"
 Video: MPEG-2, 29.97 fps, 720 x 480, aspect 16:9
Audio: MPEG-1 Layer 2, 48000 Hz, stereo.
 
static const char AAC [] = "aac"
 AAC stream in ADTS format, stereo, 128 kbps.
 
static const char AppleTV_H264_480p [] = "appletv.h264.480p"
 Video: H.264, 24 fps, 640 x 480, 1500 kbps
Audio: AAC, 48000 Hz, stereo, 48 kbps
Container: MP4
Optimized for Apple TV, 1st generation.
 
static const char AppleTV_MPEG4_480p [] = "appletv.mpeg4.480p"
 Video: MPEG-4 Visual, 24 fps, 640 x 480, 2000 kbps
Audio: AAC, 48000 Hz, stereo, 48 kbps
Container: MP4
Optimized for Apple TV, 1st generation.
 
static const char AppleTV_H264_720p [] = "appletv.h264.720p"
 Video: H.264, 24 fps, 1280 x 720, 4000 kbps
Audio: AAC, 48000 Hz, stereo, 48 kbps
Container: MP4
Optimized for Apple TV, 2nd generation.
 
static const char WAV_AudioCD [] = "wav.audiocd"
 WAV with parameters as in Audio CD (PCM, 44100 Hz, 16-bit, stereo)
 
static const char MP4_H264_AAC [] = "mp4.h264.aac"
 Video: H.264
Audio: AAC
Container: MP4
Does not enforce specific audio and video properties.
 
static const char MP4_FAST_H264_AAC [] = "mp4.fast.h264.aac"
 Video: H.264
Audio: AAC
Container: MP4
Does not enforce specific audio and video properties. More...
 
static const char iPad_H264_576p [] = "ipad.mp4.h264.576p"
 Video: H.264, 30 fps, 768 x 576, 2500 kbps
Audio: AAC, 48000 Hz, stereo, 128 kbps
Container: MP4
SD quality, optimized for iPad.
 
static const char iPad_H264_720p [] = "ipad.mp4.h264.720p"
 Video: H.264, 30 fps, 1280 x 720, 4000 kbps
Audio: AAC, 48000 Hz, stereo, 128 kbps
Container: MP4
HD quality, optimized for iPad.
 
static const char iPad_MPEG4_480p [] = "ipad.mp4.mpeg4.480p"
 Video: MPEG-4 Visual, 30 fps, 640 x 480, 2500 kbps
Audio: AAC, 48000 Hz, 128 kbps, stereo
Container: MP4
Near SD quality, optimized for iPad.
 
static const char AppleLiveStreaming_H264_480p [] = "apple.ts.h264.480p"
 Video: H.264 Baseline Profile L3.1, 29.97 fps, 640 x 480, 1200 kbps
Audio: AAC, 48000 Hz, stereo, 96 kbps
Container: MPEG Transport Stream
Optimized for Apple Live Streaming.
 
static const char AppleLiveStreaming_H264_720p [] = "apple.ts.h264.720p"
 Video: H.264 Main Profile L3.1, 29.97 fps, 1280 x 720, 5000 kbps
Audio: AAC, 48000 Hz, stereo, 128 kbps
Container: MPEG Transport Stream
Optimized for Apple Live Streaming.
 
static const char iPhone_H264_480p [] = "iphone.mp4.h264.480p"
 Video: H.264, 25 fps, 640 x 480, 1000 kbps
Audio: AAC, 48000 Hz, stereo, 96 kbps
Container: MP4
Optimized for iPhone.
 
static const char iPhone_MPEG4_480p [] = "iphone.mp4.mpeg4.480p"
 Video: MPEG-4 Visual, 25 fps, 640 x 480, 2000 kbps
Audio: AAC, 48000 Hz, stereo, 96 kbps
Container: MP4
Optimized for iPhone.
 
static const char iPod_H264_240p [] = "ipod.mp4.h264.240p"
 Video: H.264 Baseline Profile, 25 fps, 320 x 240, 300 kbps
Audio: AAC, 48000 Hz, stereo, 64 kbps
Container: MP4
Optimized for iPod.
 
static const char iPod_MPEG4_240p [] = "ipod.mp4.mpeg4.240p"
 Video: MPEG-4 Visual, 25 fps, 320 x 240, 600 kbps
Audio: AAC, 48000 Hz, stereo, 64 kbps
Container: MP4
Optimized for iPod.
 
static const char M4A_128kbps [] = "mp4.aac.44100hz.128kbps"
 AAC audio stream in MP4 format, 44100 Hz, stereo, 128 kbps Normal (standard) quality.
 
static const char M4A_256kbps [] = "mp4.aac.44100hz.256kbps"
 AAC audio stream in MP4 format, 44100 Hz, stereo, 256 kbps High quality.
 
static const char MP2_DVD [] = "mp2.dvd"
 MPEG-1 Layer 2 audio, 48000Hz (suitable for DVD)
 
static const char MP3_128kbps [] = "mp3.44100hz.128kbps"
 MPEG-1 Layer 3 audio, 44100Hz, stereo, 128 kbps.
 
static const char MP3_256kbps [] = "mp3.44100hz.256kbps"
 MPEG-1 Layer 3 audio, 44100Hz, stereo, 256 kbps.
 
static const char VCD_PAL [] = "vcd.pal"
 Video: MPEG-1, 25fps, 352 x 288, 1100 kbps
Audio: MPEG-1 Layer 2, 44100Hz, stereo, 192 kbps
Container: MPEG Program Stream
VCD PAL.
 
static const char VCD_NTSC [] = "vcd.ntsc"
 Video: MPEG-1, 29.97 fps, 352 x 240, 1100 kbps
Audio: MPEG-1 Layer 2, 44100Hz, stereo, 192 kbps
Container: MPEG Program Stream
VCD NTSC.
 
static const char WebM_VP8_Vorbis [] = "webm.vp8.vorbis"
 Video: VP8
Audio: Vorbis
Container: WebM
Does not enforce specific audio and video properties.
 
static const char AndroidPhone_H264_360p [] = "android-phone.mp4.h264.360p"
 Video: H264 Baseline Profile, 30 fps, 480 x 360, 800 kbps
Audio: AAC, 48000 Hz, stereo, 128 kbps
Container: MP4.
 
static const char AndroidPhone_H264_720p [] = "android-phone.mp4.h264.720p"
 Video: H264 Baseline Profile, 30 fps, 1280 x 720, 2000 kbps
Audio: AAC, 48000 Hz, stereo, 128 kbps
Container: MP4.
 
static const char AndroidTablet_H264_720p [] = "android-tablet.mp4.h264.720p"
 Video: H264 Baseline Profile, 30 fps, 1280 x 720, 4000 kbps
Audio: AAC, 48000 Hz, stereo, 192 kbps
Container: MP4.
 
static const char AndroidTablet_WebM_VP8_720p [] = "android-tablet.webm.vp8.720p"
 Video: VP8, 30 fps, 1280 x 720, 4000 kbps
Audio: Vorbis, 48000 Hz, stereo, 192 kbps
Container: WebM.
 
static const char WMA_Standard_CBR_128kbps [] = "wma.cbr.128kbps"
 Audio: Windows Media Audio Standard, CBR, 44100 Hz, stereo, 128 kbps
Container: ASF

 
static const char WMA_Professional_Q75 [] = "wma.pro.q75"
 Audio: Windows Media Audio Professional, VBR, 44100 Hz, stereo, Quality 75 (0-100)
Container: ASF
Normal quality VBR with average bitrate close to 128 kbps.
 
static const char WMA_Professional_Q90 [] = "wma.pro.q90"
 Audio: Windows Media Audio Professional, VBR, 44100 Hz, stereo, Quality 90 (0-100)
Container: ASF
High quality VBR with average bitrate close to 192 kbps.
 
static const char WMA_Lossless [] = "wma.lossless"
 Audio: Windows Media Audio Lossless, 44100 Hz, stereo Container: ASF.
 
static const char OggVorbis_Q4 [] = "ogg.vorbis.q4"
 Audio: Vorbis, VBR, frequency not explicitly specified, quality 4 (from -1 to 10) Container: Ogg Normal quality VBR with average bitrate close to 128 kbps at 44100 Hz.
 
static const char OggVorbis_Q8 [] = "ogg.vorbis.q8"
 Audio: Vorbis, VBR, frequency not explicitly specified, quality 8 (from -1 to 10) Container: Ogg High quality VBR with average bitrate close to 256 kbps at 44100 Hz.
 
static const char BDAV_H264_1920x1080_5994i_PCM [] = "bdav-h264-1920x1080-59.94i-pcm"
 Video: H.264, 1980 x 1080, 59.94 fps interlaced, aspect ratio 16:9, 25000 kbps
Audio: LPCM, 48000 Hz, 16-bit
Container: BDAV MPEG2 Transport Stream (m2ts)
 
static const char BDAV_H264_1920x1080_50i_PCM [] = "bdav-h264-1920x1080-50i-pcm"
 Video: H.264, 1980 x 1080, 50 fps interlaced, aspect ratio 16:9, 25000 kbps
Audio: LPCM, 48000 Hz, 16-bit
Container: BDAV MPEG2 Transport Stream (m2ts)
 
static const char BDAV_H264_1920x1080_24p_PCM [] = "bdav-h264-1920x1080-24p-pcm"
 Video: H.264, 1980 x 1080, 24 fps progressive, aspect ratio 16:9, 25000 kbps
Audio: LPCM, 48000 Hz, 16-bit
Container: BDAV MPEG2 Transport Stream (m2ts)
 
static const char BDAV_H264_1920x1080_2398p_PCM [] = "bdav-h264-1920x1080-23.976p-pcm"
 Video: H.264, 1980 x 1080, 23.976 fps progressive, aspect ratio 16:9, 25000 kbps
Audio: LPCM, 48000 Hz, 16-bit
Container: BDAV MPEG2 Transport Stream (m2ts)
 
static const char BDAV_H264_1440x1080_5994i_PCM [] = "bdav-h264-1440x1080-59.94i-pcm"
 Video: H.264, 1440 x 1080, 59.94 fps interlaced, aspect ratio 16:9, 25000 kbps
Audio: LPCM, 48000 Hz, 16-bit
Container: BDAV MPEG2 Transport Stream (m2ts)
 
static const char BDAV_H264_1440x1080_50i_PCM [] = "bdav-h264-1440x1080-50i-pcm"
 Video: H.264, 1440 x 1080, 50 fps interlaced, aspect ratio 16:9, 25000 kbps
Audio: LPCM, 48000 Hz, 16-bit
Container: BDAV MPEG2 Transport Stream (m2ts)
 
static const char BDAV_H264_1440x1080_24p_PCM [] = "bdav-h264-1440x1080-24p-pcm"
 Video: H.264, 1440 x 1080, 24 fps progressive, aspect ratio 16:9, 25000 kbps
Audio: LPCM, 48000 Hz, 16-bit
Container: BDAV MPEG2 Transport Stream (m2ts)
 
static const char BDAV_H264_1440x1080_2398p_PCM [] = "bdav-h264-1440x1080-23.976p-pcm"
 Video: H.264, 1440 x 1080, 23.976 fps progressive, aspect ratio 16:9, 25000 kbps
Audio: LPCM, 48000 Hz, 16-bit
Container: BDAV MPEG2 Transport Stream (m2ts)
 
static const char BDAV_H264_1280x720_5994p_PCM [] = "bdav-h264-1280x720-59.94p-pcm"
 Video: H.264, 1280 x 720, 59.94 fps progressive, aspect ratio 16:9, 15000 kbps
Audio: LPCM, 48000 Hz, 16-bit
Container: BDAV MPEG2 Transport Stream (m2ts)
 
static const char BDAV_H264_1280x720_50p_PCM [] = "bdav-h264-1280x720-50p-pcm"
 Video: H.264, 1280 x 720, 50 fps progressive, aspect ratio 16:9, 15000 kbps
Audio: LPCM, 48000 Hz, 16-bit
Container: BDAV MPEG2 Transport Stream (m2ts)
 
static const char BDAV_H264_1280x720_24p_PCM [] = "bdav-h264-1280x720-24p-pcm"
 Video: H.264, 1280 x 720, 24 fps progressive, aspect ratio 16:9, 15000 kbps
Audio: LPCM, 48000 Hz, 16-bit
Container: BDAV MPEG2 Transport Stream (m2ts)
 
static const char BDAV_H264_1280x720_2398p_PCM [] = "bdav-h264-1280x720-23.976p-pcm"
 Video: H.264, 1280 x 720, 23.976 fps progressive, aspect ratio 16:9, 15000 kbps
Audio: LPCM, 48000 Hz, 16-bit
Container: BDAV MPEG2 Transport Stream (m2ts)
 
const char *const AAC = Preset::AAC
 see Preset::AAC
 
const char *const CBR_128kbps = M4A_128kbps
 see Preset::M4A_128kbps
 
const char *const CBR_256kbps = M4A_256kbps
 see Preset::M4A_256kbps
 
const char *const CBR_128kbps = MP3_128kbps
 see Preset::MP3_128kbps
 
const char *const CBR_256kbps = MP3_256kbps
 see Preset::MP3_256kbps
 
const char *const CBR_128kbps = WMA_Standard_CBR_128kbps
 see Preset::WMA_Standard_CBR_128kbps
 
const char *const VBR_Q75 = WMA_Professional_Q75
 see Preset::WMA_Professional_Q75
 
const char *const VBR_Q90 = WMA_Professional_Q90
 see Preset::WMA_Professional_Q90
 
const char *const Lossless = WMA_Lossless
 see Preset::WMA_Lossless
 
const char *const VBR_Q4 = OggVorbis_Q4
 see Preset::OggVorbis_Q4
 
const char *const VBR_Q8 = OggVorbis_Q8
 see Preset::OggVorbis_Q8
 
const char *const WAV = WAV_AudioCD
 see Preset::WAV_AudioCD
 
const char *const MP2 = MP2_DVD
 see Preset::MP2_DVD (MPEG-1 Layer 2)
 
const char *const H264_AAC = MP4_H264_AAC
 see Preset::MP4_H264_AAC
 
const char *const VP8_Vorbis = WebM_VP8_Vorbis
 see Preset::WebM_VP8_Vorbis
 
const char *const PAL_4x3_MP2 = DVD_PAL_4x3_MP2
 see Preset::DVD_PAL_4x3_MP2
 
const char *const PAL_16x9_MP2 = DVD_PAL_16x9_MP2
 see Preset::DVD_PAL_16x9_MP2
 
const char *const NTSC_4x3_PCM = DVD_NTSC_4x3_PCM
 see Preset::DVD_NTSC_4x3_PCM
 
const char *const NTSC_4x3_MP2 = DVD_NTSC_4x3_MP2
 see Preset::DVD_NTSC_4x3_MP2
 
const char *const NTSC_16x9_PCM = DVD_NTSC_16x9_PCM
 see Preset::DVD_NTSC_16x9_PCM
 
const char *const NTSC_16x9_MP2 = DVD_NTSC_16x9_MP2
 see Preset::DVD_NTSC_16x9_MP2
 
const char *const PAL = VCD_PAL
 see Preset::VCD_PAL
 
const char *const NTSC = VCD_NTSC
 see Preset::VCD_NTSC
 
const char *const H264_576p = iPad_H264_576p
 see Preset::iPad_H264_576p
 
const char *const H264_720p = iPad_H264_720p
 see Preset::iPad_H264_720p
 
const char *const MPEG4_480p = iPad_MPEG4_480p
 see Preset::iPad_MPEG4_480p
 
const char *const H264_480p = AppleTV_H264_480p
 see Preset::AppleTV_H264_480p
 
const char *const H264_720p = AppleTV_H264_720p
 see Preset::AppleTV_H264_720p
 
const char *const MPEG4_480p = AppleTV_MPEG4_480p
 see Preset::AppleTV_MPEG4_480p
 
const char *const H264_480p = iPhone_H264_480p
 see Preset::iPhone_H264_480p
 
const char *const MPEG4_480p = iPhone_MPEG4_480p
 see Preset::iPhone_MPEG4_480p
 
const char *const H264_240p = iPod_H264_240p
 see Preset::iPod_H264_240p
 
const char *const MPEG4_240p = iPod_MPEG4_240p
 see Preset::iPod_MPEG4_240p
 
const char *const H264_480p = AppleLiveStreaming_H264_480p
 see Preset::AppleLiveStreaming_H264_480p
 
const char *const H264_720p = AppleLiveStreaming_H264_720p
 see Preset::AppleLiveStreaming_H264_720p
 
const char *const H264_360p = AndroidPhone_H264_360p
 see Preset::AndroidPhone_H264_360p
 
const char *const H264_720p = AndroidPhone_H264_720p
 see Preset::AndroidPhone_H264_720p
 
const char *const H264_720p = AndroidTablet_H264_720p
 see Preset::AndroidTablet_H264_720p
 
const char *const WebM_VP8_720p = AndroidTablet_WebM_VP8_720p
 see Preset::AndroidTablet_WebM_VP8_720p
 
const char *const H264_1920x1080_5994i_PCM = BDAV_H264_1920x1080_5994i_PCM
 see BDAV_H264_1920x1080_5994i_PCM
 
const char *const H264_1920x1080_50i_PCM = BDAV_H264_1920x1080_50i_PCM
 see BDAV_H264_1920x1080_50i_PCM
 
const char *const H264_1920x1080_24p_PCM = BDAV_H264_1920x1080_24p_PCM
 see BDAV_H264_1920x1080_24p_PCM
 
const char *const H264_1920x1080_2398p_PCM = BDAV_H264_1920x1080_2398p_PCM
 see BDAV_H264_1920x1080_2398p_PCM
 
const char *const H264_1440x1080_5994i_PCM = BDAV_H264_1440x1080_5994i_PCM
 see BDAV_H264_1440x1080_5994i_PCM
 
const char *const H264_1440x1080_50i_PCM = BDAV_H264_1440x1080_50i_PCM
 see BDAV_H264_1440x1080_50i_PCM
 
const char *const H264_1440x1080_24p_PCM = BDAV_H264_1440x1080_24p_PCM
 see BDAV_H264_1440x1080_24p_PCM
 
const char *const H264_1440x1080_2398p_PCM = BDAV_H264_1440x1080_2398p_PCM
 see BDAV_H264_1440x1080_2398p_PCM
 
const char *const H264_1280x720_5994p_PCM = BDAV_H264_1280x720_5994p_PCM
 see BDAV_H264_1280x720_5994p_PCM
 
const char *const H264_1280x720_50p_PCM = BDAV_H264_1280x720_50p_PCM
 see BDAV_H264_1280x720_50p_PCM
 
const char *const H264_1280x720_24p_PCM = BDAV_H264_1280x720_24p_PCM
 see BDAV_H264_1280x720_24p_PCM
 
const char *const H264_1280x720_2398p_PCM = BDAV_H264_1280x720_2398p_PCM
 see BDAV_H264_1280x720_2398p_PCM
 
const char *const H264_AAC = MP4_FAST_H264_AAC
 see Preset::MP4_FAST_H264_AAC
 

Function Documentation

AVBLOCKS_API primo::codecs::AudioStreamInfo* AVBLOCKS_CALL avb_create_audio_stream_info ( )

Creates an empty audio stream info.

The caller is responsible for releasing the object when it is not needed anymore.

Returns
A pointer to the new AudioStreamInfo object.
See Also
Object Management
AudioStreamInfo

Referenced by primo::avblocks::Library::createAudioStreamInfo().

AVBLOCKS_API primo::avblocks::ByteArrayParameter* AVBLOCKS_CALL avb_create_byte_array_parameter ( )

Creates a parameter that represents a byte array.

The caller is responsible for releasing the object when it is not needed anymore.

Returns
A pointer to the new Parameter object.
See Also
Object Management
ParameterList

Referenced by primo::avblocks::Library::createByteArrayParameter().

AVBLOCKS_API primo::avblocks::FloatParameter* AVBLOCKS_CALL avb_create_float_parameter ( )

Creates a float parameter.

The caller is responsible for releasing the object when it is not needed anymore.

Returns
A pointer to the new Parameter object.
See Also
Object Management
ParameterList

Referenced by primo::avblocks::Library::createFloatParameter().

AVBLOCKS_API primo::avblocks::IntParameter* AVBLOCKS_CALL avb_create_int_parameter ( )

Creates an integer parameter.

The caller is responsible for releasing the object when it is not needed anymore.

Returns
A pointer to the new Parameter object.
See Also
Object Management
ParameterList

Referenced by primo::avblocks::Library::createIntParameter().

AVBLOCKS_API primo::license::LicenseInfo* AVBLOCKS_CALL avb_create_license_info ( )

Creates a new LicenseInfo instance.

Version
1.2.0
Returns
A pointer to LicenseInfo object.
See Also
primo::license::LicenseInfo

Referenced by primo::avblocks::Library::createLicenseInfo().

AVBLOCKS_API primo::codecs::MediaBuffer* AVBLOCKS_CALL avb_create_media_buffer ( int32_t  capacity)

Creates a media buffer with the specified capacity.

The caller is responsible for releasing the object when it is not needed anymore.

Parameters
capacityThe required capacity must be greater or equal to 0.
Returns
A pointer to the new MediaBuffer object if capacity >= 0, otherwise NULL.
Remarks
The returned object has a capacity that has been specified by the capacity parameter. It contains no data, i.e. dataSize() == 0.
See Also
Object Management
MediaBuffer

Referenced by primo::avblocks::Library::createMediaBuffer().

AVBLOCKS_API primo::avblocks::MediaBufferParameter* AVBLOCKS_CALL avb_create_media_buffer_parameter ( )

Creates a parameter that holds a MediaBuffer object.

The caller is responsible for releasing the object when it is not needed anymore.

Returns
A pointer to the new Parameter object.
See Also
Object Management
ParameterList

Referenced by primo::avblocks::Library::createMediaBufferParameter().

AVBLOCKS_API primo::avblocks::MediaInfo* AVBLOCKS_CALL avb_create_media_info ( )

Creates a media information object.

The caller is responsible for releasing the object when it is not needed anymore.

Returns
A pointer to the new MediaInfo object.
See Also
Object Management
MediaInfo

Referenced by primo::avblocks::Library::createMediaInfo().

AVBLOCKS_API primo::avblocks::MediaPin* AVBLOCKS_CALL avb_create_media_pin ( )

Creates a media pin.

It is used in input and output sockets of the transcoder. The caller is responsible for releasing the object when it is not needed anymore.

Returns
A pointer to the new MediaPin object.
See Also
Object Management
MediaPin
MediaSocket
Transcoder

Referenced by primo::avblocks::Library::createMediaPin().

AVBLOCKS_API primo::codecs::MediaSample* AVBLOCKS_CALL avb_create_media_sample ( )

Creates an empty media sample.

The caller is responsible for releasing the object when it is not needed anymore.

Returns
A pointer to the new MediaSample object.
See Also
Object Management
MediaSample

Referenced by primo::avblocks::Library::createMediaSample().

AVBLOCKS_API primo::avblocks::MediaSocket* AVBLOCKS_CALL avb_create_media_socket ( )

Creates a media socket.

It is used as an input or output point of the transcoder. The caller is responsible for releasing the object when it is not needed anymore.

Returns
A pointer to the new MediaSocket object.
See Also
Object Management
MediaSocket
MediaPin
Transcoder

Referenced by primo::avblocks::Library::createMediaSocket().

AVBLOCKS_API primo::avblocks::MediaSocket* AVBLOCKS_CALL avb_create_media_socket_from_media_info ( primo::avblocks::MediaInfo mediaInfo)

Creates a media socket from a MediaInfo object.

Parameters
mediaInfo[in] A pointer to a MediaInfo object with loaded audio/video information. This object is not needed once this method returns.
Returns
A pointer to a new MediaSocket object which contains the information supplied by the mediaInfo parameter. The caller is responsible for releasing the returned media socket when it is not needed anymore.

This method is meant to help in setting correctly the inputs of the Transcoder. The intended usage is as follows:

  1. Use MediaInfo to load information for a file or user stream.
  2. Create a media socket from the MediaInfo object (Library::createMediaSocket(MediaInfo*)).
  3. Add the newly created socket to the inputs of the Transcoder (Transcoder::inputs(), MediaSocketList::add()).
  4. Release the media socket if it will not be used outside of the Transcoder.
See Also
MediaInfo
Object Management

Referenced by primo::avblocks::Library::createMediaSocket().

AVBLOCKS_API primo::avblocks::MediaSocket* AVBLOCKS_CALL avb_create_media_socket_from_preset ( const char *  preset)

Creates a media socket from an AVBlocks Preset.

Parameters
preset[in] A pointer to a preset string. The known presets are listed in the primo::avblocks::Preset namespace.
Returns
A pointer to the new MediaSocket object which is configured according to the specified preset.

Referenced by primo::avblocks::Library::createMediaSocket().

AVBLOCKS_API primo::codecs::MetaAttribute* AVBLOCKS_CALL avb_create_meta_attribute ( )

Creates an empty MetaAttribute object.

The caller is responsible for releasing the object when it is not needed anymore.

Returns
A pointer to the new MetaAttribute object.
See Also
Object Management
Metadata
Metadata::attributes

Referenced by primo::avblocks::Library::createMetaAttribute().

AVBLOCKS_API primo::codecs::MetaPicture* AVBLOCKS_CALL avb_create_meta_picture ( )

Creates an empty MetaPicture object.

The caller is responsible for releasing the object when it is not needed anymore.

Returns
A pointer to the new MetaPicture object.
See Also
Object Management
Metadata
Metadata::pictures

Referenced by primo::avblocks::Library::createMetaPicture().

AVBLOCKS_API primo::codecs::Metadata* AVBLOCKS_CALL avb_create_metadata ( )

Creates an empty Metadata object.

The caller is responsible for releasing the object when it is not needed anymore.

Returns
A pointer to the new Metadata object.
See Also
Object Management
Metadata
MediaSocket::setMetadata
MediaSocket::metadata

Referenced by primo::avblocks::Library::createMetadata().

AVBLOCKS_API primo::avblocks::ParameterList* AVBLOCKS_CALL avb_create_parameter_list ( )

Creates an empty collection of filter parameters.

The caller is responsible for releasing the object when it is not needed anymore.

Returns
A pointer to the new ParameterList object.
See Also
Object Management
ParameterList

Referenced by primo::avblocks::Library::createParameterList().

AVBLOCKS_API primo::avblocks::StringParameter* AVBLOCKS_CALL avb_create_string_parameter ( )

Creates a parameter that holds a char_t* string.

The caller is responsible for releasing the object when it is not needed anymore.

Returns
A pointer to the new Parameter object.
See Also
Object Management
ParameterList

Referenced by primo::avblocks::Library::createStringParameter().

AVBLOCKS_API primo::avblocks::Transcoder* AVBLOCKS_CALL avb_create_transcoder ( )

Creates a Transcoder.

The caller is responsible for releasing the object when it is not needed anymore.

Returns
A pointer to the new Transcoder object.
See Also
Object Management
Transcoder

Referenced by primo::avblocks::Library::createTranscoder().

AVBLOCKS_API primo::codecs::VideoStreamInfo* AVBLOCKS_CALL avb_create_video_stream_info ( )

Creates an empty video stream info.

The caller is responsible for releasing the object when it is not needed anymore.

Returns
A pointer to the new VideoStreamInfo object.
See Also
Object Management
VideoStreamInfo

Referenced by primo::avblocks::Library::createVideoStreamInfo().

AVBLOCKS_API const char* AVBLOCKS_CALL avb_get_description ( )

Gets library build description.

Returns
ANSI string.
Remarks
Contains details about the build including full version, architecture (x86/x64), configuration (Release/Debug), license (OEM/Demo) and platform (OS).

Referenced by primo::avblocks::Library::description().

AVBLOCKS_API int32_t AVBLOCKS_CALL avb_get_major_version ( )

Gets library major version.

Returns
major version

Referenced by primo::avblocks::Library::majorVersion().

AVBLOCKS_API int32_t AVBLOCKS_CALL avb_get_minor_version ( )

Gets library minor version.

Returns
minor version

Referenced by primo::avblocks::Library::minorVersion().

AVBLOCKS_API int32_t AVBLOCKS_CALL avb_get_patch_version ( )

Gets library patch version.

Returns
patch version
Remarks
The patch version is used for bug fixes and small improvements that do not involve API changes

Referenced by primo::avblocks::Library::patchVersion().

AVBLOCKS_API bool_t AVBLOCKS_CALL avb_initialize ( )

Initializes the AVBlocks library.

Must be called once before the library is used, usually when the application starts.

Returns
TRUE if the library is successfully initialized, otherwise FALSE.

Referenced by primo::avblocks::Library::initialize().

AVBLOCKS_API int32_t AVBLOCKS_CALL avb_set_license ( const char *  license)

Sets a license string.

The supplied license is appended to the library license state.

   @param license A string with license information.
   If the license string is <b>NULL</b> the library license state is cleared.

   @return The status after the license is set.
   The returned value is a combination of flags from the \ref primo::license::LicenseStatusFlags::Enum "LicenseStatusFlags" enum.

   @remarks A Demo build of the library cannot be licensed and always returns \ref primo::license::LicenseStatusFlags::DemoBuild "LicenseStatusFlags::DemoBuild".
See Also
primo::license::LicenseStatusFlags::Enum

Referenced by primo::avblocks::Library::setLicense().

AVBLOCKS_API void AVBLOCKS_CALL avb_shutdown ( )

Closes the AVBlocks library and frees the resources that are used (if any).

Should be called when the library will not be used anymore, e.g. when the application ends.

Referenced by primo::avblocks::Library::shutdown().