befovy / ijkplayer

Android/iOS video player based on FFmpeg n3.4, with MediaCodec, VideoToolbox support. Backend for https://github.com/befovy/fijkplayer, fijkplayer 的播放内核
GNU General Public License v2.0
154 stars 92 forks source link

Unknown option "--disable-ffserver" on compilation #16

Closed pharshdev closed 4 years ago

pharshdev commented 4 years ago

On running ./compile-ffmpeg.sh all

====================
[*] check archs
====================
FF_ALL_ARCHS = armv5 armv7a arm64 x86 x86_64
FF_ACT_ARCHS = armv5 armv7a arm64 x86 x86_64

====================
[*] check env armv5
====================
FF_ARCH=armv5
FF_BUILD_OPT=

--------------------
[*] make NDK standalone toolchain
--------------------
build on Darwin x86_64
ANDROID_NDK=/Users/harsh/Downloads/android-ndk-r15c
IJK_NDK_REL=15.2.4203891
NDKr15.2.4203891 detected
HOST_OS=darwin
HOST_EXE=
HOST_ARCH=x86_64
HOST_TAG=darwin-x86_64
HOST_NUM_CPUS=8
BUILD_NUM_CPUS=16
Auto-config: --arch=arm
Toolchain installed to /Users/harsh/dev/pmtvfire/ijkplayer-android/android/contrib/build/toolchain-armv5.

--------------------
[*] check ffmpeg env
--------------------

--------------------
[*] configurate ffmpeg
--------------------
/Users/harsh/dev/pmtvfire/ijkplayer-android/android/contrib/build/toolchain-armv5/bin//arm-linux-androideabi-gcc
Unknown option "--disable-ffserver".
See ./configure --help for available options.

My environment: MacOS X 10.14.6 Steps to reproduce: 1) git clone https://github.com/befovy/ijkplayer.git ijkplayer-android 2)

cd config
rm module.sh
ln -s module-default.sh module.sh
cd android/contrib
# cd ios
sh compile-ffmpeg.sh clean

2) Follow https://github.com/befovy/ijkplayer#build-android-via-cmake

Possible explanation : http://www.ffmpeg-archive.org/Unknown-option-quot-disable-ffserver-quot-td4683446.html

befovy commented 4 years ago

just delete the line include "--disable-ffserver" in module.sh

pharshdev commented 4 years ago

Okay had to delete line "--disable-vda" for the same reason. Then ran this again

./init-android.sh
cd android/contrib
./compile-ffmpeg.sh clean
./compile-ffmpeg.sh all

Gave this:

====================
[*] check archs
====================
FF_ALL_ARCHS = armv5 armv7a arm64 x86 x86_64
FF_ACT_ARCHS = armv5 armv7a arm64 x86 x86_64

====================
[*] check env armv5
====================
FF_ARCH=armv5
FF_BUILD_OPT=

--------------------
[*] make NDK standalone toolchain
--------------------
build on Darwin x86_64
ANDROID_NDK=/Users/harsh/Downloads/android-ndk-r15c
IJK_NDK_REL=15.2.4203891
NDKr15.2.4203891 detected

--------------------
[*] check ffmpeg env
--------------------

--------------------
[*] configurate ffmpeg
--------------------
/Users/harsh/dev/pmtvfire/ijkplayer-android/android/contrib/build/toolchain-armv5/bin//arm-linux-androideabi-gcc
install prefix            /Users/harsh/dev/pmtvfire/ijkplayer-android/android/contrib/build/output-armv5
source path               .
C compiler                arm-linux-androideabi-gcc
C library                 bionic
host C compiler           gcc
host C library            
ARCH                      arm (armv5te)
big-endian                no
runtime cpu detection     yes
ARMv5TE enabled           yes
ARMv6 enabled             yes
ARMv6T2 enabled           yes
VFP enabled               yes
NEON enabled              yes
THUMB enabled             no
debug symbols             yes
strip symbols             yes
optimize for size         yes
optimizations             yes
static                    yes
shared                    no
postprocessing support    no
network support           yes
threading support         pthreads
safe bitstream reader     yes
texi2html enabled         no
perl enabled              yes
pod2man enabled           yes
makeinfo enabled          yes
makeinfo supports HTML    no

External libraries:
xlib               zlib

External libraries providing hardware acceleration:
v4l2_m2m

Libraries:
avcodec            avformat           swresample
avfilter           avutil             swscale

Programs:

Enabled decoders:
aac            atrac3p            escape124
aac_fixed          atrac3pal              escape130
aac_latm           aura               evrc
aasc               aura2              exr
ac3            avrn               ffv1
ac3_fixed          avrp               ffvhuff
adpcm_4xm          avs                ffwavesynth
adpcm_adx          avui               fic
adpcm_afc          ayuv               fits
adpcm_aica         bethsoftvid            flac
adpcm_ct           bfi                flashsv
adpcm_dtk          bink               flashsv2
adpcm_ea           binkaudio_dct          flic
adpcm_ea_maxis_xa      binkaudio_rdft         flv
adpcm_ea_r1        bintext            fmvc
adpcm_ea_r2        bitpacked              fourxm
adpcm_ea_r3        bmp                fraps
adpcm_ea_xas           bmv_audio              frwu
adpcm_g722         bmv_video              g2m
adpcm_g726         brender_pix            g723_1
adpcm_g726le           c93                g729
adpcm_ima_amv          cavs               gdv
adpcm_ima_apc          ccaption           gif
adpcm_ima_dat4         cdgraphics             gremlin_dpcm
adpcm_ima_dk3          cdxl               gsm
adpcm_ima_dk4          cfhd               gsm_ms
adpcm_ima_ea_eacs      cinepak            h261
adpcm_ima_ea_sead      clearvideo             h263
adpcm_ima_iss          cljr               h263_v4l2m2m
adpcm_ima_oki          cllc               h263i
adpcm_ima_qt           comfortnoise           h263p
adpcm_ima_rad          cook               h264
adpcm_ima_smjpeg       cpia               h264_v4l2m2m
adpcm_ima_wav          cscd               hap
adpcm_ima_ws           cyuv               hevc
adpcm_ms           dca                hnm4_video
adpcm_mtaf         dds                hq_hqa
adpcm_psx          dfa                hqx
adpcm_sbpro_2          dirac              huffyuv
adpcm_sbpro_3          dnxhd              iac
adpcm_sbpro_4          dolby_e            idcin
adpcm_swf          dpx                idf
adpcm_thp          dsd_lsbf           iff_ilbm
adpcm_thp_le           dsd_lsbf_planar        imc
adpcm_vima         dsd_msbf           indeo2
adpcm_xa           dsd_msbf_planar        indeo3
adpcm_yamaha           dsicinaudio            indeo4
aic            dsicinvideo            indeo5
alac               dss_sp             interplay_acm
alias_pix          dst                interplay_dpcm
als            dvaudio            interplay_video
amrnb              dvbsub             jacosub
amrwb              dvdsub             jpeg2000
amv            dvvideo            jpegls
anm            dxa                jv
ansi               dxtory             kgv1
ape            dxv                kmvc
apng               eac3               lagarith
aptx               eacmv              loco
aptx_hd            eamad              m101
ass            eatgq              mace3
asv1               eatgv              mace6
asv2               eatqi              magicyuv
atrac1             eightbps           mdec
atrac3             eightsvx_exp           metasound
atrac3al           eightsvx_fib           microdvd
mimic              pcm_s24le              smc
mjpeg              pcm_s24le_planar       smvjpeg
mjpegb             pcm_s32be              snow
mlp            pcm_s32le              sol_dpcm
mmvideo            pcm_s32le_planar       sonic
motionpixels           pcm_s64be              sp5x
movtext            pcm_s64le              speedhq
mp1            pcm_s8             srgc
mp1float           pcm_s8_planar          srt
mp2            pcm_u16be              ssa
mp2float           pcm_u16le              stl
mp3            pcm_u24be              subrip
mp3adu             pcm_u24le              subviewer
mp3adufloat        pcm_u32be              subviewer1
mp3float           pcm_u32le              sunrast
mp3on4             pcm_u8             svq1
mp3on4float        pcm_zork           svq3
mpc7               pcx                tak
mpc8               pgm                targa
mpeg1_v4l2m2m          pgmyuv             targa_y216
mpeg1video         pgssub             tdsc
mpeg2_v4l2m2m          pictor             text
mpeg2video         pixlet             theora
mpeg4              pjs                thp
mpeg4_v4l2m2m          png                tiertexseqvideo
mpegvideo          ppm                tiff
mpl2               prores             tmv
msa1               prores_lgpl            truehd
mscc               psd                truemotion1
msmpeg4v1          ptx                truemotion2
msmpeg4v2          qcelp              truemotion2rt
msmpeg4v3          qdm2               truespeech
msrle              qdmc               tscc
mss1               qdraw              tscc2
mss2               qpeg               tta
msvideo1           qtrle              twinvq
mszh               r10k               txd
mts2               r210               ulti
mvc1               ra_144             utvideo
mvc2               ra_288             v210
mxpeg              ralf               v210x
nellymoser         rawvideo           v308
nuv            realtext           v408
on2avc             rl2                v410
opus               roq                vb
paf_audio          roq_dpcm           vble
paf_video          rpza               vc1
pam            rscc               vc1_v4l2m2m
pbm            rv10               vc1image
pcm_alaw           rv20               vcr1
pcm_bluray         rv30               vmdaudio
pcm_dvd            rv40               vmdvideo
pcm_f16le          s302m              vmnc
pcm_f24le          sami               vorbis
pcm_f32be          sanm               vp3
pcm_f32le          sbc                vp5
pcm_f64be          scpr               vp6
pcm_f64le          screenpresso           vp6a
pcm_lxf            sdx2_dpcm              vp6f
pcm_mulaw          sgi                vp7
pcm_s16be          sgirle             vp8
pcm_s16be_planar       sheervideo             vp8_v4l2m2m
pcm_s16le          shorten            vp9
pcm_s16le_planar       sipr               vp9_v4l2m2m
pcm_s24be          smackaud           vplayer
pcm_s24daud        smacker            vqa
wavpack            wnv1               xpm
webp               wrapped_avframe        xsub
webvtt             ws_snd1            xwd
wmalossless        xan_dpcm           y41p
wmapro             xan_wc3            ylc
wmav1              xan_wc4            yop
wmav2              xbin               yuv4
wmavoice           xbm                zero12v
wmv1               xface              zerocodec
wmv2               xl                 zlib
wmv3               xma1               zmbv
wmv3image          xma2

Enabled encoders:

Enabled hwaccels:

Enabled parsers:
aac            dvdsub             png
aac_latm           flac               pnm
ac3            g729               rv30
adx            gsm                rv40
bmp            h261               sbc
cavsvideo          h263               sipr
cook               h264               tak
dca            hevc               vc1
dirac              mjpeg              vorbis
dnxhd              mlp                vp3
dpx            mpeg4video             vp8
dvaudio            mpegaudio              vp9
dvbsub             mpegvideo              xma
dvd_nav            opus

