James Zern [Sat, 5 Feb 2011 02:29:46 +0000 (18:29 -0800)]
cmdutils: fix codec-specific options from preset
Using a preset file caused the address of a stack variable to be stored
in opt_names/values. This change causes the strings to be dup'd then
freed in uninit_opts.
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
Martin Storsjö [Fri, 4 Feb 2011 10:04:19 +0000 (12:04 +0200)]
rtpenc_chain: Don't copy the time_base back to the caller
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>
Martin Storsjö [Fri, 4 Feb 2011 10:04:15 +0000 (12:04 +0200)]
libavformat: Use avcodec_copy_context for chained muxers
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>
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.
Martin Storsjö [Wed, 2 Feb 2011 09:08:01 +0000 (11:08 +0200)]
rtsp: Don't store RTSPStream in AVStream->priv_data
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.
Justin Ruggles [Wed, 2 Feb 2011 18:23:59 +0000 (18:23 +0000)]
ac3enc: Change EXP_DIFF_THRESHOLD to 500.
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.
Mans Rullgard [Tue, 1 Feb 2011 02:23:30 +0000 (02:23 +0000)]
Makefile: build docs only for enabled tools; fix docs dependencies
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.
Reimar Döffinger [Mon, 31 Jan 2011 19:16:38 +0000 (19:16 +0000)]
Ogg: discard non-essential metadata from Vorbis header when creating extradata
The first part of the metadata, the "vendor" string, is required by
libvorbis, it will refuse to play when it is not available.
Also we do not currently parse that part into metadata so it would also
be lost if we removed it as well.
Replace defines in libavformat/mpegtsenc.c with AVOptions
Around 01/28/11 18:56, Ronald S. Bultje scribbled:
> That patch is now merged, can you submit the update to muxers.texi?
> Then we'll apply the whole thing.
See attached. I hope the documentation is enough.
--
Georgi Chorbadzhiyski
http://georgi.unixsol.org/
From c236024b8254f5c2c45934c30fff390cb0e55a5e Mon Sep 17 00:00:00 2001
From: Georgi Chorbadzhiyski <gf@unixsol.org>
Date: Tue, 25 Jan 2011 13:09:17 +0200
Subject: [PATCH] mpegts: Replace defines in with AVOptions
This patch adds support for setting transport_stream_id,
original_network_id, service_id, pmt_start_pid and start_pid
in mpegts muxer.
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
Mans Rullgard [Sat, 29 Jan 2011 17:14:29 +0000 (17:14 +0000)]
Rearrange MpegEncContext to simplify access from asm
This moves the fields needed by asm near the top, before any
structs or other members which complicate the offset calculation.
Modifying other structs will no longer require updating the offsets,
and the asm code is slightly simpler due to the smaller offsets.
Janne Grunau [Sat, 29 Jan 2011 12:24:13 +0000 (13:24 +0100)]
doc: modify style for texi2html 1.78+
The generated HTML files are similar to the ones generated with
texi2html 1.56k used on the website.
Tested with texi2html 1.78 and 5.0. 1.78 is the minimal recommended
version.
The removed @sp from the titlepage section were ignored until
texi2html 5.0. If not removed the pages generated by 5.0 will have ugly
empty space around the title.
Reimar Döffinger [Fri, 28 Jan 2011 23:52:50 +0000 (23:52 +0000)]
Vorbis-in-Ogg: Do not set timebase to invalid values
Avoids an assert when the sample rate is invalid and the timebase
is thus set to e.g. 1/0.
Sample file is http://samples.mplayerhq.hu/ogg/fuzzed-srate-crash.ogg
This is a quick fix for a crash, not a final solution.
From 0f7f9db4b7da1793996af6dda84298507703759a Mon Sep 17 00:00:00 2001
From: Peter Ross <pross@xvid.org>
Date: Sun, 9 Jan 2011 09:45:50 +1100
Subject: [PATCH] mpegtsenc: support CODEC_ID_AAC_LATM
Mans Rullgard [Fri, 28 Jan 2011 17:16:15 +0000 (17:16 +0000)]
os_support: make poll() fallbacks conditional on CONFIG_NETWORK
poll() is only used by networking code, so the fallback should
only be built if networking is enabled. Also remove CONFIG_FFSERVER
condition from the declarations.
Stefano Sabatini [Thu, 27 Jan 2011 00:01:34 +0000 (01:01 +0100)]
In the start_frame() debug log, print the reference pos value rather than the evaluated value converted to int.
That's required because -1 is evaluated as NAN, which converted back
to int looks like a random number, this is especially annoying when
debugging sources with undefined pos (as the video4linux2 device).
Signed-off-by: Janne Grunau <janne-ffmpeg@jannau.net>