1
0
mirror of https://github.com/FFmpeg/FFmpeg.git synced 2024-12-23 12:43:46 +02:00
Commit Graph

6887 Commits

Author SHA1 Message Date
Martin Storsjö
4ed68fdfdc libavformat: Add a function for freeing an AVFormatContext
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 f124b087ee)
2011-02-06 20:31:44 +01:00
Martin Storsjö
173f19be75 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>
(cherry picked from commit 1338dc0823)
2011-02-06 20:31:44 +01:00
Clément Bœsch
bffad70c66 Remove forgotten if (p) av_free(p) forms
Signed-off-by: Mans Rullgard <mans@mansr.com>
(cherry picked from commit 290849e2a4)
2011-02-06 20:31:44 +01:00
Peter Ross
2d9fd1810b add ff_index_search_timestamp and ff_add_index_entry
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
(cherry picked from commit e6fb5a4f78)
2011-02-06 20:31:42 +01:00
Nicolas George
566f17b62d TCP: factor the poll() call
Signed-off-by: Nicolas George <nicolas.george@normalesup.org>
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
(cherry picked from commit 51b317d2e9)
2011-02-06 20:31:42 +01:00
Peter Ross
d3c0de863d wtv: filesystem implementation
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
(cherry picked from commit f61dee2fe4)
2011-02-06 20:31:41 +01:00
Reimar Döffinger
5603df39df Always use av_set_pts_info to set the stream time base. 2011-02-05 09:55:53 +01:00
Anton Khirnov
d947bce1fc tty.c: rename PKT_FLAG_KEY to AV_PKT_FLAG_KEY.
Signed-off-by: Mans Rullgard <mans@mansr.com>
(cherry picked from commit a9d921cbad)
2011-02-04 03:10:12 +01:00
Anton Khirnov
4d9c044d47 Replace remaining occurrences of CODEC_TYPE_* with AVMEDIA_TYPE*
Tested to compile with lavc major bump.

Signed-off-by: Mans Rullgard <mans@mansr.com>
(cherry picked from commit b2ed95ec48)
2011-02-04 03:10:12 +01:00
Martin Storsjö
a991b8dec6 sapenc: Free AVStream->info on cleanup
This fixes yet another memory leak, present since SVN rev 25418.

Signed-off-by: Mans Rullgard <mans@mansr.com>
(cherry picked from commit 1f56f5ed6d)
2011-02-04 03:10:12 +01:00
Anton Khirnov
ea46876301 rtmpproto: rename URLContext* argument in rtmp_write()
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 9ad4c65f6f)
2011-02-04 03:10:12 +01:00
Tomas Härdin
b9dab1131c Add ProRes FOURCCs to isom.c
Signed-off-by: Mans Rullgard <mans@mansr.com>
(cherry picked from commit e65b1934bf)
2011-02-04 03:10:11 +01:00
Benjamin Larsson
d25d1d06a4 Add AVC-Intra identifiers used by Flip4Mac for mov files
Signed-off-by: Mans Rullgard <mans@mansr.com>
(cherry picked from commit aa42cce57d)
2011-02-04 03:10:10 +01:00
Clément Bœsch
e31a744155 Remove a few if (p) av_free(p) forms
Signed-off-by: Mans Rullgard <mans@mansr.com>
(cherry picked from commit 437fb1c87d)
2011-02-04 03:10:10 +01:00
Martin Storsjö
d0d8a9b138 Free AVStream->info in chained muxers
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 ce41c51b0c)
2011-02-04 03:10:10 +01:00
Martin Storsjö
c6347bdf08 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 ea7f080749, 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 d9c0510e22)
2011-02-04 03:10:10 +01:00
Anton Khirnov
e921bd57e3 Add forgotten minor API bumps and APIChanges entries
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>
2011-02-04 03:09:57 +01:00
Luca Barbato
2aaa2a1700 Free the RTSPStreams in ff_rtsp_close_streams
This plugs a small memory leak

Signed-off-by: Janne Grunau <janne-ffmpeg@jannau.net>
(cherry picked from commit ea7f080749)
2011-02-02 03:40:50 +01:00
Reimar Döffinger
403fa3cf07 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.

