diff --git a/components/codecs/src/nvidia_decoder.cpp b/components/codecs/src/nvidia_decoder.cpp index 0901e518804ecf874005d7351ad56d53387ba6f4..20632ffab9a1a3f5b0b7b883a4146e30ad76fe3c 100644 --- a/components/codecs/src/nvidia_decoder.cpp +++ b/components/codecs/src/nvidia_decoder.cpp @@ -100,7 +100,7 @@ uint8_t* NvidiaDecoder::_decode(const uint8_t* src, uint64_t srcSize) { // Some cuvid implementations have one frame latency. Refeed frame into pipeline in this case. const uint32_t DECODE_TRIES = 3; for (uint32_t i = 0; (i < DECODE_TRIES) && (numFramesDecoded <= 0); ++i) - nv_decoder_->Decode(src, srcSize, &decodedFrames, &numFramesDecoded, CUVID_PKT_ENDOFPICTURE, &timeStamps, n_++, stream_); + nv_decoder_->Decode(src, static_cast<int32_t>(srcSize), &decodedFrames, &numFramesDecoded, CUVID_PKT_ENDOFPICTURE, &timeStamps, n_++, stream_); } catch (NVDECException& e) { throw FTL_Error("Decode failed (" << e.getErrorString() << ", error " << std::to_string(e.getErrorCode()) << " = " + DecErrorCodeToString(e.getErrorCode()) << ")"); } @@ -142,7 +142,6 @@ bool NvidiaDecoder::decode(const ftl::codecs::Packet &pkt, cv::cuda::GpuMat &out return false; } - int rc = 0; uint8_t *decodedPtr = nullptr; if (pkt.flags & ftl::codecs::kFlagMultiple) { @@ -201,9 +200,9 @@ bool NvidiaDecoder::decode(const ftl::codecs::Packet &pkt, cv::cuda::GpuMat &out } else { // Flag 0x1 means frame is in RGB so needs conversion to BGR if (pkt.flags & 0x1) { - Nv12ToColor32<BGRA32>(decodedPtr, width_, out.data, out.step1(), width_, height_, 0, stream_); + Nv12ToColor32<BGRA32>(decodedPtr, width_, out.data, static_cast<int>(out.step1()), width_, height_, 0, stream_); } else { - Nv12ToColor32<RGBA32>(decodedPtr, width_, out.data, out.step1(), width_, height_, 0, stream_); + Nv12ToColor32<RGBA32>(decodedPtr, width_, out.data, static_cast<int>(out.step1()), width_, height_, 0, stream_); } } diff --git a/components/codecs/src/nvidia_encoder.cpp b/components/codecs/src/nvidia_encoder.cpp index b3b022d2f0203445a3e0fcf05decd72aaedbfc65..846eefeb7be82aa90097a56504fe21c58ac07985 100644 --- a/components/codecs/src/nvidia_encoder.cpp +++ b/components/codecs/src/nvidia_encoder.cpp @@ -185,7 +185,7 @@ bool NvidiaEncoder::encode(const cv::cuda::GpuMat &in, ftl::codecs::Packet &pkt) } else if (params_.isLossy()) { ftl::cuda::depth_to_nv12_10(in, (ushort*)f->inputPtr, (ushort*)(((uchar*)f->inputPtr)+(nvenc_->GetEncodeHeight()*f->pitch)), f->pitch/2, 16.0f, stream_); } else { - ftl::cuda::float_to_nv12_16bit((float*)in.data, in.step1(), (uchar*)f->inputPtr, f->pitch, nvenc_->GetEncodeWidth()/2, nvenc_->GetEncodeHeight(), cv::cuda::StreamAccessor::getStream(stream_)); + ftl::cuda::float_to_nv12_16bit((float*)in.data, static_cast<uint32_t>(in.step1()), (uchar*)f->inputPtr, f->pitch, nvenc_->GetEncodeWidth()/2, nvenc_->GetEncodeHeight(), cv::cuda::StreamAccessor::getStream(stream_)); } // TODO: Use page locked memory? @@ -281,7 +281,7 @@ bool NvidiaEncoder::_createEncoder(const cv::cuda::GpuMat &in, const ftl::codecs if (params.isLossy()) { - encodeConfig.rcParams.averageBitRate = bitrate; + encodeConfig.rcParams.averageBitRate = static_cast<uint32_t>(bitrate); encodeConfig.rcParams.rateControlMode = NV_ENC_PARAMS_RC_CBR_LOWDELAY_HQ; encodeConfig.rcParams.vbvBufferSize = encodeConfig.rcParams.averageBitRate * initializeParams.frameRateDen / initializeParams.frameRateNum; // bitrate / framerate = one frame encodeConfig.rcParams.maxBitRate = encodeConfig.rcParams.averageBitRate; diff --git a/components/common/cpp/include/ftl/cuda_operators.hpp b/components/common/cpp/include/ftl/cuda_operators.hpp index 5fc84fbcb158bc599b8bca55e38035757a857648..304818b58a55610f17ec44dc4e2f714a151b8267 100644 --- a/components/common/cpp/include/ftl/cuda_operators.hpp +++ b/components/common/cpp/include/ftl/cuda_operators.hpp @@ -240,7 +240,7 @@ inline __host__ __device__ float2 normalize(float2 v) // floor inline __host__ __device__ float2 floor(const float2 v) { - return make_float2(floor(v.x), floor(v.y)); + return make_float2(floorf(v.x), floorf(v.y)); } // reflect @@ -252,7 +252,7 @@ inline __host__ __device__ float2 reflect(float2 i, float2 n) // absolute value inline __host__ __device__ float2 fabs(float2 v) { - return make_float2(fabs(v.x), fabs(v.y)); + return make_float2(fabsf(v.x), fabsf(v.y)); } inline __device__ __host__ int2 sign(float2 f) { @@ -423,7 +423,7 @@ inline __host__ __device__ float3 normalize(float3 v) // floor inline __host__ __device__ float3 floor(const float3 v) { - return make_float3(floor(v.x), floor(v.y), floor(v.z)); + return make_float3(floorf(v.x), floorf(v.y), floorf(v.z)); } // reflect @@ -435,7 +435,7 @@ inline __host__ __device__ float3 reflect(float3 i, float3 n) // absolute value inline __host__ __device__ float3 fabs(float3 v) { - return make_float3(fabs(v.x), fabs(v.y), fabs(v.z)); + return make_float3(fabsf(v.x), fabsf(v.y), fabsf(v.z)); } inline __device__ __host__ int3 sign(float3 f) { @@ -567,13 +567,13 @@ inline __host__ __device__ float4 normalize(float4 v) // floor inline __host__ __device__ float4 floor(const float4 v) { - return make_float4(floor(v.x), floor(v.y), floor(v.z), floor(v.w)); + return make_float4(floorf(v.x), floorf(v.y), floorf(v.z), floorf(v.w)); } // absolute value inline __host__ __device__ float4 fabs(float4 v) { - return make_float4(fabs(v.x), fabs(v.y), fabs(v.z), fabs(v.w)); + return make_float4(fabsf(v.x), fabsf(v.y), fabsf(v.z), fabsf(v.w)); } // int3 functions diff --git a/components/common/cpp/include/ftl/threads.hpp b/components/common/cpp/include/ftl/threads.hpp index 03536e2ff4207df8843a4536c43ae428ca951866..38021f099746a9c836269c9b695037808d299bee 100644 --- a/components/common/cpp/include/ftl/threads.hpp +++ b/components/common/cpp/include/ftl/threads.hpp @@ -7,7 +7,7 @@ #define POOL_SIZE 10 -#define DEBUG_MUTEX +//#define DEBUG_MUTEX #define MUTEX_TIMEOUT 5 #if defined DEBUG_MUTEX diff --git a/components/common/cpp/include/ftl/utility/msgpack.hpp b/components/common/cpp/include/ftl/utility/msgpack.hpp index 30319d2256c0a32d324346637727e216a4620d1b..a2f2030094b02407e195d250e1f6b1a2f37d9c80 100644 --- a/components/common/cpp/include/ftl/utility/msgpack.hpp +++ b/components/common/cpp/include/ftl/utility/msgpack.hpp @@ -206,7 +206,7 @@ struct object_with_zone<cv::Mat> { // https://github.com/msgpack/msgpack-c/wiki/v2_0_cpp_object#conversion // raw_ref not copied to zone (is this a problem?) o.via.array.ptr[2] = msgpack::object( - msgpack::type::raw_ref(reinterpret_cast<char*>(v.data), size), + msgpack::type::raw_ref(reinterpret_cast<char*>(v.data), static_cast<uint32_t>(size)), o.zone); } }; diff --git a/components/common/cpp/src/configuration.cpp b/components/common/cpp/src/configuration.cpp index db446490b7311ae72a4605f9f026f45872c22683..546db6eb94989edca8c3239340a93bf335835f0b 100644 --- a/components/common/cpp/src/configuration.cpp +++ b/components/common/cpp/src/configuration.cpp @@ -881,7 +881,7 @@ Configurable *ftl::config::configure(int argc, char **argv, const std::string &r // Check CUDA ftl::cuda::initialise(); - int pool_size = rootcfg->value("thread_pool_factor", 2.0f)*std::thread::hardware_concurrency(); + int pool_size = int(rootcfg->value("thread_pool_factor", 2.0f)*float(std::thread::hardware_concurrency())); if (pool_size != ftl::pool.size()) ftl::pool.resize(pool_size); diff --git a/components/common/cpp/src/timer.cpp b/components/common/cpp/src/timer.cpp index 54ab2cb642a38d308d7428d5a5326cafde88af5b..50bddb1e3eba0055710e01f767c50612de1b0a6d 100644 --- a/components/common/cpp/src/timer.cpp +++ b/components/common/cpp/src/timer.cpp @@ -117,7 +117,7 @@ void ftl::timer::setHighPrecision(bool hp) { } int ftl::timer::getInterval() { - return mspf; + return static_cast<int>(mspf); } void ftl::timer::setClockAdjustment(int64_t ms) { diff --git a/components/structures/src/frameset.cpp b/components/structures/src/frameset.cpp index 3a876c36803b895aba156747262b81d02c8a3c98..fe45a6ed34a9bbc3cf6bc10a4eed2924a1853742 100644 --- a/components/structures/src/frameset.cpp +++ b/components/structures/src/frameset.cpp @@ -1,6 +1,8 @@ #include <ftl/data/new_frameset.hpp> #include <ftl/data/framepool.hpp> +#include <loguru.hpp> + using ftl::data::Frame; using ftl::data::FrameSet; diff --git a/components/structures/test/frame_example_1.cpp b/components/structures/test/frame_example_1.cpp index 7591a5198d9eb7589cdbd57a5de26650e96a5c60..cb4d20e45b3a61f8c059b6450ec254e3eac74a0f 100644 --- a/components/structures/test/frame_example_1.cpp +++ b/components/structures/test/frame_example_1.cpp @@ -5,6 +5,8 @@ #include <ftl/data/framepool.hpp> #include <ftl/timer.hpp> +#include <loguru.hpp> + using ftl::data::Session; using ftl::data::Frame; using ftl::codecs::Channel;