| Commit message (Collapse) | Author | Age |
| |
|
| |
|
| |
|
|
|
|
| |
This is more correct and avoids breaking extended_data.
|
| |
|
| |
|
| |
|
|
|
|
| |
CC:libav-stable@libav.org
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
sws_getCachedContext() and sws_getContext() expect sws_alloc_context()
to return NULL when out of memory, as follows.
if (!(context = sws_alloc_context()))
return NULL;
This patch fixes sws_alloc_context() to return NULL in that case.
Signed-off-by: Xi Wang <xi.wang@gmail.com>
Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
|
|
|
|
|
|
|
|
|
|
|
|
| |
The following out-of-memory check is broken.
*sorted_segments = av_mallocz(...);
if (!sorted_segments) { ... }
The correct NULL check should use *sorted_segments.
Signed-off-by: Xi Wang <xi.wang@gmail.com>
Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
|
| |
|
| |
|
|
|
|
| |
Add a paragraph about MSVC and mention 24-bit FLAC encoding.
|
|
|
|
| |
Based on a patch by Jan Gerber <j@v2v.cc>
|
|
|
|
|
| |
Signed-off-by: Peter Meerwald <p.meerwald@bct-electronic.com>
Signed-off-by: Martin Storsjö <martin@martin.st>
|
|
|
|
|
|
|
| |
This makes RTP custom IO work properly with pure read-only
AVIOContexts as well.
Signed-off-by: Martin Storsjö <martin@martin.st>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
To use this, set sdpflags=custom_io to the sdp demuxer. During
the avformat_open_input call, the SDP is read from the AVFormatContext
AVIOContext (ctx->pb) - after the avformat_open_input call,
during the av_read_frame() calls, the same ctx->pb is used for reading
packets (and sending back RTCP RR packets).
Normally, one would use this with a read-only AVIOContext for the
SDP during the avformat_open_input call, then close that one and
replace it with a read-write one for the packets after the
avformat_open_input call has returned.
This allows using the RTP depacketizers as "pure" demuxers, without
having them tied to the libavformat network IO.
Signed-off-by: Martin Storsjö <martin@martin.st>
|
|
|
|
|
|
| |
parameter
Signed-off-by: Martin Storsjö <martin@martin.st>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
So far, aviocontexts are used either in pure-read or pure-write
mode - full read/write mode doesn't work well (and implementing it
is a much larger, not totally trivial change).
This patch allows using avio_read and ffio_read_partial on
read/write aviocontexts, where the read operations are passed
through directly unbuffered, while writes are buffered as usual.
This is enough to support the operations needed by packet based
data transfer like in udp/rtp, where aviocontext is the only
public API for hooking up custom IO.
Signed-off-by: Martin Storsjö <martin@martin.st>
|
|
|
|
|
|
|
|
|
|
| |
The function find_things() in configure is confused by component
registration calls as part of multiline macros defining combined
component registration. Coalesce those macros into one line to
work around the issue.
Signed-off-by: Diego Biurrun <diego@biurrun.de>
Signed-off-by: Martin Storsjö <martin@martin.st>
|
|
|
|
| |
Signed-off-by: Martin Storsjö <martin@martin.st>
|
|
|
|
|
|
|
| |
Comparing AVCodecContext.pix_fmt against the get_pixel_format() return
value has the side effect of calling the get_format() callback on each
slice. Users of the callback will probably handle hardware accelerator
initialization in the callback.
|
| |
|
|
|
|
|
|
|
|
|
| |
Limelight is a not too uncommon CDN. The authentication scheme is
pretty similar to the adobe authentication, but is even closer to
normal http digest authentication (but not close enough to warrant
sharing code) than the adobe version.
Signed-off-by: Martin Storsjö <martin@martin.st>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This is mostly used to authenticate the client when publishing.
Tested with wowza and akamai.
Some but not all servers support resending a new connect invoke
within the same connection, so always reconnect for sending a new
connection attempt. This matches what other applications do as well.
The authentication scheme is structurally pretty similar to http
digest authentication, but uses base64 instead of hex strings.
Signed-off-by: Martin Storsjö <martin@martin.st>
|
|
|
|
|
|
|
| |
This avoids having to concatenate them into one buffer before writing
them as AMF.
Signed-off-by: Martin Storsjö <martin@martin.st>
|
|
|
|
| |
Signed-off-by: Martin Storsjö <martin@martin.st>
|
|
|
|
|
|
|
| |
MSVC doesn't understand the option, and emits a warning on every
call to cl.exe.
Signed-off-by: Martin Storsjö <martin@martin.st>
|
|
|
|
|
| |
%f denotes a double argument and 'l' does nothing in this case
according to the C spec.
|
|
|
|
| |
Also give a variable a more sensible name.
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
It does not use any of the mpegvideo infrastructure, just a few fields
from the context.
Fixes a segfault with the emu edge flag, since emu edge buffer is now
allocated as a part of the frame buffer allocation and cavs calls
ff_get_buffer() directly, it does not use mpegvideo buffer management.
Fixes a memleak of the last frame.
|
| |
|
| |
|
|
|
|
|
| |
libavcodec/utils.c:1050:5: warning: missing braces around initializer [-Wmissing-braces]
libavcodec/utils.c:1314:5: warning: missing braces around initializer [-Wmissing-braces]
|
|
|
|
| |
It was left over from the initial conversion.
|
|
|
|
| |
It will overflow if somebody keeps streaming for a time long enough.
|
| |
|
|
|
|
|
| |
start_time is in stream timebase units while end_time is
in AV_TIME_BASE ones.
|
|
|
|
| |
recording_time is in AV_TIME_BASE units.
|
|
|
|
|
| |
Consider the corner case with a list size larger than the wrap
number.
|
|
|
|
|
| |
Avoid calling av_get_frame_filename twice, once to generate the
segment filename and once to generate the playlist.
|
| |
|
|
|
|
|
|
| |
The segment path is desumed from the playlist path, recording a
relative path in the playlist while serving the file could lead
to misleading results.
|
|
|
|
| |
Thread safe version of the common basename and dirname.
|
| |
|
| |
|
|
|
|
|
|
| |
Also fixes linking in various configs with only individual parts enabled
because the RTP muxer chaining code depends on the general RTP code,
which is now accounted for.
|
|
|
|
|
| |
This option disables all programs, libraries and other parts of Libav
that get built as part of the compilation process.
|