This fixes roundup issue 2583.
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
(cherry picked from commit 185a155e5701cfaa0281bf91a5a140d498aa0a7f)
If required, the caller can do this itself. ff_write_chained rescales
timestamps as necessary, and all current callers of rtpenc_chain
use ff_write_chained, making this timebase copy unnecessary.
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
(cherry picked from commit 397ffde115f4e0482a007b672f40457596cebfc4)
This function is useful for freeing data structures allocated by
muxers, which currently have to be freed manually by the caller.
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
(cherry picked from commit f124b087eea442b65d809582527dfb5092a3463c)
This avoids having the chained AVStream->codec point to the same
AVCodecContext owned by the outer AVStream. The downside is that
changes to the AVCodecContext made after calling av_write_header
cannot be detected automatically within the chained muxer.
This avoids having to manually unlink the chained AVStream->codec
by setting it to null before freeing the chained muxer via generic
freeing functions.
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
(cherry picked from commit 1338dc082354b87c0e26f7f2ab09df5964b7f993)
Make avfilter_graph_free() free not only the internal structures, but
also the allocated graph, and set the graph pointer to NULL for
increased safety.
Simplify usage.
Signed-off-by: Mans Rullgard <mans@mansr.com>
(cherry picked from commit 4359288c565705d1734f63d277f8918ee5af5e54)
Make avfilter_graph_parse() only release the internal structures
allocated during the parsing, and leave to free the graph itself to
the calling code.
This approach looks cleaner, as the graph is not allocated by the
function.
Signed-off-by: Mans Rullgard <mans@mansr.com>
(cherry picked from commit e8e5dde779fca80d86e00baea26d1baca333f4c0)
Signed-off-by: Nicolas George <nicolas.george@normalesup.org>
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
(cherry picked from commit 51b317d2e921f489de7fb72a7f5f05d3039fa1cb)
Tested to compile with lavc major bump.
Signed-off-by: Mans Rullgard <mans@mansr.com>
(cherry picked from commit b2ed95ec48aceb21a9bb47af85d259ee52b8b7ea)
This fixes yet another memory leak, present since SVN rev 25418.
Signed-off-by: Mans Rullgard <mans@mansr.com>
(cherry picked from commit 1f56f5ed6d68f6492e213944e145e04e4d4dca13)
Now the first argument is URLContext *h. However, the function logs to
LOG_CONTEXT, which is #defined as 's' for new lavf major versions.
Therefore, rename h -> s.
Signed-off-by: Mans Rullgard <mans@mansr.com>
(cherry picked from commit 9ad4c65f6fa7ff6d3fb7d5ea02908bbd6adc583f)
This was missed when pkt_pts was first added.
Signed-off-by: Nicolas George <nicolas.george@normalesup.org>
Signed-off-by: Mans Rullgard <mans@mansr.com>
(cherry picked from commit 62ecd3635a1329c49bc3b97ba84ad4d53d847163)
This fixes memory leaks in the RTSP muxer and RTP hinting in the
mov muxer present since SVN rev 25418.
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
(cherry picked from commit ce41c51b0c71c87f623914ba0786aef325d818fe)
For mpegts in RTP, there isn't a direct mapping between RTSPStreams
and AVStreams, and the RTSPStream isn't ever stored in
AVStream->priv_data, which was earlier leaked. The fix for this
leak, in ea7f080749d68a431226ce196014da38761a0d82, lead to
double frees for other, normal RTP streams.
This patch avoids storing RTSPStreams in AVStream->priv_data, thus
avoiding the double free. The RTSPStreams are always available via
RTSPState->rtsp_streams anyway.
Tested with MS-RTSP, RealRTSP, DSS and mpegts/RTP.
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
(cherry picked from commit d9c0510e22821baa364306d867ffac45da0620c8)
It's consistent with the -metadata option and easier to write.
Signed-off-by: Janne Grunau <janne-ffmpeg@jannau.net>
(cherry picked from commit 87e4d9b252bc6fa3b982f7050013069c9dc3e05b)
The bumps are for adding version.h and avio_{get/put}_str functions in
lavf and making av_dlog public in lavu.
Signed-off-by: Janne Grunau <janne-ffmpeg@jannau.net>
This patch changes the exponent difference threshold in the exponent
strategy decision function of the AC-3 encoder. I tested lowering in
increments of 100. From 1000 down to 500 generally increased in quality
with each step, but 400 was generally much worse.
Signed-off-by: Mans Rullgard <mans@mansr.com>
(cherry picked from commit c3beafa0f14fd81ab43083f61872cbd5426647cf)
This will be beneficial for use with the audio conversion API without
requiring it to depend on all of dsputil.
Signed-off-by: Mans Rullgard <mans@mansr.com>
(cherry picked from commit c73d99e672329c8f2df290736ffc474c360ac4ae)
Gcc 4.6 only preserves the first value when using an array with an "m"
constraint.
Signed-off-by: Mans Rullgard <mans@mansr.com>
(cherry picked from commit 770c410fbb8e1b87ce8ad7f3d7eddaa55e2b8295)
This plugs a small memory leak
Signed-off-by: Janne Grunau <janne-ffmpeg@jannau.net>
(cherry picked from commit ea7f080749d68a431226ce196014da38761a0d82)
This makes "make documentation" build the man/html pages only for
the tools enabled in the build. It also fixes the dependency
tracking for the built man pages.
Signed-off-by: Mans Rullgard <mans@mansr.com>
(cherry picked from commit 7f939f55bb79f962adc96b6b45e288dbb0069a67)
Adds some duplicated code, but avoids duplicate edge checks and similar.
~0.5% faster overall on Parkjoy test sample.
(cherry picked from commit 64233e702a95df9167e3362e58aae4e82ce2ddf8)
From ~550 cycles (C version) to 170 (SSE/x86-64), 206 (MMX/x86-32)
and 196 (SSE2/x86-32) cycles.
(cherry picked from commit 81f2a3f4ffcc6935b8b8ada4954700b3f333ae4f)