# decoder_demo **Repository Path**: yszs/decoder_demo ## Basic Information - **Project Name**: decoder_demo - **Description**: decoder_demo - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2025-06-26 - **Last Updated**: 2025-07-10 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README ```shell ./configure \ --prefix=/usr/local \ --enable-nonfree \ --enable-gpl \ --enable-cuda-nvcc \ --enable-cuda \ --enable-cuvid \ --enable-nvenc \ --enable-libnpp \ --extra-cflags="-I/usr/local/cuda/include" \ --extra-ldflags="-L/usr/local/cuda/lib64 -ldl" \ --ld="g++" \ --extra-libs="-lpthread -lm" \ --enable-libx264 \ --enable-libx265 \ --enable-libfdk-aac \ --enable-libvpx \ --enable-libmp3lame \ --enable-gnutls \ --enable-libopus \ --enable-shared \ --disable-static \ --enable-pthreads ``` ```shell git submodule add https://gitee.com/xia-chu/ZLToolKit.git submodule/ZLToolKit git submodule add https://gitee.com/arm-depend/json.git submodule/json git submodule add -b v1.x --force https://gitee.com/yszs/spdlog.git submodule/spdlog ``` ```shell apt install -y \ build-essential cmake git libgtk2.0-dev pkg-config \ python3-dev python3-numpy \ libtbb2 libtbb-dev libjpeg-dev libpng-dev libtiff-dev \ libdc1394-22-dev libv4l-dev unzi ``` ```shell cmake -D CMAKE_BUILD_TYPE=RELEASE \ -D CMAKE_INSTALL_PREFIX=/usr/local \ -D WITH_CUDA=ON \ -D CUDA_ARCH_BIN="8.6" \ -D WITH_CUDNN=ON \ -D OPENCV_DNN_CUDA=ON \ -D ENABLE_FAST_MATH=1 \ -D CUDA_FAST_MATH=1 \ -D WITH_CUBLAS=1 \ -D CUDA_TOOLKIT_ROOT_DIR=/usr/local/cuda \ -D OPENCV_EXTRA_MODULES_PATH=/opt/opencv_contrib/modules \ -D INSTALL_PYTHON_EXAMPLES=OFF \ -D INSTALL_C_EXAMPLES=OFF \ -D BUILD_EXAMPLES=OFF \ -D BUILD_opencv_cudacodec=OFF \ -D WITH_FFMPEG=OFF \ .. ``` ### 优化方向 * 无锁队列 * 绑定gpu,decode、gpuMat和hw_ctx都指定gpu * gpu内yuv转rgb * 同一个gpu上多线程解码共用hw_device_ctx * 减少memcpy和device2host操作 * ffmepg设置nobuffer,read之前先flush