Enabled demuxers:
aa             eac3               iss
aac            epaf               iv8
ac3            ffmetadata             ivf
acm            filmstrip              ivr
act            fits               jacosub
adf            flac               jv
adp            flic               live_flv
ads            flv                lmlm4
adx            fourxm             loas
aea            frm                lrc
afc            fsb                lvf
aiff               g722               lxf
aix            g723_1             m4v
amr            g726               matroska
amrnb              g726le             mgsts
amrwb              g729               microdvd
anm            gdv                mjpeg
apc            genh               mjpeg_2000
ape            gif                mlp
apng               gsm                mlv
aptx               gxf                mm
aptx_hd            h261               mmf
aqtitle            h263               mov
asf            h264               mp3
asf_o              hevc               mpc
ass            hls                mpc8
ast            hnm                mpegps
au             ico                mpegts
avi            idcin              mpegtsraw
avr            idf                mpegvideo
avs            iff                mpjpeg
bethsoftvid        ijkdash            mpl2
bfi            ijkioproxy             mpsub
bfstm              ijklivehook            msf
bink               ijkswitch              msnwc_tcp
bintext            ilbc               mtaf
bit            image2             mtv
bmv            image2_alias_pix       musx
boa            image2_brender_pix         mv
brstm              image2pipe             mvi
c93            image_bmp_pipe         mxf
caf            image_dds_pipe         mxg
cavsvideo          image_dpx_pipe         nc
cdg            image_exr_pipe         nistsphere
cdxl               image_j2k_pipe         nsp
cine               image_jpeg_pipe        nsv
codec2             image_jpegls_pipe          nut
codec2raw          image_pam_pipe         nuv
concat             image_pbm_pipe         ogg
data               image_pcx_pipe         oma
daud               image_pgm_pipe         paf
dcstr              image_pgmyuv_pipe          pcm_alaw
dfa            image_pictor_pipe          pcm_f32be
dirac              image_png_pipe         pcm_f32le
dnxhd              image_ppm_pipe         pcm_f64be
dsf            image_psd_pipe         pcm_f64le
dsicin             image_qdraw_pipe       pcm_mulaw
dss            image_sgi_pipe         pcm_s16be
dts            image_sunrast_pipe         pcm_s16le
dtshd              image_svg_pipe         pcm_s24be
dv             image_tiff_pipe        pcm_s24le
dvbsub             image_webp_pipe        pcm_s32be
dvbtxt             image_xpm_pipe         pcm_s32le
dxa            ingenient              pcm_s8
ea             ipmovie            pcm_u16be
ea_cdata           ircam              pcm_u16le
pcm_u24be          sdx                v210x
pcm_u24le          segafilm           vag
pcm_u32be          shorten            vc1
pcm_u32le          siff               vc1t
pcm_u8             sln                vivo
pjs            smacker            vmd
pmp            smjpeg             vobsub
pva            smush              voc
pvf            sol                vpk
qcp            sox                vplayer
r3d            spdif              vqf
rawvideo           srt                w64
realtext           stl                wav
redspark           str                wc3
rl2            subviewer              webm_dash_manifest
rm             subviewer1             webvtt
roq            sup                wsaud
rpl            svag               wsd
rsd            swf                wsvqa
rso            tak                wtv
rtp            tedcaptions            wv
rtsp               thp                wve
s337m              threedostr             xa
sami               tiertexseq             xbin
sap            tmv                xmv
sbc            truehd             xvag
sbg            tta                xwma
scc            tty                yop
sdp            txd                yuv4mpegpipe
sdr2               ty
sds            v210

Enabled muxers:

Enabled protocols:
async              icecast            prompeg
cache              ijkfilehook            rtmp
concat             ijkhttphook            rtmpt
crypto             ijkio              rtp
data               ijklongurl             srtp
ffrtmphttp         ijkmediadatasource         subfile
file               ijksegment             tcp
ftp            ijktcphook             tee
gopher             md5                udp
hls            mmsh               udplite
http               mmst               unix
httpproxy          pipe

Enabled filters:
abench             bench              firequalizer
abitscope          biquad             flanger
acompressor        bitplanenoise          floodfill
acontrast          blackdetect            format
acopy              blend              fps
acrossfade         bwdif              framepack
acrusher           cellauto           framerate
adelay             channelmap             framestep
adrawgraph         channelsplit           gblur
aecho              chorus             gradfun
aemphasis          chromakey              haas
aeval              ciescope           haldclut
aevalsrc           codecview              haldclutsrc
afade              color              hdcd
afftfilt           colorbalance           headphone
afifo              colorchannelmixer          hflip
afir               colorkey           highpass
aformat            colorlevels            hilbert
agate              colorspace             histogram
ahistogram         compand            hqx
aiir               compensationdelay          hstack
ainterleave        concat             hue
alimiter           convolution            hwdownload
allpass            convolve           hwmap
allrgb             copy               hwupload
allyuv             crop               hysteresis
aloop              crossfeed              idet
alphaextract           crystalizer            il
alphamerge         curves             inflate
amerge             datascope              interleave
ametadata          dcshift            join
amix               dctdnoiz           lenscorrection
amovie             deband             life
anequalizer        decimate           limiter
anoisesrc          deconvolve             loop
anull              deflate            loudnorm
anullsink          deflicker              lowpass
anullsrc           dejudder           lumakey
apad               deshake            lut
aperms             despill            lut2
aphasemeter        detelecine             lut3d
aphaser            dilation           lutrgb
apulsator          displace           lutyuv
arealtime          doubleweave            mandelbrot
aresample          drawbox            maskedclamp
areverse           drawgraph              maskedmerge
aselect            drawgrid           mcompand
asendcmd           drmeter            mergeplanes
asetnsamples           dynaudnorm             mestimate
asetpts            earwax             metadata
asetrate           ebur128            midequalizer
asettb             edgedetect             minterpolate
ashowinfo          elbg               mix
asidedata          entropy            movie
asplit             equalizer              negate
astats             erosion            nlmeans
astreamselect          extractplanes          noformat
atadenoise         extrastereo            noise
atempo             fade               normalize
atrim              fftfilt            null
avectorscope           field              nullsink
avgblur            fieldhint              nullsrc
bandpass           fieldmatch             oscilloscope
bandreject         fieldorder             overlay
bass               fifo               pad
bbox               fillborders            palettegen
paletteuse         setsar             swapuv
pan            settb              tblend
perms              showcqt            telecine
pixdesctest        showfreqs              testsrc
pixscope           showinfo           testsrc2
premultiply        showpalette            threshold
prewitt            showspectrum           thumbnail
pseudocolor        showspectrumpic        tile
psnr               showvolume             tlut2
qp             showwaves              tonemap
random             showwavespic           transpose
readeia608         shuffleframes          treble
readvitc           shuffleplanes          tremolo
realtime           sidechaincompress          trim
remap              sidechaingate          unpremultiply
removegrain        sidedata           unsharp
removelogo         signalstats            vectorscope
replaygain         silencedetect          vflip
reverse            silenceremove          vfrdet
rgbtestsrc         sine               vibrato
roberts            smptebars              vignette
rotate             smptehdbars            vmafmotion
scale              sobel              volume
scale2ref          spectrumsynth          volumedetect
select             split              vstack
selectivecolor         ssim               w3fdif
sendcmd            stereotools            waveform
separatefields         stereowiden            weave
setdar             streamselect           xbr
setfield           superequalizer         yadif
setpts             surround           yuvtestsrc
setrange           swaprect           zoompan

Enabled bsfs:
aac_adtstoasc          hapqa_extract          noise
chomp              hevc_metadata          null
dca_core           hevc_mp4toannexb       remove_extradata
dump_extradata         imx_dump_header        text2movsub
eac3_core          mjpeg2jpeg             trace_headers
extract_extradata      mjpega_dump_header         vp9_raw_reorder
filter_units           mov2textsub            vp9_superframe
h264_metadata          mp3_header_decompress      vp9_superframe_split
h264_mp4toannexb       mpeg2_metadata
h264_redundant_pps     mpeg4_unpack_bframes

Enabled indevs:

Enabled outdevs:

License: LGPL version 2.1 or later

--------------------
[*] compile ffmpeg
--------------------
libavfilter/af_aecho.c:186:0: warning: "ECHO" redefined
 #define ECHO(name, type, min, max)                                          \
 ^
In file included from /Users/harsh/dev/pmtvfire/ijkplayer-android/android/contrib/build/toolchain-armv5/sysroot/usr/include/asm/termbits.h:19:0,
                 from /Users/harsh/dev/pmtvfire/ijkplayer-android/android/contrib/build/toolchain-armv5/sysroot/usr/include/asm-generic/termios.h:21,
                 from /Users/harsh/dev/pmtvfire/ijkplayer-android/android/contrib/build/toolchain-armv5/sysroot/usr/include/asm/termios.h:19,
                 from /Users/harsh/dev/pmtvfire/ijkplayer-android/android/contrib/build/toolchain-armv5/sysroot/usr/include/linux/termios.h:22,
                 from /Users/harsh/dev/pmtvfire/ijkplayer-android/android/contrib/build/toolchain-armv5/sysroot/usr/include/sys/ioctl.h:37,
                 from ./libavutil/timer.h:36,
                 from ./libavutil/internal.h:42,
                 from ./libavutil/common.h:491,
                 from ./libavutil/avutil.h:296,
                 from ./libavutil/avassert.h:31,
                 from libavfilter/af_aecho.c:21:
/Users/harsh/dev/pmtvfire/ijkplayer-android/android/contrib/build/toolchain-armv5/sysroot/usr/include/asm-generic/termbits.h:209:0: note: this is the location of the previous definition
 #define ECHO 0000010
 ^
libavfilter/avfiltergraph.c: In function 'avfilter_graph_free':
libavfilter/avfiltergraph.c:135:5: warning: 'resample_lavr_opts' is deprecated (declared at libavfilter/avfilter.h:847) [-Wdeprecated-declarations]
     av_freep(&(*graph)->resample_lavr_opts);
     ^
libavfilter/lavfutils.c: In function 'ff_load_image':
libavfilter/lavfutils.c:91:5: warning: 'avcodec_decode_video2' is deprecated (declared at ./libavcodec/avcodec.h:4778) [-Wdeprecated-declarations]
     ret = avcodec_decode_video2(codec_ctx, frame, &frame_decoded, &pkt);
     ^
libavfilter/src_movie.c: In function 'open_stream':
libavfilter/src_movie.c:175:5: warning: 'refcounted_frames' is deprecated (declared at ./libavcodec/avcodec.h:2367) [-Wdeprecated-declarations]
     st->codec_ctx->refcounted_frames = 1;
     ^
libavfilter/src_movie.c: In function 'movie_push_frame':
libavfilter/src_movie.c:529:9: warning: 'avcodec_decode_video2' is deprecated (declared at ./libavcodec/avcodec.h:4778) [-Wdeprecated-declarations]
         ret = avcodec_decode_video2(st->codec_ctx, frame, &got_frame, pkt);
         ^
libavfilter/src_movie.c:532:9: warning: 'avcodec_decode_audio4' is deprecated (declared at ./libavcodec/avcodec.h:4729) [-Wdeprecated-declarations]
         ret = avcodec_decode_audio4(st->codec_ctx, frame, &got_frame, pkt);
         ^
libavfilter/vf_codecview.c: In function 'filter_frame':
libavfilter/vf_codecview.c:223:9: warning: 'av_frame_get_qp_table' is deprecated (declared at ./libavutil/frame.h:642) [-Wdeprecated-declarations]
         int8_t *qp_table = av_frame_get_qp_table(frame, &qstride, &qp_type);
         ^
libavfilter/vf_colorspace.c: In function 'fill_rgb2xyz_table':
libavfilter/vf_colorspace.c:398:22: warning: passing argument 1 of 'invert_matrix3x3' from incompatible pointer type
     invert_matrix3x3(rgb2xyz, i);
                      ^
libavfilter/vf_colorspace.c:315:13: note: expected 'const double (*)[3]' but argument is of type 'double (*)[3]'
 static void invert_matrix3x3(const double in[3][3], double out[3][3])
             ^
libavfilter/vf_colorspace.c: In function 'fill_whitepoint_conv_table':
libavfilter/vf_colorspace.c:462:21: warning: passing argument 3 of 'mul3x3' from incompatible pointer type
     mul3x3(tmp, ma, fac);
                     ^
