Rework to remove static temp_img_buffer. Is now a class member. Must be allocated as needed.
This commit is contained in:
parent
26d89292d7
commit
968acc2d43
|
@ -422,12 +422,17 @@ bool MonitorStream::sendFrame(Image *image, SystemTimePoint timestamp) {
|
||||||
|
|
||||||
/* double pts = */ vid_stream->EncodeFrame(send_image->Buffer(), send_image->Size(), config.mpeg_timed_frames, delta_time.count());
|
/* double pts = */ vid_stream->EncodeFrame(send_image->Buffer(), send_image->Size(), config.mpeg_timed_frames, delta_time.count());
|
||||||
} else {
|
} else {
|
||||||
static unsigned char temp_img_buffer[ZM_MAX_IMAGE_SIZE];
|
if (temp_img_buffer_size < send_image->Size()) {
|
||||||
|
Debug(1, "Resizing image buffer from %zu to %u",
|
||||||
|
temp_img_buffer_size, send_image->Size());
|
||||||
|
delete[] temp_img_buffer;
|
||||||
|
temp_img_buffer = new uint8_t[send_image->Size()];
|
||||||
|
temp_img_buffer_size = send_image->Size();
|
||||||
|
}
|
||||||
|
|
||||||
int img_buffer_size = 0;
|
int img_buffer_size = 0;
|
||||||
unsigned char *img_buffer = temp_img_buffer;
|
unsigned char *img_buffer = temp_img_buffer;
|
||||||
|
|
||||||
|
|
||||||
switch ( type ) {
|
switch ( type ) {
|
||||||
case STREAM_JPEG :
|
case STREAM_JPEG :
|
||||||
send_image->EncodeJpeg(img_buffer, &img_buffer_size);
|
send_image->EncodeJpeg(img_buffer, &img_buffer_size);
|
||||||
|
|
Loading…
Reference in New Issue