Signed-off-by: Mans Rullgard <mans@mansr.com>
(cherry picked from commit 8cb3c557a9)
2011-02-02 03:40:48 +01:00
Reimar Döffinger
b482c00121 Remove pts rescaling code that is useless after 2ff4a2764e 2011-01-31 19:31:04 +01:00
Reimar Döffinger
12763671e2 Document that av_write_header sets stream time_base to a value of it chosing. 2011-01-31 19:30:49 +01:00
Mans Rullgard
2c30f7b3d7 mpegtsenc: fix PMT PID calculation
445996aa51 caused the PMT PID to be
off by one.  This corrects it.

Signed-off-by: Mans Rullgard <mans@mansr.com>
(cherry picked from commit 740ad0d14d)
2011-01-31 18:25:48 +01:00
Georgi Chorbadzhiyski
a735bbbb7a 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>
(cherry picked from commit 445996aa51)
2011-01-31 18:25:47 +01:00
Reimar Döffinger
2ff4a2764e VC1testenc: convert pts values to correct time-base.
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
(cherry picked from commit 22e9277aa5)
2011-01-31 18:25:47 +01:00
Ronald S. Bultje
939bfc87ee asf/wtv: use service_provider and service_name metadata tags
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
(cherry picked from commit 4543009943)
2011-01-31 18:25:47 +01:00
Vasyl' Vavrychuk
e5e3897b64 mpegts: remove get_pts duplicate of ff_parse_pes_pts.
Signed-off-by: Vasyl' Vavrychuk <vvavrychuk@gmail.com>
Signed-off-by: Mans Rullgard <mans@mansr.com>
(cherry picked from commit 665132e620)
2011-01-31 18:25:44 +01:00
Luca Barbato
9ef5a9deaf Replace dprintf with av_dlog
dprintf clashes with POSIX.1-2008
(cherry picked from commit dfd2a005eb)
2011-01-30 03:41:48 +01:00
Peter Ross
59884f55d1 mpegtsenc: support CODEC_ID_AAC_LATM
$subject. Have used this for loopback testing with mpegts.c.

-- Peter
(A907 E02F A6E5 0CD2 34CD 20D2 6760 79C5 AC40 DD6B)
[2. text/x-diff; 0001-mpegtsenc-support-CODEC_ID_AAC_LATM.patch]

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

Signed-off-by: Mans Rullgard <mans@mansr.com>
(cherry picked from commit 4d54df8e07)
2011-01-30 03:41:00 +01:00
Dave Yeo
c053bba9e2 rtspenc: include os_support.h for system without HAVE_POLL_H
fix compile on OS/2

Signed-off-by: Janne Grunau <janne-ffmpeg@jannau.net>
(cherry picked from commit a0788cc627)
2011-01-30 03:41:00 +01:00
Anton Khirnov
8270482681 asfdec: ensure that the whole tag is read.
Signed-off-by: Janne Grunau <janne-ffmpeg@jannau.net>
(cherry picked from commit 042950542d)
2011-01-30 03:41:00 +01:00
Mans Rullgard
13904b552b 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.

This should fix building on systems without poll(), broken
by a8475bbdb6.

Signed-off-by: Mans Rullgard <mans@mansr.com>
(cherry picked from commit 362d8f7d9e)
2011-01-30 03:41:00 +01:00
Stefano Sabatini
b5a7100ad3 Make the image2 demuxer log more verbose
Add an error message in case the user requests to write more than one file
and the path does not contain a "%d" or "%0Nd" pattern.

Signed-off-by: Janne Grunau <janne-ffmpeg@jannau.net>
(cherry picked from commit 4fc9ff0ad6)
2011-01-30 03:41:00 +01:00
Georgi Chorbadzhiyski
753134ae3e In mpegts "reserved_future_use" field must be set to 1 in SDT table
According to EN 300 468 section 3.1 (Definitions):

   Unless otherwise specified within the present document all
   "reserved_future_use" bits is set to "1".

This was not the case for SDT generation so this patch fixes it.

Signed-off-by: Janne Grunau <janne-ffmpeg@jannau.net>
(cherry picked from commit a7827a17c6)
2011-01-30 03:40:59 +01:00
Luca Barbato
b351baa070 rtsp: make ff_sdp_parse return value forwarded
the sdp demuxer did not forward it at all while the rtsp demuxer assumed
a single kind of error
(cherry picked from commit f81c7ac70a)
2011-01-30 03:40:59 +01:00
Luca Barbato
d0eb91ad04 os: replace select with poll
Select has limitations on the fd values it could accept and silently
breaks when it is reached.
(cherry picked from commit a8475bbdb6)
2011-01-30 03:40:59 +01:00
Diego Elio Pettenò
9740a357e9 Hide demuxers', muxers' and protocols' objects via the ld version script.
This reduces the symbols exported by libavformat from 699 to 451.

