Index: www/madsonic-standalone/Makefile =================================================================== --- www/madsonic-standalone/Makefile +++ www/madsonic-standalone/Makefile @@ -1,68 +1,65 @@ # Created by: Jeremie Le Hen -# Based on www/subsonic-standalone -# # $FreeBSD$ # -PORTNAME= madsonic-standalone -PORTVERSION= 6.0 +PORTNAME= madsonic +DISTVERSIONPREFIX= v +DISTVERSION= 6.0 DISTVERSIONSUFFIX= .7860 -PORTREVISION= 4 +PORTREVISION= 5 DISTDATE= 20160109 CATEGORIES= www java -MASTER_SITES= http://madsonic.org/download/${PORTVERSION}/ -DISTNAME= ${DISTDATE}_madsonic-${PORTVERSION}${DISTVERSIONSUFFIX}-standalone +MASTER_SITES= http://madsonic.org/download/${DISTVERSION}/ +DISTNAME= ${DISTDATE}_madsonic-${DISTVERSION}${DISTVERSIONSUFFIX}-standalone +PKGNAMESUFFIX= -standalone MAINTAINER= jlh@FreeBSD.org COMMENT= Subsonic streaming media server, standalone version +USE_JAVA= yes +USE_RC_SUBR= madsonic + LICENSE= GPLv3 OPTIONS_GROUP= TRANSCODING TRANSCODING_DESC= Transcoding support OPTIONS_GROUP_TRANSCODING= FFMPEG FLAC LAME VORBIS FAAC FAAD XMP MPC APE +APE_DESC= Depend on mac for Monkey's Audio transcoding #' +FAAC_DESC= Depend on FAAD for AAC/M4A transcoding +FAAD_DESC= Depend on FAAC for AAC/M4A transcoding FFMPEG_DESC= Depend on FFmpeg for audio and video transcoding FLAC_DESC= Depend on FLAC for transcoding LAME_DESC= Depend on LAME for MP3 transcoding +MPC_DESC= Depend on mpcdec for MPC transcoding VORBIS_DESC= Depend on oggenc/oggdec for Vorbis transcoding -FAAC_DESC= Depend on FAAD for AAC/M4A transcoding -FAAD_DESC= Depend on FAAC for AAC/M4A transcoding XMP_DESC= Depend on XMP for module file transcoding -MPC_DESC= Depend on mpcdec for MPC transcoding -APE_DESC= Depend on mac for Monkey's Audio transcoding #' OPTIONS_DEFAULT= FFMPEG OPTIONS_SUB= yes +APE_RUN_DEPENDS= mac:audio/mac +FAAC_RUN_DEPENDS= faac:audio/faac +FAAD_RUN_DEPENDS= faad:audio/faad FFMPEG_RUN_DEPENDS= ffmpeg:multimedia/ffmpeg FLAC_RUN_DEPENDS= flac:audio/flac LAME_RUN_DEPENDS= lame:audio/lame +MPC_RUN_DEPENDS= mpcdec:audio/musepack VORBIS_RUN_DEPENDS= oggenc:audio/vorbis-tools -FAAC_RUN_DEPENDS= faac:audio/faac -FAAD_RUN_DEPENDS= faad:audio/faad XMP_RUN_DEPENDS= xmp:audio/xmp -MPC_RUN_DEPENDS= mpcdec:audio/musepack -APE_RUN_DEPENDS= mac:audio/mac - -.include NO_WRKSUBDIR= yes NO_BUILD= yes -USE_JAVA= yes -USE_RC_SUBR= madsonic JAVA_VERSION= 1.6+ JAVA_RUN= yes # Don't waste UID/GID and reuse Subsonic's user. USERS= subsonic GROUPS= subsonic -# Keep the same variable names as in the Subsonic port to minimize diffs. -SUBSONIC_HOME= /var/madsonic -PLIST_SUB+= SUBSONIC_HOME="${SUBSONIC_HOME}" \ +MADSONIC_HOME= /var/madsonic +PLIST_SUB+= MADSONIC_HOME="${MADSONIC_HOME}" \ USER="${USERS}" \ GROUP="${GROUPS}" -SUB_FILES= pkg-message \ - message-transcoding -SUB_LIST= SUBSONIC_HOME="${SUBSONIC_HOME}" \ +SUB_FILES= pkg-message +SUB_LIST= MADSONIC_HOME="${MADSONIC_HOME}" \ USER="${USERS}" \ GROUP="${GROUPS}" \ JAVA="${JAVA}" @@ -70,23 +67,18 @@ CONFLICTS_INSTALL= madsonic-jetty madsonic-resin3 madsonic-tomcat[678] do-install: - @${CAT} ${PKGDIR}/pkg-message-spacer >> ${PKGMESSAGE} - @${CAT} ${WRKDIR}/message-transcoding >> ${PKGMESSAGE} - @${CAT} ${PKGDIR}/pkg-message-spacer >> ${PKGMESSAGE} ${MKDIR} ${STAGEDIR}${DATADIR} ${INSTALL_DATA} ${WRKSRC}/madsonic.war ${STAGEDIR}${DATADIR}/ ${INSTALL_DATA} ${WRKSRC}/madsonic-booter.jar ${STAGEDIR}${DATADIR}/ + ${MKDIR} ${STAGEDIR}${MADSONIC_HOME}/transcode -post-install: - ${MKDIR} ${STAGEDIR}${SUBSONIC_HOME}/transcode - -post-install-FFMPEG-on: - ${LN} -sf ${PREFIX}/bin/ffmpeg ${STAGEDIR}${SUBSONIC_HOME}/transcode/ffmpeg +do-install-FFMPEG-on: + ${RLN} ${PREFIX}/bin/ffmpeg ${STAGEDIR}${MADSONIC_HOME}/transcode/ffmpeg -post-install-FLAC-on: - ${LN} -sf ${PREFIX}/bin/flac ${STAGEDIR}${SUBSONIC_HOME}/transcode/flac +do-install-FLAC-on: + ${RLN} ${PREFIX}/bin/flac ${STAGEDIR}${MADSONIC_HOME}/transcode/flac -post-install-LAME-on: - ${LN} -sf ${PREFIX}/bin/lame ${STAGEDIR}${SUBSONIC_HOME}/transcode/lame +do-install-LAME-on: + ${RLN} ${PREFIX}/bin/lame ${STAGEDIR}${MADSONIC_HOME}/transcode/lame .include Index: www/madsonic-standalone/files/madsonic.in =================================================================== --- www/madsonic-standalone/files/madsonic.in +++ www/madsonic-standalone/files/madsonic.in @@ -15,7 +15,7 @@ # Set it to "YES" to enable madsonic. # # madsonic_home (str): -# Set to "%%SUBSONIC_HOME%%" by default. +# Set to "%%MADSONIC_HOME%%" by default. # # madsonic_host (str): # Set to "0.0.0.0" by default. @@ -59,7 +59,7 @@ : ${madsonic_enable:="NO"} : ${madsonic_user:="%%USER%%"} : ${madsonic_group:="%%GROUP%%"} -: ${madsonic_home:="%%SUBSONIC_HOME%%"} +: ${madsonic_home:="%%MADSONIC_HOME%%"} : ${madsonic_host:="0.0.0.0"} : ${madsonic_port:="4040"} : ${madsonic_ssl:="NO"} Index: www/madsonic-standalone/files/pkg-message.in =================================================================== --- www/madsonic-standalone/files/pkg-message.in +++ www/madsonic-standalone/files/pkg-message.in @@ -5,3 +5,47 @@ madsonic_enable="YES" See %%LOCALBASE%%/etc/rc.d/madsonic for all the options. + +======================================================================== + +Transcoding in Madsonic is a way to re-encode music on the fly to a format +your listening device supports. A common use is transcoding FLAC, WMA, +and Vorbis audio to MP3 for devices supporting only that codec. + +Configuring transcoding uses up to three commands one would use on a normal +command line pipe but with a whitelist of executables installed or linked into +%%MADSONIC_HOME%%/transcode. The transcoding configuration page takes +transcoding rules in the form of: + + [rule name] [convert from] [convert to] [command 1] [command 2] [command 3] + +The most compatible single audio transcoding command is with FFmpeg, transcoding +any input to MP3, mapping all streams to output, and limiting metadata to the +more-compatible ID3v2.3: + + [All to MP3] [ogg flac wma aiff m4a] [mp3] ... + [ffmpeg -i %s -ab %bk -id3v2_version 3 -map_metadata 0 -map 0:0 -ar 44100 -ac 2 -v 0 -f mp3 -] + +You can also transcode with multiple single-codec commands to avoid +the heavy FFmpeg dependency: + + [FLAC to MP3] [flac] [mp3] ... + [flac --silent --decode --stdout %s] [lame --silent -h -b %b -] + + [AAC to MP3] [m4a] [mp3] ... + [faad -s -o - %s] [lame --silent -h -b %b -] + + [Vorbis to MP3] [ogg] [mp3] ... + [oggdec -Q -o /dev/stdout %s] [lame --silent -h -b %b -] + + [MPC to MP3] [mpc] [mp3] ... + [mpcdec %s -] [lame --silent -h -b %b -] + + [APE to MP3] [ape] [mp3] ... + [mac %s - -d] [lame --silent -h -b %b -] + + [Trackers to MP3] [mod s3m xm it] [mp3] ... + [xmp -q -c %s] [lame --silent -h -b %b -] + +======================================================================== + Index: www/madsonic-standalone/pkg-plist =================================================================== --- www/madsonic-standalone/pkg-plist +++ www/madsonic-standalone/pkg-plist @@ -1,8 +1,8 @@ %%DATADIR%%/madsonic.war %%DATADIR%%/madsonic-booter.jar -%%FFMPEG%%%%SUBSONIC_HOME%%/transcode/ffmpeg -%%FLAC%%%%SUBSONIC_HOME%%/transcode/flac -%%LAME%%%%SUBSONIC_HOME%%/transcode/lame -@postunexec test -d %%SUBSONIC_HOME%% && (echo "Configuration information and database saved." && echo "If you you are permanently uninstalling this package" && echo "please remove %%SUBSONIC_HOME%% and its contents manually.") | true -@dir(%%USER%%,%%GROUP%%,750) %%SUBSONIC_HOME%%/transcode -@dir(%%USER%%,%%GROUP%%,750) %%SUBSONIC_HOME%% +%%FFMPEG%%%%MADSONIC_HOME%%/transcode/ffmpeg +%%FLAC%%%%MADSONIC_HOME%%/transcode/flac +%%LAME%%%%MADSONIC_HOME%%/transcode/lame +@postunexec test -d %%MADSONIC_HOME%% && (echo "Configuration information and database saved." && echo "If you you are permanently uninstalling this package" && echo "please remove %%MADSONIC_HOME%% and its contents manually.") | true +@dir(%%USER%%,%%GROUP%%,750) %%MADSONIC_HOME%%/transcode +@dir(%%USER%%,%%GROUP%%,750) %%MADSONIC_HOME%%