1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
|
Index: vlc-2.2.4/configure.ac
===================================================================
--- vlc-2.2.4.orig/configure.ac
+++ vlc-2.2.4/configure.ac
@@ -2323,8 +2323,8 @@ AC_ARG_ENABLE(avcodec,
[ --enable-avcodec libavcodec codec (default enabled)])
AS_IF([test "${enable_avcodec}" != "no"], [
PKG_CHECK_MODULES(AVCODEC,[libavcodec >= 53.34.0 libavutil >= 51.22.0], [
- PKG_CHECK_EXISTS([libavutil < 55],, [
- AC_MSG_ERROR([libavutil versions 55 and later are not supported.])
+ PKG_CHECK_EXISTS([libavutil < 56],, [
+ AC_MSG_ERROR([libavutil versions 56 and later are not supported.])
])
VLC_SAVE_FLAGS
CPPFLAGS="${CPPFLAGS} ${AVCODEC_CFLAGS}"
Index: vlc-2.2.4/modules/codec/avcodec/audio.c
===================================================================
--- vlc-2.2.4.orig/modules/codec/avcodec/audio.c
+++ vlc-2.2.4/modules/codec/avcodec/audio.c
@@ -39,8 +39,6 @@
#include <libavcodec/avcodec.h>
#include <libavutil/mem.h>
-#include <libavutil/audioconvert.h>
-
#include "avcodec.h"
/*****************************************************************************
Index: vlc-2.2.4/modules/codec/avcodec/encoder.c
===================================================================
--- vlc-2.2.4.orig/modules/codec/avcodec/encoder.c
+++ vlc-2.2.4/modules/codec/avcodec/encoder.c
@@ -41,7 +41,6 @@
#include <vlc_cpu.h>
#include <libavcodec/avcodec.h>
-#include <libavutil/audioconvert.h>
#include "avcodec.h"
#include "avcommon.h"
@@ -311,7 +310,7 @@ int OpenEncoder( vlc_object_t *p_this )
else if( !GetFfmpegCodec( p_enc->fmt_out.i_codec, &i_cat, &i_codec_id,
&psz_namecodec ) )
{
- if( FindFfmpegChroma( p_enc->fmt_out.i_codec ) == PIX_FMT_NONE )
+ if( FindFfmpegChroma( p_enc->fmt_out.i_codec ) == AV_PIX_FMT_NONE )
return VLC_EGENERIC; /* handed chroma output */
i_cat = VIDEO_ES;
@@ -555,7 +554,7 @@ int OpenEncoder( vlc_object_t *p_this )
if( p_codec->pix_fmts )
{
- const enum PixelFormat *p = p_codec->pix_fmts;
+ const enum AVPixelFormat *p = p_codec->pix_fmts;
for( ; *p != -1; p++ )
{
if( *p == p_context->pix_fmt ) break;
@@ -1017,7 +1016,7 @@ errmsg:
}
}
- p_sys->frame = avcodec_alloc_frame();
+ p_sys->frame = av_frame_alloc();
if( !p_sys->frame )
{
goto error;
@@ -1088,7 +1087,7 @@ static block_t *EncodeVideo( encoder_t *
AVFrame *frame = NULL;
if( likely(p_pict) ) {
frame = p_sys->frame;
- avcodec_get_frame_defaults( frame );
+ av_frame_unref( frame );
for( i_plane = 0; i_plane < p_pict->i_planes; i_plane++ )
{
p_sys->frame->data[i_plane] = p_pict->p[i_plane].p_pixels;
@@ -1329,7 +1328,7 @@ static block_t *handle_delay_buffer( enc
//How much we need to copy from new packet
const int leftover = leftover_samples * p_sys->p_context->channels * p_sys->i_sample_bytes;
- avcodec_get_frame_defaults( p_sys->frame );
+ av_frame_unref( p_sys->frame );
p_sys->frame->format = p_sys->p_context->sample_fmt;
p_sys->frame->nb_samples = leftover_samples + p_sys->i_samples_delay;
@@ -1451,7 +1450,7 @@ static block_t *EncodeAudio( encoder_t *
while( ( p_aout_buf->i_nb_samples >= p_sys->i_frame_size ) ||
( p_sys->b_variable && p_aout_buf->i_nb_samples ) )
{
- avcodec_get_frame_defaults( p_sys->frame );
+ av_frame_unref( p_sys->frame );
if( p_sys->b_variable )
p_sys->frame->nb_samples = p_aout_buf->i_nb_samples;
else
Index: vlc-2.2.4/modules/codec/avcodec/vaapi.c
===================================================================
--- vlc-2.2.4.orig/modules/codec/avcodec/vaapi.c
+++ vlc-2.2.4/modules/codec/avcodec/vaapi.c
@@ -598,7 +598,7 @@ static int Create( vlc_va_t *p_va, AVCod
return err;
/* Only VLD supported */
- p_va->pix_fmt = PIX_FMT_VAAPI_VLD;
+ p_va->pix_fmt = AV_PIX_FMT_VAAPI_VLD;
p_va->setup = Setup;
p_va->get = Get;
p_va->release = Release;
Index: vlc-2.2.4/modules/codec/avcodec/video.c
===================================================================
--- vlc-2.2.4.orig/modules/codec/avcodec/video.c
+++ vlc-2.2.4/modules/codec/avcodec/video.c
@@ -108,8 +108,8 @@ static int lavc_GetFrame(struct AVCodecC
static int ffmpeg_GetFrameBuf ( struct AVCodecContext *, AVFrame * );
static void ffmpeg_ReleaseFrameBuf( struct AVCodecContext *, AVFrame * );
#endif
-static enum PixelFormat ffmpeg_GetFormat( AVCodecContext *,
- const enum PixelFormat * );
+static enum AVPixelFormat ffmpeg_GetFormat( AVCodecContext *,
+ const enum AVPixelFormat * );
static uint32_t ffmpeg_CodecTag( vlc_fourcc_t fcc )
{
@@ -234,7 +234,7 @@ int InitVideoDec( decoder_t *p_dec, AVCo
p_sys->p_codec = p_codec;
p_sys->i_codec_id = i_codec_id;
p_sys->psz_namecodec = psz_namecodec;
- p_sys->p_ff_pic = avcodec_alloc_frame();
+ p_sys->p_ff_pic = av_frame_alloc();
p_sys->b_delayed_open = true;
p_sys->p_va = NULL;
vlc_sem_init( &p_sys->sem_mt, 0 );
@@ -446,7 +446,7 @@ int InitVideoDec( decoder_t *p_dec, AVCo
if( ffmpeg_OpenCodec( p_dec ) < 0 )
{
msg_Err( p_dec, "cannot open codec (%s)", p_sys->psz_namecodec );
- avcodec_free_frame( &p_sys->p_ff_pic );
+ av_frame_free( &p_sys->p_ff_pic );
vlc_sem_destroy( &p_sys->sem_mt );
free( p_sys );
return VLC_EGENERIC;
@@ -826,7 +826,7 @@ void EndVideoDec( decoder_t *p_dec )
wait_mt( p_sys );
if( p_sys->p_ff_pic )
- avcodec_free_frame( &p_sys->p_ff_pic );
+ av_frame_free( &p_sys->p_ff_pic );
if( p_sys->p_va )
vlc_va_Delete( p_sys->p_va );
@@ -1313,8 +1313,8 @@ static void ffmpeg_ReleaseFrameBuf( stru
}
#endif
-static enum PixelFormat ffmpeg_GetFormat( AVCodecContext *p_context,
- const enum PixelFormat *pi_fmt )
+static enum AVPixelFormat ffmpeg_GetFormat( AVCodecContext *p_context,
+ const enum AVPixelFormat *pi_fmt )
{
decoder_t *p_dec = p_context->opaque;
decoder_sys_t *p_sys = p_dec->p_sys;
|