This is mostly to serve as a reference example on how to segment
the output from the mp4 muxer, capable of writing the segment
list in four different ways:
- SegmentTemplate with SegmentTimeline
- SegmentTemplate with implicit segments
- SegmentList with individual files
- SegmentList with one single file per track, and byte ranges
The muxer is able to serve live content (with optional windowing)
or create a static segmented MPD.
In advanced cases, users will probably want to do the segmenting
in their own application code.
Signed-off-by: Martin Storsjö <martin@martin.st>
The emulation is unused and causes compilation trouble on systems
where fminf() is defined in <math.h> but missing from libm.
This should fix compilation on Debian powerpcspe.
Replace xcb_event by xcb, as the former is no more used and the latter
is needed on configurations where only xcb is available, and not
libxcb_shm and/or libxcb_xfixes.
Signed-off-by: Benoit Fouet <benoit.fouet@free.fr>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
__sync built-ins are considered legacy and will be deprecated.
These new memory model aware built-ins have been available since GCC 4.7.0
Use them by default when available except for __atomic_compare_exchange_n(),
which is slower, and is instead implemented as a fallback for when and if gcc
removes the legacy __sync built-ins.
Reviewed-by: Michael Niedermayer <michaelni@gmx.at>
Signed-off-by: James Almer <jamrial@gmail.com>
* commit '3f8f1c6ff24ee858eb5b0bf47ef6d4605299a87e':
lavu: Provide fallbacks for gmtime_r and localtime_r
Conflicts:
configure
Merged-by: Michael Niedermayer <michaelni@gmx.at>
This allows writing most code as if they always are is available.
These are ok to use from other libraries even though it's not a
public header, since they only provide an inline declaration, and
doesn't add an actual dependency on lavu internals. (This can be
considered more a build system compatibility fallback than a
libavutil feature.)
Signed-off-by: Martin Storsjö <martin@martin.st>
This silences warnings about passing arguments from incompatible pointer type
when targeting Windows Vista or newer.
Signed-off-by: James Almer <jamrial@gmail.com>
Signed-off-by: Martin Storsjö <martin@martin.st>
This silences warnings about passing arguments from incompatible pointer type
when targeting Windows Vista or newer.
Tested-by: Matt Oliver <protogonoi@gmail.com>
Reviewed-by: Michael Niedermayer <michaelni@gmx.at>
Signed-off-by: James Almer <jamrial@gmail.com>
Some C libraries, eg glibc, uclibc, and musl, uses feature test macros
to expose definitions conforming to the standards ISO C, POSIX and
extensions. According to which feature test macros are defined by the
user or the compiler, a header file, eg <features.h>, used by these
libraries internally defines various other macros.
glibc and uclibc also defines release test macros, eg __GLIBC__ and
__UCLIBC__ in <features.h>. musl does not have (and does not want) a
macro __MUSL__. Therefore it is not possible to check for the musl
library.
However, building FFmpeg with musl needs the feature test macro
_XOPEN_SOURCE=600 to be defined.
Signed-off-by: Jörg Krause <jkrause@posteo.de>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* commit '2d589273dd36c5eb271a035ea0e669b64dae257f':
configure: Split adding of CFLAGS and CPPFLAGS for hardened toolchain
Merged-by: Michael Niedermayer <michaelni@gmx.at>