X-Git-Url: https://git.sesse.net/?a=blobdiff_plain;f=x264_speed_control.cpp;h=530feb74b41f375847b6cc28fa4cc571805f2880;hb=96cb6414f85e0ef4d660b7bd56267303e80fcd05;hp=b6a60e97b877a566331bec7f7c99a578321af1c8;hpb=4194f21b1a5e4ccfe79d40024075ab9795814029;p=nageru diff --git a/x264_speed_control.cpp b/x264_speed_control.cpp index b6a60e9..530feb7 100644 --- a/x264_speed_control.cpp +++ b/x264_speed_control.cpp @@ -16,6 +16,8 @@ using namespace std; using namespace std::chrono; +#define SC_PRESETS 26 + X264SpeedControl::X264SpeedControl(x264_t *x264, float f_speed, int i_buffer_size, float f_buffer_init) : dyn(load_x264_for_bit_depth(global_flags.x264_bit_depth)), x264(x264), f_speed(f_speed) @@ -40,7 +42,8 @@ X264SpeedControl::X264SpeedControl(x264_t *x264, float f_speed, int i_buffer_siz metric_x264_speedcontrol_buffer_available_seconds = buffer_fill * 1e-6; metric_x264_speedcontrol_buffer_size_seconds = buffer_size * 1e-6; - global_metrics.add_histogram("x264_speedcontrol_preset_used_frames", {}, metric_x264_speedcontrol_preset_used_frames, SC_PRESETS); + metric_x264_speedcontrol_preset_used_frames.init_uniform(SC_PRESETS); + global_metrics.add("x264_speedcontrol_preset_used_frames", &metric_x264_speedcontrol_preset_used_frames); global_metrics.add("x264_speedcontrol_buffer_available_seconds", &metric_x264_speedcontrol_buffer_available_seconds, Metrics::TYPE_GAUGE); global_metrics.add("x264_speedcontrol_buffer_size_seconds", &metric_x264_speedcontrol_buffer_size_seconds, Metrics::TYPE_GAUGE); global_metrics.add("x264_speedcontrol_idle_frames", &metric_x264_speedcontrol_idle_frames); @@ -337,5 +340,5 @@ void X264SpeedControl::apply_preset(int new_preset) dyn.x264_encoder_reconfig(x264, &p); preset = new_preset; - ++metric_x264_speedcontrol_preset_used_frames[new_preset]; + metric_x264_speedcontrol_preset_used_frames.count_event(new_preset); }