libavfilter/vf_colorspace.c:414:13: note: expected 'const double (*)[3]' but argument is of type 'double (*)[3]'
 static void mul3x3(double dst[3][3], const double src1[3][3], const double src2[3][3])
             ^
libavfilter/vf_colorspace.c:463:17: warning: passing argument 2 of 'mul3x3' from incompatible pointer type
     mul3x3(out, tmp, mai);
                 ^
libavfilter/vf_colorspace.c:414:13: note: expected 'const double (*)[3]' but argument is of type 'double (*)[3]'
 static void mul3x3(double dst[3][3], const double src1[3][3], const double src2[3][3])
             ^
libavfilter/vf_colorspace.c:463:22: warning: passing argument 3 of 'mul3x3' from incompatible pointer type
     mul3x3(out, tmp, mai);
                      ^
libavfilter/vf_colorspace.c:414:13: note: expected 'const double (*)[3]' but argument is of type 'double (*)[3]'
 static void mul3x3(double dst[3][3], const double src1[3][3], const double src2[3][3])
             ^
libavfilter/vf_colorspace.c: In function 'convert':
libavfilter/vf_colorspace.c:518:20: warning: passing argument 7 of 's->yuv2yuv' from incompatible pointer type
                    s->yuv2yuv_coeffs, s->yuv_offset);
                    ^
libavfilter/vf_colorspace.c:518:20: note: expected 'const int16_t (*)[3][8]' but argument is of type 'int16_t (*)[3][8]'
libavfilter/vf_colorspace.c:518:39: warning: passing argument 8 of 's->yuv2yuv' from incompatible pointer type
                    s->yuv2yuv_coeffs, s->yuv_offset);
                                       ^
libavfilter/vf_colorspace.c:518:39: note: expected 'const int16_t (*)[8]' but argument is of type 'int16_t (*)[8]'
libavfilter/vf_colorspace.c:540:20: warning: passing argument 7 of 's->yuv2rgb' from incompatible pointer type
                    s->yuv2rgb_coeffs, s->yuv_offset[0]);
                    ^
libavfilter/vf_colorspace.c:540:20: note: expected 'const int16_t (*)[3][8]' but argument is of type 'int16_t (*)[3][8]'
libavfilter/vf_colorspace.c:544:62: warning: passing argument 5 of 's->dsp.multiply3x3' from incompatible pointer type
                 s->dsp.multiply3x3(rgb, s->rgb_stride, w, h, s->lrgb2lrgb_coeffs);
                                                              ^
libavfilter/vf_colorspace.c:544:62: note: expected 'const int16_t (*)[3][8]' but argument is of type 'int16_t (*)[3][8]'
libavfilter/vf_colorspace.c:549:28: warning: passing argument 7 of 's->rgb2yuv_fsb' from incompatible pointer type
                            s->rgb2yuv_coeffs, s->yuv_offset[1], s->dither_scratch);
                            ^
libavfilter/vf_colorspace.c:549:28: note: expected 'const int16_t (*)[3][8]' but argument is of type 'int16_t (*)[3][8]'
libavfilter/vf_colorspace.c:552:24: warning: passing argument 7 of 's->rgb2yuv' from incompatible pointer type
                        s->rgb2yuv_coeffs, s->yuv_offset[1]);
                        ^
libavfilter/vf_colorspace.c:552:24: note: expected 'const int16_t (*)[3][8]' but argument is of type 'int16_t (*)[3][8]'
libavfilter/vf_colorspace.c: In function 'create_filtergraph':
libavfilter/vf_colorspace.c:666:30: warning: passing argument 1 of 'invert_matrix3x3' from incompatible pointer type
             invert_matrix3x3(rgb2xyz, xyz2rgb);
                              ^
libavfilter/vf_colorspace.c:315:13: note: expected 'const double (*)[3]' but argument is of type 'double (*)[3]'
 static void invert_matrix3x3(const double in[3][3], double out[3][3])
             ^
libavfilter/vf_colorspace.c:674:29: warning: passing argument 2 of 'mul3x3' from incompatible pointer type
                 mul3x3(tmp, rgb2xyz, wpconv);
                             ^
libavfilter/vf_colorspace.c:414:13: note: expected 'const double (*)[3]' but argument is of type 'double (*)[3]'
 static void mul3x3(double dst[3][3], const double src1[3][3], const double src2[3][3])
             ^
libavfilter/vf_colorspace.c:674:38: warning: passing argument 3 of 'mul3x3' from incompatible pointer type
                 mul3x3(tmp, rgb2xyz, wpconv);
                                      ^
libavfilter/vf_colorspace.c:414:13: note: expected 'const double (*)[3]' but argument is of type 'double (*)[3]'
 static void mul3x3(double dst[3][3], const double src1[3][3], const double src2[3][3])
             ^
libavfilter/vf_colorspace.c:675:33: warning: passing argument 2 of 'mul3x3' from incompatible pointer type
                 mul3x3(rgb2rgb, tmp, xyz2rgb);
                                 ^
libavfilter/vf_colorspace.c:414:13: note: expected 'const double (*)[3]' but argument is of type 'double (*)[3]'
 static void mul3x3(double dst[3][3], const double src1[3][3], const double src2[3][3])
             ^
libavfilter/vf_colorspace.c:675:38: warning: passing argument 3 of 'mul3x3' from incompatible pointer type
                 mul3x3(rgb2rgb, tmp, xyz2rgb);
                                      ^
libavfilter/vf_colorspace.c:414:13: note: expected 'const double (*)[3]' but argument is of type 'double (*)[3]'
 static void mul3x3(double dst[3][3], const double src1[3][3], const double src2[3][3])
             ^
libavfilter/vf_colorspace.c:677:33: warning: passing argument 2 of 'mul3x3' from incompatible pointer type
                 mul3x3(rgb2rgb, rgb2xyz, xyz2rgb);
                                 ^
libavfilter/vf_colorspace.c:414:13: note: expected 'const double (*)[3]' but argument is of type 'double (*)[3]'
 static void mul3x3(double dst[3][3], const double src1[3][3], const double src2[3][3])
             ^
libavfilter/vf_colorspace.c:677:42: warning: passing argument 3 of 'mul3x3' from incompatible pointer type
                 mul3x3(rgb2rgb, rgb2xyz, xyz2rgb);
                                          ^
libavfilter/vf_colorspace.c:414:13: note: expected 'const double (*)[3]' but argument is of type 'double (*)[3]'
 static void mul3x3(double dst[3][3], const double src1[3][3], const double src2[3][3])
             ^
libavfilter/vf_colorspace.c:802:30: warning: passing argument 1 of 'invert_matrix3x3' from incompatible pointer type
             invert_matrix3x3(rgb2yuv, yuv2rgb);
                              ^
libavfilter/vf_colorspace.c:315:13: note: expected 'const double (*)[3]' but argument is of type 'double (*)[3]'
 static void invert_matrix3x3(const double in[3][3], double out[3][3])
             ^
libavfilter/vf_colorspace.c:858:29: warning: passing argument 2 of 'mul3x3' from incompatible pointer type
             mul3x3(yuv2yuv, yuv2rgb, rgb2yuv);
                             ^
libavfilter/vf_colorspace.c:414:13: note: expected 'const double (*)[3]' but argument is of type 'double (*)[3]'
 static void mul3x3(double dst[3][3], const double src1[3][3], const double src2[3][3])
             ^
libavfilter/vf_colorspace.c:858:38: warning: passing argument 3 of 'mul3x3' from incompatible pointer type
             mul3x3(yuv2yuv, yuv2rgb, rgb2yuv);
                                      ^
libavfilter/vf_colorspace.c:414:13: note: expected 'const double (*)[3]' but argument is of type 'double (*)[3]'
 static void mul3x3(double dst[3][3], const double src1[3][3], const double src2[3][3])
             ^
libavfilter/vf_qp.c: In function 'filter_frame':
libavfilter/vf_qp.c:113:5: warning: 'av_frame_get_qp_table' is deprecated (declared at ./libavutil/frame.h:642) [-Wdeprecated-declarations]
     in_qp_table = av_frame_get_qp_table(in, &stride, &type);
     ^
libavfilter/vf_qp.c:114:5: warning: 'av_frame_set_qp_table' is deprecated (declared at ./libavutil/frame.h:644) [-Wdeprecated-declarations]
     av_frame_set_qp_table(out, out_qp_table_buf, s->qstride, type);
     ^
libavformat/codec2.c:152:12: warning: 'codec2_write_header' defined but not used [-Wunused-function]
 static int codec2_write_header(AVFormatContext *s)
            ^
libavformat/dump.c: In function 'dump_stream_format':
libavformat/dump.c:475:5: warning: 'codec' is deprecated (declared at libavformat/avformat.h:884) [-Wdeprecated-declarations]
     avctx->properties = st->codec->properties;
     ^
libavformat/dump.c:476:5: warning: 'codec' is deprecated (declared at libavformat/avformat.h:884) [-Wdeprecated-declarations]
     avctx->codec      = st->codec->codec;
     ^
libavformat/dump.c:477:5: warning: 'codec' is deprecated (declared at libavformat/avformat.h:884) [-Wdeprecated-declarations]
     avctx->qmin       = st->codec->qmin;
     ^
libavformat/dump.c:478:5: warning: 'codec' is deprecated (declared at libavformat/avformat.h:884) [-Wdeprecated-declarations]
     avctx->qmax       = st->codec->qmax;
     ^
libavformat/dump.c:479:5: warning: 'codec' is deprecated (declared at libavformat/avformat.h:884) [-Wdeprecated-declarations]
     avctx->coded_width  = st->codec->coded_width;
     ^
libavformat/dump.c:480:5: warning: 'codec' is deprecated (declared at libavformat/avformat.h:884) [-Wdeprecated-declarations]
     avctx->coded_height = st->codec->coded_height;
     ^
libavformat/dump.c:515:9: warning: 'codec' is deprecated (declared at libavformat/avformat.h:884) [-Wdeprecated-declarations]
         int tbc = st->codec->time_base.den && st->codec->time_base.num;
         ^
libavformat/dump.c:515:9: warning: 'codec' is deprecated (declared at libavformat/avformat.h:884) [-Wdeprecated-declarations]
libavformat/dump.c:527:13: warning: 'codec' is deprecated (declared at libavformat/avformat.h:884) [-Wdeprecated-declarations]
             print_fps(1 / av_q2d(st->codec->time_base), "tbc");
             ^
libavformat/hls.c: In function 'parse_playlist':
libavformat/hls.c:745:5: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
     int start_seq_no = -1;
     ^
libavformat/mov.c: In function 'mov_read_packet':
libavformat/mov.c:7239:9: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
         int64_t search_index = search_frag_timestamp(&mov->frag_index, st, timestamp);
         ^
libavformat/mov.c: In function 'mov_frag_get_frag_index_with_timestamp':
libavformat/mov.c:7265:5: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
     AVStream *st    = s->streams[0];
     ^
libavformat/mov.c: In function 'mov_frag_get_timestamp_with_index':
libavformat/mov.c:7276:5: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
     AVStream *st    = s->streams[0];
     ^
libavformat/mov.c:7282:5: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
     int64_t timestamp = get_frag_time(&mov->frag_index, index, st->id);
     ^
libavformat/mov.c: In function 'mov_frag_get_last_pts':
libavformat/mov.c:7292:5: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
     AVStream *st    = s->streams[0];
     ^
libavformat/mov.c: In function 'mov_read_seek':
libavformat/mov.c:7461:5: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
     MOVStreamContext *sc = st->priv_data;
     ^
libavformat/options.c: In function 'format_child_class_next':
libavformat/options.c:64:5: warning: 'av_iformat_next' is deprecated (declared at libavformat/avformat.h:2089) [-Wdeprecated-declarations]
     while ((ifmt = av_iformat_next(ifmt)))
     ^
