AVBlocks for C++  3.0
Audio and Video Software Development Kit
Loading...
Searching...
No Matches
av.h File Reference

Classes

class  AudioStreamInfo
 AudioStreamInfo describes an elementary audio stream. More...
 
class  MediaBuffer
 A buffer for media data. More...
 
class  MediaSample
 MediaSample represents one or more samples of audio or video data. More...
 
class  MetaAttribute
 MetaAttribute describes a textual meta information that is part of an audio or video file. More...
 
class  MetaAttributeList
 MetaAttributeList represents the meta attributes inside a Metadata object. More...
 
class  Metadata
 Metadata describes meta information that is part of an audio or video file. More...
 
class  MetaPicture
 MetaPicture describes a meta image that is part of an audio or video file. More...
 
class  MetaPictureList
 MetaPictureList represents the meta pictures inside a Metadata object. More...
 
class  StreamInfo
 Provides properties and operations that are common for all elementary streams. More...
 
class  StreamInfoEnum
 StreamInfoEnum is a read-only collection of StreamInfo objects. More...
 
class  VideoStreamInfo
 VideoStreamInfo describes an elementary video stream. More...
 

Namespaces

namespace  primo
 Top namespace for all libraries developed by Primo Software Corp.
 
namespace  primo::codecs
 Common audio/video types and interfaces.
 
namespace  primo::codecs::AlphaCompositingMode
 Defines the way a foreground image will be combined with background video.
 
namespace  primo::codecs::AudioChannelFlags
 Defines the speaker location of one or more audio channels.
 
namespace  primo::codecs::BitrateMode
 Defines the bitrate mode of the audio/video stream.
 
namespace  primo::codecs::CodecError
 Common errors for encoders, decoders, muxers, demuxers and other A/V components.
 
namespace  primo::codecs::ColorFormat
 Defines constants for various color formats.
 
namespace  primo::codecs::DeinterlacingMethod
 Defines video deinterlacing methods.
 
namespace  primo::codecs::H264DeblockingFilter
 Defines H.264/AVC deblocking filter mode.
 
namespace  primo::codecs::H264DirectPredMode
 Defines H.264/AVC direct predition mode.
 
namespace  primo::codecs::H264EntropyCodingMode
 Defines H.264/AVC entropy coding modes.
 
namespace  primo::codecs::H264MeMethod
 Defines the motion estimation methods used when encoding H.264/AVC.
 
namespace  primo::codecs::H264MeSplitMode
 Defines the block sizes for which motion estimation should be done.
 
namespace  primo::codecs::H264PicCodingType
 Defines the picture coding type when encoding H.264/AVC.
 
namespace  primo::codecs::H264Profile
 Defines H.264/AVC profiles.
 
namespace  primo::codecs::H264RateControlMethod
 Defines methods for bitrate contorl when encoding H.264/AVC.
 
namespace  primo::codecs::H265Level
 Defines H.265/HEVC levels.
 
namespace  primo::codecs::H265Profile
 Defines H.265/HEVC profiles.
 
namespace  primo::codecs::H265Tier
 Defines H.265/HEVC tiers.
 
namespace  primo::codecs::InterpolationMethod
 Defines methods for sample interpolation.
 
namespace  primo::codecs::MediaSampleFlags
 Defines various media sample features.
 
namespace  primo::codecs::MediaType
 Defines media types.
 
namespace  primo::codecs::Meta
 DataStreamInfo describes a generic data stream.
 
namespace  primo::codecs::MetaPictureType
 Represents the meta picture (image) type.
 
namespace  primo::codecs::MimeType
 Defines MIME types used by primo codecs components.
 
namespace  primo::codecs::PcmFlags
 Defines constants for various LPCM properties.
 
namespace  primo::codecs::PictureType
 Defines video picture types (I/P/B)
 
namespace  primo::codecs::ScanType
 Defines video interlace/scan types.
 
namespace  primo::codecs::StereoMode
 Defines stereo mode in MPEG Audio and AAC.
 
