Befolgen Sie unter CentOS die Schritte des Tutorials, um OpenCV zu installieren, aber am Ende kann die Videodatei nicht gelesen werden, da ffmpeg fehlt. Also habe ich ffmqeg über die Softwareverwaltung in CentOS installiert, aber es hatte immer noch keine Wirkung. Dann habe ich ffmpeg kompiliert, aber es hatte immer noch keine Wirkung. Tatsächlich wird ein wichtiger Schritt übersehen, nämlich die Verknüpfung von ffmpeg mit OpenCV. Die Details sind wie folgt:
1. Holen Sie sich ffmpeg:
Laden Sie ffmpeg über cvs herunter, Befehlszeileneingabe: svn checkout svn://svn.ffmpeg.org/ffmpeg/trunk ffmpeg
2. ffmpeg konfigurieren:
Geben Sie das ffmpeg-Verzeichnis ein und führen Sie ./configure --enable-shared --prefix=/usr aus (Ich schätze, jeder kennt die Bedeutung von „enabled-shared“, aber warum brauchen Sie „prefix=/usr“? Dies muss von opencv bezogen werden Apropos cvcap_ffmpeg.cpp: Die hier auftretenden Probleme sollten nicht durch Pfadprobleme verursacht werden, aber dieses Problem hat mich dazu gebracht, den ganzen Morgen zu cMakeLists.txt zu gehen, um zu überprüfen, ob ffmpeg installiert ist /usr zu überprüfen. Ist die Standardinstallation von ffmpeg jedoch installiert? Wenn Sie den Installationspfad ändern, kann opencv nicht erkennen, ob Sie es installiert haben es in cmake. ffmpeg);
3. make; su -c „make install“;
4. Die nächste zu erledigende Arbeit hängt damit zusammen, ob opencv die zugehörigen Header-Dateien von ffmpeg erfolgreich kompilieren kann:4.1) Führen Sie zunächst den folgenden Befehl (root) unter /usr/include aus:
mkdir ffmpeg;
cp libav* libsw* ffmpeg; // Der Grund dafür ist, dass bei der Konfiguration von opencv geprüft wird, ob ffmpeg hier installiert ist
Überprüft
4.2) cmake .; //Beachten Sie, dass zwischen cmake und . ein Leerzeichen steht, wenn
Im Konfigurationsergebnis ist ffmpeg 1, nicht die vorherige 0, was bedeutet, dass wir erfolgreich waren.
4.3) make install;
5. cp opencv.pc unter /usr/lib/pkgconfig. Es ist nur eine Konfigurationsdatei Header-Dateien und Bibliotheken selbst beim Kompilieren? Tatsächlich werden Sie wissen, was es ist, wenn Sie opencv.pc öffnen.
6. Fügen Sie unter root, vim /etc/ld.so.conf, eine Zeile hinzu, /usr/local/lib (da sich die Bibliotheksdateien von opencv in lokal befinden, sind die Bibliotheksdateien in local/lib standardmäßig nicht enthalten im Systemstart geladen)
7. ldconfig.
Das obige ist der detaillierte Inhalt vonSo lösen Sie das Problem, dass OpenCV unter CentOS keine Videodateien lesen kann. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!