Я пытаюсь скомпилировать ffmpeg на моей малине-пи, но он дает мне много предупреждений, таких как (кодек устарел), особенно во время выполнения sudo make.ffmpeg компиляция Ошибка
[email protected]:/usr/src/ffmpeg $ sudo make && sudo make install
....... lots of successful execution here ......
CC libavfilter/avf_showfreqs.o
libavfilter/lavfutils.c: In function ‘ff_load_image’:
libavfilter/lavfutils.c:53:5: warning: ‘codec’ is deprecated (declared at ./libavformat/avformat.h:880) [-Wdeprecated-declarations]
codec_ctx = format_ctx->streams[0]->codec;
^
libavfilter/lavfutils.c:79:5: warning: ‘avcodec_decode_video2’ is deprecated (declared at ./libavcodec/avcodec.h:4763) [-Wdeprecated-declarations]
ret = avcodec_decode_video2(codec_ctx, frame, &frame_decoded, &pkt);
^
CC libavfilter/lswsutils.o
CC libavfilter/opencl_allkernels.o
CC libavfilter/pthread.o
CC libavfilter/setpts.o
CC libavfilter/settb.o
CC libavfilter/split.o
CC libavfilter/src_movie.o
libavfilter/src_movie.c: In function ‘movie_push_frame’:
libavfilter/src_movie.c:524:9: warning: ‘avcodec_decode_video2’ is deprecated (declared at ./libavcodec/avcodec.h:4763) [-Wdeprecated-declarations]
ret = avcodec_decode_video2(st->codec_ctx, frame, &got_frame, pkt);
^
libavfilter/src_movie.c:527:9: warning: ‘avcodec_decode_audio4’ is deprecated (declared at ./libavcodec/avcodec.h:4714) [-Wdeprecated-declarations]
ret = avcodec_decode_audio4(st->codec_ctx, frame, &got_frame, pkt);
^
CC libavfilter/transform.o
CC libavfilter/trim.o
CC libavfilter/vaf_spectrumsynth.o
libavfilter/vaf_spectrumsynth.c: In function ‘try_push_frame’:
libavfilter/vaf_spectrumsynth.c:370:19: warning: variable ‘ret’ set but not used [-Wunused-but-set-variable]
int ch, n, i, ret; ^
CC libavfilter/vf_alphamerge.o
CC libavfilter/vf_aspect.o
CC libavfilter/vf_atadenoise.o
CC libavfilter/vf_colorlevels.o
CC libavfilter/vf_colorspace.o
libavfilter/vf_colorspace.c: In function ‘fill_rgb2xyz_table’:
libavfilter/vf_colorspace.c:360:22: warning: passing argument 1 of ‘invert_matrix3x3’ from incompatible pointer type
invert_matrix3x3(rgb2xyz, i);
^
libavfilter/vf_colorspace.c:277: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:424:21: warning: passing argument 3 of ‘mul3x3’ from incompatible pointer type
mul3x3(tmp, ma, fac);
libavfilter/vf_colorspace.c:376: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:425:17: warning: passing argument 2 of ‘mul3x3’ from incompatible pointer type
mul3x3(out, tmp, mai);
^
libavfilter/vf_colorspace.c:376: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:425:22: warning: passing argument 3 of ‘mul3x3’ from incompatible pointer type
mul3x3(out, tmp, mai);
^
libavfilter/vf_colorspace.c:376: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:480:20: warning: passing argument 7 of ‘s->yuv2yuv’ from incompatible pointer type
s->yuv2yuv_coeffs, s->yuv_offset);
^
libavfilter/vf_colorspace.c:480:20: note: expected ‘const int16_t (*)[3][8]’ but argument is of type ‘int16_t (*)[3][8]’
libavfilter/vf_colorspace.c:480:39: warning: passing argument 8 of ‘s->yuv2yuv’ from incompatible pointer type
s->yuv2yuv_coeffs, s->yuv_offset);
^
libavfilter/vf_colorspace.c:480:39: note: expected ‘const int16_t (*)[8]’ but argument is of type ‘int16_t (*)[8]’
libavfilter/vf_colorspace.c:502:20: warning: passing argument 7 of ‘s->yuv2rgb’ from incompatible pointer type
s->yuv2rgb_coeffs, s->yuv_offset[0]);
^
libavfilter/vf_colorspace.c:502:20: note: expected ‘const int16_t (*)[3][8]’ but argument is of type ‘int16_t (*)[3][8]’
libavfilter/vf_colorspace.c:506: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:506:62: note: expected ‘const int16_t (*)[3][8]’ but argument is of type ‘int16_t (*)[3][8]’
libavfilter/vf_colorspace.c:511: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:511:28: note: expected ‘const int16_t (*)[3][8]’ but argument is of type ‘int16_t (*)[3][8]’
libavfilter/vf_colorspace.c:514:24: warning: passing argument 7 of ‘s->rgb2yuv’ from incompatible pointer type
s->rgb2yuv_coeffs, s->yuv_offset[1]);
^
libavfilter/vf_colorspace.c:514: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:614:30: warning: passing argument 1 of ‘invert_matrix3x3’ from incompatible pointer type
^
и продолжается до сих пор ....
Как решить эту проблему? что может быть проблемой для этих предупреждений?
Можете ли вы предоставить версию, которую используете? – arshpreet
Я использую ffmpeg 3.1.1 – SivamNatesan
попробуйте этот: http://johnvansickle.com/ffmpeg/release-source/ :) – arshpreet