demux: heif: send extradata with avif
[vlc.git] / modules / codec / Makefile.am
blob760141d1f4c26c8d8efb7968c9d4cd6ac13a9c1c
1 codecdir = $(pluginsdir)/codec
2 codec_LTLIBRARIES =
4 AM_CPPFLAGS += -I$(srcdir)/codec
6 libddummy_plugin_la_SOURCES = codec/ddummy.c
7 codec_LTLIBRARIES += libddummy_plugin.la
9 libedummy_plugin_la_SOURCES = codec/edummy.c
10 if ENABLE_SOUT
11 codec_LTLIBRARIES += libedummy_plugin.la
12 endif
15 ### Audio codecs ###
16 libspdif_plugin_la_SOURCES = codec/spdif.c
17 codec_LTLIBRARIES += libspdif_plugin.la
19 liba52_plugin_la_SOURCES = codec/a52.c
20 liba52_plugin_la_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_a52)
21 liba52_plugin_la_LIBADD = $(LIBS_a52)
22 liba52_plugin_la_LDFLAGS = $(AM_LDFLAGS) -rpath '$(codecdir)'
23 EXTRA_LTLIBRARIES += liba52_plugin.la
24 codec_LTLIBRARIES += $(LTLIBa52)
26 libdca_plugin_la_SOURCES = codec/dca.c
27 libdca_plugin_la_CPPFLAGS = $(AM_CPPFLAGS) $(DCA_CFLAGS)
28 libdca_plugin_la_LDFLAGS = $(AM_LDFLAGS) -rpath '$(codecdir)'
29 libdca_plugin_la_LIBADD = $(LIBM) $(DCA_LIBS)
30 EXTRA_LTLIBRARIES += libdca_plugin.la
31 codec_LTLIBRARIES += $(LTLIBdca)
33 libadpcm_plugin_la_SOURCES = codec/adpcm.c
34 codec_LTLIBRARIES += libadpcm_plugin.la
36 libaes3_plugin_la_SOURCES = codec/aes3.c
37 codec_LTLIBRARIES += libaes3_plugin.la
39 libaraw_plugin_la_SOURCES = codec/araw.c
40 libaraw_plugin_la_LIBADD = $(LIBM)
41 codec_LTLIBRARIES += libaraw_plugin.la
43 libfaad_plugin_la_SOURCES = codec/faad.c packetizer/mpeg4audio.h
44 libfaad_plugin_la_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_faad)
45 libfaad_plugin_la_LDFLAGS = $(AM_LDFLAGS) -rpath '$(codecdir)'
46 libfaad_plugin_la_LIBADD = $(LIBS_faad) $(LIBM)
47 EXTRA_LTLIBRARIES += libfaad_plugin.la
48 codec_LTLIBRARIES += $(LTLIBfaad)
50 libg711_plugin_la_SOURCES = codec/g711.c
51 codec_LTLIBRARIES += libg711_plugin.la
53 libfluidsynth_plugin_la_SOURCES = codec/fluidsynth.c
54 libfluidsynth_plugin_la_CFLAGS = $(AM_CFLAGS) $(FLUIDSYNTH_CFLAGS)
55 libfluidsynth_plugin_la_LDFLAGS = $(AM_LDFLAGS) -rpath '$(codecdir)'
56 libfluidsynth_plugin_la_LIBADD = $(FLUIDSYNTH_LIBS)
57 EXTRA_LTLIBRARIES += libfluidsynth_plugin.la
58 codec_LTLIBRARIES += $(LTLIBfluidsynth)
59 if HAVE_DARWIN
60 libfluidsynth_plugin_la_LDFLAGS += -Wl,-framework,CoreFoundation,-framework,CoreServices
61 endif
63 libaudiotoolboxmidi_plugin_la_SOURCES = codec/audiotoolbox_midi.c
64 libaudiotoolboxmidi_plugin_la_LDFLAGS = $(AM_LDFLAGS) -rpath '$(codecdir)'
65 libaudiotoolboxmidi_plugin_la_LDFLAGS += -Wl,-framework,CoreFoundation,-framework,AudioUnit,-framework,AudioToolbox
66 EXTRA_LTLIBRARIES += libaudiotoolboxmidi_plugin.la
67 codec_LTLIBRARIES += $(LTLIBaudiotoolboxmidi)
69 liblpcm_plugin_la_SOURCES = codec/lpcm.c
70 codec_LTLIBRARIES += liblpcm_plugin.la
72 libmad_plugin_la_SOURCES = codec/mad.c
73 libmad_plugin_la_CPPFLAGS = $(AM_CPPFLAGS) $(MAD_CFLAGS)
74 libmad_plugin_la_LIBADD = $(AM_LIBADD) $(MAD_LIBS)
75 if HAVE_MAD
76 audio_filter_LTLIBRARIES += libmad_plugin.la
77 endif
79 libmpg123_plugin_la_SOURCES = codec/mpg123.c
80 libmpg123_plugin_la_CFLAGS = $(AM_CFLAGS) $(MPG123_CFLAGS)
81 libmpg123_plugin_la_LDFLAGS = $(AM_LDFLAGS) -rpath '$(codecdir)'
82 libmpg123_plugin_la_LIBADD = $(MPG123_LIBS)
83 EXTRA_LTLIBRARIES += libmpg123_plugin.la
84 codec_LTLIBRARIES += $(LTLIBmpg123)
86 libuleaddvaudio_plugin_la_SOURCES = codec/uleaddvaudio.c
87 codec_LTLIBRARIES += libuleaddvaudio_plugin.la
89 libwma_fixed_plugin_la_SOURCES = \
90         codec/wmafixed/asf.h codec/wmafixed/bswap.h \
91         codec/wmafixed/fft.c codec/wmafixed/fft.h \
92         codec/wmafixed/mdct.c codec/wmafixed/mdct.h \
93         codec/wmafixed/wma.c codec/wmafixed/wmadeci.c \
94         codec/wmafixed/bitstream.c codec/wmafixed/bitstream.h \
95         codec/wmafixed/wmadata.h codec/wmafixed/wmadec.h \
96         codec/wmafixed/wmafixed.c codec/wmafixed/wmafixed.h
97 libwma_fixed_plugin_la_CPPFLAGS = $(AM_CPPFLAGS)
98 libwma_fixed_plugin_la_LDFLAGS = $(AM_LDFLAGS) -rpath '$(codecdir)'
99 EXTRA_LTLIBRARIES += libwma_fixed_plugin.la
100 codec_LTLIBRARIES += $(LTLIBwma_fixed)
103 ### Video codecs ###
105 libcdg_plugin_la_SOURCES = codec/cdg.c
106 codec_LTLIBRARIES += libcdg_plugin.la
108 liblibmpeg2_plugin_la_SOURCES = codec/libmpeg2.c \
109         codec/synchro.c codec/synchro.h
110 liblibmpeg2_plugin_la_CFLAGS = $(AM_CFLAGS) $(CFLAGS_libmpeg2)
111 liblibmpeg2_plugin_la_LDFLAGS = $(AM_LDFLAGS) -rpath '$(codecdir)'
112 liblibmpeg2_plugin_la_LIBADD = $(LIBS_libmpeg2)
113 EXTRA_LTLIBRARIES += liblibmpeg2_plugin.la
114 codec_LTLIBRARIES += $(LTLIBlibmpeg2)
116 librawvideo_plugin_la_SOURCES = codec/rawvideo.c
117 codec_LTLIBRARIES += librawvideo_plugin.la
119 librtpvideo_plugin_la_SOURCES = codec/rtpvideo.c
120 if ENABLE_SOUT
121 codec_LTLIBRARIES += librtpvideo_plugin.la
122 endif
125 libschroedinger_plugin_la_SOURCES = codec/schroedinger.c
126 libschroedinger_plugin_la_CFLAGS = $(AM_CFLAGS) $(CFLAGS_schroedinger)
127 libschroedinger_plugin_la_LDFLAGS = $(AM_LDFLAGS) -rpath '$(codecdir)'
128 libschroedinger_plugin_la_LIBADD = $(LIBS_schroedinger)
129 EXTRA_LTLIBRARIES += libschroedinger_plugin.la
130 codec_LTLIBRARIES += $(LTLIBschroedinger)
133 ### Image codecs ###
135 libpng_plugin_la_SOURCES = codec/png.c
136 libpng_plugin_la_LDFLAGS = $(AM_LDFLAGS) -rpath '$(codecdir)'
137 libpng_plugin_la_LIBADD = -lpng -lz $(LIBM)
138 EXTRA_LTLIBRARIES += libpng_plugin.la
139 codec_LTLIBRARIES += $(LTLIBpng)
141 libjpeg_plugin_la_SOURCES = codec/jpeg.c
142 libjpeg_plugin_la_LDFLAGS = $(AM_LDFLAGS) -rpath '$(codecdir)'
143 libjpeg_plugin_la_LIBADD = -ljpeg
144 EXTRA_LTLIBRARIES += libjpeg_plugin.la
145 codec_LTLIBRARIES += $(LTLIBjpeg)
147 libbpg_plugin_la_SOURCES = codec/bpg.c
148 libbpg_plugin_la_LDFLAGS = $(AM_LDFLAGS) -rpath '$(codecdir)'
149 libbpg_plugin_la_LIBADD = -lbpg
150 EXTRA_LTLIBRARIES += libbpg_plugin.la
151 codec_LTLIBRARIES += $(LTLIBbpg)
153 libsvgdec_plugin_la_SOURCES = codec/svg.c
154 libsvgdec_plugin_la_CFLAGS = $(AM_CFLAGS) $(CFLAGS_svgdec)
155 libsvgdec_plugin_la_LDFLAGS = $(AM_LDFLAGS) -rpath '$(codecdir)'  $(LDFLAGS_svg)
156 libsvgdec_plugin_la_LIBADD = $(LIBS_svgdec)
157 EXTRA_LTLIBRARIES += libsvgdec_plugin.la
158 codec_LTLIBRARIES += $(LTLIBsvgdec)
160 libsdl_image_plugin_la_SOURCES = codec/sdl_image.c
161 libsdl_image_plugin_la_CFLAGS = $(AM_CFLAGS) $(SDL_IMAGE_CFLAGS)
162 libsdl_image_plugin_la_LDFLAGS = $(AM_LDFLAGS) -rpath '$(codecdir)'
163 libsdl_image_plugin_la_LIBADD = $(SDL_IMAGE_LIBS)
164 EXTRA_LTLIBRARIES += libsdl_image_plugin.la
165 codec_LTLIBRARIES += $(LTLIBsdl_image)
167 libxwd_plugin_la_SOURCES = codec/xwd.c
168 libxwd_plugin_la_CFLAGS = $(AM_CFLAGS) $(XPROTO_CFLAGS)
169 libxwd_plugin_la_LIBADD = $(XPROTO_LIBS)
170 libxwd_plugin_la_LDFLAGS = $(AM_LDFLAGS) -rpath '$(codecdir)'
171 if HAVE_XCB
172 codec_LTLIBRARIES += libxwd_plugin.la
173 endif
176 ### SPU ###
178 liblibass_plugin_la_SOURCES = codec/libass.c
179 liblibass_plugin_la_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_libass)
180 liblibass_plugin_la_CFLAGS = $(AM_CFLAGS) $(LIBASS_CFLAGS)
181 liblibass_plugin_la_LDFLAGS = $(AM_LDFLAGS) -rpath '$(codecdir)'
182 liblibass_plugin_la_LIBADD = $(LIBASS_LIBS) $(LIBS_libass) $(LIBS_freetype) $(FREETYPE_LIBS)
183 if HAVE_WINSTORE
184 liblibass_plugin_la_LIBADD += -ldwrite
185 endif
186 EXTRA_LTLIBRARIES += liblibass_plugin.la
187 codec_LTLIBRARIES += $(LTLIBlibass)
189 libcc_plugin_la_SOURCES = codec/cc.c codec/cc.h codec/substext.h \
190                           codec/cea708.h codec/cea708.c
191 codec_LTLIBRARIES += libcc_plugin.la
193 libcvdsub_plugin_la_SOURCES = codec/cvdsub.c demux/mpeg/timestamps.h
194 codec_LTLIBRARIES += libcvdsub_plugin.la
196 libdvbsub_plugin_la_SOURCES = codec/dvbsub.c
197 codec_LTLIBRARIES += libdvbsub_plugin.la
199 libaribsub_plugin_la_SOURCES = codec/arib/aribsub.c codec/arib/substext.h
200 libaribsub_plugin_la_CFLAGS = $(AM_CFLAGS) $(ARIBB24_CFLAGS)
201 libaribsub_plugin_la_LDFLAGS = $(AM_LDFLAGS) -rpath '$(codecdir)'
202 libaribsub_plugin_la_LIBADD = $(ARIBB24_LIBS)
203 EXTRA_LTLIBRARIES += libaribsub_plugin.la
204 codec_LTLIBRARIES += $(LTLIBaribsub)
206 libscte18_plugin_la_SOURCES = codec/scte18.c codec/scte18.h \
207                               codec/atsc_a65.c codec/atsc_a65.h
208 codec_LTLIBRARIES += libscte18_plugin.la
210 libscte27_plugin_la_SOURCES = codec/scte27.c
211 codec_LTLIBRARIES += libscte27_plugin.la
213 libspudec_plugin_la_SOURCES = codec/spudec/spudec.c codec/spudec/parse.c codec/spudec/spudec.h
214 libspudec_plugin_la_CPPFLAGS = $(AM_CPPFLAGS)
215 codec_LTLIBRARIES += libspudec_plugin.la
217 libstl_plugin_la_SOURCES = codec/stl.c
218 codec_LTLIBRARIES += libstl_plugin.la
220 libsubsdec_plugin_la_SOURCES = codec/subsdec.c codec/substext.h
221 codec_LTLIBRARIES += libsubsdec_plugin.la
223 libsubsusf_plugin_la_SOURCES = codec/subsusf.c
224 codec_LTLIBRARIES += libsubsusf_plugin.la
226 libttml_plugin_la_SOURCES = codec/ttml/substtml.c \
227                             demux/ttml.c \
228                             codec/ttml/ttml.h codec/ttml/ttml.c \
229                             codec/ttml/imageupdater.h \
230                             codec/ttml/ttmlpes.h
231 codec_LTLIBRARIES += libttml_plugin.la
233 libwebvtt_plugin_la_SOURCES = codec/webvtt/subsvtt.c \
234                               codec/webvtt/webvtt.c \
235                               codec/webvtt/webvtt.h \
236                               demux/webvtt.c \
237                               demux/mp4/minibox.h
238 if ENABLE_SOUT
239 libwebvtt_plugin_la_SOURCES += codec/webvtt/encvtt.c
240 endif
241 codec_LTLIBRARIES += libwebvtt_plugin.la
242 if ENABLE_CSS
243 # dependency: we need grammar build first
244 BUILT_SOURCES += codec/webvtt/CSSGrammar.h
245 libwebvtt_plugin_la_CFLAGS = $(AM_CFLAGS) -I$(srcdir)/codec/webvtt/ -I$(builddir)/codec/webvtt/
246 libwebvtt_plugin_la_SOURCES += codec/webvtt/CSSGrammar.y \
247                                codec/webvtt/CSSLexer.l \
248                                codec/webvtt/css_parser.c \
249                                codec/webvtt/css_parser.h \
250                                codec/webvtt/css_style.c \
251                                codec/webvtt/css_style.h \
252                                codec/webvtt/css_bridge.h
253 endif
255 libsvcdsub_plugin_la_SOURCES = codec/svcdsub.c demux/mpeg/timestamps.h
256 codec_LTLIBRARIES += libsvcdsub_plugin.la
258 libt140_plugin_la_SOURCES = codec/t140.c
259 if ENABLE_SOUT
260 codec_LTLIBRARIES += libt140_plugin.la
261 endif
263 libtelx_plugin_la_SOURCES = codec/telx.c
264 libtelx_plugin_la_LDFLAGS = $(AM_LDFLAGS) -rpath '$(codecdir)'
265 EXTRA_LTLIBRARIES += libtelx_plugin.la
266 codec_LTLIBRARIES += $(LTLIBtelx)
268 libtextst_plugin_la_SOURCES = codec/textst.c demux/mpeg/timestamps.h
269 libtextst_plugin_la_LDFLAGS = $(AM_LDFLAGS) -rpath '$(codecdir)'
270 codec_LTLIBRARIES += libtextst_plugin.la
272 libzvbi_plugin_la_SOURCES = codec/zvbi.c
273 libzvbi_plugin_la_CFLAGS = $(AM_CFLAGS) $(ZVBI_CFLAGS) $(CFLAGS_zvbi)
274 libzvbi_plugin_la_LDFLAGS = $(AM_LDFLAGS) -rpath '$(codecdir)'
275 libzvbi_plugin_la_LIBADD = $(ZVBI_LIBS) $(SOCKET_LIBS)
276 if HAVE_WINSTORE
277 libzvbi_plugin_la_LIBADD += -lpthreadGC2
278 endif
279 EXTRA_LTLIBRARIES += libzvbi_plugin.la
280 codec_LTLIBRARIES += $(LTLIBzvbi)
282 libsubstx3g_plugin_la_SOURCES = codec/substx3g.c codec/substext.h
283 codec_LTLIBRARIES += libsubstx3g_plugin.la
285 ### Xiph ###
287 libflac_plugin_la_SOURCES = codec/flac.c
288 libflac_plugin_la_CFLAGS = $(AM_CFLAGS) $(FLAC_CFLAGS)
289 libflac_plugin_la_LDFLAGS = $(AM_LDFLAGS) -rpath '$(codecdir)'
290 libflac_plugin_la_LIBADD = $(FLAC_LIBS)
291 EXTRA_LTLIBRARIES += libflac_plugin.la
292 codec_LTLIBRARIES += $(LTLIBflac)
294 libkate_plugin_la_SOURCES = codec/kate.c
295 libkate_plugin_la_CFLAGS = $(AM_CFLAGS) $(TIGER_CFLAGS) $(KATE_CFLAGS)
296 libkate_plugin_la_LDFLAGS = $(AM_LDFLAGS) -rpath '$(codecdir)'
297 libkate_plugin_la_LIBADD = $(TIGER_LIBS) $(KATE_LIBS) $(LIBM)
298 EXTRA_LTLIBRARIES += libkate_plugin.la
299 codec_LTLIBRARIES += $(LTLIBkate)
301 libopus_plugin_la_SOURCES = codec/opus.c codec/opus_header.c codec/opus_header.h
302 libopus_plugin_la_CFLAGS = $(AM_CFLAGS) $(OPUS_CFLAGS)
303 libopus_plugin_la_LDFLAGS = $(AM_LDFLAGS) -rpath '$(codecdir)'
304 libopus_plugin_la_LIBADD = $(OPUS_LIBS) $(LIBM)
305 EXTRA_LTLIBRARIES += libopus_plugin.la
306 codec_LTLIBRARIES += $(LTLIBopus)
308 libspeex_plugin_la_SOURCES = codec/speex.c
309 libspeex_plugin_la_CFLAGS = $(AM_CFLAGS) $(SPEEX_CFLAGS)
310 libspeex_plugin_la_LDFLAGS = $(AM_LDFLAGS) -rpath '$(codecdir)'
311 libspeex_plugin_la_LIBADD = $(SPEEX_LIBS) $(LIBM)
312 EXTRA_LTLIBRARIES += libspeex_plugin.la
313 codec_LTLIBRARIES += $(LTLIBspeex)
315 libtheora_plugin_la_SOURCES = codec/theora.c
316 libtheora_plugin_la_CFLAGS = $(AM_CFLAGS) $(THEORA_CFLAGS)
317 libtheora_plugin_la_LDFLAGS = $(AM_LDFLAGS) -rpath '$(codecdir)'
318 libtheora_plugin_la_LIBADD = $(THEORA_LIBS)
319 EXTRA_LTLIBRARIES += libtheora_plugin.la
320 codec_LTLIBRARIES += $(LTLIBtheora)
322 libdaala_plugin_la_SOURCES = codec/daala.c
323 libdaala_plugin_la_CFLAGS = $(AM_CFLAGS) $(DAALA_CFLAGS)
324 libdaala_plugin_la_LDFLAGS = $(AM_LDFLAGS) -rpath '$(codecdir)'
325 libdaala_plugin_la_LIBADD = $(DAALA_LIBS)
326 EXTRA_LTLIBRARIES += libdaala_plugin.la
327 codec_LTLIBRARIES += $(LTLIBdaala)
329 libtremor_plugin_la_SOURCES = codec/vorbis.c
330 libtremor_plugin_la_CPPFLAGS = $(AM_CPPFLAGS) -DMODULE_NAME_IS_tremor
331 libtremor_plugin_la_LDFLAGS = $(AM_LDFLAGS) -rpath '$(codecdir)'
332 libtremor_plugin_la_LIBADD = -lvorbisdec -logg
333 EXTRA_LTLIBRARIES += libtremor_plugin.la
334 codec_LTLIBRARIES += $(LTLIBtremor)
336 libvorbis_plugin_la_SOURCES = codec/vorbis.c
337 libvorbis_plugin_la_CFLAGS = $(AM_CFLAGS) $(VORBIS_CFLAGS)
338 libvorbis_plugin_la_LDFLAGS = $(AM_LDFLAGS) -rpath '$(codecdir)'
339 libvorbis_plugin_la_LIBADD = $(VORBIS_LIBS)
340 EXTRA_LTLIBRARIES += libvorbis_plugin.la
341 codec_LTLIBRARIES += $(LTLIBvorbis)
343 liboggspots_plugin_la_SOURCES = codec/oggspots.c
344 liboggspots_plugin_la_CFLAGS = $(AM_CFLAGS) $(OGGSPOTS_CFLAGS)
345 liboggspots_plugin_la_LDFLAGS = $(AM_LDFLAGS) -rpath '$(codecdir)'
346 liboggspots_plugin_la_LIBADD = $(OGGSPOTS_LIBS)
347 EXTRA_LTLIBRARIES += liboggspots_plugin.la
348 codec_LTLIBRARIES += $(LTLIBoggspots)
350 libvideotoolbox_plugin_la_SOURCES = \
351         codec/vt_utils.c codec/vt_utils.h \
352         codec/videotoolbox.m codec/hxxx_helper.c codec/hxxx_helper.h \
353         packetizer/hxxx_nal.h packetizer/hxxx_nal.c \
354         packetizer/hxxx_sei.h packetizer/hxxx_sei.c \
355         packetizer/h264_slice.c packetizer/h264_slice.h \
356         packetizer/h264_nal.c packetizer/h264_nal.h \
357         packetizer/hevc_nal.c packetizer/hevc_nal.h
358 libvideotoolbox_plugin_la_OBJCFLAGS = $(AM_OBJCFLAGS) -fobjc-arc
359 if HAVE_IOS
360 libvideotoolbox_plugin_la_OBJCFLAGS += -miphoneos-version-min=8.0
361 endif
362 if HAVE_TVOS
363 libvideotoolbox_plugin_la_OBJCFLAGS += -mtvos-version-min=10.2
364 endif
365 libvideotoolbox_plugin_la_LIBADD = libchroma_copy.la
366 libvideotoolbox_plugin_la_LDFLAGS = $(AM_LDFLAGS) -rpath '$(codecdir)' -Wl,-framework,Foundation -Wl,-framework,VideoToolbox -Wl,-framework,CoreMedia -Wl,-framework,CoreVideo
367 EXTRA_LTLIBRARIES += libvideotoolbox_plugin.la
368 codec_LTLIBRARIES += $(LTLIBvideotoolbox)
370 ### FFmpeg/libav ###
371 libavcodec_common_la_SOURCES = codec/avcodec/fourcc.c codec/avcodec/avcommon.h \
372         codec/avcodec/chroma.c codec/avcodec/chroma.h \
373         codec/avcodec/avcommon_compat.h
374 libavcodec_common_la_CFLAGS = $(AVCODEC_CFLAGS) $(AM_CFLAGS)
375 libavcodec_common_la_LDFLAGS = -static
377 libavcodec_plugin_la_SOURCES = \
378         codec/avcodec/video.c \
379         codec/avcodec/subtitle.c \
380         codec/avcodec/audio.c \
381         codec/avcodec/va.c codec/avcodec/va.h \
382         codec/avcodec/avcodec.c codec/avcodec/avcodec.h
383 if ENABLE_SOUT
384 libavcodec_plugin_la_SOURCES += codec/avcodec/encoder.c
385 endif
386 libavcodec_plugin_la_CFLAGS = $(AVCODEC_CFLAGS) $(AM_CFLAGS)
387 libavcodec_plugin_la_LIBADD = $(AVCODEC_LIBS) $(LIBM) libavcodec_common.la
388 libavcodec_plugin_la_LDFLAGS = $(AM_LDFLAGS) $(SYMBOLIC_LDFLAGS)
390 if MERGE_FFMPEG
391 libavcodec_plugin_la_SOURCES += demux/avformat/demux.c access/avio.c packetizer/avparser.c
392 libavcodec_plugin_la_CFLAGS += $(AVFORMAT_CFLAGS) $(AVUTIL_CFLAGS)
393 libavcodec_plugin_la_LIBADD += $(AVFORMAT_LIBS) $(AVUTIL_LIBS) $(LIBM)
394 if ENABLE_SOUT
395 libavcodec_plugin_la_SOURCES += demux/avformat/mux.c
396 endif
397 libavcodec_plugin_la_CFLAGS += -DMERGE_FFMPEG
398 endif
399 if HAVE_DARWIN
400 libavcodec_plugin_la_LDFLAGS += -Wl,-framework,Foundation -Wl,-framework,Security,-framework,CoreFoundation
401 endif
402 if HAVE_AVCODEC
403 noinst_LTLIBRARIES += libavcodec_common.la
404 codec_LTLIBRARIES += libavcodec_plugin.la
405 endif
407 ### avcodec hardware acceleration ###
409 libvaapi_drm_plugin_la_SOURCES = \
410         codec/avcodec/vaapi.c hw/vaapi/vlc_vaapi.c hw/vaapi/vlc_vaapi.h
411 libvaapi_drm_plugin_la_CPPFLAGS = $(AM_CPPFLAGS) -DVLC_VA_BACKEND_DRM
412 libvaapi_drm_plugin_la_CFLAGS = $(AM_CFLAGS) \
413         $(LIBVA_DRM_CFLAGS) $(AVCODEC_CFLAGS)
414 libvaapi_drm_plugin_la_LIBADD = $(LIBVA_DRM_LIBS)
415 libvaapi_plugin_la_SOURCES = \
416         codec/avcodec/vaapi.c hw/vaapi/vlc_vaapi.c hw/vaapi/vlc_vaapi.h
417 libvaapi_plugin_la_CPPFLAGS = $(AM_CPPFLAGS)
418 libvaapi_plugin_la_CFLAGS = $(AM_CFLAGS) $(AVCODEC_CFLAGS)
419 libvaapi_plugin_la_LIBADD = $(LIBVA_LIBS)
420 if HAVE_AVCODEC_VAAPI
421 if HAVE_VAAPI_DRM
422 codec_LTLIBRARIES += libvaapi_drm_plugin.la
423 endif
424 codec_LTLIBRARIES += libvaapi_plugin.la
425 endif
427 libd3d9_common_la_SOURCES = video_chroma/d3d9_fmt.c video_chroma/d3d9_fmt.h \
428         video_chroma/dxgi_fmt.c video_chroma/dxgi_fmt.h
429 libd3d9_common_la_LDFLAGS = -static
430 if HAVE_WIN32_DESKTOP
431 noinst_LTLIBRARIES += libd3d9_common.la
432 endif
434 libdxva2_plugin_la_SOURCES = \
435         codec/avcodec/dxva2.c codec/avcodec/directx_va.c codec/avcodec/directx_va.h \
436         codec/avcodec/va_surface.c codec/avcodec/va_surface.h codec/avcodec/va_surface_internal.h \
437         packetizer/h264_nal.c packetizer/h264_nal.h \
438         packetizer/hevc_nal.c packetizer/hevc_nal.h \
439         codec/avcodec/dxva_blacklist.c
440 libdxva2_plugin_la_LIBADD = libd3d9_common.la $(LIBCOM) -lshlwapi -luuid
441 if HAVE_AVCODEC_DXVA2
442 codec_LTLIBRARIES += libdxva2_plugin.la
443 endif
445 libd3d11_common_la_SOURCES = video_chroma/d3d11_fmt.c video_chroma/d3d11_fmt.h \
446         video_chroma/dxgi_fmt.c video_chroma/dxgi_fmt.h
447 libd3d11_common_la_LDFLAGS = -static
448 if HAVE_WIN32
449 noinst_LTLIBRARIES += libd3d11_common.la
450 endif
452 libd3d11va_plugin_la_SOURCES = \
453         codec/avcodec/d3d11va.c codec/avcodec/directx_va.c codec/avcodec/directx_va.h \
454         codec/avcodec/va_surface.c codec/avcodec/va_surface.h codec/avcodec/va_surface_internal.h \
455         packetizer/h264_nal.c packetizer/h264_nal.h \
456         packetizer/hevc_nal.c packetizer/hevc_nal.h \
457         codec/avcodec/dxva_blacklist.c
458 libd3d11va_plugin_la_LIBADD = libd3d11_common.la $(LIBCOM) -luuid
459 if HAVE_WINSTORE
460 libd3d11va_plugin_la_LIBADD += -ld3d11
461 endif
462 if HAVE_AVCODEC_D3D11VA
463 codec_LTLIBRARIES += libd3d11va_plugin.la
464 endif
466 ### OpenMAX ###
468 noinst_HEADERS += \
469         codec/omxil/OMX_Broadcom.h \
470         codec/omxil/OMX_Component.h \
471         codec/omxil/OMX_Core.h \
472         codec/omxil/OMX_Image.h \
473         codec/omxil/OMX_IVCommon.h \
474         codec/omxil/OMX_Types.h \
475         codec/omxil/OMX_Audio.h \
476         codec/omxil/OMX_Index.h \
477         codec/omxil/OMX_Other.h \
478         codec/omxil/OMX_Video.h
480 libomxil_plugin_la_SOURCES = \
481         codec/omxil/utils.c codec/omxil/omxil_utils.h \
482         packetizer/h264_nal.c packetizer/h264_nal.h \
483         packetizer/hevc_nal.c packetizer/hevc_nal.h \
484         codec/omxil/qcom.c codec/omxil/qcom.h \
485         codec/omxil/omxil.c codec/omxil/omxil.h codec/omxil/omxil_core.c codec/omxil/omxil_core.h
486 libomxil_plugin_la_CPPFLAGS = $(AM_CPPFLAGS) -I$(srcdir)/codec/omxil $(CFLAGS_omxil)
487 libomxil_plugin_la_LIBADD = libchroma_copy.la $(LIBDL)
488 libomxil_plugin_la_LDFLAGS = $(AM_LDFLAGS) -rpath '$(codecdir)'
490 libmediacodec_plugin_la_CPPFLAGS = $(AM_CPPFLAGS) -I$(srcdir)/codec/omxil
491 libmediacodec_plugin_la_SOURCES = codec/omxil/mediacodec.c codec/omxil/mediacodec.h \
492         codec/omxil/mediacodec_jni.c codec/omxil/mediacodec_ndk.c codec/omxil/utils.c \
493         codec/omxil/omxil_utils.h codec/omxil/qcom.c codec/omxil/qcom.h \
494         video_output/android/utils.c video_output/android/utils.h \
495         video_output/android/display.h \
496         codec/hxxx_helper.c codec/hxxx_helper.h \
497         packetizer/hxxx_nal.h packetizer/hxxx_nal.c \
498         packetizer/h264_nal.c packetizer/h264_nal.h \
499         packetizer/hevc_nal.c packetizer/hevc_nal.h
500 libmediacodec_plugin_la_LIBADD = libchroma_copy.la
501 codec_LTLIBRARIES += $(LTLIBomxil)
502 EXTRA_LTLIBRARIES += libomxil_plugin.la
503 if HAVE_ANDROID
504 codec_LTLIBRARIES += libmediacodec_plugin.la
505 endif
508 ### X26x encoders ###
510 libx265_plugin_la_SOURCES = codec/x265.c
511 libx265_plugin_la_CPPFLAGS = $(AM_CPPFLAGS)
512 libx265_plugin_la_CFLAGS = $(AM_CFLAGS) $(CFLAGS_x265)
513 libx265_plugin_la_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_x265) -rpath '$(codecdir)'
514 libx265_plugin_la_LIBADD = $(LIBS_x265)
515 EXTRA_LTLIBRARIES += libx265_plugin.la
516 codec_LTLIBRARIES += $(LTLIBx265)
518 libx262_plugin_la_SOURCES = codec/x264.c
519 libx262_plugin_la_CPPFLAGS = $(AM_CPPFLAGS) -DMODULE_NAME_IS_x262
520 libx262_plugin_la_CFLAGS = $(AM_CFLAGS) $(CFLAGS_x262)
521 libx262_plugin_la_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_x262) -rpath '$(codecdir)'
522 libx262_plugin_la_LIBADD = $(LIBS_x262) $(LIBM)
523 EXTRA_LTLIBRARIES += libx262_plugin.la
524 codec_LTLIBRARIES += $(LTLIBx262)
526 libx264_plugin_la_SOURCES = codec/x264.c
527 libx264_plugin_la_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_x264) -DMODULE_NAME_IS_x264
528 libx264_plugin_la_CFLAGS = $(AM_CFLAGS) $(CFLAGS_x264)
529 libx264_plugin_la_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_x264) -rpath '$(codecdir)'
530 libx264_plugin_la_LIBADD = $(LIBS_x264) $(LIBM)
531 EXTRA_LTLIBRARIES += libx264_plugin.la
532 codec_LTLIBRARIES += $(LTLIBx264)
534 libx26410b_plugin_la_SOURCES = codec/x264.c
535 libx26410b_plugin_la_CPPFLAGS = $(AM_CPPFLAGS) -DMODULE_NAME_IS_x26410b
536 libx26410b_plugin_la_CFLAGS = $(AM_CFLAGS) $(CFLAGS_x26410b)
537 libx26410b_plugin_la_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_x26410b) -rpath '$(codecdir)'
538 libx26410b_plugin_la_LIBADD = $(LIBS_x26410b) $(LIBM)
539 EXTRA_LTLIBRARIES += libx26410b_plugin.la
540 codec_LTLIBRARIES += $(LTLIBx26410b)
543 ### Misc encoders ###
545 libfdkaac_plugin_la_SOURCES = codec/fdkaac.c
546 libfdkaac_plugin_la_CFLAGS = $(AM_CFLAGS) $(FDKAAC_CFLAGS)
547 libfdkaac_plugin_la_LDFLAGS = $(AM_LDFLAGS) -rpath '$(codecdir)'
548 libfdkaac_plugin_la_LIBADD = $(FDKAAC_LIBS)
549 EXTRA_LTLIBRARIES += libfdkaac_plugin.la
550 codec_LTLIBRARIES += $(LTLIBfdkaac)
552 libshine_plugin_la_SOURCES = codec/shine.c
553 libshine_plugin_la_CFLAGS = $(AM_CFLAGS) $(SHINE_CFLAGS)
554 libshine_plugin_la_LDFLAGS = $(AM_LDFLAGS) -rpath '$(codecdir)' $(SHINE_LIBS)
555 EXTRA_LTLIBRARIES += libshine_plugin.la
556 codec_LTLIBRARIES += $(LTLIBshine)
558 libvpx_plugin_la_SOURCES = codec/vpx.c
559 libvpx_plugin_la_CPPFLAGS = $(AM_CPPFLAGS)
560 libvpx_plugin_la_CFLAGS = $(AM_CFLAGS) $(VPX_CFLAGS) $(CPPFLAGS_vpx)
561 libvpx_plugin_la_LDFLAGS = $(AM_LDFLAGS) -rpath '$(codecdir)'
562 libvpx_plugin_la_LIBADD = $(VPX_LIBS)
563 EXTRA_LTLIBRARIES += libvpx_plugin.la
564 codec_LTLIBRARIES += $(LTLIBvpx)
566 libaom_plugin_la_SOURCES = codec/aom.c \
567                            packetizer/iso_color_tables.h
568 libaom_plugin_la_CPPFLAGS = $(AM_CPPFLAGS)
569 libaom_plugin_la_CFLAGS = $(AM_CFLAGS) $(AOM_CFLAGS) $(CPPFLAGS_aom)
570 libaom_plugin_la_LDFLAGS = $(AM_LDFLAGS) -rpath '$(codecdir)'
571 libaom_plugin_la_LIBADD = $(AOM_LIBS)
572 EXTRA_LTLIBRARIES += libaom_plugin.la
573 codec_LTLIBRARIES += $(LTLIBaom)
575 libtwolame_plugin_la_SOURCES = codec/twolame.c
576 libtwolame_plugin_la_CPPFLAGS = $(AM_CPPFLAGS) -DLIBTWOLAME_STATIC
577 libtwolame_plugin_la_CFLAGS = $(AM_CFLAGS) $(TWOLAME_CFLAGS)
578 libtwolame_plugin_la_LDFLAGS = $(AM_LDFLAGS) -rpath '$(codecdir)'
579 libtwolame_plugin_la_LIBADD = $(TWOLAME_LIBS) $(LIBM)
580 EXTRA_LTLIBRARIES += libtwolame_plugin.la
581 codec_LTLIBRARIES += $(LTLIBtwolame)
583 libdav1d_plugin_la_SOURCES = codec/dav1d.c
584 libdav1d_plugin_la_CPPFLAGS = $(AM_CPPFLAGS) $(DAV1D_CFLAGS)
585 libdav1d_plugin_la_CFLAGS = $(AM_CFLAGS)
586 libdav1d_plugin_la_LDFLAGS = $(AM_LDFLAGS) -rpath '$(codecdir)'
587 libdav1d_plugin_la_LIBADD = $(DAV1D_LIBS)
588 EXTRA_LTLIBRARIES += libdav1d_plugin.la
589 codec_LTLIBRARIES += $(LTLIBdav1d)
592 ### Hardware encoders ###
594 libcrystalhd_plugin_la_SOURCES = codec/crystalhd.c packetizer/h264_nal.c packetizer/h264_nal.h
595 libcrystalhd_plugin_la_LDFLAGS = $(AM_LDFLAGS) -rpath '$(codecdir)'
596 libcrystalhd_plugin_la_LIBADD = $(LIBS_crystalhd)
597 EXTRA_LTLIBRARIES += libcrystalhd_plugin.la
598 codec_LTLIBRARIES += $(LTLIBcrystalhd)
600 libqsv_plugin_la_SOURCES = codec/qsv.c codec/vlc_fifo_helper.h demux/mpeg/timestamps.h
601 libqsv_plugin_la_CFLAGS = $(AM_CFLAGS) $(MFX_CFLAGS)
602 libqsv_plugin_la_LDFLAGS = $(AM_LDFLAGS) -rpath '$(codecdir)'
603 libqsv_plugin_la_LIBADD = $(MFX_LIBS)
604 EXTRA_LTLIBRARIES += libqsv_plugin.la
605 codec_LTLIBRARIES += $(LTLIBqsv)
608 ### External frameworks ###
610 libdmo_plugin_la_SOURCES = codec/dmo/dmo.c codec/dmo/dmo.h codec/dmo/buffer.c
611 libqsv_plugin_la_CPPFLAGS = $(AM_CPPFLAGS)
612 libdmo_plugin_la_LIBADD = $(LIBM)
613 if HAVE_WIN32
614 libdmo_plugin_la_LIBADD += $(LIBCOM) -luuid
615 codec_LTLIBRARIES += libdmo_plugin.la
616 endif
618 libmft_plugin_la_SOURCES = codec/mft.c packetizer/h264_nal.c packetizer/h264_nal.h
619 if HAVE_WIN32
620 libmft_plugin_la_LIBADD = $(LIBCOM) -luuid -lmfuuid -lmfplat
621 codec_LTLIBRARIES += libmft_plugin.la
622 endif
624 libgstdecode_plugin_la_SOURCES = codec/gstreamer/gstdecode.c \
625                                                                  codec/gstreamer/gstvlcpictureplaneallocator.c \
626                                                                  codec/gstreamer/gstvlcpictureplaneallocator.h \
627                                                                  codec/gstreamer/gstvlcvideopool.c \
628                                                                  codec/gstreamer/gstvlcvideopool.h \
629                                                                  codec/gstreamer/gstvlcvideosink.c \
630                                                                  codec/gstreamer/gstvlcvideosink.h
631 libgstdecode_plugin_la_CFLAGS = $(AM_CFLAGS) $(GST_VIDEO_CFLAGS) $(GST_APP_CFLAGS)
632 libgstdecode_plugin_la_LIBADD = $(GST_VIDEO_LIBS) $(GST_APP_LIBS)
633 if HAVE_GST_DECODE
634 codec_LTLIBRARIES += libgstdecode_plugin.la
635 endif