1
0
mirror of https://github.com/FFmpeg/FFmpeg.git synced 2024-11-26 19:01:44 +02:00
Commit Graph

36107 Commits

Author SHA1 Message Date
Anton Khirnov
18009e60d2 aasc: return meaningful error codes. 2013-01-06 13:31:39 +01:00
Anton Khirnov
313da47aa1 8bps: return meaningful error codes. 2013-01-06 13:31:39 +01:00
Anton Khirnov
f7d15d2f42 4xm: operate with pointers to AVFrames instead of whole structs.
This is more correct and avoids breaking extended_data.
2013-01-06 13:31:39 +01:00
Anton Khirnov
85383d139a 4xm: eliminate a pointless indirection 2013-01-06 13:31:39 +01:00
Anton Khirnov
aa15afb7ce 4xm: simplify code with FFSWAP 2013-01-06 13:31:39 +01:00
Anton Khirnov
10c26e928a 4xm: return meaningful error codes 2013-01-06 13:31:39 +01:00
Justin Ruggles
95d01c3f1c x86: lavr: use the x86inc.asm automatic stack alignment in mixing functions
CC:libav-stable@libav.org
2013-01-05 16:14:35 -05:00
Xi Wang
f73f76fd20 swscale: fix NULL checking in sws_alloc_context()
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>
2013-01-04 20:44:00 -05:00
Xi Wang
3b81bba3bc mxfdec: fix NULL checking in mxf_get_sorted_table_segments()
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>
2013-01-04 20:43:42 -05:00
Reinhard Tartler
3f89b49b07 finalize changelog for version 9 2013-01-05 00:20:33 +01:00
Anton Khirnov
b14e89b3c5 Prepare for 9 Release. 2013-01-04 17:53:47 +01:00
Anton Khirnov
a5d8c9243a Update release notes for the 9 release.
Add a paragraph about MSVC and mention 24-bit FLAC encoding.
2013-01-04 17:50:34 +01:00
Anton Khirnov
dda20a6e2c avprobe: also output dar/par if only defined in stream
Based on a patch by Jan Gerber <j@v2v.cc>
2013-01-04 12:55:58 +01:00
Peter Meerwald
be6cde3ce8 lavr: fix missing " in header documentation
Signed-off-by: Peter Meerwald <p.meerwald@bct-electronic.com>
Signed-off-by: Martin Storsjö <martin@martin.st>
2013-01-04 10:29:55 +02:00
Martin Storsjö
53c25ee073 aviobuf: Discard old buffered, previously read data in ffio_read_partial
This makes RTP custom IO work properly with pure read-only
AVIOContexts as well.

Signed-off-by: Martin Storsjö <martin@martin.st>
2013-01-03 15:17:10 +02:00
Martin Storsjö
e96406eda4 rtsp: Add support for depacketizing RTP data via custom IO
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>
2013-01-03 15:15:27 +02:00
Martin Storsjö
3f95f0dda5 rtpdec: Move the URLContext used for RTCP RR out from the context, to a parameter
Signed-off-by: Martin Storsjö <martin@martin.st>
2013-01-03 15:14:34 +02:00
Martin Storsjö
a0b7e28907 aviobuf: Partial support for reading in read/write contexts
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>
2013-01-03 15:14:09 +02:00
Clément Bœsch
3048fae63c build: Avoid detecting bogus components named 'x'
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>
2013-01-03 15:11:25 +02:00
Johan Andersson
7768a635c4 cmdutils: update copyright year to 2013
Signed-off-by: Martin Storsjö <martin@martin.st>
2013-01-03 13:35:12 +02:00
Janne Grunau
9ac44ad9d0 h264: check SPS entries directly to detect pixel format changes
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.
2013-01-03 11:09:00 +01:00
Reinhard Tartler
60e60d99ad forgotten changelogs for 9_beta2 2013-01-03 07:09:41 +01:00
Martin Storsjö
c1ea44c54d rtmp: Add support for limelight authentication
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>
2012-12-31 13:39:09 +02:00
Martin Storsjö
08225d0126 rtmp: Add support for adobe authentication
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>
2012-12-31 13:39:08 +02:00
Martin Storsjö
33f28a3be3 rtmp: Add a function for writing AMF strings based on two substrings
This avoids having to concatenate them into one buffer before writing
them as AMF.

