![]() |
Gray C++ Libraries
0.0.2
A set of C++ libraries for MSVC, GNU on Windows, WinCE, Linux
|
#include <cAVIFileWriter.h>
Public Member Functions | |
cAVIFileWriter (cStreamOutput *pOut, bool bWriteOptional=false) | |
virtual | ~cAVIFileWriter () |
HRESULT | OnHeaderAudio (const cAVHeaderStream &head, const cWaveFormatEx *pForm, size_t nSizeForm) |
HRESULT | OnHeaderVideo (const cAVHeaderStream &head, const cSurfaceBitmapInfo *pForm, size_t nSizeForm) |
virtual HRESULT | OnHeaderOpen (const cAVHeader &head) override |
virtual HRESULT | OnHeaderStream (const cAVHeaderStream &head, const void *pForm, size_t nSizeForm) override |
virtual HRESULT | OnHeaderClose () override |
virtual HRESULT | OnFrame (const cAVHeaderFrame &head, const void *pData, size_t nSizeData) override |
virtual HRESULT | OnClose () override |
![]() | |
virtual | ~cAVSink () |
![]() | |
cRIFFWriter (cStreamOutput *pOut) | |
HRESULT | Ascend (cRIFFHeadX *pChunk) |
HRESULT | CreateChunk (cRIFFHeadX *pChunk, RIFFIO_TYPE dwFlags=RIFFIO_NULL) |
Public Attributes | |
bool | m_bWriteOptional |
write the optional parts. 'JUNK'+'strn' More... | |
bool | m_bVideoCompressed |
STREAM_POS_t | m_nVideoHeader |
Offset to the video header. for patch on close. More... | |
UINT32 | m_nVideoFrames |
Patch this on file close. More... | |
STREAM_POS_t | m_nAudioHeader |
Offset to the audio header. for patch on close. More... | |
UINT32 | m_nAudioFrames |
Patch this on file close. More... | |
cRIFFHeadX | m_headRIFF |
cRIFFHeadX | m_headLIST |
'movi' or 'hdrl' More... | |
MainAVIHeader | m_avimh |
Build this up to patch at the end. More... | |
RIFF_SIZE_t | m_nMoviChunkSize |
Total m_nDataSize of the FOURCC_movi chunk in the file as we build it. More... | |
cAVIFileIndex | m_Index |
index all the frames we get. Video + Audio. write this last. More... | |
![]() | |
cStreamOutput * | m_pOut |
File or memory stream output. More... | |
Static Public Attributes | |
static const int | k_SuggestedBufferSec = 4 |
for suggested buffer sizing. More... | |
build an AVI format file. similar to _WIN32 VFW IAVIFile uses RIFF file format.
GrayLib::cAVIFileWriter::cAVIFileWriter | ( | cStreamOutput * | pOut, |
bool | bWriteOptional = false |
||
) |
|
virtual |
|
overridevirtual |
cAVSink update main RIFF chunk size
Reimplemented from GrayLib::cAVSink.
|
overridevirtual |
CAVPkt_Frame Start of a new data frame. Video or Audio data.
Reimplemented from GrayLib::cAVSink.
HRESULT GrayLib::cAVIFileWriter::OnHeaderAudio | ( | const cAVHeaderStream & | head, |
const cWaveFormatEx * | pForm, | ||
size_t | nSizeForm | ||
) |
|
overridevirtual |
cAVSink Close the FOURCC_hdrl m_bWriteOptional -> Write out the JUNK block for padding to AVI_HEADERSIZE
Reimplemented from GrayLib::cAVSink.
cAVSink CAVPkt_HeaderOpen Just overwrite the file if there was already data here? AVIF_HASINDEX
Reimplemented from GrayLib::cAVSink.
|
overridevirtual |
cAVSink CAVPkt_HeaderStream
Reimplemented from GrayLib::cAVSink.
HRESULT GrayLib::cAVIFileWriter::OnHeaderVideo | ( | const cAVHeaderStream & | head, |
const cSurfaceBitmapInfo * | pForm, | ||
size_t | nSizeForm | ||
) |
|
static |
for suggested buffer sizing.
MainAVIHeader GrayLib::cAVIFileWriter::m_avimh |
Build this up to patch at the end.
bool GrayLib::cAVIFileWriter::m_bVideoCompressed |
bool GrayLib::cAVIFileWriter::m_bWriteOptional |
write the optional parts. 'JUNK'+'strn'
cRIFFHeadX GrayLib::cAVIFileWriter::m_headLIST |
'movi' or 'hdrl'
cRIFFHeadX GrayLib::cAVIFileWriter::m_headRIFF |
cAVIFileIndex GrayLib::cAVIFileWriter::m_Index |
index all the frames we get. Video + Audio. write this last.
UINT32 GrayLib::cAVIFileWriter::m_nAudioFrames |
Patch this on file close.
STREAM_POS_t GrayLib::cAVIFileWriter::m_nAudioHeader |
Offset to the audio header. for patch on close.
RIFF_SIZE_t GrayLib::cAVIFileWriter::m_nMoviChunkSize |
Total m_nDataSize of the FOURCC_movi chunk in the file as we build it.
UINT32 GrayLib::cAVIFileWriter::m_nVideoFrames |
Patch this on file close.
STREAM_POS_t GrayLib::cAVIFileWriter::m_nVideoHeader |
Offset to the video header. for patch on close.