|
在mplayer下的 libmpcodecs/vd.c
文件里有一段
vd_functions_t* mpcodecs_vd_drivers[] = {
&mpcodecs_vd_null,
#ifdef USE_LIBAVCODEC
&mpcodecs_vd_ffmpeg,
#endif
#ifdef HAVE_OGGTHEORA
&mpcodecs_vd_theora,
#endif
#ifdef USE_WIN32DLL
#ifdef USE_DIRECTSHOW
&mpcodecs_vd_dshow,
&mpcodecs_vd_dmo,
#endif
&mpcodecs_vd_vfw,
&mpcodecs_vd_vfwex,
#endif
#ifdef USE_DIVX
&mpcodecs_vd_odivx,
#ifdef NEW_DECORE
&mpcodecs_vd_divx4,
#endif
#endif
&mpcodecs_vd_lzo,
&mpcodecs_vd_raw,
&mpcodecs_vd_hmblck,
&mpcodecs_vd_nuv,
#ifdef USE_XANIM
&mpcodecs_vd_xanim,
#endif
#ifdef HAVE_PNG
&mpcodecs_vd_mpng,
#endif
#ifdef HAVE_JPEG
&mpcodecs_vd_ijpg,
#endif
&mpcodecs_vd_mtga,
&mpcodecs_vd_sgi,
#ifdef USE_LIBMPEG2
&mpcodecs_vd_libmpeg2,
#endif
&mpcodecs_vd_mpegpes,
#ifdef HAVE_ZR
&mpcodecs_vd_zrmjpeg,
#endif
#ifdef USE_REALCODECS
&mpcodecs_vd_realvid,
#endif
#if defined(HAVE_XVID3) || defined(HAVE_XVID4)
&mpcodecs_vd_xvid,
#endif
#ifdef HAVE_LIBDV095
&mpcodecs_vd_libdv,
#endif
#if defined(USE_QTX_CODECS) || defined(MACOSX)
&mpcodecs_vd_qtvideo,
#endif
NULL
};
请问哪位大侠知道这里面的数组成员如: &mpcodecs_vd_ffmpeg之类是从哪里调用过来的,好象mplayer源码包里没有,是不是通过这个地址类调用解码库中的相应解码器的呢?
小弟对编解码的过程不是很熟悉 还情 各位多多指教 |
|