Signed-off-by: Martin Storsjö <martin@martin.st>
2012-12-31 13:39:07 +02:00
Martin Storsjö
c76daa89ab rtmp: Return a proper error code in handle_invoke_error
Signed-off-by: Martin Storsjö <martin@martin.st>
2012-12-31 13:39:06 +02:00
Hendrik Leppkes
506409776c configure: suppress -fPIC in msvc builds
MSVC doesn't understand the option, and emits a warning on every
call to cl.exe.

Signed-off-by: Martin Storsjö <martin@martin.st>
2012-12-31 12:34:30 +02:00
Diego Biurrun
bcb8d9eb8f Drop unnecessary 'l' length modifier when printfing double values.
%f denotes a double argument and 'l' does nothing in this case
according to the C spec.
2012-12-31 11:20:45 +01:00
Diego Biurrun
117f79de2d truemotion2: Sanitize tm2_read_header()
Also give a variable a more sensible name.
2012-12-31 11:20:45 +01:00
Anton Khirnov
5e6ee38bd3 FATE: add cavs test 2012-12-30 18:52:51 +01:00
Anton Khirnov
fb0cb11f09 cavsdec: export picture type in the output frame 2012-12-30 18:52:26 +01:00
Anton Khirnov
7d84826400 cavs: deMpegEncContextize
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.
2012-12-30 18:48:11 +01:00
Anton Khirnov
64bb3fa6b7 cavs: cosmetics, reformat top part 2012-12-30 18:47:54 +01:00
Anton Khirnov
185c2ef849 cavsdec: cosmetics, reformat 2012-12-30 18:47:30 +01:00
Diego Biurrun
015da965a6 libavcodec/utils: Add braces to shut up gcc warnings
libavcodec/utils.c:1050:5: warning: missing braces around initializer [-Wmissing-braces]
libavcodec/utils.c:1314:5: warning: missing braces around initializer [-Wmissing-braces]
2012-12-30 01:52:04 +01:00
Luca Barbato
d615da60c1 snow: use VideoDSPContext
It was left over from the initial conversion.
2012-12-29 18:05:49 +01:00
Luca Barbato
30a7648730 hlsenc: make segment number unsigned
It will overflow if somebody keeps streaming for a time long enough.
2012-12-29 17:26:30 +01:00
Kanglin
27a15e0af6 hlsenc: make EXT-X-MEDIA-SEQUENCE always increase 2012-12-29 17:26:30 +01:00
Luca Barbato
9b1370aced hlsenc: do not add timestamps in different timebases
start_time is in stream timebase units while end_time is
in AV_TIME_BASE ones.
2012-12-29 17:26:30 +01:00
Kanglin
0d8cc7a3b2 hlsenc: use the correct AV_TIME_BASE macro
recording_time is in AV_TIME_BASE units.
2012-12-29 17:26:30 +01:00
Luca Barbato
0448f26c97 hlsenc: keep the playlist to the correct number of items
Consider the corner case with a list size larger than the wrap
number.
2012-12-29 17:26:30 +01:00
Luca Barbato
ae85d6c9c0 hlsenc: use the segment filename in the playlist entry
Avoid calling av_get_frame_filename twice, once to generate the
segment filename and once to generate the playlist.
2012-12-29 17:26:29 +01:00
Luca Barbato
6dd93ee6f1 hlsenc: check append_entry return value 2012-12-29 17:26:29 +01:00
Luca Barbato
66f7b4862f hlsenc: use the basename to generate the list entries
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.
2012-12-29 17:26:29 +01:00
Luca Barbato
d8fd06c37d avstring: add av_basename and av_dirname
Thread safe version of the common basename and dirname.
2012-12-29 17:26:22 +01:00
Diego Biurrun
c73c87b412 cosmetics: Prettyprint codec/format/filter registration files 2012-12-28 19:18:13 +01:00
Diego Biurrun
69583bd3b1 avfilter: Refactor unconditional filter registration 2012-12-28 19:18:13 +01:00
Diego Biurrun
5ad2f0bfb2 build: Add rtpenc_chain extra config option
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.
2012-12-28 19:18:13 +01:00
Diego Biurrun
844c68520e configure: Add --disable-all command line option
This option disables all programs, libraries and other parts of Libav
that get built as part of the compilation process.
2012-12-28 19:17:02 +01:00
Janne Grunau
1f4ea4e068 mpegvideo: initialize videodsp with correct pixel depth
Fixes decoding of 9/10 bit per pixel h264 videos as reported in
https://bugzilla.libav.org/show_bug.cgi?id=404 .
2012-12-26 00:24:21 +01:00