Openwrt: 为mplayer编制一个可以播放电影的Makefile

MPlayer是一款开源的多媒体播放软件,可以在Openwrt上来播放mp3和wav等音频文件。另外,mplayer还可以在slave模式下运行,这也是它的一大特色。为了让mplayer能在openwrt上顺利运行,需要进行合理的配置,剪裁掉图像和视频等相关的代码。以下是经过多次试验后的配置和步骤,给有兴趣的openwrt爱好者参考。这里假设openwrt的安装目录为openwrt_widora。

1. 在   ~/openwrt_widora/feeds/packages/multimediar 目录下建立子目录 mplayer 在其中建立一个Makefile, 内容如下:

#
# Copyright (C) 2006-2014 OpenWrt.org
#
# This is free software, licensed under the GNU General Public License v2.
# See /LICENSE for more information.
#

include $(TOPDIR)/rules.mk

PKG_NAME:=MPlayer
PKG_VERSION:=1.0rc2
PKG_RELEASE:=1

PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2
PKG_SOURCE_URL:=http://www.mplayerhq.hu/MPlayer/releases/
PKG_MD5SUM:=7e27e535c2d267637df34898f1b91707

PKG_MAINTAINER:= http://www.mplayerhq.hu
PKG_LICENSE:=GPLv2
PKG_LICENSE_FILES:=Copyright

include $(INCLUDE_DIR)/package.mk

define Package/MPlayer
  SECTION:=multimedia
  CATEGORY:=Multimedia
  DEPENDS:= +libpthread +libjpeg +libncurses +libmad +libc +alsa-lib +zlib +liblzo
  TITLE:=MPlayer1.0rc2
  URL:=$(PKG_SOURCE_URL)
endef

TARGET_CFLAGS += -DHAVE_BYTESWAP_H

CONFIGURE_ARGS= \
	--enable-cross-compile	\
	--host-cc=gcc  \
	--cc=mipsel-openwrt-linux-gcc \
	--target=mips-linux	\
        --prefix=$(CONFIGURE_PREFIX) \
        --bindir=$(CONFIGURE_PREFIX)/bin \
        --datadir=$(CONFIGURE_PREFIX)/share \
        --mandir=$(CONFIGURE_PREFIX)/man \
	--disable-gif		\
	--disable-png		\
	--disable-real		\
	--disable-speex		\
	--enable-fbdev		\
	--enable-linux-devfs	\
	--enable-alsa		\
	--disable-largefiles	\
	--disable-dvdread	\
	--disable-mencoder	\
	--disable-live		\
	--disable-ossaudio	\
	--disable-libavcodec_a	\
	--disable-libavformat_a	\
	--disable-libpostproc_a	\
	--disable-bitmap-font	\
	--disable-ivtv		\
	--disable-tv		\
	--disable-tga		\
	--disable-pnm		\
	--disable-md5sum	\
	--disable-w32threads	\
	--disable-win32dll	\
	--disable-qtx		\
	--disable-xanim		\
	--disable-libmpeg2	\
	--disable-radio-v4l2	\
	--disable-radio-bsdbt848	\
	--disable-tv-v4l1	\
	--disable-tv-v4l2	\
	--disable-tv-bsdbt848	\
	--disable-tv-teletext	\
	--disable-pvr		\
	--disable-mp3lib	\
	--disable-liba52	\
	--disable-decoder=DECODER	\
	--disable-encoder=ENCODER	\
	--disable-parser=PARSER		\
	--disable-demuxer=DEMUXER	\
	--disable-muxer=MUXER

define Package/MPlayer/install
	$(INSTALL_DIR) $(1)/usr/bin
	$(INSTALL_BIN) $(PKG_BUILD_DIR)/mplayer $(1)/usr/bin/
endef

$(eval $(call BuildPackage,MPlayer))

注: 如果你想用mplayer来播放视频,那么将上述Makefile的配置部分最下面改为:

        --enable-decoder=DECODER        \
        --enable-demuxer=DEMUXER        \
        --disable-encoder=ENCODER       \        
        --enable-parser=PARSER          \
        --disable-muxer=MUXER

这样编译出来的mplayer有4.5M,可以通过fbdev来播放,比如: mplayer /mmc/good_luck.avi -vo fbdev

如果你想播放摄像头视频, 那么打开下面2个选项:
         --enable-tv              \
         --enable-tv-v4l2        \

可以通过以下命令方式来播放/dev/video0摄像头:
MPlayer tv:// -tv driver=v4l2:device=/dev/video0:input=0:outfmt=bgr24:width=320:height=240:fps=8 -vo fbdev

2.  建立软链接到package:
    ln -s  ~/openwrt_widora/feeds/packages/multimedia/mplayer   ~/openwrt_widora/package/feeds/packages/

3. 执行make menuconfig , 在Multimedia类别中m选中MPlayer.

4. openwrt_widora目录下单独编译此模块, 前提环境是openwrt已经编译完成:
     make package/feeds/packages/mplayer/compile V=s

5. 完成后可以在bin/ramips/packages/packages目录下找到安装包  MPlayer_1.0rc2-1_ramips_24kec.ipk

 

Openwrt学习网站: 佐须之男的博客

"技术需要沉淀,成长需要痛苦,成功需要坚持,敬仰需要奉献"

 

 

 

你可能感兴趣的:(widora,Openwrt)