sbp wrote:
> Hi all
>
> I have been trying to build a ffmpeg package for
> tinycore/microcore/piCore linux like the one Ralphy has been providing.
>
> The maintainer (Belá) from the piCore has agreed that we can have a
> small audio only package included as an official package.
>
> So I have been trying to use/modify Ralphys ffmpeg script in order to
> produce all the files needed for an official package. It seems to build
> OK, however, it breaks the wma support for squeezelite.
> I'm not sure where my problem is, so I would be grateful if someone
> would have a look at the build script I made.
> It downloads the newest version of ffmpeg. Is that a OK or do we need to
> stick to a certain version?
>
> Steen
>
>
> >
Code:
--------------------
> >
> #!/bin/sh
>
> FFMPEG=ffmpeg
> FFMPEGVERSION=2.5
> #SRC=${FFMPEG}-$FFMPEGVERSION
> SRC=${FFMPEG}
> LOG=$PWD/config.log
> OUTPUT=$PWD/${FFMPEG}-build
> #OUTPUT=$PWD/audio-${FFMPEG}-build
> #TCZ=lib${FFMPEG}.tcz
> TCZ=audio-${FFMPEG}.tcz
>
>
> # Build requires these extra packages in addition to the raspbian 7.6 build
tools
> # sudo apt-get install squashfs-tools bsdtar
>
>
> ## Start
> echo "Most log messages sent to $LOG... only 'errors' displayed here"
> date > $LOG
>
>
> # Clean up
> if [ -d $OUTPUT ]; then
> rm -rf $OUTPUT >> $LOG
> fi
>
>
> if [ -d $SRC ]; then
> rm -rf $SRC >> $LOG
> fi
>
>
> ## Build
> echo "Untarring..."
> #bsdtar -xf $SRC.tar.bz2 >> $LOG
>
>
> sudo wget -O $SRC.tar.bz2
http://www.ffmpeg.org/releases/ffmpeg-snapshot.tar.bz2
>
>
> sudo tar -jxf $SRC.tar.bz2 >> $LOG
>
>
>
>
>
>
> ###################################################
> # Create info extension in temp dir #
> ###################################################
> echo "create info file"
>
>
> echo "Title: audio-ffmpeg.tcz
> Description: This small ffmpeg package contains only codecs for wma and
ALAC decoding via ffmpeg.
> It is aimed at supporting high quality audio.
> Version: 2.5
> Author:
> Original-site:
> Copying-policy: FFmpeg is licensed under the GNU Lesser General Public
License (LGPL) version 2.1 or later.
> However, FFmpeg incorporates several optional parts and optimizations that
are covered by
> the GNU General Public License (GPL) version 2 or later. If
those parts get used the GPL applies to all of FFmpeg.
> Size: ????kb
> Extension_by: SBP modified the build script provided by Ralph Irving and
located here
> https://github.com/ralph-irving/tcz-libffmpeg
> Tags: audio-ffmpeg only supports wma and ALAC decoding via
ffmpeg library.
> Comments: Binaries only
> ----
> Compiled for piCore 6.x with
> ----
> PPI compatible
> Change-log: 2014/11/30 First version, 2.5" > /tmp/audio-ffmpeg.info
>
>
>
>
>
>
>
>
>
>
> echo "Configuring..."
> cd $SRC >> $LOG
> ./configure \
> --prefix=/usr/local \
> --disable-debug \
> --enable-static \
> --disable-avresample \
> --disable-dxva2 \
> --disable-fontconfig \
> --enable-gpl \
> --disable-libass \
> --disable-libbluray \
> --disable-libfreetype \
> --disable-libgsm \
> --disable-libmodplug \
> --disable-libmp3lame \
> --disable-libopencore_amrnb \
> --disable-libopencore_amrwb \
> --disable-libopenjpeg \
> --disable-libopus \
> --disable-libpulse \
> --disable-librtmp \
> --disable-libschroedinger \
> --disable-libspeex \
> --disable-libtheora \
> --disable-libv4l2 \
> --disable-libvorbis \
> --disable-libvpx \
> --disable-libx264 \
> --disable-libxvid \
> --enable-pic \
> --disable-postproc \
> --enable-runtime-cpudetect \
> --enable-shared \
> --disable-swresample \
> --disable-vdpau \
> --enable-version3 \
> --disable-x11grab \
> --disable-zlib \
> --enable-ffmpeg \
> --enable-ffplay \
> --enable-ffprobe \
> --enable-ffserver \
> --extra-ldflags=-Wl,-rpath,/usr/local/lib >> $LOG
>
>
> echo "Running make"
> make >> $LOG
> make prefix=$OUTPUT/usr/local install
>
>
> echo "Building tcz"
> cd ../.. >> $LOG
>
>
> if [ -f $TCZ ]; then
> rm $TCZ >> $LOG
> fi
>
>
>
>
> #---------------------------------------------------#
> # SBP notice still needs fixing for correct numbers #
> #---------------------------------------------------#
> cd $OUTPUT/usr/local >> $LOG
> rm -rf include >> $LOG
> rm -rf bin >> $LOG
> rm -rf share >> $LOG
> cd lib >> $LOG
> rm -rf pkgconfig >> $LOG
> rm -f libavdevice\.* >> $LOG
> rm -f libavfilter\.* >> $LOG
> rm -f libswscale\.* >> $LOG
> rm -f libavcodec.so.55 libavcodec.so libavcodec.a >> $LOG
> mv libavcodec.so.55.39.101 libavcodec.so.55 >> $LOG
> strip libavcodec.so.55 >> $LOG
> rm -f libavformat.so.55 libavformat.so libavformat.a >> $LOG
> mv libavformat.so.55.19.104 libavformat.so.55 >> $LOG
> strip libavformat.so.55 >> $LOG
> rm -f libavutil.so.52 libavutil.so libavutil.a >> $LOG
> mv libavutil.so.52.48.101 libavutil.so.52 >> $LOG
> strip libavutil.so.52 >> $LOG
> cd ../../../../ >> $LOG
>
>
> # Not needed twice, included in libfaad.tcz. TODO create a separate
libcofi.tcz
> # cp -p /usr/lib/arm-linux-gnueabihf/libcofi_rpi.so $OUTPUT/usr/lib/ >> $LOG
>
>
> mksquashfs $OUTPUT $TCZ -all-root >> $LOG
> md5sum $TCZ > ${TCZ}.md5.txt
>
>
> echo "$TCZ contains"
> unsquashfs -ll $TCZ > $TCZ.tcz.lst
>
>
>
--------------------
> >
Are you building squeezelite against this specific version too? FFMPEG
changes its api/abi so between versions and could possibly be unstable
at any give date. You may want to fix the download version and build
both the library and squeezelite against that. [I don't include ffmpeg
in my squeezelite builds due to incompatibilities across versions]
------------------------------------------------------------------------
Triode's Profile: http://forums.slimdevices.com/member.php?userid=17
View this thread: http://forums.slimdevices.com/showthread.php?t=102796
_______________________________________________
unix mailing list
[email protected]
http://lists.slimdevices.com/mailman/listinfo/unix