Implement automatic setting of redorder_queue_size in videostore by implementing has_out_of_order_packets and get_max_keyframe_interval in the monitor object.
parent
cb7d954a87
commit
f4d3b979f4
|
@ -657,6 +657,9 @@ public:
|
|||
return shared_data->janus_pin;
|
||||
}
|
||||
|
||||
inline bool has_out_of_order_packets() const { return packetqueue.has_out_of_order_packets(); };
|
||||
int get_max_keyframe_interval() const { return packetqueue.get_max_keyframe_interval(); };
|
||||
|
||||
bool OnvifEnabled() {
|
||||
return onvif_event_listener;
|
||||
}
|
||||
|
|
|
@ -152,6 +152,11 @@ bool VideoStore::open() {
|
|||
Debug(1, "reorder_queue_size set to %zu", reorder_queue_size);
|
||||
// remove it to prevent complaining later.
|
||||
av_dict_set(&opts, "reorder_queue_size", nullptr, AV_DICT_MATCH_CASE);
|
||||
} else {
|
||||
if (monitor->has_out_of_order_packets()) {
|
||||
reorder_queue_size = monitor->get_max_keyframe_interval();
|
||||
Debug(1, "reorder_queue_size set to %zu because we have out of order packets", reorder_queue_size);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in New Issue