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學習網站: 佐須之男的博客

"技術需要沉澱,成長需要痛苦,成功需要堅持,敬仰需要奉獻"

 

 

 

發佈了21 篇原創文章 · 獲贊 9 · 訪問量 1萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章