--- /dev/null
+#
+# Copyright (C) 2010-2013 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:=minidlna
+PKG_VERSION:=1.1.3
+PKG_RELEASE:=1
+
+PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
+PKG_SOURCE_URL:=@SF/minidlna
+PKG_MD5SUM:=879027192C89E5376CDD2AE2D1AA33B4
+
+PKG_BUILD_PARALLEL:=0
+PKG_BUILD_DEPENDS:=util-linux
+
+include $(INCLUDE_DIR)/kernel.mk
+include $(INCLUDE_DIR)/package.mk
+include $(INCLUDE_DIR)/nls.mk
+
+define Package/minidlna
+ SECTION:=multimedia
+ CATEGORY:=Multimedia
+ TITLE:=UPnP A/V & DLNA Media Server
+ URL:=http://minidlna.sourceforge.net/
+ DEPENDS:= +libpthread +libexif +libjpeg +libsqlite3 +libffmpeg \
+ +libid3tag +libflac +libvorbis +libuuid \
+ $(ICONV_DEPENDS) $(INTL_DEPENDS)
+endef
+
+define Package/minidlna/description
+ MiniDLNA (aka ReadyDLNA) is server software with the aim of
+ being fully compliant with DLNA/UPnP-AV clients.
+endef
+
+define Package/minidlna/conffiles
+/etc/minidlna.conf
+endef
+
+TARGET_CPPFLAGS += \
+ -I$(STAGING_DIR)/usr/include \
+ -I$(STAGING_DIR)/usr/include/FLAC \
+ -I$(STAGING_DIR)/usr/include/libavcodec \
+ -I$(STAGING_DIR)/usr/include/libavformat \
+ -I$(STAGING_DIR)/usr/include/libavutil \
+ -I$(STAGING_DIR)/usr/include/libexif \
+ -I$(STAGING_DIR)/usr/include/uuid \
+ -I$(STAGING_DIR)/usr/include/vorbis \
+ -I$(ICONV_PREFIX)/include \
+ -I$(INTL_PREFIX)/include \
+ -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 \
+
+TARGET_LDFLAGS += \
+ -L$(ICONV_PREFIX)/lib \
+ -L$(INTL_PREFIX)/lib \
+ -Wl,-rpath-link=$(STAGING_DIR)/usr/lib \
+
+MAKE_FLAGS +=\
+ CFLAGS="$(TARGET_CFLAGS) $(TARGET_CPPFLAGS)" \
+ LDFLAGS="$(TARGET_LDFLAGS)" \
+ ICONV_LIBS="-liconv $(if $(INTL_FULL),-lintl)" \
+
+MAKE_VARS +=\
+ PREFIX="$(STAGING_DIR)/usr" \
+ ICONV_PREFIX="$(ICONV_PREFIX)" \
+ INTL_PREFIX="$(INTL_PREFIX)" \
+ OS_NAME="OpenWrt Linux" \
+ OS_VERSION="$(LINUX_VERSION)" \
+ OS_URL="http://openwrt.org/" \
+ DB_PATH="/var/run/minidlna" \
+ LOG_PATH="/var/log" \
+
+
+define Package/minidlna/install
+ $(INSTALL_DIR) $(1)/usr/bin
+ $(INSTALL_BIN) $(PKG_BUILD_DIR)/minidlna $(1)/usr/bin/
+ $(INSTALL_DIR) $(1)/etc/init.d
+ $(INSTALL_BIN) ./files/minidlna.init $(1)/etc/init.d/minidlna
+ $(INSTALL_DIR) $(1)/etc/config
+ $(INSTALL_CONF) ./files/minidlna.config $(1)/etc/config/minidlna
+endef
+
+define Package/minidlna/conffiles
+/etc/config/minidlna
+endef
+
+$(eval $(call BuildPackage,minidlna))
--- /dev/null
+config minidlna config
+ option 'enabled' '0'
+ option port '8200'
+ option interface 'br-lan'
+ option friendly_name 'OpenWrt DLNA Server'
+ option db_dir '/var/run/minidlna'
+ option log_dir '/var/log'
+ option inotify '1'
+ option enable_tivo '0'
+ option strict_dlna '0'
+ option presentation_url ''
+ option notify_interval '900'
+ option serial '12345678'
+ option model_number '1'
+ option root_container '.'
+ list media_dir '/mnt'
+ option album_art_names 'Cover.jpg/cover.jpg/AlbumArtSmall.jpg/albumartsmall.jpg/AlbumArt.jpg/albumart.jpg/Album.jpg/album.jpg/Folder.jpg/folder.jpg/Thumb.jpg/thumb.jpg'
--- /dev/null
+#!/bin/sh /etc/rc.common
+# Copyright (C) 2010 OpenWrt.org
+
+START=50
+
+SERVICE_USE_PID=1
+
+MINIDLNA_CONFIG_FILE="/tmp/minidlna.conf"
+
+minidlna_cfg_append() {
+ echo "$1" >> "$MINIDLNA_CONFIG_FILE"
+}
+
+minidlna_cfg_addbool() {
+ local cfg="$1"
+ local key="$2"
+ local def="$3"
+ local val
+
+ config_get_bool val "$cfg" "$key" "$def"
+ [ "$val" -gt 0 ] && val="yes" || val="no"
+ minidlna_cfg_append "$key=$val"
+}
+
+minidlna_cfg_addstr() {
+ local cfg="$1"
+ local key="$2"
+ local def="$3"
+ local val
+
+ config_get val "$cfg" "$key" "$def"
+ [ -n "$val" ] && minidlna_cfg_append "$key=$val"
+}
+
+minidlna_cfg_add_media_dir() {
+ local val=$1
+
+ minidlna_cfg_append "media_dir=$val"
+}
+
+minidlna_create_config() {
+ local cfg=$1
+ local port
+ local interface
+
+ config_get port $cfg port
+ config_get interface $cfg interface
+
+ [ -z "$interface" -o -t "$port" ] && return 1
+
+ echo "# this file is generated automatically, don't edit" > "$MINIDLNA_CONFIG_FILE"
+
+ minidlna_cfg_append "port=$port"
+ minidlna_cfg_append "network_interface=$interface"
+
+ minidlna_cfg_addstr $cfg friendly_name
+ minidlna_cfg_addstr $cfg db_dir
+ minidlna_cfg_addstr $cfg log_dir
+ minidlna_cfg_addbool $cfg inotify '1'
+ minidlna_cfg_addbool $cfg enable_tivo '0'
+ minidlna_cfg_addbool $cfg strict_dlna '0'
+ minidlna_cfg_addstr $cfg album_art_names
+ minidlna_cfg_addstr $cfg presentation_url
+ minidlna_cfg_addstr $cfg notify_interval '900'
+ minidlna_cfg_addstr $cfg serial '12345678'
+ minidlna_cfg_addstr $cfg model_number '1'
+ minidlna_cfg_addstr $cfg minissdpsocket
+ minidlna_cfg_addstr $cfg root_container '.'
+ config_list_foreach "$cfg" "media_dir" minidlna_cfg_add_media_dir
+
+ return 0
+}
+
+start() {
+ local enabled
+ local db_dir
+ local log_dir
+
+ config_load 'minidlna'
+ config_get_bool enabled config 'enabled' '0'
+
+ [ "$enabled" -gt 0 ] || return 1
+
+ minidlna_create_config config || return 1
+
+ config_get db_dir config 'db_dir' '/var/run/minidlna'
+ config_get log_dir config 'log_dir' '/var/log'
+
+ mkdir -m 0755 -p $db_dir
+ mkdir -m 0755 -p $log_dir
+ service_start /usr/bin/minidlna -f "$MINIDLNA_CONFIG_FILE"
+}
+
+stop() {
+ service_stop /usr/bin/minidlna
+}
--- /dev/null
+--- a/libav.h
++++ b/libav.h
+@@ -167,7 +167,7 @@
+ static inline int
+ lav_is_thumbnail_stream(AVStream *s, uint8_t **data, int *size)
+ {
+-#if LIBAVFORMAT_VERSION_INT >= ((54<<16)+(6<<8))
++/*if LIBAVFORMAT_VERSION_INT >= ((54<<16)+(6<<8))
+ if (s->disposition & AV_DISPOSITION_ATTACHED_PIC &&
+ s->codec->codec_id == AV_CODEC_ID_MJPEG)
+ {
+@@ -177,6 +177,6 @@
+ *size = s->attached_pic.size;
+ return 1;
+ }
+-#endif
++endif*/
+ return 0;
+ }
--- /dev/null
+--- a/Makefile.am
++++ b/Makefile.am
+@@ -19,9 +19,9 @@
+
+ SUBDIRS=po
+
+-sbin_PROGRAMS = minidlnad
++sbin_PROGRAMS = minidlna
+ check_PROGRAMS = testupnpdescgen
+-minidlnad_SOURCES = minidlna.c upnphttp.c upnpdescgen.c upnpsoap.c \
++minidlna_SOURCES = minidlna.c upnphttp.c upnpdescgen.c upnpsoap.c \
+ upnpreplyparse.c minixml.c clients.c \
+ getifaddr.c process.c upnpglobalvars.c \
+ options.c minissdp.c uuid.c upnpevents.c \
+@@ -38,7 +38,7 @@
+ flacoggflag = -logg
+ #endif
+
+-minidlnad_LDADD = \
++minidlna_LDADD = \
+ @LIBJPEG_LIBS@ \
+ @LIBID3TAG_LIBS@ \
+ @LIBSQLITE3_LIBS@ \
+@@ -49,7 +49,7 @@
+ @LIBICONV@ \
+ -lFLAC $(flacoggflag) $(vorbisflag)
+
+-minidlnad_LDFLAGS = @STATIC_LDFLAGS@
++minidlna_LDFLAGS = @STATIC_LDFLAGS@
+
+ testupnpdescgen_SOURCES = testupnpdescgen.c upnpdescgen.c
+ testupnpdescgen_LDADD = \