1.基本功能
(1)播放本地音频文件 mp3 wma ---ok
(2)播放本地视频文件 mp4 avi rmvb rm mkv ---ok
(3)网络播放视频流 rtp/rtsp ---ok mp3 avi rmvb mkv
(4)截屏功能 ---ok
(5)字幕 ---ok
2.配置说明
vlc version 1.1.13
官方说明
########################################################################################
There are some very important dependencies:
gettext (NLS) for international support (required)
libdvbpsi for MPEG-TS files and streams support
libmad for MP3 audio decoding
libmpeg2 for MPEG1 and MPEG2 video support
FFmpeg or libav (libavcodec, libavformat, libpostproc, libswscale and optionally libavio) for MPEG4 and most other audio and video codecs, and many file formats,
liba52 for Dolby (AC3) sound
dvdread and dvdnav for DVD playback
live555 for RTSP stream playback, etc.
For audio output, you will need probably alsa-lib (on Linux) and/or libpulse (for PulseAudio).
For video output, you will normally need XCB/XVideo and/or OpenGL/GLX. And Qt4 is required to get the GUI support.
########################################################################################
vlc 主程序
--enable-vlc \
ffmpeg FFmpeg 复用器、去复用器
--enable-avformat \
--enable-swscale \
real Real 去复用器
--enable-real \
--enable-realrtsp \
h264 H264 视频去复用器
--enable-x264 \
mpgv MPEG-I/II 视频去复用器 (ffmpeg与libmpeg2二选一,前者更强大)
--enable-libmpeg2 \
mkv Matroska 流去复用器
--enable-mkv \
libmad MP3 音频解码器
--enable-mad \
a52 A/52 解析器
--enable-a52 \
live555 RTP/RTSP/SDP 去复用器 (使用 Live555)
--enable-live555 \
enable streaming output
--enable-sout \
mux_ts TS 复用器 (libdvbpsi)
decoding and generation of MPEG TS and DVB PSI tables
--enable-dvbpsi \
建立共享库
--enable-shared=yes \
多媒体开发库 SDL support
--enable-sdl \
--enable-sdl-image \
截屏 screen capture
--enable-screen \
字幕 Subtitle support
--enable-libass \
########################################################################################
3.方案选定
1.操作系统环境搭建
硬盘安装 fedora 15
配置软件更新源并将系统更新至最新
2.安装依赖库
# yum install a52dec a52dec-devel caca-utils dirac dirac-devel expat expat-devel faac faac-devel faad2 faad2-devel ffmpeg \
ffmpeg-libs ffmpeg-devel flac flac-devel fribidi-devel gettext gnutls gnutls-devel gnutls-utils lame lame-devel live555 live555-devel \
libass libass-devel libcaca libcaca-devel libcddb libcddb-devel libcdio libcdio-devel libdap libdap-devel libdca-devel \
libdvbpsi libdvbpsi-devel libdvdnav libdvdnav-devel libdvdread libebml libebml-devel freetype freetype-devel fribidi \
libgcrypt libgcrypt-devel libgpg-error libgpg-error-devel libjpeg-turbo libmad libmad-devel libmatroska libmatroska-devel\
libmodplug libmodplug-devel libmpcdec-devel libmpeg2-devel libogg-devel liboil-devel libpng libpng-devel libshout \
libshout-devel libtheora-devel libtiff libupnp libupnp-devel libvorbis-devel libX11 libX11-devel libxcb libxcb-devel \
libxml2 libxml2-devel mpeg2dec portaudio-devel qt4 qt4-devel schroedinger-devel SDL-devel SDL_image SDL_image-devel speex\
speex-devel taglib-devel twolame twolame-devel vcdimager vcdimager-devel vcdimager-libs x264 x264-devel yasm zlib \
lua lua-devel xcb-util-devel libsamplerate-devel
补充:ffmpeg配置与安装
ffmpeg-configure
./configure --prefix=/usr/local/ffmpeg \
--enable-gpl --enable-swscale --enable-postproc
pkg-config
export PKG_CONFIG_PATH="/usr/lib/pkgconfig:/usr/share/pkgconfig/:/usr/local/ffmpeg/lib/pkgconfig"
pkg-config --modversion libavutil
3.配置安装vlc
vlc-configure
./configure --prefix=/usr/local/vlc \
--enable-run-as-root --enable-debug \
make && make install
4.定制安装
./configure --prefix=/usr/local/vlc_custom --enable-vlc \
\
--enable-sdl \
--enable-sdl-image \
\
--enable-avformat \
--enable-swscale \
--enable-real \
--enable-x264 \
--disable-libmpeg2 \
--enable-mkv \
\
--disable-pulse \
--disable-oss \
--disable-alsa \
--disable-portaudio \
--enable-mad \
--disable-a52 \
\
--enable-realrtsp \
--enable-live555 \
--enable-sout \
--enable-dvbpsi \
\
--enable-xcb \
--enable-qt4 \
--enable-libass \
--enable-screen \
\
--enable-shared=yes \
--enable-optimizations \
--enable-postproc \
--enable-mmx \
--enable-sse \
\
--enable-debug \
--enable-run-as-root \
\
--disable-mod \
--disable-mpc \
--disable-dbus \
--disable-dbus-control \
--disable-glx \
--disable-opengl \
--disable-lua \
--disable-waveout \
--disable-nls \
--disable-macosx \
--disable-macosx-vout \
--disable-macosx-dialog-provider \
--disable-macosx-qtcapture \
--disable-macosx-eyetv \
--disable-macosx-vlc-app \
--disable-macosx-defaults \
--disable-macosx-audio \
--disable-telepathy \
--disable-altivec \
--disable-coverage \
--disable-httpd \
--disable-libproxy \
--disable-taglib \
--disable-dvdread \
--disable-dvdnav \
--disable-dshow \
--disable-smb \
--disable-dvbpsi \
--disable-v4l \
--disable-libv4l \
--disable-v4l2 \
--disable-libv4l2 \
--disable-vcdx \
--disable-vcd \
--disable-libtar \
--disable-dca \
--disable-vorbis \
--disable-tremor \
--disable-gme \
--disable-ogg \
--disable-mux_ogg \
--disable-faad \
--disable-flac \
--disable-speex \
--disable-theora \
--disable-dirac \
--disable-schroedinger \
--disable-png \
--disable-telx \
--disable-kate \
--disable-xvideo \
--disable-freetype \
--disable-fribidi \
--disable-fontconfig \
--disable-libxml2 \
--disable-ncurses \
--disable-visual \
--disable-atmo \
--disable-bonjour \
--disable-libgcrypt \
--disable-remoteosd \
--disable-gnutls \
--disable-activex \
--disable-mozilla \
--disable-skins2 \
--disable-lirc \
--disable-opencv \
\
--disable-neon \
--disable-dc1394 \
--disable-dv \
--disable-vlm \
--disable-gnomevfs \
--disable-pvr \
--disable-twolame \
--disable-sftp \
--disable-notify \
--disable-shout \
--disable-aa \
--disable-caca \
--disable-jack \
--disable-merge-ffmpeg \
--disable-libva \
--disable-dxva2 \
--disable-shine \
--disable-zvbi \
--disable-tiger \
\
--disable-silent-rules \
--disable-maintainer-mode \
--disable-dependency-tracking \
--disable-peflags \
--disable-non-utf8 \
--disable-gprof \
--disable-cprof \
--disable-growl \
--disable-libcddb \
--disable-wma-fixed \
--disable-omxil \
--disable-switcher \
--disable-quicktime \
--disable-fluidsynth \
--disable-svg \
--disable-wingdi \
--disable-fb \
--disable-omapfb \
--disable-svgalib \
--disable-directfb \
--disable-ggi \
--disable-cyberlink \
--disable-upnp \
--disable-hildon \
--disable-xosd \
--disable-fbosd \
--disable-goom \
--disable-projectm \
--disable-udev \
--disable-mtp \
--disable-update-check \
--disable-sqlite \
--disable-loader \
\
&& make && make install
5.编译问题记录
没有声音 sdl or ass/alsa
没有字幕 --enable-libass
没有截屏 --enable-screen
qt4 interface error: Unable to load extensions module 改变安装路径文件架名称
mpeg编解码选择 去掉libmpeg2,选择ffmpeg(libavformat libswscale)
编译效率 不到三分钟 (time make)
....
make[2]: 离开目录“/home/peter/workspace/vlc_1_1_3”
make[1]: 离开目录“/home/peter/workspace/vlc_1_1_3”
real 2m22.221s
user 1m28.272s
sys 0m31.595s
....
安装效率 不到两分钟 (time make install)
....
make[3]: 离开目录“/home/peter/workspace/vlc_1_1_3”
make[2]: 离开目录“/home/peter/workspace/vlc_1_1_3”
make[1]: 离开目录“/home/peter/workspace/vlc_1_1_3”
real 1m38.468s
user 1m7.845s
sys 0m19.604s
....
精简大小 64M----->36M (带debug qt gui=17M)
28M (无debug)
(1)播放本地音频文件 mp3 wma ---ok
(2)播放本地视频文件 mp4 avi rmvb rm mkv ---ok
(3)网络播放视频流 rtp/rtsp ---ok mp3 avi rmvb mkv
(4)截屏功能 ---ok
(5)字幕 ---ok
2.配置说明
vlc version 1.1.13
官方说明
########################################################################################
There are some very important dependencies:
gettext (NLS) for international support (required)
libdvbpsi for MPEG-TS files and streams support
libmad for MP3 audio decoding
libmpeg2 for MPEG1 and MPEG2 video support
FFmpeg or libav (libavcodec, libavformat, libpostproc, libswscale and optionally libavio) for MPEG4 and most other audio and video codecs, and many file formats,
liba52 for Dolby (AC3) sound
dvdread and dvdnav for DVD playback
live555 for RTSP stream playback, etc.
For audio output, you will need probably alsa-lib (on Linux) and/or libpulse (for PulseAudio).
For video output, you will normally need XCB/XVideo and/or OpenGL/GLX. And Qt4 is required to get the GUI support.
########################################################################################
vlc 主程序
--enable-vlc \
ffmpeg FFmpeg 复用器、去复用器
--enable-avformat \
--enable-swscale \
real Real 去复用器
--enable-real \
--enable-realrtsp \
h264 H264 视频去复用器
--enable-x264 \
mpgv MPEG-I/II 视频去复用器 (ffmpeg与libmpeg2二选一,前者更强大)
--enable-libmpeg2 \
mkv Matroska 流去复用器
--enable-mkv \
libmad MP3 音频解码器
--enable-mad \
a52 A/52 解析器
--enable-a52 \
live555 RTP/RTSP/SDP 去复用器 (使用 Live555)
--enable-live555 \
enable streaming output
--enable-sout \
mux_ts TS 复用器 (libdvbpsi)
decoding and generation of MPEG TS and DVB PSI tables
--enable-dvbpsi \
建立共享库
--enable-shared=yes \
多媒体开发库 SDL support
--enable-sdl \
--enable-sdl-image \
截屏 screen capture
--enable-screen \
字幕 Subtitle support
--enable-libass \
########################################################################################
3.方案选定
1.操作系统环境搭建
硬盘安装 fedora 15
配置软件更新源并将系统更新至最新
2.安装依赖库
# yum install a52dec a52dec-devel caca-utils dirac dirac-devel expat expat-devel faac faac-devel faad2 faad2-devel ffmpeg \
ffmpeg-libs ffmpeg-devel flac flac-devel fribidi-devel gettext gnutls gnutls-devel gnutls-utils lame lame-devel live555 live555-devel \
libass libass-devel libcaca libcaca-devel libcddb libcddb-devel libcdio libcdio-devel libdap libdap-devel libdca-devel \
libdvbpsi libdvbpsi-devel libdvdnav libdvdnav-devel libdvdread libebml libebml-devel freetype freetype-devel fribidi \
libgcrypt libgcrypt-devel libgpg-error libgpg-error-devel libjpeg-turbo libmad libmad-devel libmatroska libmatroska-devel\
libmodplug libmodplug-devel libmpcdec-devel libmpeg2-devel libogg-devel liboil-devel libpng libpng-devel libshout \
libshout-devel libtheora-devel libtiff libupnp libupnp-devel libvorbis-devel libX11 libX11-devel libxcb libxcb-devel \
libxml2 libxml2-devel mpeg2dec portaudio-devel qt4 qt4-devel schroedinger-devel SDL-devel SDL_image SDL_image-devel speex\
speex-devel taglib-devel twolame twolame-devel vcdimager vcdimager-devel vcdimager-libs x264 x264-devel yasm zlib \
lua lua-devel xcb-util-devel libsamplerate-devel
补充:ffmpeg配置与安装
ffmpeg-configure
./configure --prefix=/usr/local/ffmpeg \
--enable-gpl --enable-swscale --enable-postproc
pkg-config
export PKG_CONFIG_PATH="/usr/lib/pkgconfig:/usr/share/pkgconfig/:/usr/local/ffmpeg/lib/pkgconfig"
pkg-config --modversion libavutil
3.配置安装vlc
vlc-configure
./configure --prefix=/usr/local/vlc \
--enable-run-as-root --enable-debug \
make && make install
4.定制安装
./configure --prefix=/usr/local/vlc_custom --enable-vlc \
\
--enable-sdl \
--enable-sdl-image \
\
--enable-avformat \
--enable-swscale \
--enable-real \
--enable-x264 \
--disable-libmpeg2 \
--enable-mkv \
\
--disable-pulse \
--disable-oss \
--disable-alsa \
--disable-portaudio \
--enable-mad \
--disable-a52 \
\
--enable-realrtsp \
--enable-live555 \
--enable-sout \
--enable-dvbpsi \
\
--enable-xcb \
--enable-qt4 \
--enable-libass \
--enable-screen \
\
--enable-shared=yes \
--enable-optimizations \
--enable-postproc \
--enable-mmx \
--enable-sse \
\
--enable-debug \
--enable-run-as-root \
\
--disable-mod \
--disable-mpc \
--disable-dbus \
--disable-dbus-control \
--disable-glx \
--disable-opengl \
--disable-lua \
--disable-waveout \
--disable-nls \
--disable-macosx \
--disable-macosx-vout \
--disable-macosx-dialog-provider \
--disable-macosx-qtcapture \
--disable-macosx-eyetv \
--disable-macosx-vlc-app \
--disable-macosx-defaults \
--disable-macosx-audio \
--disable-telepathy \
--disable-altivec \
--disable-coverage \
--disable-httpd \
--disable-libproxy \
--disable-taglib \
--disable-dvdread \
--disable-dvdnav \
--disable-dshow \
--disable-smb \
--disable-dvbpsi \
--disable-v4l \
--disable-libv4l \
--disable-v4l2 \
--disable-libv4l2 \
--disable-vcdx \
--disable-vcd \
--disable-libtar \
--disable-dca \
--disable-vorbis \
--disable-tremor \
--disable-gme \
--disable-ogg \
--disable-mux_ogg \
--disable-faad \
--disable-flac \
--disable-speex \
--disable-theora \
--disable-dirac \
--disable-schroedinger \
--disable-png \
--disable-telx \
--disable-kate \
--disable-xvideo \
--disable-freetype \
--disable-fribidi \
--disable-fontconfig \
--disable-libxml2 \
--disable-ncurses \
--disable-visual \
--disable-atmo \
--disable-bonjour \
--disable-libgcrypt \
--disable-remoteosd \
--disable-gnutls \
--disable-activex \
--disable-mozilla \
--disable-skins2 \
--disable-lirc \
--disable-opencv \
\
--disable-neon \
--disable-dc1394 \
--disable-dv \
--disable-vlm \
--disable-gnomevfs \
--disable-pvr \
--disable-twolame \
--disable-sftp \
--disable-notify \
--disable-shout \
--disable-aa \
--disable-caca \
--disable-jack \
--disable-merge-ffmpeg \
--disable-libva \
--disable-dxva2 \
--disable-shine \
--disable-zvbi \
--disable-tiger \
\
--disable-silent-rules \
--disable-maintainer-mode \
--disable-dependency-tracking \
--disable-peflags \
--disable-non-utf8 \
--disable-gprof \
--disable-cprof \
--disable-growl \
--disable-libcddb \
--disable-wma-fixed \
--disable-omxil \
--disable-switcher \
--disable-quicktime \
--disable-fluidsynth \
--disable-svg \
--disable-wingdi \
--disable-fb \
--disable-omapfb \
--disable-svgalib \
--disable-directfb \
--disable-ggi \
--disable-cyberlink \
--disable-upnp \
--disable-hildon \
--disable-xosd \
--disable-fbosd \
--disable-goom \
--disable-projectm \
--disable-udev \
--disable-mtp \
--disable-update-check \
--disable-sqlite \
--disable-loader \
\
&& make && make install
5.编译问题记录
没有声音 sdl or ass/alsa
没有字幕 --enable-libass
没有截屏 --enable-screen
qt4 interface error: Unable to load extensions module 改变安装路径文件架名称
mpeg编解码选择 去掉libmpeg2,选择ffmpeg(libavformat libswscale)
编译效率 不到三分钟 (time make)
....
make[2]: 离开目录“/home/peter/workspace/vlc_1_1_3”
make[1]: 离开目录“/home/peter/workspace/vlc_1_1_3”
real 2m22.221s
user 1m28.272s
sys 0m31.595s
....
安装效率 不到两分钟 (time make install)
....
make[3]: 离开目录“/home/peter/workspace/vlc_1_1_3”
make[2]: 离开目录“/home/peter/workspace/vlc_1_1_3”
make[1]: 离开目录“/home/peter/workspace/vlc_1_1_3”
real 1m38.468s
user 1m7.845s
sys 0m19.604s
....
精简大小 64M----->36M (带debug qt gui=17M)
28M (无debug)