Ich hatte die configure-Option --disable-indevs
und hatte die Option verpasst --enable-indev=v4l2
. Wenn Sie Letzteres hinzufügen, kann mein Build auf meine Webcam zugreifen.
FFmpeg mit V4L2 erstellen
Ich möchte mit ffmpeg auf meine Webcam zugreifen. Ich habe es versucht:
ffmpeg -f v4l2 -i /dev/video0 output.mp4
aber ich bekomme eine fehler:
Unknown input format: 'v4l2'
Ähnlich mit video4linux2
statt v4l2
. Ich gehe daher davon aus, dass mein Build von ffmpeg fehlt v4l2
. Ich sehe, dass es eine Konfigurationsoption gibt --enable-libv4l2
( https://ffmpeg.org/ffmpeg-all.html#video4linux2_002c-v4l2 ). Ich habe dies zu meiner Konfiguration hinzugefügt, aber beim Ausführen von configure bekomme ich:
ERROR: "libv4l2 not found using pkg-config"
Wie füge ich das zu meinem Build hinzu? Ich befolge die Anleitung unter https://trac.ffmpeg.org/wiki/CompilationGuide/Ubuntu mit einigen Modifikationen, um bestimmte Decoder usw. einzubeziehen.
Ich verstehe, dass libv4l2 mit dem Ubuntu-Paket geliefert werden kann libv4l-dev
. Installation mit:
sudo apt-get install libv4l-dev
scheint mein Problem nicht zu beeinträchtigen. Ich kann sehen /usr/lib/x86_64-linux-gnu/pkgconfig/libv4l2.pc
, was ich denke, ist die Datei, die ich brauche. Vielleicht muss ich nur ffmpeg / pkg-config in den configure-Optionen angeben? So etwas wie:
PATH="$HOME/bin:$PATH" PKG_CONFIG_PATH="$HOME/ffmpeg_build/lib/pkgconfig:/usr/lib/x86_64-linux-gnu/pkgconfig" ./configure ...
? (Funktioniert nicht) Ändern --extra-cflags
oder --extra-ldflags
auf Include / libs zeigen? Konnte das auch nicht zum Laufen bringen. Die verknüpfte FFmpeg-Build-Anleitung speichert alle Pakete in einem ffmpeg_build-Verzeichnis in meinem Home-Ordner. Soll ich libv4l-dev
da irgendwie installieren ?
Schwanz von config.log:
END /tmp/ffconf.5wdQhyZ1.c gcc -D_ISOC99_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -D_POSIX_C_SOURCE=200112 -D_XOPEN_SOURCE=600 -I/home/jon/ffmpeg_build/include -std=c99 -fomit-frame-pointer -pthread -c -o /tmp/ffconf.LGU7tq3n.o /tmp/ffconf.5wdQhyZ1.c gcc -L/home/jon/ffmpeg_build/lib -Wl,--as-needed -Wl,-z,noexecstack -o /tmp/ffconf.Fhn6FivT /tmp/ffconf.LGU7tq3n.o -lv4l2 -lpthread -lv4lconvert -lrt -lm -ljpeg -lmp3lame -lfdk-aac -lm -lz -pthread /usr/bin/ld: cannot find -ljpeg collect2: error: ld returned 1 exit status ERROR: libv4l2 not found using pkg-config
Anscheinend fehlt eine JPEG-Bibliothek:
sudo apt-get install libjpeg-dev
und es kompiliert OK, aber ich bin wieder auf den ursprünglichen Fehler von:
Unknown input format: 'v4l2'
Beim Ausführen des ersten Befehls.
1 Antwort auf die Frage
Verwandte Probleme
-
9
Was ist der Unterschied zwischen den Befehlen "su -s" und "sudo -s"?
-
4
Gutes freies Ubuntu Server-VMWare-Image benötigt
-
8
Laptop Standby unter Linux / Ubuntu
-
4
Was sind die Unterschiede zwischen den großen Linux-Distributionen? Werde ich es merken
-
1
Wie kann ich von Ubuntu aus über das Netzwerk auf Windows Vista-Drucker zugreifen?
-
2
Begrenzung der CPU-Auslastung für Flash in Firefox?
-
2
Wie kann ich mein Mikrofon unter Debian GNOME zum Laufen bringen?
-
2
Conky-Setups - Beispiele / Ideen?
-
3
Was sind die Unterschiede zwischen Linux Window Managern?
-
3
Kann ich Microsoft Office 2007 unter Ubuntu ausführen?