00001 #ifndef _AVFRINGBUFFER_H_ 00002 #define _AVFRINGBUFFER_H_ 00003 00004 #include "RingBuffer.h" 00005 00006 extern "C" { 00007 #include "../libavformat/avformat.h" 00008 } 00009 00010 extern URLProtocol AVF_RingBuffer_Protocol; 00011 00012 extern int AVF_Write_Packet(void *opaque, uint8_t *buf, int buf_size); 00013 extern int AVF_Read_Packet(void *opaque, uint8_t *buf, int buf_size); 00014 extern offset_t AVF_Seek_Packet(void *opaque, int64_t offset, int whence); 00015 00016 class AVFRingBuffer 00017 { 00018 public: 00019 AVFRingBuffer(RingBuffer *rbuffer = NULL) { m_rbuffer = rbuffer; } 00020 00021 void SetRingBuffer(RingBuffer *rbuffer) { m_rbuffer = rbuffer; } 00022 RingBuffer *GetRingBuffer(void) { return m_rbuffer; } 00023 00024 private: 00025 RingBuffer *m_rbuffer; 00026 }; 00027 00028 #endif 00029 00030 /* vim: set expandtab tabstop=4 shiftwidth=4: */
1.5.5