libavformat/options.c:69:9: warning: 'av_oformat_next' is deprecated (declared at libavformat/avformat.h:2097) [-Wdeprecated-declarations]
         while ((ofmt = av_oformat_next(ofmt)))
         ^
libavformat/options.c:73:9: warning: 'av_iformat_next' is deprecated (declared at libavformat/avformat.h:2089) [-Wdeprecated-declarations]
         while (ifmt = av_iformat_next(ifmt))
         ^
libavformat/options.c:77:5: warning: 'av_oformat_next' is deprecated (declared at libavformat/avformat.h:2097) [-Wdeprecated-declarations]
     while (ofmt = av_oformat_next(ofmt))
     ^
libavformat/protocols.c: In function 'avio_enum_protocols':
libavformat/protocols.c:105:7: warning: assignment discards 'const' qualifier from pointer target type
     p = p ? p + 1 : url_protocols;
       ^
libavformat/tcp.c: In function 'tcp_getaddrinfo_request_free_buffer':
libavformat/tcp.c:140:5: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
     TCPAddrinfoRequest *req = (TCPAddrinfoRequest *)opaque;
     ^
libavformat/utils.c: In function 'find_probe_decoder':
libavformat/utils.c:229:9: warning: 'av_codec_next' is deprecated (declared at ./libavcodec/avcodec.h:4068) [-Wdeprecated-declarations]
         while (probe_codec = av_codec_next(probe_codec)) {
         ^
libavformat/utils.c: In function 'avformat_transfer_internal_stream_timing_info':
libavformat/utils.c:5813:5: warning: 'codec' is deprecated (declared at libavformat/avformat.h:884) [-Wdeprecated-declarations]
     const AVCodecContext *dec_ctx = ist->codec;
     ^
libavformat/utils.c:5814:5: warning: 'codec' is deprecated (declared at libavformat/avformat.h:884) [-Wdeprecated-declarations]
     AVCodecContext       *enc_ctx = ost->codec;
     ^
libavformat/utils.c: At top level:
libavformat/utils.c:5913:12: warning: redundant redeclaration of 'avpriv_mpeg4audio_get_config' [-Wredundant-decls]
 extern int avpriv_mpeg4audio_get_config(MPEG4AudioConfig *c, const uint8_t *buf,
            ^
In file included from libavformat/utils.c:5899:0:
./libavcodec/mpeg4audio.h:69:5: note: previous declaration of 'avpriv_mpeg4audio_get_config' was here
 int avpriv_mpeg4audio_get_config(MPEG4AudioConfig *c, const uint8_t *buf,
     ^
libavformat/utils.c: In function 'create_video_decoder_from_codecpar':
libavformat/utils.c:5958:9: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
         const PPS *pps = NULL;
         ^
libavformat/utils.c:6013:9: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
         HEVCSEI sei;
         ^
libavformat/utils.c:6015:9: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
         const HEVCPPS *pps = NULL;
         ^
libavformat/utils.c:6037:13: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
             const HEVCWindow *ow = &sps->output_window;
             ^
libavformat/utils.c: In function 'av_try_find_stream_info':
libavformat/utils.c:6230:5: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
     int *missing_streams = av_opt_ptr(ic->iformat->priv_class, ic->priv_data, "missing_streams");
     ^
libavformat/utils.c:6233:9: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
         int64_t now = av_gettime();
         ^
libavcodec/aptx.c:1054:12: warning: 'aptx_encode_frame' defined but not used [-Wunused-function]
 static int aptx_encode_frame(AVCodecContext *avctx, AVPacket *avpkt,
            ^
libavcodec/avrndec.c: In function 'init':
libavcodec/avrndec.c:59:9: warning: 'refcounted_frames' is deprecated (declared at libavcodec/avcodec.h:2367) [-Wdeprecated-declarations]
         a->mjpeg_avctx->refcounted_frames = 1;
         ^
libavcodec/avrndec.c: In function 'decode_frame':
libavcodec/avrndec.c:110:9: warning: 'avcodec_decode_video2' is deprecated (declared at libavcodec/avcodec.h:4778) [-Wdeprecated-declarations]
         ret = avcodec_decode_video2(a->mjpeg_avctx, data, got_frame, avpkt);
         ^
libavcodec/decode.c: In function 'decode_simple_internal':
libavcodec/decode.c:402:5: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
     int silence = 0;
     ^
libavcodec/decode.c:409:9: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
         AVDictionary ** dict = (AVDictionary **)av_packet_get_side_data(pkt, AV_PKT_DATA_DICT, NULL);
         ^
libavcodec/decode.c: In function 'compat_decode':
libavcodec/decode.c:864:13: warning: 'refcounted_frames' is deprecated (declared at libavcodec/avcodec.h:2367) [-Wdeprecated-declarations]
             if (!avctx->refcounted_frames) {
             ^
libavcodec/decode.c: In function 'avcodec_flush_buffers':
libavcodec/decode.c:2043:5: warning: 'refcounted_frames' is deprecated (declared at libavcodec/avcodec.h:2367) [-Wdeprecated-declarations]
     if (!avctx->refcounted_frames)
     ^
libavcodec/encode.c: In function 'do_encode':
libavcodec/encode.c:368:9: warning: 'avcodec_encode_video2' is deprecated (declared at libavcodec/encode.c:260) [-Wdeprecated-declarations]
         ret = avcodec_encode_video2(avctx, avctx->internal->buffer_pkt,
         ^
libavcodec/encode.c:371:9: warning: 'avcodec_encode_audio2' is deprecated (declared at libavcodec/encode.c:118) [-Wdeprecated-declarations]
         ret = avcodec_encode_audio2(avctx, avctx->internal->buffer_pkt,
         ^
libavcodec/faandct.c:40:0: warning: "B0" redefined
 #define B0 1.000000000000000000000000000000000000
 ^
In file included from /Users/harsh/dev/pmtvfire/ijkplayer-android/android/contrib/build/toolchain-armv5/sysroot/usr/include/asm/termbits.h:19:0,
                 from /Users/harsh/dev/pmtvfire/ijkplayer-android/android/contrib/build/toolchain-armv5/sysroot/usr/include/asm-generic/termios.h:21,
                 from /Users/harsh/dev/pmtvfire/ijkplayer-android/android/contrib/build/toolchain-armv5/sysroot/usr/include/asm/termios.h:19,
                 from /Users/harsh/dev/pmtvfire/ijkplayer-android/android/contrib/build/toolchain-armv5/sysroot/usr/include/linux/termios.h:22,
                 from /Users/harsh/dev/pmtvfire/ijkplayer-android/android/contrib/build/toolchain-armv5/sysroot/usr/include/sys/ioctl.h:37,
                 from ./libavutil/timer.h:36,
                 from ./libavutil/internal.h:42,
                 from libavcodec/faandct.c:29:
/Users/harsh/dev/pmtvfire/ijkplayer-android/android/contrib/build/toolchain-armv5/sysroot/usr/include/asm-generic/termbits.h:142:0: note: this is the location of the previous definition
 #define B0 0000000
 ^
libavcodec/faanidct.c:27:0: warning: "B0" redefined
 #define B0 1.0000000000000000000000
 ^
In file included from /Users/harsh/dev/pmtvfire/ijkplayer-android/android/contrib/build/toolchain-armv5/sysroot/usr/include/asm/termbits.h:19:0,
                 from /Users/harsh/dev/pmtvfire/ijkplayer-android/android/contrib/build/toolchain-armv5/sysroot/usr/include/asm-generic/termios.h:21,
                 from /Users/harsh/dev/pmtvfire/ijkplayer-android/android/contrib/build/toolchain-armv5/sysroot/usr/include/asm/termios.h:19,
                 from /Users/harsh/dev/pmtvfire/ijkplayer-android/android/contrib/build/toolchain-armv5/sysroot/usr/include/linux/termios.h:22,
                 from /Users/harsh/dev/pmtvfire/ijkplayer-android/android/contrib/build/toolchain-armv5/sysroot/usr/include/sys/ioctl.h:37,
                 from ./libavutil/timer.h:36,
                 from ./libavutil/internal.h:42,
                 from ./libavutil/common.h:491,
                 from libavcodec/faanidct.c:22:
/Users/harsh/dev/pmtvfire/ijkplayer-android/android/contrib/build/toolchain-armv5/sysroot/usr/include/asm-generic/termbits.h:142:0: note: this is the location of the previous definition
 #define B0 0000000
 ^
In file included from libavcodec/fft_fixed.c:21:0:
libavcodec/fft_template.c:528:6: warning: 'pass_big' defined but not used [-Wunused-function]
 PASS(pass_big)
      ^
libavcodec/fft_template.c:505:13: note: in definition of macro 'PASS'
 static void name(FFTComplex *z, const FFTSample *wre, unsigned int n)\
             ^
In file included from libavcodec/fft_float.c:21:0:
libavcodec/fft_template.c:528:6: warning: 'pass_big' defined but not used [-Wunused-function]
 PASS(pass_big)
      ^
libavcodec/fft_template.c:505:13: note: in definition of macro 'PASS'
 static void name(FFTComplex *z, const FFTSample *wre, unsigned int n)\
             ^
libavcodec/hevc_mvs.c: In function 'derive_spatial_merge_candidates':
libavcodec/hevc_mvs.c:208:15: error: 'y0000000' undeclared (first use in this function)
             ((y ## v) >> s->ps.sps->log2_min_pu_size))
               ^
libavcodec/hevc_mvs.c:204:14: note: in definition of macro 'TAB_MVF'
     tab_mvf[(y) * min_pu_width + x]
              ^
libavcodec/hevc_mvs.c:274:16: note: in expansion of macro 'TAB_MVF_PU'
     (cand && !(TAB_MVF_PU(v).pred_flag == PF_INTRA))
                ^
libavcodec/hevc_mvs.c:368:23: note: in expansion of macro 'AVAILABLE'
     is_available_b0 = AVAILABLE(cand_up_right, B0) &&
                       ^
libavcodec/hevc_mvs.c:208:15: note: each undeclared identifier is reported only once for each function it appears in
             ((y ## v) >> s->ps.sps->log2_min_pu_size))
               ^
libavcodec/hevc_mvs.c:204:14: note: in definition of macro 'TAB_MVF'
     tab_mvf[(y) * min_pu_width + x]
              ^
libavcodec/hevc_mvs.c:274:16: note: in expansion of macro 'TAB_MVF_PU'
     (cand && !(TAB_MVF_PU(v).pred_flag == PF_INTRA))
                ^
libavcodec/hevc_mvs.c:368:23: note: in expansion of macro 'AVAILABLE'
     is_available_b0 = AVAILABLE(cand_up_right, B0) &&
                       ^
libavcodec/hevc_mvs.c:207:15: error: 'x0000000' undeclared (first use in this function)
     TAB_MVF(((x ## v) >> s->ps.sps->log2_min_pu_size),                     \
               ^
libavcodec/hevc_mvs.c:204:34: note: in definition of macro 'TAB_MVF'
     tab_mvf[(y) * min_pu_width + x]
                                  ^
libavcodec/hevc_mvs.c:274:16: note: in expansion of macro 'TAB_MVF_PU'
     (cand && !(TAB_MVF_PU(v).pred_flag == PF_INTRA))
                ^
libavcodec/hevc_mvs.c:368:23: note: in expansion of macro 'AVAILABLE'
     is_available_b0 = AVAILABLE(cand_up_right, B0) &&
                       ^
libavcodec/hevc_mvs.c: In function 'ff_hevc_luma_mv_mvp_mode':
libavcodec/hevc_mvs.c:208:15: error: 'y0000000' undeclared (first use in this function)
             ((y ## v) >> s->ps.sps->log2_min_pu_size))
               ^
libavcodec/hevc_mvs.c:204:14: note: in definition of macro 'TAB_MVF'
     tab_mvf[(y) * min_pu_width + x]
              ^
libavcodec/hevc_mvs.c:274:16: note: in expansion of macro 'TAB_MVF_PU'
     (cand && !(TAB_MVF_PU(v).pred_flag == PF_INTRA))
                ^
libavcodec/hevc_mvs.c:683:24: note: in expansion of macro 'AVAILABLE'
     is_available_b0 =  AVAILABLE(cand_up_right, B0) &&
                        ^
libavcodec/hevc_mvs.c:207:15: error: 'x0000000' undeclared (first use in this function)
     TAB_MVF(((x ## v) >> s->ps.sps->log2_min_pu_size),                     \
               ^
libavcodec/hevc_mvs.c:204:34: note: in definition of macro 'TAB_MVF'
     tab_mvf[(y) * min_pu_width + x]
                                  ^
libavcodec/hevc_mvs.c:274:16: note: in expansion of macro 'TAB_MVF_PU'
     (cand && !(TAB_MVF_PU(v).pred_flag == PF_INTRA))
                ^
libavcodec/hevc_mvs.c:683:24: note: in expansion of macro 'AVAILABLE'
     is_available_b0 =  AVAILABLE(cand_up_right, B0) &&
                        ^
make: *** [libavcodec/hevc_mvs.o] Error 1
make: *** Waiting for unfinished jobs....

For the sake of completion, tried running ./gradlew :fijkplayer-full:assembleRelease inside ijkplayer-android/android/ijkplayer/ Gave this:

Starting a Gradle Daemon (subsequent builds will be faster)

FAILURE: Build failed with an exception.

* What went wrong:
A problem occurred configuring project ':fijkplayer-full'.
> ABIs [armeabi] are not supported for platform. Supported ABIs are [arm64-v8a, armeabi-v7a, x86, x86_64].

* Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. Run with --scan to get full insights.

* Get more help at https://help.gradle.org

BUILD FAILED in 9s
befovy commented 4 years ago

The ffmpeg compilation failed. error: 'x0000000' undeclared.

I recently update ffmpeg to 4.0, but don't have a fully tested. Can you try to rollback ffmpeg to 3.4?

Change init/init-android.sh IJK_FFMPEG_COMMIT=ff3.4--ijk0.8.7--20180103--001 and rerun init-android.sh

pharshdev commented 4 years ago

Made the change, but still the same.

====================
[*] check archs
====================
FF_ALL_ARCHS = armv5 armv7a arm64 x86 x86_64
FF_ACT_ARCHS = armv5 armv7a arm64 x86 x86_64

====================
[*] check env armv5
====================
FF_ARCH=armv5
FF_BUILD_OPT=

--------------------
[*] make NDK standalone toolchain
--------------------
build on Darwin x86_64
ANDROID_NDK=/Users/harsh/Downloads/android-ndk-r15c
IJK_NDK_REL=15.2.4203891
NDKr15.2.4203891 detected

--------------------
[*] check ffmpeg env
--------------------

--------------------
[*] configurate ffmpeg
--------------------
/Users/harsh/dev/pmtvfire/ijkplayer-android/android/contrib/build/toolchain-armv5/bin//arm-linux-androideabi-gcc
install prefix            /Users/harsh/dev/pmtvfire/ijkplayer-android/android/contrib/build/output-armv5
source path               .
C compiler                arm-linux-androideabi-gcc
C library                 bionic
host C compiler           gcc
host C library            
ARCH                      arm (armv5te)
big-endian                no
runtime cpu detection     yes
ARMv5TE enabled           yes
ARMv6 enabled             yes
ARMv6T2 enabled           yes
VFP enabled               yes
NEON enabled              yes
THUMB enabled             no
debug symbols             yes
strip symbols             yes
optimize for size         yes
optimizations             yes
static                    yes
shared                    no
postprocessing support    no
network support           yes
threading support         pthreads
safe bitstream reader     yes
texi2html enabled         no
perl enabled              yes
pod2man enabled           yes
makeinfo enabled          yes
makeinfo supports HTML    no

External libraries:
xlib               zlib

External libraries providing hardware acceleration:
v4l2_m2m

Libraries:
avcodec            avformat           swresample
avfilter           avutil             swscale

Programs:

Enabled decoders:
aac            aura               evrc
aac_fixed          aura2              exr
aac_latm           avrn               ffv1
aasc               avrp               ffvhuff
ac3            avs                ffwavesynth
ac3_fixed          avui               fic
adpcm_4xm          ayuv               fits
adpcm_adx          bethsoftvid            flac
adpcm_afc          bfi                flashsv
adpcm_aica         bink               flashsv2
adpcm_ct           binkaudio_dct          flic
adpcm_dtk          binkaudio_rdft         flv
adpcm_ea           bintext            fmvc
adpcm_ea_maxis_xa      bitpacked              fourxm
adpcm_ea_r1        bmp                fraps
adpcm_ea_r2        bmv_audio              frwu
adpcm_ea_r3        bmv_video              g2m
adpcm_ea_xas           brender_pix            g723_1
adpcm_g722         c93                g729
adpcm_g726         cavs               gdv
adpcm_g726le           ccaption           gif
adpcm_ima_amv          cdgraphics             gremlin_dpcm
adpcm_ima_apc          cdxl               gsm
adpcm_ima_dat4         cfhd               gsm_ms
adpcm_ima_dk3          cinepak            h261
adpcm_ima_dk4          clearvideo             h263
adpcm_ima_ea_eacs      cljr               h263_v4l2m2m
adpcm_ima_ea_sead      cllc               h263i
adpcm_ima_iss          comfortnoise           h263p
adpcm_ima_oki          cook               h264
adpcm_ima_qt           cpia               h264_v4l2m2m
adpcm_ima_rad          cscd               hap
adpcm_ima_smjpeg       cyuv               hevc
adpcm_ima_wav          dca                hnm4_video
adpcm_ima_ws           dds                hq_hqa
adpcm_ms           dfa                hqx
adpcm_mtaf         dirac              huffyuv
adpcm_psx          dnxhd              iac
adpcm_sbpro_2          dolby_e            idcin
adpcm_sbpro_3          dpx                idf
adpcm_sbpro_4          dsd_lsbf           iff_ilbm
adpcm_swf          dsd_lsbf_planar        imc
adpcm_thp          dsd_msbf           indeo2
adpcm_thp_le           dsd_msbf_planar        indeo3
adpcm_vima         dsicinaudio            indeo4
adpcm_xa           dsicinvideo            indeo5
adpcm_yamaha           dss_sp             interplay_acm
aic            dst                interplay_dpcm
alac               dvaudio            interplay_video
alias_pix          dvbsub             jacosub
als            dvdsub             jpeg2000
amrnb              dvvideo            jpegls
amrwb              dxa                jv
amv            dxtory             kgv1
anm            dxv                kmvc
ansi               eac3               lagarith
ape            eacmv              loco
apng               eamad              m101
ass            eatgq              mace3
asv1               eatgv              mace6
asv2               eatqi              magicyuv
atrac1             eightbps           mdec
atrac3             eightsvx_exp           metasound
atrac3al           eightsvx_fib           microdvd
atrac3p            escape124              mimic
atrac3pal          escape130              mjpeg
mjpegb             pcm_s32be              sol_dpcm
mlp            pcm_s32le              sonic
mmvideo            pcm_s32le_planar       sp5x
motionpixels           pcm_s64be              speedhq
movtext            pcm_s64le              srgc
mp1            pcm_s8             srt
mp1float           pcm_s8_planar          ssa
mp2            pcm_u16be              stl
mp2float           pcm_u16le              subrip
mp3            pcm_u24be              subviewer
mp3adu             pcm_u24le              subviewer1
mp3adufloat        pcm_u32be              sunrast
mp3float           pcm_u32le              svq1
mp3on4             pcm_u8             svq3
mp3on4float        pcm_zork           tak
mpc7               pcx                targa
mpc8               pgm                targa_y216
mpeg1_v4l2m2m          pgmyuv             tdsc
mpeg1video         pgssub             text
mpeg2_v4l2m2m          pictor             theora
mpeg2video         pixlet             thp
mpeg4              pjs                tiertexseqvideo
mpeg4_v4l2m2m          png                tiff
mpegvideo          ppm                tmv
mpl2               prores             truehd
msa1               prores_lgpl            truemotion1
mscc               psd                truemotion2
msmpeg4v1          ptx                truemotion2rt
msmpeg4v2          qcelp              truespeech
msmpeg4v3          qdm2               tscc
msrle              qdmc               tscc2
mss1               qdraw              tta
mss2               qpeg               twinvq
msvideo1           qtrle              txd
mszh               r10k               ulti
mts2               r210               utvideo
mvc1               ra_144             v210
mvc2               ra_288             v210x
mxpeg              ralf               v308
nellymoser         rawvideo           v408
nuv            realtext           v410
on2avc             rl2                vb
opus               roq                vble
paf_audio          roq_dpcm           vc1
paf_video          rpza               vc1_v4l2m2m
pam            rscc               vc1image
pbm            rv10               vcr1
pcm_alaw           rv20               vmdaudio
pcm_bluray         rv30               vmdvideo
pcm_dvd            rv40               vmnc
pcm_f16le          s302m              vorbis
pcm_f24le          sami               vp3
pcm_f32be          sanm               vp5
pcm_f32le          scpr               vp6
pcm_f64be          screenpresso           vp6a
pcm_f64le          sdx2_dpcm              vp6f
pcm_lxf            sgi                vp7
pcm_mulaw          sgirle             vp8
pcm_s16be          sheervideo             vp8_v4l2m2m
pcm_s16be_planar       shorten            vp9
pcm_s16le          sipr               vp9_v4l2m2m
pcm_s16le_planar       smackaud           vplayer
pcm_s24be          smacker            vqa
pcm_s24daud        smc                wavpack
pcm_s24le          smvjpeg            webp
pcm_s24le_planar       snow               webvtt
wmalossless        ws_snd1            xsub
wmapro             xan_dpcm           xwd
wmav1              xan_wc3            y41p
wmav2              xan_wc4            ylc
wmavoice           xbin               yop
wmv1               xbm                yuv4
wmv2               xface              zero12v
wmv3               xl                 zerocodec
wmv3image          xma1               zlib
wnv1               xma2               zmbv
wrapped_avframe        xpm

Enabled encoders:

Enabled hwaccels:

Enabled parsers:
aac            dvdsub             png
aac_latm           flac               pnm
ac3            g729               rv30
adx            gsm                rv40
bmp            h261               sipr
cavsvideo          h263               tak
cook               h264               vc1
dca            hevc               vorbis
dirac              mjpeg              vp3
dnxhd              mlp                vp8
dpx            mpeg4video             vp9
dvaudio            mpegaudio              xma
dvbsub             mpegvideo
dvd_nav            opus

Enabled demuxers:
aa             flac               lrc
aac            flic               lvf
ac3            flv                lxf
acm            fourxm             m4v
act            frm                matroska
adf            fsb                mgsts
adp            g722               microdvd
ads            g723_1             mjpeg
adx            g726               mjpeg_2000
aea            g726le             mlp
afc            g729               mlv
aiff               gdv                mm
aix            genh               mmf
amr            gif                mov
anm            gsm                mp3
apc            gxf                mpc
ape            h261               mpc8
apng               h263               mpegps
aqtitle            h264               mpegts
asf            hevc               mpegtsraw
asf_o              hls                mpegvideo
ass            hnm                mpjpeg
ast            ico                mpl2
au             idcin              mpsub
avi            idf                msf
avr            iff                msnwc_tcp
avs            ilbc               mtaf
bethsoftvid        image2             mtv
bfi            image2_alias_pix       musx
bfstm              image2_brender_pix         mv
bink               image2pipe             mvi
bintext            image_bmp_pipe         mxf
bit            image_dds_pipe         mxg
bmv            image_dpx_pipe         nc
boa            image_exr_pipe         nistsphere
brstm              image_j2k_pipe         nsv
c93            image_jpeg_pipe        nut
caf            image_jpegls_pipe          nuv
cavsvideo          image_pam_pipe         ogg
cdg            image_pbm_pipe         oma
cdxl               image_pcx_pipe         paf
cine               image_pgm_pipe         pcm_alaw
concat             image_pgmyuv_pipe          pcm_f32be
data               image_pictor_pipe          pcm_f32le
daud               image_png_pipe         pcm_f64be
dcstr              image_ppm_pipe         pcm_f64le
dfa            image_psd_pipe         pcm_mulaw
dirac              image_qdraw_pipe       pcm_s16be
dnxhd              image_sgi_pipe         pcm_s16le
dsf            image_sunrast_pipe         pcm_s24be
dsicin             image_svg_pipe         pcm_s24le
dss            image_tiff_pipe        pcm_s32be
dts            image_webp_pipe        pcm_s32le
dtshd              image_xpm_pipe         pcm_s8
dv             ingenient              pcm_u16be
dvbsub             ipmovie            pcm_u16le
dvbtxt             ircam              pcm_u24be
dxa            iss                pcm_u24le
ea             iv8                pcm_u32be
ea_cdata           ivf                pcm_u32le
eac3               ivr                pcm_u8
epaf               jacosub            pjs
ffm            jv                 pmp
ffmetadata         live_flv           pva
filmstrip          lmlm4              pvf
fits               loas               qcp
r3d            smush              vivo
rawvideo           sol                vmd
realtext           sox                vobsub
redspark           spdif              voc
rl2            srt                vpk
rm             stl                vplayer
roq            str                vqf
rpl            subviewer              w64
rsd            subviewer1             wav
rso            sup                wc3
rtp            svag               webm_dash_manifest
rtsp               swf                webvtt
s337m              tak                wsaud
sami               tedcaptions            wsd
sap            thp                wsvqa
sbg            threedostr             wtv
scc            tiertexseq             wv
sdp            tmv                wve
sdr2               truehd             xa
sds            tta                xbin
sdx            tty                xmv
segafilm           txd                xvag
shorten            v210               xwma
siff               v210x              yop
sln            vag                yuv4mpegpipe
smacker            vc1
smjpeg             vc1t

Enabled muxers:

Enabled protocols:
async              icecast            rtmp
cache              ijkhttphook            rtmpt
concat             ijkio              rtp
crypto             ijklongurl             srtp
data               ijkmediadatasource         subfile
ffrtmphttp         ijksegment             tcp
file               ijktcphook             tee
ftp            md5                udp
gopher             mmsh               udplite
hls            mmst               unix
http               pipe
httpproxy          prompeg

Enabled filters:
abench             blackdetect            gblur
abitscope          blend              gradfun
acompressor        bwdif              haas
acopy              cellauto           haldclut
acrossfade         channelmap             haldclutsrc
acrusher           channelsplit           hdcd
adelay             chorus             headphone
adrawgraph         chromakey              hflip
aecho              ciescope           highpass
aemphasis          codecview              histogram
aeval              color              hqx
aevalsrc           colorbalance           hstack
afade              colorchannelmixer          hue
afftfilt           colorkey           hwdownload
afir               colorlevels            hwmap
aformat            colorspace             hwupload
agate              compand            hysteresis
ahistogram         compensationdelay          idet
ainterleave        concat             il
alimiter           convolution            inflate
allpass            convolve           interleave
allrgb             copy               join
allyuv             crop               lenscorrection
aloop              crossfeed              life
alphaextract           crystalizer            limiter
alphamerge         curves             loop
amerge             datascope              loudnorm
ametadata          dcshift            lowpass
amix               dctdnoiz           lumakey
amovie             deband             lut
anequalizer        decimate           lut2
anoisesrc          deflate            lut3d
anull              deflicker              lutrgb
anullsink          dejudder           lutyuv
anullsrc           deshake            mandelbrot
apad               despill            maskedclamp
aperms             detelecine             maskedmerge
aphasemeter        dilation           mergeplanes
aphaser            displace           mestimate
apulsator          doubleweave            metadata
arealtime          drawbox            midequalizer
aresample          drawgraph              minterpolate
areverse           drawgrid           movie
aselect            dynaudnorm             negate
asendcmd           earwax             nlmeans
asetnsamples           ebur128            noformat
asetpts            edgedetect             noise
asetrate           elbg               null
asettb             equalizer              nullsink
ashowinfo          erosion            nullsrc
asidedata          extractplanes          oscilloscope
asplit             extrastereo            overlay
astats             fade               pad
astreamselect          fftfilt            palettegen
atadenoise         field              paletteuse
atempo             fieldhint              pan
atrim              fieldmatch             perms
avectorscope           fieldorder             pixdesctest
avgblur            firequalizer           pixscope
bandpass           flanger            premultiply
bandreject         floodfill              prewitt
bass               format             pseudocolor
bbox               fps                psnr
bench              framepack              qp
biquad             framerate              random
bitplanenoise          framestep              readeia608
readvitc           showwaves              threshold
realtime           showwavespic           thumbnail
remap              shuffleframes          tile
removegrain        shuffleplanes          tlut2
removelogo         sidechaincompress          tonemap
replaygain         sidechaingate          transpose
reverse            sidedata           treble
rgbtestsrc         signalstats            tremolo
roberts            silencedetect          trim
rotate             silenceremove          unpremultiply
scale              sine               unsharp
scale2ref          smptebars              vectorscope
select             smptehdbars            vflip
selectivecolor         sobel              vibrato
sendcmd            spectrumsynth          vignette
separatefields         split              vmafmotion
setdar             ssim               volume
setfield           stereotools            volumedetect
setpts             stereowiden            vstack
setsar             streamselect           w3fdif
settb              superequalizer         waveform
showcqt            surround           weave
showfreqs          swaprect           xbr
showinfo           swapuv             yadif
showpalette        tblend             yuvtestsrc
showspectrum           telecine           zoompan
showspectrumpic        testsrc
showvolume         testsrc2

Enabled bsfs:
aac_adtstoasc          imx_dump_header        null
chomp              mjpeg2jpeg             remove_extradata
dca_core           mjpega_dump_header         text2movsub
dump_extradata         mov2textsub            vp9_raw_reorder
extract_extradata      mp3_header_decompress      vp9_superframe
h264_mp4toannexb       mpeg4_unpack_bframes       vp9_superframe_split
hevc_mp4toannexb       noise

Enabled indevs:

Enabled outdevs:

License: LGPL version 2.1 or later
Creating configuration files ...

--------------------
[*] compile ffmpeg
--------------------
libavfilter/af_aecho.c:186:0: warning: "ECHO" redefined
 #define ECHO(name, type, min, max)                                          \
 ^
In file included from /Users/harsh/dev/pmtvfire/ijkplayer-android/android/contrib/build/toolchain-armv5/sysroot/usr/include/asm/termbits.h:19:0,
                 from /Users/harsh/dev/pmtvfire/ijkplayer-android/android/contrib/build/toolchain-armv5/sysroot/usr/include/asm-generic/termios.h:21,
                 from /Users/harsh/dev/pmtvfire/ijkplayer-android/android/contrib/build/toolchain-armv5/sysroot/usr/include/asm/termios.h:19,
                 from /Users/harsh/dev/pmtvfire/ijkplayer-android/android/contrib/build/toolchain-armv5/sysroot/usr/include/linux/termios.h:22,
                 from /Users/harsh/dev/pmtvfire/ijkplayer-android/android/contrib/build/toolchain-armv5/sysroot/usr/include/sys/ioctl.h:37,
                 from ./libavutil/timer.h:36,
                 from ./libavutil/internal.h:42,
                 from ./libavutil/common.h:467,
                 from ./libavutil/avutil.h:296,
                 from ./libavutil/avassert.h:31,
                 from libavfilter/af_aecho.c:21:
/Users/harsh/dev/pmtvfire/ijkplayer-android/android/contrib/build/toolchain-armv5/sysroot/usr/include/asm-generic/termbits.h:209:0: note: this is the location of the previous definition
 #define ECHO 0000010
 ^
libavfilter/avfiltergraph.c: In function 'avfilter_graph_free':
libavfilter/avfiltergraph.c:132:5: warning: 'resample_lavr_opts' is deprecated (declared at libavfilter/avfilter.h:862) [-Wdeprecated-declarations]
     av_freep(&(*graph)->resample_lavr_opts);
     ^
libavfilter/lavfutils.c: In function 'ff_load_image':
libavfilter/lavfutils.c:93:5: warning: 'avcodec_decode_video2' is deprecated (declared at ./libavcodec/avcodec.h:4994) [-Wdeprecated-declarations]
     ret = avcodec_decode_video2(codec_ctx, frame, &frame_decoded, &pkt);
     ^
libavfilter/src_movie.c: In function 'open_stream':
libavfilter/src_movie.c:175:5: warning: 'refcounted_frames' is deprecated (declared at ./libavcodec/avcodec.h:2695) [-Wdeprecated-declarations]
     st->codec_ctx->refcounted_frames = 1;
     ^
libavfilter/src_movie.c: In function 'movie_push_frame':
libavfilter/src_movie.c:531:9: warning: 'avcodec_decode_video2' is deprecated (declared at ./libavcodec/avcodec.h:4994) [-Wdeprecated-declarations]
         ret = avcodec_decode_video2(st->codec_ctx, frame, &got_frame, pkt);
         ^
libavfilter/src_movie.c:534:9: warning: 'avcodec_decode_audio4' is deprecated (declared at ./libavcodec/avcodec.h:4945) [-Wdeprecated-declarations]
         ret = avcodec_decode_audio4(st->codec_ctx, frame, &got_frame, pkt);
         ^
libavfilter/vf_colorspace.c: In function 'fill_rgb2xyz_table':
libavfilter/vf_colorspace.c:398:22: warning: passing argument 1 of 'invert_matrix3x3' from incompatible pointer type
     invert_matrix3x3(rgb2xyz, i);
                      ^
libavfilter/vf_colorspace.c:315:13: note: expected 'const double (*)[3]' but argument is of type 'double (*)[3]'
 static void invert_matrix3x3(const double in[3][3], double out[3][3])
             ^
libavfilter/vf_colorspace.c: In function 'fill_whitepoint_conv_table':
libavfilter/vf_colorspace.c:462:21: warning: passing argument 3 of 'mul3x3' from incompatible pointer type
     mul3x3(tmp, ma, fac);
                     ^
libavfilter/vf_colorspace.c:414:13: note: expected 'const double (*)[3]' but argument is of type 'double (*)[3]'
 static void mul3x3(double dst[3][3], const double src1[3][3], const double src2[3][3])
             ^
libavfilter/vf_colorspace.c:463:17: warning: passing argument 2 of 'mul3x3' from incompatible pointer type
     mul3x3(out, tmp, mai);
                 ^
libavfilter/vf_colorspace.c:414:13: note: expected 'const double (*)[3]' but argument is of type 'double (*)[3]'
 static void mul3x3(double dst[3][3], const double src1[3][3], const double src2[3][3])
             ^
libavfilter/vf_colorspace.c:463:22: warning: passing argument 3 of 'mul3x3' from incompatible pointer type
     mul3x3(out, tmp, mai);
                      ^
libavfilter/vf_colorspace.c:414:13: note: expected 'const double (*)[3]' but argument is of type 'double (*)[3]'
 static void mul3x3(double dst[3][3], const double src1[3][3], const double src2[3][3])
             ^
libavfilter/vf_colorspace.c: In function 'convert':
libavfilter/vf_colorspace.c:518:20: warning: passing argument 7 of 's->yuv2yuv' from incompatible pointer type
                    s->yuv2yuv_coeffs, s->yuv_offset);
                    ^
libavfilter/vf_colorspace.c:518:20: note: expected 'const int16_t (*)[3][8]' but argument is of type 'int16_t (*)[3][8]'
libavfilter/vf_colorspace.c:518:39: warning: passing argument 8 of 's->yuv2yuv' from incompatible pointer type
                    s->yuv2yuv_coeffs, s->yuv_offset);
                                       ^
libavfilter/vf_colorspace.c:518:39: note: expected 'const int16_t (*)[8]' but argument is of type 'int16_t (*)[8]'
libavfilter/vf_colorspace.c:540:20: warning: passing argument 7 of 's->yuv2rgb' from incompatible pointer type
                    s->yuv2rgb_coeffs, s->yuv_offset[0]);
                    ^
libavfilter/vf_colorspace.c:540:20: note: expected 'const int16_t (*)[3][8]' but argument is of type 'int16_t (*)[3][8]'
libavfilter/vf_colorspace.c:544:62: warning: passing argument 5 of 's->dsp.multiply3x3' from incompatible pointer type
                 s->dsp.multiply3x3(rgb, s->rgb_stride, w, h, s->lrgb2lrgb_coeffs);
                                                              ^
libavfilter/vf_colorspace.c:544:62: note: expected 'const int16_t (*)[3][8]' but argument is of type 'int16_t (*)[3][8]'
libavfilter/vf_colorspace.c:549:28: warning: passing argument 7 of 's->rgb2yuv_fsb' from incompatible pointer type
                            s->rgb2yuv_coeffs, s->yuv_offset[1], s->dither_scratch);
                            ^
libavfilter/vf_colorspace.c:549:28: note: expected 'const int16_t (*)[3][8]' but argument is of type 'int16_t (*)[3][8]'
libavfilter/vf_colorspace.c:552:24: warning: passing argument 7 of 's->rgb2yuv' from incompatible pointer type
                        s->rgb2yuv_coeffs, s->yuv_offset[1]);
                        ^
libavfilter/vf_colorspace.c:552:24: note: expected 'const int16_t (*)[3][8]' but argument is of type 'int16_t (*)[3][8]'
libavfilter/vf_colorspace.c: In function 'create_filtergraph':
libavfilter/vf_colorspace.c:666:30: warning: passing argument 1 of 'invert_matrix3x3' from incompatible pointer type
             invert_matrix3x3(rgb2xyz, xyz2rgb);
                              ^
libavfilter/vf_colorspace.c:315:13: note: expected 'const double (*)[3]' but argument is of type 'double (*)[3]'
 static void invert_matrix3x3(const double in[3][3], double out[3][3])
             ^
libavfilter/vf_colorspace.c:674:29: warning: passing argument 2 of 'mul3x3' from incompatible pointer type
                 mul3x3(tmp, rgb2xyz, wpconv);
                             ^
libavfilter/vf_colorspace.c:414:13: note: expected 'const double (*)[3]' but argument is of type 'double (*)[3]'
 static void mul3x3(double dst[3][3], const double src1[3][3], const double src2[3][3])
             ^
libavfilter/vf_colorspace.c:674:38: warning: passing argument 3 of 'mul3x3' from incompatible pointer type
                 mul3x3(tmp, rgb2xyz, wpconv);
                                      ^
libavfilter/vf_colorspace.c:414:13: note: expected 'const double (*)[3]' but argument is of type 'double (*)[3]'
 static void mul3x3(double dst[3][3], const double src1[3][3], const double src2[3][3])
             ^
libavfilter/vf_colorspace.c:675:33: warning: passing argument 2 of 'mul3x3' from incompatible pointer type
                 mul3x3(rgb2rgb, tmp, xyz2rgb);
                                 ^
libavfilter/vf_colorspace.c:414:13: note: expected 'const double (*)[3]' but argument is of type 'double (*)[3]'
 static void mul3x3(double dst[3][3], const double src1[3][3], const double src2[3][3])
             ^
libavfilter/vf_colorspace.c:675:38: warning: passing argument 3 of 'mul3x3' from incompatible pointer type
                 mul3x3(rgb2rgb, tmp, xyz2rgb);
                                      ^
libavfilter/vf_colorspace.c:414:13: note: expected 'const double (*)[3]' but argument is of type 'double (*)[3]'
 static void mul3x3(double dst[3][3], const double src1[3][3], const double src2[3][3])
             ^
libavfilter/vf_colorspace.c:677:33: warning: passing argument 2 of 'mul3x3' from incompatible pointer type
                 mul3x3(rgb2rgb, rgb2xyz, xyz2rgb);
                                 ^
libavfilter/vf_colorspace.c:414:13: note: expected 'const double (*)[3]' but argument is of type 'double (*)[3]'
 static void mul3x3(double dst[3][3], const double src1[3][3], const double src2[3][3])
             ^
libavfilter/vf_colorspace.c:677:42: warning: passing argument 3 of 'mul3x3' from incompatible pointer type
                 mul3x3(rgb2rgb, rgb2xyz, xyz2rgb);
                                          ^
libavfilter/vf_colorspace.c:414:13: note: expected 'const double (*)[3]' but argument is of type 'double (*)[3]'
 static void mul3x3(double dst[3][3], const double src1[3][3], const double src2[3][3])
             ^
libavfilter/vf_colorspace.c:802:30: warning: passing argument 1 of 'invert_matrix3x3' from incompatible pointer type
             invert_matrix3x3(rgb2yuv, yuv2rgb);
                              ^
libavfilter/vf_colorspace.c:315:13: note: expected 'const double (*)[3]' but argument is of type 'double (*)[3]'
 static void invert_matrix3x3(const double in[3][3], double out[3][3])
             ^
libavfilter/vf_colorspace.c:858:29: warning: passing argument 2 of 'mul3x3' from incompatible pointer type
             mul3x3(yuv2yuv, yuv2rgb, rgb2yuv);
                             ^
libavfilter/vf_colorspace.c:414:13: note: expected 'const double (*)[3]' but argument is of type 'double (*)[3]'
 static void mul3x3(double dst[3][3], const double src1[3][3], const double src2[3][3])
             ^
libavfilter/vf_colorspace.c:858:38: warning: passing argument 3 of 'mul3x3' from incompatible pointer type
             mul3x3(yuv2yuv, yuv2rgb, rgb2yuv);
                                      ^
libavfilter/vf_colorspace.c:414:13: note: expected 'const double (*)[3]' but argument is of type 'double (*)[3]'
 static void mul3x3(double dst[3][3], const double src1[3][3], const double src2[3][3])
             ^
libavformat/dump.c: In function 'dump_stream_format':
libavformat/dump.c:473:5: warning: 'codec' is deprecated (declared at libavformat/avformat.h:898) [-Wdeprecated-declarations]
     avctx->properties = st->codec->properties;
     ^
libavformat/dump.c:474:5: warning: 'codec' is deprecated (declared at libavformat/avformat.h:898) [-Wdeprecated-declarations]
     avctx->codec      = st->codec->codec;
     ^
libavformat/dump.c:475:5: warning: 'codec' is deprecated (declared at libavformat/avformat.h:898) [-Wdeprecated-declarations]
     avctx->qmin       = st->codec->qmin;
     ^
libavformat/dump.c:476:5: warning: 'codec' is deprecated (declared at libavformat/avformat.h:898) [-Wdeprecated-declarations]
     avctx->qmax       = st->codec->qmax;
     ^
libavformat/dump.c:477:5: warning: 'codec' is deprecated (declared at libavformat/avformat.h:898) [-Wdeprecated-declarations]
     avctx->coded_width  = st->codec->coded_width;
     ^
libavformat/dump.c:478:5: warning: 'codec' is deprecated (declared at libavformat/avformat.h:898) [-Wdeprecated-declarations]
     avctx->coded_height = st->codec->coded_height;
     ^
libavformat/dump.c:513:9: warning: 'codec' is deprecated (declared at libavformat/avformat.h:898) [-Wdeprecated-declarations]
         int tbc = st->codec->time_base.den && st->codec->time_base.num;
         ^
libavformat/dump.c:513:9: warning: 'codec' is deprecated (declared at libavformat/avformat.h:898) [-Wdeprecated-declarations]
libavformat/dump.c:525:13: warning: 'codec' is deprecated (declared at libavformat/avformat.h:898) [-Wdeprecated-declarations]
             print_fps(1 / av_q2d(st->codec->time_base), "tbc");
             ^
libavformat/protocols.c: In function 'avio_enum_protocols':
libavformat/protocols.c:106:7: warning: assignment discards 'const' qualifier from pointer target type
     p = p ? p + 1 : url_protocols;
       ^
libavformat/tcp.c: In function 'tcp_getaddrinfo_request_free_buffer':
libavformat/tcp.c:134:5: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
     TCPAddrinfoRequest *req = (TCPAddrinfoRequest *)opaque;
     ^
libavformat/utils.c: In function 'avformat_transfer_internal_stream_timing_info':
libavformat/utils.c:5563:5: warning: 'codec' is deprecated (declared at libavformat/avformat.h:898) [-Wdeprecated-declarations]
     const AVCodecContext *dec_ctx = ist->codec;
     ^
libavformat/utils.c:5564:5: warning: 'codec' is deprecated (declared at libavformat/avformat.h:898) [-Wdeprecated-declarations]
     AVCodecContext       *enc_ctx = ost->codec;
     ^
libavcodec/avrndec.c: In function 'init':
libavcodec/avrndec.c:59:9: warning: 'refcounted_frames' is deprecated (declared at libavcodec/avcodec.h:2695) [-Wdeprecated-declarations]
         a->mjpeg_avctx->refcounted_frames = 1;
         ^
libavcodec/avrndec.c: In function 'decode_frame':
libavcodec/avrndec.c:110:9: warning: 'avcodec_decode_video2' is deprecated (declared at libavcodec/avcodec.h:4994) [-Wdeprecated-declarations]
         ret = avcodec_decode_video2(a->mjpeg_avctx, data, got_frame, avpkt);
         ^
libavcodec/bitstream_filter.c: In function 'av_bitstream_filter_next':
libavcodec/bitstream_filter.c:39:5: warning: return discards 'const' qualifier from pointer target type
     return av_bsf_next(&opaque);
     ^
libavcodec/bitstream_filter.c: In function 'av_bitstream_filter_filter':
libavcodec/bitstream_filter.c:134:14: warning: assignment discards 'const' qualifier from pointer target type
     pkt.data = buf;
              ^
libavcodec/cfhd.c: In function 'alloc_buffers':
libavcodec/cfhd.c:165:5: warning: 'avcodec_get_chroma_sub_sample' is deprecated (declared at libavcodec/avcodec.h:5704) [-Wdeprecated-declarations]
     avcodec_get_chroma_sub_sample(avctx->pix_fmt, &s->chroma_x_shift, &s->chroma_y_shift);
     ^
libavcodec/decode.c: In function 'compat_decode':
libavcodec/decode.c:789:13: warning: 'refcounted_frames' is deprecated (declared at libavcodec/avcodec.h:2695) [-Wdeprecated-declarations]
             if (!avctx->refcounted_frames) {
             ^
libavcodec/decode.c: In function 'avcodec_flush_buffers':
libavcodec/decode.c:1743:5: warning: 'refcounted_frames' is deprecated (declared at libavcodec/avcodec.h:2695) [-Wdeprecated-declarations]
     if (!avctx->refcounted_frames)
     ^
libavcodec/dirac.c: In function 'parse_source_parameters':
libavcodec/dirac.c:272:5: warning: 'avcodec_get_chroma_sub_sample' is deprecated (declared at libavcodec/avcodec.h:5704) [-Wdeprecated-declarations]
     avcodec_get_chroma_sub_sample(dsh->pix_fmt, &chroma_x_shift, &chroma_y_shift);
     ^
libavcodec/diracdec.c: In function 'get_buffer_with_edge':
libavcodec/diracdec.c:1930:5: warning: 'avcodec_get_chroma_sub_sample' is deprecated (declared at libavcodec/avcodec.h:5704) [-Wdeprecated-declarations]
     avcodec_get_chroma_sub_sample(avctx->pix_fmt, &chroma_x_shift, &chroma_y_shift);
     ^
libavcodec/diracdec.c: In function 'dirac_decode_data_unit':
libavcodec/diracdec.c:2129:9: warning: 'avcodec_get_chroma_sub_sample' is deprecated (declared at libavcodec/avcodec.h:5704) [-Wdeprecated-declarations]
         avcodec_get_chroma_sub_sample(avctx->pix_fmt, &s->chroma_x_shift, &s->chroma_y_shift);
         ^
libavcodec/encode.c: In function 'do_encode':
libavcodec/encode.c:378:9: warning: 'avcodec_encode_video2' is deprecated (declared at libavcodec/encode.c:267) [-Wdeprecated-declarations]
         ret = avcodec_encode_video2(avctx, avctx->internal->buffer_pkt,
         ^
libavcodec/encode.c:381:9: warning: 'avcodec_encode_audio2' is deprecated (declared at libavcodec/encode.c:118) [-Wdeprecated-declarations]
         ret = avcodec_encode_audio2(avctx, avctx->internal->buffer_pkt,
         ^
libavcodec/faandct.c:40:0: warning: "B0" redefined
 #define B0 1.000000000000000000000000000000000000
 ^
In file included from /Users/harsh/dev/pmtvfire/ijkplayer-android/android/contrib/build/toolchain-armv5/sysroot/usr/include/asm/termbits.h:19:0,
                 from /Users/harsh/dev/pmtvfire/ijkplayer-android/android/contrib/build/toolchain-armv5/sysroot/usr/include/asm-generic/termios.h:21,
                 from /Users/harsh/dev/pmtvfire/ijkplayer-android/android/contrib/build/toolchain-armv5/sysroot/usr/include/asm/termios.h:19,
                 from /Users/harsh/dev/pmtvfire/ijkplayer-android/android/contrib/build/toolchain-armv5/sysroot/usr/include/linux/termios.h:22,
                 from /Users/harsh/dev/pmtvfire/ijkplayer-android/android/contrib/build/toolchain-armv5/sysroot/usr/include/sys/ioctl.h:37,
                 from ./libavutil/timer.h:36,
                 from ./libavutil/internal.h:42,
                 from libavcodec/faandct.c:29:
/Users/harsh/dev/pmtvfire/ijkplayer-android/android/contrib/build/toolchain-armv5/sysroot/usr/include/asm-generic/termbits.h:142:0: note: this is the location of the previous definition
 #define B0 0000000
 ^
libavcodec/faanidct.c:27:0: warning: "B0" redefined
 #define B0 1.0000000000000000000000
 ^
In file included from /Users/harsh/dev/pmtvfire/ijkplayer-android/android/contrib/build/toolchain-armv5/sysroot/usr/include/asm/termbits.h:19:0,
                 from /Users/harsh/dev/pmtvfire/ijkplayer-android/android/contrib/build/toolchain-armv5/sysroot/usr/include/asm-generic/termios.h:21,
                 from /Users/harsh/dev/pmtvfire/ijkplayer-android/android/contrib/build/toolchain-armv5/sysroot/usr/include/asm/termios.h:19,
                 from /Users/harsh/dev/pmtvfire/ijkplayer-android/android/contrib/build/toolchain-armv5/sysroot/usr/include/linux/termios.h:22,
                 from /Users/harsh/dev/pmtvfire/ijkplayer-android/android/contrib/build/toolchain-armv5/sysroot/usr/include/sys/ioctl.h:37,
                 from ./libavutil/timer.h:36,
                 from ./libavutil/internal.h:42,
                 from ./libavutil/common.h:467,
                 from libavcodec/faanidct.c:22:
/Users/harsh/dev/pmtvfire/ijkplayer-android/android/contrib/build/toolchain-armv5/sysroot/usr/include/asm-generic/termbits.h:142:0: note: this is the location of the previous definition
 #define B0 0000000
 ^
In file included from libavcodec/fft_fixed.c:21:0:
libavcodec/fft_template.c:528:6: warning: 'pass_big' defined but not used [-Wunused-function]
 PASS(pass_big)
      ^
libavcodec/fft_template.c:505:13: note: in definition of macro 'PASS'
 static void name(FFTComplex *z, const FFTSample *wre, unsigned int n)\
             ^
In file included from libavcodec/fft_float.c:21:0:
libavcodec/fft_template.c:528:6: warning: 'pass_big' defined but not used [-Wunused-function]
 PASS(pass_big)
      ^
libavcodec/fft_template.c:505:13: note: in definition of macro 'PASS'
 static void name(FFTComplex *z, const FFTSample *wre, unsigned int n)\
             ^
libavcodec/hevc_mvs.c: In function 'derive_spatial_merge_candidates':
libavcodec/hevc_mvs.c:208:15: error: 'y0000000' undeclared (first use in this function)
             ((y ## v) >> s->ps.sps->log2_min_pu_size))
               ^
libavcodec/hevc_mvs.c:204:14: note: in definition of macro 'TAB_MVF'
     tab_mvf[(y) * min_pu_width + x]
              ^
libavcodec/hevc_mvs.c:274:16: note: in expansion of macro 'TAB_MVF_PU'
     (cand && !(TAB_MVF_PU(v).pred_flag == PF_INTRA))
                ^
libavcodec/hevc_mvs.c:368:23: note: in expansion of macro 'AVAILABLE'
     is_available_b0 = AVAILABLE(cand_up_right, B0) &&
                       ^
libavcodec/hevc_mvs.c:208:15: note: each undeclared identifier is reported only once for each function it appears in
             ((y ## v) >> s->ps.sps->log2_min_pu_size))
               ^
libavcodec/hevc_mvs.c:204:14: note: in definition of macro 'TAB_MVF'
     tab_mvf[(y) * min_pu_width + x]
              ^
libavcodec/hevc_mvs.c:274:16: note: in expansion of macro 'TAB_MVF_PU'
     (cand && !(TAB_MVF_PU(v).pred_flag == PF_INTRA))
                ^
libavcodec/hevc_mvs.c:368:23: note: in expansion of macro 'AVAILABLE'
     is_available_b0 = AVAILABLE(cand_up_right, B0) &&
                       ^
libavcodec/hevc_mvs.c:207:15: error: 'x0000000' undeclared (first use in this function)
     TAB_MVF(((x ## v) >> s->ps.sps->log2_min_pu_size),                     \
               ^
libavcodec/hevc_mvs.c:204:34: note: in definition of macro 'TAB_MVF'
     tab_mvf[(y) * min_pu_width + x]
                                  ^
libavcodec/hevc_mvs.c:274:16: note: in expansion of macro 'TAB_MVF_PU'
     (cand && !(TAB_MVF_PU(v).pred_flag == PF_INTRA))
                ^
libavcodec/hevc_mvs.c:368:23: note: in expansion of macro 'AVAILABLE'
     is_available_b0 = AVAILABLE(cand_up_right, B0) &&
                       ^
libavcodec/hevc_mvs.c: In function 'ff_hevc_luma_mv_mvp_mode':
libavcodec/hevc_mvs.c:208:15: error: 'y0000000' undeclared (first use in this function)
             ((y ## v) >> s->ps.sps->log2_min_pu_size))
               ^
libavcodec/hevc_mvs.c:204:14: note: in definition of macro 'TAB_MVF'
     tab_mvf[(y) * min_pu_width + x]
              ^
libavcodec/hevc_mvs.c:274:16: note: in expansion of macro 'TAB_MVF_PU'
     (cand && !(TAB_MVF_PU(v).pred_flag == PF_INTRA))
                ^
libavcodec/hevc_mvs.c:683:24: note: in expansion of macro 'AVAILABLE'
     is_available_b0 =  AVAILABLE(cand_up_right, B0) &&
                        ^
libavcodec/hevc_mvs.c:207:15: error: 'x0000000' undeclared (first use in this function)
     TAB_MVF(((x ## v) >> s->ps.sps->log2_min_pu_size),                     \
               ^
libavcodec/hevc_mvs.c:204:34: note: in definition of macro 'TAB_MVF'
     tab_mvf[(y) * min_pu_width + x]
                                  ^
libavcodec/hevc_mvs.c:274:16: note: in expansion of macro 'TAB_MVF_PU'
     (cand && !(TAB_MVF_PU(v).pred_flag == PF_INTRA))
                ^
libavcodec/hevc_mvs.c:683:24: note: in expansion of macro 'AVAILABLE'
     is_available_b0 =  AVAILABLE(cand_up_right, B0) &&
                        ^
make: *** [libavcodec/hevc_mvs.o] Error 1
make: *** Waiting for unfinished jobs....

So all I'm trying to achieve is a player that support every codec ffmpeg can. Will it be possible for you to compile one? Since you obviously can debug quicker and I'm sure there would be a lot of people who would want to play everything under the hood. Thanks.

befovy commented 4 years ago

I followed the steps you provided, but no errors. Can't reproduce.

pharshdev commented 4 years ago

Great. In that case, can you please provide me the released aar? Thanks.

befovy commented 4 years ago

Great. In that case, can you please provide me the released aar? Thanks.

Here's the solution https://github.com/Bilibili/ijkplayer/issues/4093#issuecomment-371743711

export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --disable-linux-perf"

pharshdev commented 4 years ago

You closed the issue, which is fine but I'm still getting the error even after adding the flag

libavcodec/v4l2_buffers.c:424: error: undefined reference to 'mmap64'
libavfilter/vf_psnr.c:258: error: undefined reference to 'stdout'
libavfilter/vf_psnr.c:387: error: undefined reference to 'stdout'
libavfilter/vf_ssim.c:356: error: undefined reference to 'stdout'
libavfilter/vf_ssim.c:478: error: undefined reference to 'stdout'
libavformat/hls.c:794: error: undefined reference to 'atof'
libavformat/hlsproto.c:149: error: undefined reference to 'atof'
libavutil/file.c:85: error: undefined reference to 'mmap64'
libavutil/log.c:188: error: undefined reference to 'stderr'
libavutil/log.c:362: error: undefined reference to 'stderr'
libavutil/log.c:362: error: undefined reference to 'stderr'
collect2: error: ld returned 1 exit status

So far I've tried ndk 13, 14, 15.

befovy commented 4 years ago

@pharshdev I build the aar and upload to github release.
https://github.com/befovy/ijkplayer/releases/download/f0.5.1/fijkplayer-full-release-module-default.aar

For the compile error you have met, I have no idea. I found a same issue here https://github.com/bilibili/ijkplayer/issues/4198

ZhuBoao commented 4 years ago

I am having the exact same issue with @pharshdev, including all errors he mentioned in this issue. I am building with NDK 16, same problem libavcodec/v4l2_buffers.c:424: error: undefined reference to 'mmap64' as well.

im-ling commented 4 years ago

I delete armv5, x86 in file compile-ffmpeg.sh; build with NDK 13; it works.

ZhuBoao commented 4 years ago

@pharshdev @befovy Dudes, I guess I solved it on my machine. Don't know about yours but mine is really silly. The standalone toolchain inside android/contrib/build will NOT be reset even if you edit $ANDROID_NDK in your env. After I delete the android/contrib/build folder manually then run compile-ffmpeg.sh clean & compile-ffmpeg.sh all with NDK 14, it worked. Man how come I've been struggling with this problem for a whole day?