VLC-Android Intro - Modules Init




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
};



你可能感兴趣的:(VLC-Android Intro - Modules Init)