1. libvlc_InternalInit ()
=> module_InitBank ()
=> module_LoadPlugins (p_libvlc)
2. module_InitBank ()
=> module_InitStatic (vlc_entry__core)
2.1 module_InitStatic (vlc_plugin_cb entry)
=> vlc_plugin_describe (entry)
2.2 module_t *vlc_plugin_describe (vlc_plugin_cb entry)
=> entry (vlc_plugin_setter, &module)
3. size_t module_LoadPlugins (vlc_object_t *obj)
=> module_InitStaticModules ();
3.1 void module_InitStaticModules(void)
for (unsigned i = 0; vlc_static_modules[i]; i++) {
module_t *module = module_InitStatic (vlc_static_modules[i]);
if (likely(module != NULL))
module_StoreBank (module);
}
3.2 vlc_static_modules in libvlc/jni/libvlcjni-modules.h
const void *vlc_static_modules[] = {
vlc_entry__speex,
vlc_entry__dts,
vlc_entry__grey_yuv,
vlc_entry__nfs,
vlc_entry__mono,
vlc_entry__inflate,
vlc_entry__cache_block,
vlc_entry__gaussianblur,
vlc_entry__scaletempo,
vlc_entry__image,
vlc_entry__packetizer_h264,
vlc_entry__rv32,
vlc_entry__mpg123,
vlc_entry__cdg,
vlc_entry__oldmovie,
vlc_entry__freetype,
vlc_entry__record,
vlc_entry__mjpeg,
vlc_entry__http,
vlc_entry__android_window,
vlc_entry__cvdsub,
vlc_entry__udp,
vlc_entry__uleaddvaudio,
vlc_entry__amem,
vlc_entry__i422_yuy2,
vlc_entry__substtml,
vlc_entry__attachment,
vlc_entry__packetizer_dirac,
vlc_entry__lua,
vlc_entry__croppadd,
vlc_entry__syslog,
vlc_entry__gnutls,
vlc_entry__tcp,
vlc_entry__yuv_rgb_neon,
vlc_entry__ftp,
vlc_entry__android_audiotrack,
vlc_entry__diracsys,
vlc_entry__packetizer_hevc,
vlc_entry__timecode,
vlc_entry__rawvideo,
vlc_entry__ttml,
vlc_entry__dtstospdif,
vlc_entry__audio_format,
vlc_entry__live555,
vlc_entry__equalizer,
vlc_entry__yuy2_i420,
vlc_entry__jpeg,
vlc_entry__mod,
vlc_entry__adjust,
vlc_entry__i422_i420,
vlc_entry__freeze,
vlc_entry__yuy2_i422,
vlc_entry__anaglyph,
vlc_entry__subtitle,
vlc_entry__zvbi,
vlc_entry__libass,
vlc_entry__avformat,
vlc_entry__sftp,
vlc_entry__fingerprinter,
vlc_entry__asf,
vlc_entry__fps,
vlc_entry__adaptive,
vlc_entry__playlist,
vlc_entry__file_logger,
vlc_entry__folder,
vlc_entry__headphone_channel_mixer,
vlc_entry__vdr,
vlc_entry__wave,
vlc_entry__trivial_channel_mixer,
vlc_entry__param_eq,
vlc_entry__hds,
vlc_entry__blend,
vlc_entry__a52tospdif,
vlc_entry__scte27,
vlc_entry__karaoke,
vlc_entry__voc,
vlc_entry__rawvid,
vlc_entry__extract,
vlc_entry__xa,
vlc_entry__integer_mixer,
vlc_entry__chain,
vlc_entry__rar,
vlc_entry__opensles_android,
vlc_entry__sepia,
vlc_entry__mkv,
vlc_entry__vorbis,
vlc_entry__sdp,
vlc_entry__normvol,
vlc_entry__vhs,
vlc_entry__svcdsub,
vlc_entry__access_archive,
vlc_entry__hqdn3d,
vlc_entry__gradfun,
vlc_entry__packetizer_mpeg4video,
vlc_entry__nsv,
vlc_entry__scte18,
vlc_entry__subsusf,
vlc_entry__dvbsub,
vlc_entry__android_native_window,
vlc_entry__rtp,
vlc_entry__avcodec,
vlc_entry__yuvp,
vlc_entry__caf,
vlc_entry__access_concat,
vlc_entry__packetizer_mlp,
vlc_entry__packetizer_mpeg4audio,
vlc_entry__spudec,
vlc_entry__prefetch,
vlc_entry__dvdnav,
vlc_entry__plaintext_keystore,
vlc_entry__au,
vlc_entry__ts,
vlc_entry__g711,
vlc_entry__subsdec,
vlc_entry__soxr,
vlc_entry__avi,
vlc_entry__shm,
vlc_entry__deinterlace,
vlc_entry__colorthres,
vlc_entry__ogg,
vlc_entry__dummy,
vlc_entry__nsc,
vlc_entry__rawdv,
vlc_entry__gles2,
vlc_entry__stl,
vlc_entry__theora,
vlc_entry__imem,
vlc_entry__access_mms,
vlc_entry__stereo_widen,
vlc_entry__taglib,
vlc_entry__xml,
vlc_entry__upnp,
vlc_entry__avio,
vlc_entry__egl_android,
vlc_entry__cache_read,
vlc_entry__lpcm,
vlc_entry__pva,
vlc_entry__nuv,
vlc_entry__h26x,
vlc_entry__float_mixer,
vlc_entry__adpcm,
vlc_entry__i420_yuy2,
vlc_entry__i420_rgb,
vlc_entry__marq,
vlc_entry__a52tofloat32,
vlc_entry__packetizer_flac,
vlc_entry__demux_stl,
vlc_entry__dvdread,
vlc_entry__araw,
vlc_entry__swscale,
vlc_entry__console_logger,
vlc_entry__flac,
vlc_entry__subsdelay,
vlc_entry__aiff,
vlc_entry__decomp,
vlc_entry__remap,
vlc_entry__edgedetection,
vlc_entry__es,
vlc_entry__png,
vlc_entry__dsm,
vlc_entry__packetizer_avparser,
vlc_entry__spatializer,
vlc_entry__opus,
vlc_entry__access_realrtsp,
vlc_entry__dolby_surround_decoder,
vlc_entry__mpeg_audio,
vlc_entry__mp4,
vlc_entry__ps,
vlc_entry__gain,
vlc_entry__chorus_flanger,
vlc_entry__scale,
vlc_entry__rawaud,
vlc_entry__mad,
vlc_entry__telx,
vlc_entry__vmem,
vlc_entry__logo,
vlc_entry__mediacodec,
vlc_entry__substx3g,
vlc_entry__filesystem,
vlc_entry__volume_neon,
vlc_entry__afile,
vlc_entry__simple_channel_mixer,
vlc_entry__demuxdump,
vlc_entry__vc1,
vlc_entry__ty,
vlc_entry__packetizer_vc1,
vlc_entry__microdns,
vlc_entry__rotate,
vlc_entry__postproc,
vlc_entry__ugly_resampler,
vlc_entry__flacsys,
vlc_entry__invert,
vlc_entry__tta,
vlc_entry__iomx,
vlc_entry__chroma_yuv_neon,
vlc_entry__packetizer_mpegvideo,
vlc_entry__demux_cdg,
vlc_entry__mpgv,
vlc_entry__vobsub,
vlc_entry__wav,
vlc_entry__antiflicker,
vlc_entry__android_logger,
vlc_entry__https,
vlc_entry__transform,
vlc_entry__compressor,
vlc_entry__cc,
vlc_entry__zip,
vlc_entry__aes3,
vlc_entry__canvas,
vlc_entry__a52,
NULL
};