41 frame_data_buff.bpp = rs_stream.
bpp;
43 frame_data_buff.profile = rs_profile;
44 m_stream_profile = rs_profile;
45 frame_data_buff.stride = rs_stream.
bpp * rs_stream.
width;
46 pixels_buff.resize(frame_data_buff.stride * rs_stream.
height, 0);
47 frame_data_buff.pixels = pixels_buff.data();
48 frame_data_buff.deleter = this->frame_deleter;
50 m_rs_stream = rs_stream;
55 return m_stream_profile;
60 return m_rs_stream.type;
67 ERR <<
"Queue is full. Dropping frame for: " << this->m_rs_stream.uid;
71 std::lock_guard<std::mutex>
lock(this->stream_lock);
72 frames_queue.push(new_raw_frame);
82 std::lock_guard<std::mutex>
lock(this->stream_lock);
90 while(!frames_queue.empty())
96 INF <<
"Frames queue cleaned for " << m_rs_stream.uid;
101 std::lock_guard<std::mutex>
lock(this->stream_lock);
102 return (
int)frames_queue.size();
108 return memory_pool_instance;
120 get_memory_pool().returnMem((
unsigned char*)p -
sizeof(
RsFrameHeader));
static const textual_icon lock
rs2::stream_profile m_stream_profile
void insert_frame(Raw_Frame *new_raw_frame)
rs2_software_video_frame frame_data_buff
std::map< long long int, rs2_extrinsics > extrinsics_map
Raw_Frame & operator=(const Raw_Frame &)
RsMetadataHeader * m_metadata
All the parameters required to define a video stream.
std::queue< Raw_Frame * > frames_queue
Raw_Frame(char *buffer, int size, struct timeval timestamp)
rs2_video_stream m_rs_stream
Raw_Frame * extract_frame()
rs_rtp_stream(rs2_video_stream rs_stream, rs2::stream_profile rs_profile)
static MemoryPool & get_memory_pool()
std::vector< uint8_t > pixels_buff
rs2_stream
Streams are different types of data provided by RealSense devices.
struct timeval m_timestamp
All the parameters required to define a video frame.
static void frame_deleter(void *p)
const rs2::stream_profile get_stream_profile()
const int RTP_QUEUE_MAX_SIZE