Presently, this attempts to disable atrac3, h264, hevc and vc1. These
encoders don't exist or are done through other programs (eg libx264).
Handling of those other programs is done elsewhere.
Signed-off-by: Ian Leonard <antonlacon@gmail.com>
Provides access to services requiring a secure connection.
Chosen over openssl for license reason (can't redistribute). To my
knowledge, libressl will have the same issue.
mbed-tls is the only other ssl/tls provider, and this package is
complicated enough.
Signed-off-by: Ian Leonard <antonlacon@gmail.com>
Disable use of assembly on MIPS to allow it to build. MIPS is not
expected to be high performance in OpenWrt, and this allows it to still
be used for media identification as updated versions of ffmpeg are
brought in.
The error is in
libavcodec/mips/aacdec_mips.c: In function 'imdct_and_windowing_mips'
regarding: 'asm' has impossible constraints in multiple locations.
Signed-off-by: Ian Leonard <antonlacon@gmail.com>
Change libffmpeg-full to, by default, use the LGPL license. This
allows libffmpeg-full to gain support for libfdk-aac.
When libx264 is selected, this changes to GPL, and libfdk-aac
support is lost. Libx264 support is prioritized when both are
selected, which maintains the status quo of what happens now.
Signed-off-by: Ian Leonard <antonlacon@gmail.com>
Have encoders and demuxers selectively disabled for patents in
libffmpeg-full too. Assume same codecs covered as decoders and
muxers, respectively. Include vc1 in muxer's too.
Don't invoke --enable-nonfree in libffmpeg-full. It results in:
License: nonfree and unredistributable
Signed-off-by: Ian Leonard <antonlacon@gmail.com>
The demuxers mpegps is for VOB support and mpegvideo is for raw mpeg video.
mpegps was intended to be included with libffmpeg-mini; mpegvideo was not.
Signed-off-by: Ian Leonard <antonlacon@gmail.com>
This toggles on Link-Time Optimization for arm and x86-64.
Compile tested on arm/bcm47xx, arm/mvebu, arm/imx6 and x86-64/generic
(Also compile tested on mips/ar71xx where it failed so this change is currently for specific arches.)
Size savings for libffmpeg were 2-3% when measured with libffmpeg-full and libffmpeg-mini.
Signed-off-by: Ian Leonard <antonlacon@gmail.com>
This change allows ffmpeg's configure script to determine the necessary parsers based on
selected decoders & encoders. For libffmpeg-audio-dec, this changes from our selecting:
aac, ac3, flac, mpegaudio, opus and aac_latm
to ffmpeg's configure script selecting:
aac_latm, ac3, flac, mpegaudio
for minor space savings and a simpler Makefile to manage on our end.
In libffmpeg-custom, don't select any parsers when choosing decoders/encoders. I'm undecided
on removing the parser selection in its entirety here.
Signed-off-by: Ian Leonard <antonlacon@gmail.com>
Removes the x86 optimization disables from the SOFT_FLOAT portion. There are no i386 profiles that do
not use hard float, so these options accomplish nothing.
Target-os=linux rules out dxva2 and vda, so disable statements are unnecessary.
For x86-64 users of libffmpeg-full, optimize around performance instead of size.
Remove patented flag requirement from mp2 and mp3 audio files in libffmpeg-custom per expiration.
Tidies up some of the configure steps where only one option is being changed or cosmetic consistency.
Signed-off-by: Ian Leonard <antonlacon@gmail.com>
Also makes the following changes:
Updates project URL and moves libpthread to a common dependency;
Makes libopus support in libffmpeg-full contingent on selecting the
libopus package, like other external libraries;
Adds note regarding disabling altivec in ppc hard-float;
Reorganizes SIMD sections to be together;
Drops the need to specify decoder=libopus from -full, done by default;
Adds encoder=libopus to custom.
Expand options for libffmpeg-custom:
Build licensing: GPL, GPLv3, LGPLv3
Building for performance or size
Drops version 3 of GPL for -audio-dec, -mini, and -full. Version 3 is
at the discretion of the packager, per:
http://ffmpeg.org/doxygen/trunk/md_LICENSE.html
Add enable-nonfree toggle support to libffmpeg-custom build licensing
to allow inclusion of libfdk-aac.
Use ffmpeg's names for its external libraries in libffmpeg-custom config
Alphabetize same
Correct @BUILD_PATENTED flags for libffmpeg variants
Split libffmpeg-full into hard/soft float:
Hard float configures itself for lame / libx264 using GPL license
Soft float for libshine and LGPL license
Signed-off-by: Ian Leonard <antonlacon@gmail.com>
Signed-off-by: Ted Hess <thess@kitschensync.net>
Update ffmpeg to 2.8.8.
Adds HEVC, Opus, VC-1 and Vorbis to custom and minidlna profiles. This should
more closely match formats media being streamed on the local network via
DLNA/UPNP.
Removes raw aac, ac3 and h264 from minidlna profile. Most players expect
this content to come within a container (mkv, mov, mp4, mpegts, etc...),
so this was unnecessary for the profile's goals.
Remove libopus from being selected by the -custom's audio-dec profile, and as
a depend on -audio-dec. -audio-dec uses ffmpeg's internal Opus decoder, not
the external library.
Don't select specific parsers in libffmpeg-mini profile. The demuxers separate
streams from containers. Parsers break up the streams. These are not needed
for DLNA/UPNP. If a parser is needed, the ffmpeg configure script should grab
it.
Signed-off-by: Ian Leonard <antonlacon@gmail.com>
For libffmpeg-audio-dec:
Remove @DEVEL flag from libffmpeg-audio-dec. Reasoning for this is
that choosing this package does not rquire any further action by the
builder in what codecs or formats should be built in.
libffmpeg-custom, the other libffmpeg to require @DEVEL, does need
further interaction.
Add @BUILD_PATENTED as at least one of the audio codecs is likely
patent protected.
Add ffmpeg's native Opus decoder to libffmpeg-audio-dec
Remove libopus dependency to libffmpeg-audio-dec as libopus provides
decode and encode support for Opus audio. Since FFmpeg can decode
Opus audio on its own, and libffmpeg-audio-dec is intended for audio
decoding, libopus is no longer required for Opus audio support.
For libffmpeg-custom:
Add in options for ffmpeg's integrated Opus decoder
Signed-off-by: Ian Leonard <antonlacon@gmail.com>
disable-doc turns off API documentation
disable-extra-programs turns off demo and test creation
Commit also removes whitespace at EOL in description.
Signed-off-by: Ian Leonard <antonlacon@gmail.com>
The Philips TV patch was included upstream.
Rename the minidlnad binary to minidlna instead of tweaking automake files.
Signed-off-by: Ian Leonard <antonlacon@gmail.com>
rsync, by default, includes a patched zlib within its source tarball. The patch
enables a better compression ratio for rsync streams. However, the client and
server need the same featureset in their zlib in order to understand the
compression stream, or the server will abort the transfer. Older versions have
no understanding of the new compression standard used.
This patch allows the builder to choose whether to use the bundled or system
zlib. It defautls to using the system zlib, as is the default before this
patch.
Signed-off-by: Ian Leonard <antonlacon@gmail.com>
Minidlna has no need to mux streams, or be able to read network streams at this point in time, so remove this support from
libffmpeg.
Synchronize the minidlna profile between libffmpeg-ucstom and libffmpeg-mini.
Signed-off-by: Ian Leonard <antonlacon@gmail.com>
As libffmpeg-mini is intended for DLNA purposes, it needs only
to identify media, not interact with input or output devices.
Signed-off-by: Ian Leonard <antonlacon@gmail.com>