Signed-off-by: Mans Rullgard <mans@mansr.com>
(cherry picked from commit e628864033)
2011-01-30 03:40:58 +01:00
Reimar Döffinger
76c802e989 VC1testenc: convert pts values to correct time-base.
VC1 test container always uses time-base 1 ms, so we must convert
from whatever time-base the application gave us to that, otherwise
the video will play at ridiculous speeds.
It would be possible to signal that a container supports only one
time-base and have code in a layer above do the conversion, but
for a single format this seems over-engineered.
2011-01-29 11:56:25 +01:00
Reimar Döffinger
609bdf813d 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
2011-01-28 20:58:57 +01:00
John Stebbins
2f7d8977bc mov: add support for little-endian utf16 chapter names
Signed-off-by: Janne Grunau <janne-ffmpeg@jannau.net>
(cherry picked from commit 97b04f5ed3)
2011-01-28 03:15:35 +01:00
Janne Grunau
9653e754a4 movenc: byteswap codec_tag in mov_write_ms_tag
based on Alex Converse's "Fix ADPCM MS in mov muxing" patch
(cherry picked from commit 795ed278e6)
2011-01-28 03:15:35 +01:00
Diego Elio Pettenò
66355be3c3 Prefix all _demuxer, _muxer, _protocol from libavformat and libavdevice.
This also lists the objects from those two libraries as internal (by adding
the ff_ prefix) so that they can then be hidden via linker scripts.
(cherry picked from commit c6610a216e)
2011-01-28 03:15:34 +01:00
Anton Khirnov
ebf3ee16c7 mov: simplify mov_read_chapters() by using avio_get_str16be
It probably also fixes a memleak or two.

Signed-off-by: Mans Rullgard <mans@mansr.com>
(cherry picked from commit 225b6d7fde)
2011-01-28 03:15:34 +01:00
Mans Rullgard
bc1aebcd07 Revert "mov: simplify mov_read_chapters() by using avio_get_str16be"
This reverts commit c34461b35b.
The wrong version of the patch was committed.
(cherry picked from commit c4f8765ac5)
2011-01-28 03:15:34 +01:00
Diego Elio Pettenò
4b21c38180 Make ff_cmap_read_palette static to libavcodec/iff.c. Delete iff.h.
The iff.h header only declared one function that is now static, the
libavformat/iff.c source file wasn't using it before. Drop the file
entirely.

Signed-off-by: Mans Rullgard <mans@mansr.com>
(cherry picked from commit 2d162e3825)
2011-01-28 03:15:33 +01:00
Georgi Chorbadzhiyski
4c9bfe3e4e mpegtsenc: set reserved bits to 1 in PCR field
The reserved bits between PCR base and extension fields must be
set to 1.

Signed-off-by: Mans Rullgard <mans@mansr.com>
(cherry picked from commit 535638b55f)
2011-01-28 03:15:32 +01:00
Diego Elio Pettenò
3d21b4f607 Make ff_rtsp_send_cmd_with_content_async static to rtsp.c.
Signed-off-by: Janne Grunau <janne-ffmpeg@jannau.net>
(cherry picked from commit 57c4d01ec9)
2011-01-26 03:43:32 +01:00
Diego Elio Pettenò
c940ed4254 Make ff_mxf_pixel_layouts static to mxf.c.
Also make it an anonymous structure as never it is accessed by name.

Signed-off-by: Janne Grunau <janne-ffmpeg@jannau.net>
(cherry picked from commit a3dffc0627)
2011-01-26 03:43:32 +01:00
Diego Elio Pettenò
d20d1449e0 Make ff_interleave_compare_dts static to utils.c.
Signed-off-by: Janne Grunau <janne-ffmpeg@jannau.net>
(cherry picked from commit 101e1f6ff9)
2011-01-26 03:43:31 +01:00
Anton Khirnov
0c468f5684 mov: simplify mov_read_chapters() by using avio_get_str16be
It probably also fixes a memleak or two.

Signed-off-by: Janne Grunau <janne-ffmpeg@jannau.net>
(cherry picked from commit c34461b35b)
2011-01-26 03:43:31 +01:00
Anton Khirnov
24519edf64 asfdec: remove some commented-out cruft
Signed-off-by: Janne Grunau <janne-ffmpeg@jannau.net>
(cherry picked from commit 2934cd9dbf)
2011-01-26 03:43:31 +01:00