From f0e6048e60729a661464069d8750f51e90568235 Mon Sep 17 00:00:00 2001
From: Nicolas Pope <nwpope@utu.fi>
Date: Sat, 6 Jun 2020 08:50:58 +0300
Subject: [PATCH] Attempt another opencv encoder fix

---
 components/codecs/src/opencv_encoder.cpp | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/components/codecs/src/opencv_encoder.cpp b/components/codecs/src/opencv_encoder.cpp
index 313d1e9b9..75f1a0553 100644
--- a/components/codecs/src/opencv_encoder.cpp
+++ b/components/codecs/src/opencv_encoder.cpp
@@ -28,9 +28,9 @@ bool OpenCVEncoder::supports(ftl::codecs::codec_t codec) {
 }
 
 bool OpenCVEncoder::encode(const cv::cuda::GpuMat &in, ftl::codecs::Packet &pkt) {
-	bool is_colour = in.type() == CV_8UC4 || in.type() == CV_8UC1;
+	bool is_colour = in.type() == CV_8UC4;
 
-	if (pkt.codec == codec_t::Any) pkt.codec = (is_colour && in.type() != CV_8UC1) ? codec_t::JPG : codec_t::PNG;
+	if (pkt.codec == codec_t::Any) pkt.codec = (is_colour) ? codec_t::JPG : codec_t::PNG;
 	if (!supports(pkt.codec)) return false;
 
 	if (!is_colour && pkt.codec == codec_t::JPG) {
@@ -50,7 +50,7 @@ bool OpenCVEncoder::encode(const cv::cuda::GpuMat &in, ftl::codecs::Packet &pkt)
 
 	in.download(tmp_);
 
-	if (!is_colour) {
+	if (!is_colour && in.type() == CV_32F) {
 		tmp_.convertTo(tmp_, CV_16U, 1000.0f);
 	}
 
-- 
GitLab