@@ -446,7 +446,9 @@ impl<W: Write + 'static> Integration<W> {
446446 for ( e1, e2) in events. iter ( ) . tuple_windows ( ) {
447447 video. encoder . ingest_event ( * e1) ?;
448448 if e2. delta_t != e1. delta_t {
449- video. feature_test ( e1) ;
449+ if let Err ( e) = video. feature_test ( e1) {
450+ return Err ( CodecError :: VisionError ( e. to_string ( ) ) ) ;
451+ }
450452 }
451453 }
452454 }
@@ -568,9 +570,6 @@ impl<W: Write + 'static> Integration<W> {
568570 for events in & big_buffer {
569571 for ( e1, e2) in events. iter ( ) . tuple_windows ( ) {
570572 video. encoder . ingest_event ( * e1) ?;
571- if e2. delta_t != e1. delta_t {
572- video. feature_test ( e1) ;
573- }
574573 }
575574 }
576575
@@ -873,6 +872,10 @@ impl<W: Write + 'static + std::marker::Send> Source<W> for Davis<W> {
873872 ret
874873 }
875874
875+ fn crf ( & mut self , crf : u8 ) {
876+ self . video . update_crf ( crf, true ) ;
877+ }
878+
876879 fn get_video_mut ( & mut self ) -> & mut Video < W > {
877880 & mut self . video
878881 }
@@ -894,7 +897,7 @@ impl<W: Write + 'static> VideoBuilder<W> for Davis<W> {
894897 }
895898
896899 fn crf ( mut self , crf : u8 ) -> Self {
897- self . video . update_crf ( crf) ;
900+ self . video . update_crf ( crf, false ) ;
898901 self
899902 }
900903
@@ -963,8 +966,8 @@ impl<W: Write + 'static> VideoBuilder<W> for Davis<W> {
963966 self
964967 }
965968
966- fn detect_features ( mut self , detect_features : bool ) -> Self {
967- self . video = self . video . detect_features ( detect_features) ;
969+ fn detect_features ( mut self , detect_features : bool , show_features : bool ) -> Self {
970+ self . video = self . video . detect_features ( detect_features, show_features ) ;
968971 self
969972 }
970973}
0 commit comments