22 #include <boost/cstdint.hpp>
23 #include <boost/shared_ptr.hpp>
24 #include <boost/scoped_ptr.hpp>
32 #define RTMP_DEFAULT_CHUNKSIZE 128
262 inline boost::uint8_t*
271 inline const boost::uint8_t*
284 inline const boost::uint8_t*
344 bool connect(
const URL&
url);
369 void setBufferTime(
size_t time,
int streamID);
417 if (_messageQueue.empty())
return boost::shared_ptr<SimpleBuffer>();
418 boost::shared_ptr<SimpleBuffer>
b = _messageQueue.front();
419 _messageQueue.pop_front();
429 if (_flvQueue.empty())
return boost::shared_ptr<SimpleBuffer>();
430 boost::shared_ptr<SimpleBuffer>
b = _flvQueue.front();
431 _flvQueue.pop_front();
439 int readSocket(boost::uint8_t* dst,
int num);
448 _serverBandwidth = bw;
453 return _serverBandwidth;
485 bool hasPacket(ChannelType
t,
size_t channel)
const;
491 RTMPPacket& getPacket(ChannelType
t,
size_t channel);
506 typedef std::map<size_t, RTMPPacket> ChannelSet;
511 ChannelSet _inChannels;
514 ChannelSet _outChannels;
516 std::deque<boost::shared_ptr<SimpleBuffer> > _messageQueue;
517 std::deque<boost::shared_ptr<SimpleBuffer> > _flvQueue;
520 boost::uint32_t _serverBandwidth;
523 boost::uint32_t _bandwidth;
526 size_t _outChunkSize;
528 boost::scoped_ptr<HandShaker> _handShaker;
538 boost::scoped_ptr<RTMPPacket> _incompletePacket;