6997 Commits

Author SHA1 Message Date
Nicolas George
6e59474b30 Non-blocking protocol: TCP
Signed-off-by: Nicolas George <nicolas.george@normalesup.org>
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
(cherry picked from commit ad3cffb68f9c77e140660a8ae7d43c8606208178)
2011-02-06 20:31:46 +01:00
Nicolas George
3ce3b49824 Non-blocking protocol: core wrapper functions
Signed-off-by: Nicolas George <nicolas.george@normalesup.org>
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
(cherry picked from commit 90441276e4f661c6aec5e4d2c5718cde1ff1946d)
2011-02-06 20:31:46 +01:00
Nicolas George
f4bd5800ac Non-blocking protocols: flag and documentation
Signed-off-by: Nicolas George <nicolas.george@normalesup.org>
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
(cherry picked from commit fe174fc8fc4bbdb050014a945de7eb9b28ba358e)
2011-02-06 20:31:46 +01:00
Anton Khirnov
4a3556542d mp3enc: write ISO8859-1 instead of UTF-16 when possible
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
(cherry picked from commit 5a6de4e7e8d81169be9b6909b71e42a9ece59a82)
2011-02-06 20:31:46 +01:00
Peter Ross
9979dcd40e reindent after last commit
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
(cherry picked from commit 74571e333cc9abf3fe3fde3735698def1547db71)
2011-02-06 20:31:46 +01:00
Peter Ross
699d55fb12 wtv: do not use flag in stream_guid chunk to determine if stream is valid, as this method is unreliable
This fixes roundup issue 2556.

Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
(cherry picked from commit e4f85b849913794395bb03dfc09546cd41b10882)
2011-02-06 20:31:45 +01:00
Martin Storsjö
105ba7dc28 applehttp: Handle absolute paths relative to the current server
This fixes roundup issue 2583.

Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
(cherry picked from commit 185a155e5701cfaa0281bf91a5a140d498aa0a7f)
2011-02-06 20:31:45 +01:00
Martin Storsjö
861aab5677 movenchint: Use rtpenc_chain for setting up the chained RTP muxer
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
(cherry picked from commit 5306bf41a619cb757ef0e0092ea4f6bc1087e687)
2011-02-06 20:31:45 +01:00
Martin Storsjö
118f09114c 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>
(cherry picked from commit 397ffde115f4e0482a007b672f40457596cebfc4)
2011-02-06 20:31:45 +01:00
Martin Storsjö
42f97696ae Use avformat_free_context for cleaning up muxers
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
(cherry picked from commit b22dbb291d41e9fb038884bcebad2394c501cbaf)
2011-02-06 20:31:45 +01:00
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 f124b087eea442b65d809582527dfb5092a3463c)
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 1338dc082354b87c0e26f7f2ab09df5964b7f993)
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 290849e2a4e76484f1a34506782e8dbfe7bbe406)
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 e6fb5a4f78a67ed815e39ba8ac3893fd631b9b1a)
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 51b317d2e921f489de7fb72a7f5f05d3039fa1cb)
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 f61dee2fe4bc6a614079f37c25af1f92e90bc35b)
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 a9d921cbad7ec7e88bdb81b046faa9c1c6ac6d3d)
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 b2ed95ec48aceb21a9bb47af85d259ee52b8b7ea)
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 1f56f5ed6d68f6492e213944e145e04e4d4dca13)
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 9ad4c65f6fa7ff6d3fb7d5ea02908bbd6adc583f)
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 e65b1934bf4f2fbde611b75ea6c0c871daaf0b56)
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 aa42cce57ddf34b4e2c365859206eb52e2415ff5)
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 437fb1c87d7b4b0730db97d0858b4f39fffff2a9)
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 ce41c51b0c71c87f623914ba0786aef325d818fe)
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 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)
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 ea7f080749d68a431226ce196014da38761a0d82)
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 8cb3c557a9f3b24bc55325e3f64a2150b983305c)
2011-02-02 03:40:48 +01:00
Reimar Döffinger
b482c00121 Remove pts rescaling code that is useless after 2ff4a2764e5ea74c85b4231bc110540278cf3708 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
445996aa51f4f1d9a26456a8511988291a720ba0 caused the PMT PID to be
off by one.  This corrects it.

Signed-off-by: Mans Rullgard <mans@mansr.com>
(cherry picked from commit 740ad0d14d1eca7319a34866e896ad93cd65b9e9)
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 445996aa51f4f1d9a26456a8511988291a720ba0)
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 22e9277aa5e6e5abfd037420093439058d4a14df)
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 45430099438d7b4f70ebb23611a29d318ba49687)
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 665132e6204766b1d43ce413d6b1cc2a1d34ea29)
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 dfd2a005eb29e4b9f2fdb97036eb7d5c38ae4bd4)
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 4d54df8e07dca3e30ebcaffd1a0e750a876700a2)
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 a0788cc6273a7a33cc111f7248248c71fd009916)
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 042950542d6ee70fde01e4edbb6e6da38ebbaf27)
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 a8475bbdb64e638bd8161df9647876fd23f8a29a.

Signed-off-by: Mans Rullgard <mans@mansr.com>
(cherry picked from commit 362d8f7d9e6a3bca2ce89f767d153d3ab8bf5773)
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 4fc9ff0ad6f0f6b2c7443c6b4a3a1c817e97fdfd)
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 a7827a17c6b3388322350456d445c94b3a82cd25)
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 f81c7ac70a7e5e82b0ab0839faf8d22d555efb9d)
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 a8475bbdb64e638bd8161df9647876fd23f8a29a)
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 e62886403355614f0579a1568a53f04037c90df8)
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 97b04f5ed3ab3a62e57f0c16841fb8f10d0a174c)
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 795ed278e6d702ad841c3043e2b878afc6f599f4)
2011-01-28 03:15:35 +01:00