jemand eine Werkzeugkette für ffmpeg Linux Arm Plattform Kennt die den arm- enthält linux-androideabi-pkg-config Werkzeug?
Das Android NDK enthält es nicht. Hat es auch jemand geschafft, ffmpeg für Android zu bauen, das das alsa-Gerät enthält? Bitte beachten Sie, dass libasound auf meinem Ubuntu x86 PC vorhanden ist.
Nach sehr umfangreichen Recherchen zu Foren wie ffmpeg.org, ffmpeg - nabbles, groups.google.com einschließlich andro und android-ndk gropus und dem Internet im Allgemeinen habe ich niemanden gefunden, der davon zu wissen scheint seine Existenz. Im besten Fall habe ich Leute gelesen, die das ignorieren. Wenn man bedenkt, wofür es gebraucht wird, halte ich das für eine naive Sache.
Eine sorgfältige Überprüfung des Standard-ffmpeg-Konfigurationsskripts zeigt, dass für bestimmte Eingabe- und Ausgabegeräte eine Toolchain mit der Bezeichnung pkg_config_default = pkg-config erforderlich ist. Außerdem sind alle Elemente auf der HAVE_LIST SYSTEMABHÄNGIG. Das Konfigurationsskript gibt sehr deutlich an, welche Abhängigkeiten für jedes indev- oder outdev-Element erforderlich sind. Offenbar ist dieses Tool verwendet dann die Bibliotheken, um zu überprüfen, die für die Abhängigkeiten benötigt werden
Dies ist, was passiert, wenn man ffmpeg für Android
FFMPEG für Android Werkzeugketten: arm-linux-armeabi-EABI-pkg-config - gibt es eine Werkzeugkette in Existenz das pkg-config-Tool enthält
[email protected]:~/android-ffmpeg/Project/jni$ ./configure_ffmpeg.sh
...
...
..
....
License: GPL version 3 or later Creating config.mak and config.h...config.h is unchanged
config.asm is unchanged
libavutil/avconfig.h is unchanged
WARNING: /home/jasongipsyblues/Desktop/apps/android-ndk-r8b/toolchains/arm-linux-androideabi- 4.4.3/prebuilt/linux-x86/bin/arm-linux-androideabi-pkg-config not found, library detection may fail.
Auf einem PC mit Ubuntu dort zu konfigurieren versucht, ist kein Problem mit Pkg-Konfig.
Vergleichen Sie bitte die folgenden Ausgaben, wenn man für die in/out Gerät ALSA aus den config.log Dateien für eine Ubuntu x86 PC und das für das Android-Box greps die android-NDK-r8-Toolchain Dieser
[email protected]:~/android-ffmpeg/Project/jni/ffmpeg$ cat config.log|grep >alsa
alsa_indev
alsa_outdev
alsa_asoundlib_h
INDEV_LIST='alsa_indev
OUTDEV_LIST='alsa_outdev
alsa_indev='yes'
alsa_indev_deps='alsa_asoundlib_h snd_pcm_htimestamp'
alsa_outdev='yes'
alsa_outdev_deps='alsa_asoundlib_h'
indevs_if_any='alsa_indev
outdevs_if_any='alsa_outdev
check_lib2 alsa/asoundlib.h snd_pcm_htimestamp -lasound
check_func_headers alsa/asoundlib.h snd_pcm_htimestamp -lasound
1 #include
/tmp/ffconf.VCjQQAHQ.c:1:28: error: alsa/asoundlib.h: No such file or directory
mit der Compiler Ausgabe zeigt die Quelle des Fehlers:
check_lib2 alsa/asoundlib.h snd_pcm_htimestamp -lasound
check_func_headers alsa/asoundlib.h snd_pcm_htimestamp -lasound
check_ld cc -lasound
check_cc
BEGIN /tmp/ffconf.VCjQQAHQ.c
1 #include
2 long check_snd_pcm_htimestamp(void) { return (long) snd_pcm_htimestamp; }
3 int main(void) { return 0; }
END /tmp/ffconf.VCjQQAHQ.c
/home/jasongipsyblues/Desktop/apps/android-ndk-r8b/toolchains/arm-linux-androideabi->4.4.3/prebuilt/linux-x86/bin/arm-linux-androideabi-gcc --sysroot=/home/jasongipsyblues/Desktop/apps/android-ndk-r8b/platforms/android-14/arch-arm -D_ISOC99_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -D_POSIX_C_SOURCE=200112 -D_XOPEN_SOURCE=600 -DPIC -I../x264 -mcpu=cortex-a9 -std=c99 -fomit-frame-pointer -fPIC -marm -c -o /tmp/ffconf.I2B2AXfH.o
/tmp/ffconf.VCjQQAHQ.c
/tmp/ffconf.VCjQQAHQ.c:1:28: error: alsa/asoundlib.h: No such file or directory
/tmp/ffconf.VCjQQAHQ.c: In function 'check_snd_pcm_htimestamp':
/tmp/ffconf.VCjQQAHQ.c:2: error: 'snd_pcm_htimestamp' undeclared (first use in this function)
/tmp/ffconf.VCjQQAHQ.c:2: error: (Each undeclared identifier is reported only once
/tmp/ffconf.VCjQQAHQ.c:2: error: for each function it appears in.)
This is for the Ubuntu x86PC ffmpeg
[email protected]:~/ffmpeg$ cat config.log|grep alsa
alsa_indev
alsa_outdev
alsa_asoundlib_h
INDEV_LIST='alsa_indev
OUTDEV_LIST='alsa_outdev
alsa_indev='yes'
alsa_indev_deps='alsa_asoundlib_h snd_pcm_htimestamp'
alsa_outdev='yes'
alsa_outdev_deps='alsa_asoundlib_h'
indevs_if_any='alsa_indev
outdevs_if_any='alsa_outdev
check_lib2 alsa/asoundlib.h snd_pcm_htimestamp -lasound
check_func_headers alsa/asoundlib.h snd_pcm_htimestamp -lasound
1 #include
There is no error here and alsa is successfully included in the ffmpeg build
Haben Sie eine Lösung gefunden, um diese Warnung wirklich zu beheben? –