namespace  primo::codecs::StreamSubType
 Defines audio and video stream subtypes.
 
namespace  primo::codecs::StreamType
 Defines major audio and video stream types, and file formats (a.k.a.
 
namespace  primo::error
 Shared namespace for error definitions.
 
namespace  primo::error::ErrorFacility
 Common error facilities.
 

Enumerations

enum  Enum {
  Over = 1 ,
  In = 2 ,
  Out = 3 ,
  Atop = 4 ,
  Xor = 5 ,
  Plus = 6
}
 
enum  Enum {
  Success = 0 ,
  Init = 1 ,
  NoConfigData = 2 ,
  NoOutput = 3 ,
  OutputBufferNotEnough = 4 ,
  Unsupported = 5 ,
  Failed = 6 ,
  NotInitialized = 7 ,
  NullPointer = 8 ,
  EOS = 9 ,
  Alloc = 10 ,
  InvalidStream = 11 ,
  NotImplemented = 12 ,
  InvalidParams = 13 ,
  InvalidOperation = 14 ,
  MissingDependency = 15 ,
  StreamOpen = 16 ,
  StreamRead = 17 ,
  StreamWrite = 18 ,
  StreamSeek = 19 ,
  BufferFull = 20 ,
  MissingHardwareIntelQuickSync = 21 ,
  MissingHardwareAmdVce = 22 ,
  MissingHardwareNvidiaNVENC = 23
}
 
enum  Enum {
  None = 0 ,
  Unsigned = 0x1 ,
  Float = 0x2 ,
  BigEndian = 0x4 ,
  NonInterleaved = 0x8
}
 PcmFlags::Enum. More...
 
enum  Enum {
  None = 0x0 ,
  Left = 0x1 ,
  Right = 0x2 ,
  Center = 0x4 ,
  LFE = 0x8 ,
  BackLeft = 0x10 ,
  BackRight = 0x20 ,
  LeftCenter = 0x40 ,
  RightCenter = 0x80 ,
  BackCenter = 0x100 ,
  SideLeft = 0x200 ,
  SideRight = 0x400 ,
  TopCenter = 0x800 ,
  TopFrontLeft = 0x1000 ,
  TopFrontCenter = 0x2000 ,
  TopFrontRight = 0x4000 ,
  TopBackLeft = 0x8000 ,
  TopBackCenter = 0x10000 ,
  TopBackRight = 0x20000 ,
  LayoutMono = Center ,
  LayoutStereo = Left | Right ,
  Layout2p1 = Left | Right | LFE ,
  LayoutSurround = Left | Right | Center | BackCenter ,
  LayoutQuad = Left | Right | BackLeft | BackRight ,
  Layout4p1 = Left | Right | LFE | BackLeft | BackRight ,
  Layout5p1 = Left | Right | Center | LFE | BackLeft | BackRight ,
  Layout7p1Surround = Left | Right | Center | LFE | BackLeft | BackRight | SideLeft | SideRight ,
  Layout5p1Surround = Left | Right | Center | LFE | SideLeft | SideRight ,
  Layout7p1 = Left | Right | Center | LFE | BackLeft | BackRight | LeftCenter | RightCenter
}
 AudioChannelFlags::Enum. More...
 
enum  Enum {
  Unknown = 0 ,
  CBR = 1 ,
  VBR = 2 ,
  ABR = 3
}
 BitrateMode::Enum. More...
 
enum  Enum {
  Unknown = 0 ,
  YV12 = 1 ,
  NV12 = 2 ,
  YUY2 = 3 ,
  UYVY = 4 ,
  YUV411 = 5 ,
  YUV420 = 6 ,
  YUV422 = 7 ,
  YUV444 = 8 ,
  Y411 = 9 ,
  Y41P = 10 ,
  BGR32 = 11 ,
  BGR24 = 12 ,
  BGR565 = 13 ,
  BGR555 = 14 ,
  BGR444 = 15 ,
  GRAY = 16 ,
  YUV420A = 17 ,
  YUV422A = 18 ,
  YUV444A = 19 ,
  YVU9 = 20 ,
  BGRA32 = 21
}
 ColorFormat::Enum. More...
 
enum  Enum {
  Unknown = 0 ,
  BEGIN_AUDIO = 0x1000 ,
  LPCM = 0x1001 ,
  ALAW_PCM = 0x1002 ,
  MULAW_PCM = 0x1003 ,
  VIDEO_DVD_PCM = 0x1004 ,
  AC3 = 0x1005 ,
  DTS = 0x1006 ,
  MPEG_Audio = 0x1007 ,
  Vorbis = 0x1008 ,
  AAC = 0x1009 ,
  AMRNB = 0x100A ,
  AMRWB = 0x100B ,
  G726_ADPCM = 0x100C ,
  WMA = 0x100D ,
  WMA_Professional = 0x100E ,
  WMA_Lossless = 0x100F ,
  END_AUDIO = 0x1FFF ,
  BEGIN_VIDEO = 0x2000 ,
  UncompressedVideo = 0x2001 ,
  MPEG1_Video = 0x2002 ,
  MPEG2_Video = 0x2003 ,
  MPEG4_Video = 0x2004 ,
  H261 = 0x2005 ,
  H263 = 0x2006 ,
  H264 = 0x2007 ,
  AVC = H264 ,
  WMV = 0x2008 ,
  MJPEG = 0x2009 ,
  VC1 = 0x200A ,
  AVS = 0x200B ,
  VP8 = 0x200C ,
  Theora = 0x200D ,
  H265 = 0x200E ,
  HEVC = H265 ,
  END_VIDEO = 0x2FFF ,
  BEGIN_CONTAINER = 0x3000 ,
  AVI = 0x3001 ,
  MP4 = 0x3002 ,
  ASF = 0x3003 ,
  MPEG_PS = 0x3004 ,
  MPEG_TS = 0x3005 ,
  MPEG_PES = 0x3006 ,
  WAVE = 0x3007 ,
  FLV = 0x3008 ,
  OGG = 0x3009 ,
  WebM = 0x300A ,
  END_CONTAINER = 0x3FFF ,
  BEGIN_IMAGE = 0x4000 ,
  BMP = 0x4001 ,
  PNG = 0x4002 ,
  JPEG = 0x4003 ,
  TIFF = 0x4004 ,
  GIF = 0x4005 ,
  END_IMAGE = 0x4FFF ,
  BEGIN_DATA = 0x5000 ,
  Teletext = 0x5001 ,
  MPEG_PSI_PACKETS = 0x5002 ,
  MPEG_TS_PACKETS = 0x5003 ,
  END_DATA = 0x5FFF
}
 StreamType::Enum. More...
 
enum  Enum {
  Unknown = 0 ,
  None = 0xFFFF ,
  AAC_ADTS = 1 ,
  AAC_ADIF = 2 ,
  AAC_MP4 = 3 ,
  AVCC = 4 ,
  AVC1 = AVCC ,
  MPEG_TS_BDAV = 5 ,
  MPEG_Audio_Layer1 = 6 ,
  MPEG_Audio_Layer2 = 7 ,
  MPEG_Audio_Layer3 = 8 ,
  G726_PACKED_RFC3551 = 9 ,
  G726_PACKED_AAL2 = 10 ,
  MPEG1_System = 11 ,
  MPEG2_System = 12 ,
  AVC_Annex_B = 13 ,
  AAC_RAW = 14
}
 StreamSubType::Enum. More...
 
enum  Enum {
  Unknown = 0 ,
  Progressive = 1 ,
  TopFieldFirst = 2 ,
  BottomFieldFirst = 3
}
 ScanType::Enum. More...
 
enum  Enum {
  NoDeinterlacing = 0 ,
  Duplicate = 1 ,
  Blend = 2 ,
  Median = 3 ,
  EdgeDetect = 4 ,
  MedianThreshold = 5 ,
  CAVT = 6
}
 DeinterlacingMethod::Enum. More...
 
enum  Enum {
  Unknown = 0 ,
  NearestNeighbor = 1 ,
  Linear = 2 ,
  Cubic = 4 ,
  Super = 8 ,
  Lanczos = 16
}
 InterpolationMethod::Enum. More...
 
enum  Enum {
  None = 0 ,
  Baseline = 66 ,
  Main = 77 ,
  High = 100 ,
  High10 = 110 ,
  High422 = 122 ,
  High444 = 144
}
 H264Profile::Enum. More...
 
enum  Enum {
  CAVLC = 0 ,
  CABAC = 1
}
 H264EntropyCodingMode::Enum. More...
 
enum  Enum {
  All = 0 ,
  Off = 1 ,
  InSlice = 2
}
 H264DeblockingFilter::Enum. More...
 
enum  Enum {
  Temporal = 0 ,
  Spatial = 1
}
 
enum  Enum {
  Only16x16 = 0 ,
  DownTo8x8 = 1 ,
  DownTo4x4 = 2
}
 
enum  Enum {
  Full = 0 ,
  ClassicLog = 1 ,
  Log = 2 ,
  EPZS = 3 ,
  FullOrthogonal = 4 ,
  LogOrthogonal = 5 ,
  UMH = 8
}
 H264MeMethod::Enum. More...
 
enum  Enum {
  Frames = 0 ,
  Fields = 1
}
 H264PicCodingType::Enum. More...
 
enum  Enum {
  ABR = 2 ,
  ConstantQuant = 3
}
 H264RateControlMethod. More...
 
enum  Enum {
  None = 0x0 ,
  KeyFrame = 0x1 ,
  Bos = 0x2 ,
  Eos = 0x4
}
 MediaSampleFlags::Enum. More...
 
enum  Enum {
  None = 0 ,
  I = 1 ,
  P = 2 ,
  B = 3 ,
  D = 4
}
 PictureType::Enum. More...
 
enum  Enum {
  None = 0 ,
  Main = 1 ,
  Main10 = 2
}
 H265Profile::Enum. More...
 
enum  Enum {
  None = 0 ,
  L1 = 30 ,
  L2 = 60 ,
  L21 = 63 ,
  L3 = 90 ,
  L31 = 93 ,
  L4 = 120 ,
  L41 = 123 ,
  L5 = 150 ,
  L51 = 153 ,
  L52 = 156 ,
  L6 = 180 ,
  L61 = 183 ,
  L62 = 186
}
 H265Level::Enum. More...
 
enum  Enum {
  Main = 0 ,
  High = 1
}
 H265Tier::Enum. More...
 
enum  Enum {
  None = 0 ,
  LR = 2 ,
  MidSide = 3 ,
  Joint = 4
}
 StereoMode::Enum. More...
 
enum  Enum {
  Unknown = 0 ,
  Audio = 1 ,
  Video = 2 ,
  Text = 3 ,
  Data = 4
}
 MediaType::Enum. More...
 
enum  Enum {
  Other = 0 ,
  FileIcon = 1 ,
  OtherFileIcon = 2 ,
  FrontCover = 3 ,
  BackCover = 4 ,
  LeafletPage = 5 ,
  Media = 6 ,
  LeadArtist = 7 ,
  Artist = 8 ,
  Conductor = 9 ,
  Band = 10 ,
  Composer = 11 ,
  TextWriter = 12 ,
  RecordingLocation = 13 ,
  DuringRecording = 14 ,
  DuringPerformance = 15 ,
  VideoCapture = 16 ,
  BrightColoredFish = 17 ,
  Illustration = 18 ,
  ArtistLogotype = 19 ,
  PublisherLogotype = 20
}
 The picture type is defined as in ID3. More...
 

Variables

static const char Album [] = "Album"
 Album.
 
static const char AlbumArtist [] = "AlbumArtist"
 Album artist.
 
static const char BeatsPerMinute [] = "BeatsPerMinute"
 Beats per minute.
 
const int32_t Codec = 9
 Common errors for encoders, decoders, muxers, demuxers and other A/V components.
 
static const char Comment [] = "Comment"
 Comment.
 
static const char Composer [] = "Composer"
 Composer.
 
static const char Conductor [] = "Conductor"
 Conductor.
 
static const char ContentGroup [] = "ContentGroup"
 Content group.
 
static const char Copyright [] = "Copyright"
 Copyright.
 
static const char Date [] = "Date"
 Date (YYYY-MM-DD)
 
static const char DiscNum [] = "DiscNum"
 Disc number is 1-based.
 
static const char EncodedBy [] = "EncodedBy"
 Encoding software.
 
static const char EncoderSettings [] = "EncoderSettings"
 Encoding software settings.
 
static const char FileType [] = "FileType"
 File type.
 
static const char Genre [] = "Genre"
 Genre.
 
static const char Gif [] = "image/gif"
 GIF MIME type.
 
static const char InternetRadioStation [] = "InternetRadioStation"
 Internet radio station name.
 
static const char InvolvedPeople [] = "InvolvedPeople"
 Involved people.
 
static const char Jpeg [] = "image/jpeg"
 JPEG MIME type.
 
static const char Language [] = "Language"
 Language.
 
static const char LeadArtist [] = "LeadArtist"
 Lead artist.
 
static const char Lyricist [] = "Lyricist"
 Lyricist / text writer.
 
static const char MediaType [] = "MediaType"
 Media type.
 
static const char OrigAlbum [] = "OrigAlbum"
 Original album.
 
static const char OrigArtist [] = "OrigArtist"
 Original artist.
 
static const char OrigFileName [] = "OrigFileName"
 Original file name.
 
static const char OrigLyricist [] = "OrigLyricist"
 Original lyricist / text writer.
 
static const char PlayCounter [] = "PlayCounter"
 Play counter.
 
static const char Png [] = "image/png"
 PNG MIME type.
 
static const char Popularimeter [] = "Popularimeter"
 Popularity meter / rating.
 
static const char Private [] = "Private"
 Private comment.
 
static const char Publisher [] = "Publisher"
 Publisher.
 
static const char RecordingDates [] = "RecordingDates"
 Recording dates.
 
static const char RemixArtist [] = "RemixArtist"
 Remix / cover artist.
 
static const char Subtitle [] = "Subtitle"
 Subtitle.
 
static const char Tiff [] = "image/tiff"
 TIFF MIME type.
 
static const char Time [] = "Time"
 Time.
 
static const char Title [] = "Title"
 Title.
 
static const char TrackNum [] = "TrackNum"
 Track number is 1-based.
 
static const char UnsyncedLyrics [] = "UnsyncedLyrics"
 Unsynced lyrics.
 
static const char UrlArtist [] = "UrlArtist"
 URL pointing at the artist's official web page.
 
static const char UrlAudioFile [] = "UrlAudioFile"
 URL pointing at a file specific web page.
 
static const char UrlAudioSource [] = "UrlAudioSource"
 URL pointing at the official web page for the source of the audio file, e.g.
 
static const char UrlCommercialInfo [] = "UrlCommercialInfo"
 URL pointing at a web page with information such as where the album can be bought.
 
static const char UrlCopyright [] = "UrlCopyright"
 URL pointing at a web page where the terms of use and ownership of the file is described.
 
static const char UrlPayment [] = "UrlPayment"
 URL pointing at a web page that will handle the process of paying for this file.
 
static const char UrlPublisher [] = "UrlPublisher"
 URL pointing at the official web page for the publisher.
 
static const char UrlRadioPage [] = "UrlRadioPage"
 URL pointing at the homepage of the Internet radio station.
 
static const char UrlUser [] = "UrlUser"
 User URL.
 
static const char UserText [] = "UserText"
 User text.
 
static const char Year [] = "Year"
 Year only (YYYY)