Qualcuno sa qualsiasi toolchain per ffmpeg ARM Linux piattaforma che contiene il Supporto, strumento linux-androideabi-pkg-config?
Android NDK non lo contiene. Inoltre qualcuno è riuscito a creare ffmpeg per Android che contiene il dispositivo alsa? Si noti che libasound è presente sul mio PC Ubuntu x86.
Dopo una ricerca molto ampia visitando forum tra cui ffmpeg.org, ffmpeg - nabbles, groups.google.com inclusi andro e android-ndk gropus, e Internet in generale, non sono riuscito a trovare nessuno che sembra sapere di la sua esistenza. Nel migliore dei casi, ho letto le persone che dicono di ignorarlo. Considerando ciò che è necessario, ritengo che una cosa ingenua da dire.
Un'attenta revisione dello script standard ffmpeg configure mostra che per alcuni dispositivi di input e output è richiesta una toolchain come pkg_config_default = pkg-config. Inoltre, tutti gli elementi di HAVE_LIST sono DIPENDENTI DI SISTEMA. Lo script configure indica in modo molto chiaro quali dipendenze sono richieste per ogni articolo indev o outdev. A quanto pare questo strumento viene utilizzato poi per verificare le librerie che sono necessari per le dipendenze
Questo è ciò che succede quando si tenta di configurare ffmpeg per Android
FFMPEG per toolchain Android: arm-linux-armeabi-EABI-pkg-config - c'è qualche toolchain esistente contenente lo strumento pkg-config
[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.
Su un PC con Ubuntu non v'è alcun problema con pkg-config.
Si prega di confrontare le seguenti uscite quando uno greps per l'in/out alsa dispositivo dai file config.log per un PC x86 di Ubuntu e che per la casella Android utilizzando la toolchain android-NDK-r8
[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
Questo è l'uscita compilatore mostra la causa dell'errore:
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
Hai trovato qualche soluzione per risolvere davvero questo avviso? –