From 21e8c6dcd13e8dc6524a61d28385710bfa97f466 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sebastian=20Dr=C3=B6ge?= Date: Sat, 9 Oct 2021 12:14:37 +0300 Subject: [PATCH] pngenc: Don't recreate the encoder after every frame Version 0.17.2 of the encoder allows again to encode frame after frame without creating a new encoder instance. --- video/rspng/Cargo.toml | 2 +- video/rspng/src/pngenc/imp.rs | 9 --------- 2 files changed, 1 insertion(+), 10 deletions(-) diff --git a/video/rspng/Cargo.toml b/video/rspng/Cargo.toml index bd074538..dfbd01b8 100644 --- a/video/rspng/Cargo.toml +++ b/video/rspng/Cargo.toml @@ -10,7 +10,7 @@ description = "An PNG encoder/decoder written in pure Rust" [dependencies] gst = { package = "gstreamer", git = "https://gitlab.freedesktop.org/gstreamer/gstreamer-rs" } gst_video = { package = "gstreamer-video", git = "https://gitlab.freedesktop.org/gstreamer/gstreamer-rs" } -png = "0.17" +png = "0.17.2" once_cell = "1" parking_lot = "0.11" atomic_refcell = "0.1" diff --git a/video/rspng/src/pngenc/imp.rs b/video/rspng/src/pngenc/imp.rs index dbe1e638..aa680b79 100644 --- a/video/rspng/src/pngenc/imp.rs +++ b/video/rspng/src/pngenc/imp.rs @@ -333,15 +333,6 @@ impl VideoEncoderImpl for PngEncoder { let mut state_guard = self.state.lock(); let state = state_guard.as_mut().ok_or(gst::FlowError::NotNegotiated)?; - // FIXME: https://github.com/image-rs/image-png/issues/301 - { - let settings = self.settings.lock(); - state.reset(*settings).map_err(|err| { - err.log_with_object(element); - gst::FlowError::Error - })?; - } - gst_debug!( CAT, obj: element,