त्रुटि: cuvid का अनुरोध किया है, लेकिन सभी निर्भरताएं संतुष्ट नहीं हैं: cuda / ffnvcodec


18

मैं NFidia Cuda समर्थन के साथ FFMPEG संकलित करने की कोशिश कर रहा हूं, डेबियन 9.3 पर। पैरामीटर, मैं क्या उपयोग कर रहा हूं:

--enable-cuda --enable-cuvid --enable-nvenc --extra-cflags=-I/usr/local/cuda/include --extra-ldflags=-L/usr/local/cuda/lib64 --enable-gpl --enable-libx264 --disable-x86asm --enable-libx265 --enable-libfdk-aac --enable-nonfree

ड्राइवरों के साथ एनवीडिया क्यूडा स्थापित हैं। जब मैं ffmpeg को कॉन्फ़िगर करने का प्रयास करता हूं, तो यह कहता है:

ERROR: cuvid requested, but not all dependencies are satisfied: cuda

नया ffmpeg एक समान, फिर से लिखा संदेश दिखाएगा:

ERROR: cuda requested, but not all dependencies are satisfied: ffnvcodec

मुझे पूरी तरह से पता नहीं है कि मैं इस मुद्दे को क्यों ले रहा हूं, क्योंकि मैं ffmpegअपने सभी ट्रांस-कोडिंग सर्वर पर संकलन कर रहा हूं ।


Config.log अंत की ओर क्या कहता है? यह ffbuild /
ज्ञान

जवाबों:


49

NVIDIA हेडर एक को FFmpeg codebase से निकाल दिए गए स्टैंडअलोन भंडार प्रतिबद्ध में 27cbbbb । प्रतिबद्ध संदेश से:

बाहरी हेडर का अब ffmpeg कोडबेस में स्वागत नहीं है क्योंकि वे रखरखाव के बोझ को बढ़ाते हैं। हालांकि, एनवीडिया मामले में वेनिला हेडर को ffmpeg में प्रयोग करने योग्य कुछ संशोधनों की आवश्यकता होती है इसलिए हम अभी भी उन्हें प्रदान करते हैं, लेकिन एक अलग रिपॉजिटरी में।

इसके अलावा, FFmpeg Wiki से: HWAccelIntro :

FFmpeg अब nvidias CUDA / nvenc / nvdec संबंधित पुस्तकालयों के लिए अपने स्वयं के थोड़े संशोधित रन-लोडर का उपयोग करता है। आप कॉन्फ़िगर ffnvcodec लापता के बारे में शिकायत से कोई त्रुटि मिलती है, यह तुम क्या जरूरत है।

इसमें Makefileएक इंस्टॉल लक्ष्य के साथ काम करना है:

make install PREFIX=/usr

FFmpeg pkg-configनामक इसकी फ़ाइल के लिए दिखेगा ffnvcodec.pc। सुनिश्चित करें कि यह आपके में है PKG_CONFIG_PATH

FFmpeg NVIDIA हेडर को संकलित करने के लिए ("ffnvcodec"):

git clone https://git.videolan.org/git/ffmpeg/nv-codec-headers.git
cd nv-codec-headers
make
sudo make install

अब ffmpegहमेशा की तरह संकलित करें । हेडर को ऑटोडेट किया जाना चाहिए। यदि नहीं तो FFmpeg के लिए चलने PKG_CONFIG_PATHपर उस पथ को इंगित करने की घोषणा करें जहां ffnvcodec.pcस्थित है configure। उदाहरण के लिए:

PKG_CONFIG_PATH="/path/to/lib/pkgconfig" ./configure

4

मुझे एक समान त्रुटि का सामना करना पड़ा, लेकिन यह पता चला है, यह लापता उपकरण पैकेज कॉन्फ़िगरेशन के कारण था। Ubuntu 16.04 पर आप चला सकते हैं

apt-get install pkgconf

और जांचें कि क्या गायब पैकेज वास्तव में छूट गया है या नहीं:

pkgconf --list-all | grep package-name

-1

https://github.com/FFmpeg/FFmpeg/commit/27cbbbb33f259de7c795d2b75edf7b240f0f82e6

मैंने पाया कि यह प्रतिबद्ध कोड त्रुटि है। पिछले प्रतिबद्ध कोड का उपयोग करें

git क्लोन https://github.com/FFmpeg/FFmpeg.git

git checkout 7414d0bda7763f9bd69c26c068e482ab297c19696

git रीसेट --हार्ड


यह आपको 7414d0bअनिश्चित काल के लिए प्रतिबद्ध होने के लिए सीमित कर देगा । बस संकलन करने से पहले NVIDIA हेडर डाउनलोड और इंस्टॉल करें ffmpeg
२०
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.