VideoTools
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Pages
Gv::AvcReader Class Reference

A decoder for an AVC (aka H.264) video packet. More...

#include <gvavcreader.h>

Classes

struct  Component
 Describes one plane of a Gv::AvcReader image, and points to its data. More...
 
struct  Data
 Describes a Gv::AvcReader image, and points to its data via up to four Components. More...
 
struct  Iterator
 A row iterator for Gv::AvcReader providing r/g/b or y/u/v across a row. More...
 
struct  SimpleIterator
 An optimised row iterator for Gv::AvcReader when simple(). More...
 

Public Member Functions

 AvcReader (AvcReaderStream &stream, const char *p, size_t n)
 Constructor taking a complete NALU data buffer, including a leading four-byte 00-00-00-01 start code. More...
 
 AvcReader (AvcReaderStream &stream, const unsigned char *p, size_t n)
 Constructor overload for unsigned char.
 
bool valid () const
 Returns true if a picture was decoded successfully.
 
int dx () const
 Returns the image width.
 
int dy () const
 Returns the image height.
 
bool keyframe () const
 Returns true if a key frame.
 
unsigned char r (int x, int y) const
 Returns a pixel red value.
 
unsigned char g (int x, int y) const
 Returns a pixel green value.
 
unsigned char b (int x, int y) const
 Returns a pixel blue value.
 
unsigned char luma (int x, int y) const
 Returns a pixel luma value.
 
unsigned int rgb (int x, int y) const
 Returns the three rgb values packed into one integer.
 
Gr::ImageType fill (std::vector< char > &, int scale=1, bool monochrome=false)
 Fills the supplied buffer with RGB or greyscale image data and returns the raw image type. More...
 
bool simple () const
 Returns true if the data format is simple enough for the optimised iterator, Gv::AvcReader::SimpleIterator. More...
 

Static Public Member Functions

static bool available ()
 Returns true if the decoder library is built in.
 

Friends

struct Iterator
 
struct SimpleIterator
 

Detailed Description

A decoder for an AVC (aka H.264) video packet.

The class name alludes to the Gr::JpegReader and Gr::PngReader classes, which have a similar interface.

Definition at line 79 of file gvavcreader.h.

Constructor & Destructor Documentation

Gv::AvcReader::AvcReader ( AvcReaderStream stream,
const char *  p,
size_t  n 
)
inline

Constructor taking a complete NALU data buffer, including a leading four-byte 00-00-00-01 start code.

Definition at line 225 of file gvavcreader.h.

Member Function Documentation

Gr::ImageType Gv::AvcReader::fill ( std::vector< char > &  buffer,
int  scale = 1,
bool  monochrome = false 
)

Fills the supplied buffer with RGB or greyscale image data and returns the raw image type.

Definition at line 510 of file gvavcreader_libav.cpp.

bool Gv::AvcReader::simple ( ) const
inline

Returns true if the data format is simple enough for the optimised iterator, Gv::AvcReader::SimpleIterator.

Definition at line 248 of file gvavcreader.h.


The documentation for this class was generated from the following files: