1
mirror of https://git.videolan.org/git/ffmpeg.git synced 2024-09-03 15:03:22 +02:00
Commit Graph

7306 Commits

Author SHA1 Message Date
Stefano Sabatini
313176565c file: implement url_check() callback in the file and pipe protocols
Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-04-13 07:38:18 +02:00
Stefano Sabatini
175389c854 avio: add avio_check()
The new function is more flexible than url_exist(), as it allows to
specify which access flags to check, and does not require an explicit
open of the checked resource.

Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-04-13 07:38:15 +02:00
Anton Khirnov
cbea3ac820 avio: left-shift AVIO_ flags on next bump
Now AVIO_RDONLY is defined as 0, so it's not usable as a flag.
2011-04-13 07:36:32 +02:00
Vitor Sessak
96573c0d76 lavf/utils.c: Order packets with identical PTS by stream index.
This allows for more reproducible results when using multi-threading.

Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2011-04-12 19:06:26 -04:00
Martin Storsjö
578d6861a7 flvdec: Allow parsing keyframes metadata without seeking in most cases
Stop the avio input at a point where amf_parse_object can
continue parsing the end of the object seamlessly, when all
data is available.

If unsupported data is encountered within the keyframes object,
try seeking to the start of the keyframes object - if the seek
back was successful, the caller can continue parsing the rest
of the AMF data.

Signed-off-by: Martin Storsjö <martin@martin.st>
2011-04-12 23:08:55 +03:00
Anton Khirnov
ff1ec0c3f8 avio: undeprecate av_url_read_fseek/fpause under nicer names
It seems their replacements won't be ready anytime soon.
2011-04-12 19:17:05 +02:00
Kharkov Alexander
b5304f7b2e flvdec: Fix support for flvtool2 "keyframes based" generated index
Current keyframes data parser unconditionally rewind metadata to
the end at the end of function. As result ALL metadata located
after keyframes index not parsed, and as metadata object can have
ANY placement inside metadata it can lead to unpredictable result
(bitrate can not be found, etc.). As result FLV movie will not
play at all in such situation.

Signed-off-by: Martin Storsjö <martin@martin.st>
2011-04-12 12:38:45 +03:00
Diego Biurrun
70ad9842a5 Fix compilation of timefilter test program.
The printf function is forbidden in library code, but not in test programs,
so #undefine the printf macro that disables the system printf function.

Signed-off-by: Diego Biurrun <diego@biurrun.de>
2011-04-11 14:18:48 +02:00
Anton Khirnov
d1c5fdf892 avio: add more documentation for AVIOContext. 2011-04-10 14:31:49 +02:00
Alberto Delmás
768c525114 Parse sprite data for WMVP and WVP2, and decode sprites for the latter
Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-04-10 10:07:49 +02:00
Anton Khirnov
c1a9012d62 avio: document some members of AVIOContext. 2011-04-10 07:41:56 +02:00
Anton Khirnov
e782a0c6da avio: document avio_close(). 2011-04-10 07:41:56 +02:00
Anton Khirnov
893816ba1e avio: cosmetics, vertically align comments. 2011-04-10 07:41:56 +02:00
Anton Khirnov
72d4405b66 avio: cosmetics, group the reading functions. 2011-04-10 07:41:56 +02:00
Anton Khirnov
37744e3282 avio: cosmetics, merge all the FF_API_OLD_AVIO blocks. 2011-04-10 07:41:56 +02:00
Anton Khirnov
fafa7290f1 avio: cosmetics, move AVIOContext to start of the file. 2011-04-10 07:41:56 +02:00
Anton Khirnov
6084ee5dc5 avio: update file header. 2011-04-10 07:41:55 +02:00
Clément Bœsch
47dec30edb oggdec: fix demuxing chained audio streams
Chained ogg served by icecast and mpd should demux
properly now.

Fixes issue2337

Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2011-04-10 04:33:15 +02:00
Alex Converse
347b375a80 daud: Don't write packets that are too large to have their size expressed in the bytestream. 2011-04-09 17:32:09 -07:00
Anton Khirnov
17ca374c7d avformat.h: fix a misplaced #endif 2011-04-09 13:35:10 +02:00
Anton Khirnov
0c68c80419 lavf: bump minor and add an APIChanges entry for avformat cleanup 2011-04-08 21:00:41 +02:00
Anton Khirnov
3ee53dabcf lavf: get rid of ffm-specific stuff in avformat.h 2011-04-08 20:58:19 +02:00
Anton Khirnov
cdc6a87f19 avio: deprecate av_protocol_next(). 2011-04-08 17:48:53 +02:00
Anton Khirnov
f8270bbf8c avio: add a function for iterating though protocol names. 2011-04-08 17:48:44 +02:00
Anton Khirnov
c234d40bd9 lavf: rename a parameter of av_sdp_create from buff->buf
This is more consistent with the rest of the API.
2011-04-08 16:45:41 +02:00
Anton Khirnov
c3675dfe1e lavf: rename avf_sdp_create to av_sdp_create.
The new name is more consistent with the rest of the API.
2011-04-08 16:45:40 +02:00
Anton Khirnov
a9bf9d8e53 lavf: make av_guess_image2_codec internal
It doesn't look very useful as a public function.
2011-04-08 16:44:29 +02:00
Anton Khirnov
5593f03148 avio: make URLProtocol internal. 2011-04-08 15:59:26 +02:00
Anton Khirnov
c486dade95 avio: make URLContext internal. 2011-04-08 15:59:19 +02:00
Anton Khirnov
c5704b2b9a lavf: mark av_pkt_dump(_log) for remove on $next+1 bump. 2011-04-08 15:44:09 +02:00
Anton Khirnov
f35ff97f2e lavf: use designated initializers for all protocols
This is more readable and makes it easier to reorder URLProtocol
members.
2011-04-08 11:08:26 +02:00
Anton Khirnov
a6aa7a1a14 applehttp: don't use deprecated url_ functions. 2011-04-08 09:18:48 +02:00
Anton Khirnov
d6bbe76124 avio: move two ff_udp_* functions from avio_internal to url.h 2011-04-08 07:08:22 +02:00
Anton Khirnov
acaceca2f1 asfdec: remove a forgotten declaration of nonexistent function 2011-04-08 07:08:12 +02:00
Anton Khirnov
026e175775 avio: deprecate the typedef for URLInterruptCB
There's no particular reason to pollute the namespace with a typedef for
it.
2011-04-08 07:07:58 +02:00
Luca Barbato
a2031251c7 proto: include os_support.h in network.h
Fix compilation on systems without poll()
2011-04-07 21:03:12 +02:00
Anton Khirnov
9181976348 matroskaenc: don't write an empty Cues element. 2011-04-07 18:11:24 +02:00
Anton Khirnov
5cec897105 avio: move extern url_interrupt_cb declaration from avio.h to url.h 2011-04-07 18:11:24 +02:00
Anton Khirnov
8e76a19b63 avio: make av_register_protocol2 internal. 2011-04-07 18:11:24 +02:00
Anton Khirnov
80c6e238b0 avio: avio_ prefix for url_set_interrupt_cb. 2011-04-07 18:11:24 +02:00
Anton Khirnov
f87b1b373a avio: AVIO_ prefixes for URL_ open flags. 2011-04-07 18:07:16 +02:00
Luca Barbato
3d42d4937b proto: introduce listen option in tcp
This way is possible to have simple micro-server act like

ffmpeg -i file.nut -vcodec copy -acodec copy -f nut tcp://foo:1234?listen
2011-04-07 02:54:30 +02:00
Luca Barbato
ebba2b3e2a proto: factor ff_network_wait_fd and use it on udp
Support the URL_FLAG_NONBLOCK semantic and uniform the protocol.
The quick retry loop is already part of retry_transfer_wrapper.

The polling routine is common to the network protocols:
udp, tcp and, once merged, sctp.
2011-04-07 02:53:55 +02:00
Anton Khirnov
6e37b45888 mmst: get rid of deprecated AVERRORs 2011-04-06 14:10:08 +02:00
Anton Khirnov
a2018b5167 lxfdec: use AVERROR(ENOMEM) instead of deprecated AVERROR_NOMEM. 2011-04-06 14:10:08 +02:00
Anton Khirnov
f5b386afab Reemove remaining uses of deprecated AVERROR_NOTSUPP. 2011-04-06 14:10:08 +02:00
Anton Khirnov
56a1000917 lavf: if id3v2 tag is present and all else fails, guess by file extension 2011-04-06 14:10:08 +02:00
Anton Khirnov
668438a31e avio: always compile dyn_buf functions
Fixes build with --disable-muxers --disable-network.

Thanks to Hendrik Leppkes for noticing.
2011-04-05 19:32:14 +02:00
Anton Khirnov
b840484798 avio: make URL_PROTOCOL_FLAG_NESTED_SCHEME internal 2011-04-05 08:40:57 +02:00
Anton Khirnov
1305d93c42 avio: deprecate av_url_read_seek
It's not used anywhere internally.

Salvage its documentation for ffio_read_seek.
2011-04-05 08:40:27 +02:00
Anton Khirnov
fa104e14ab avio: deprecate av_url_read_pause
It's not used anywhere internally.

Salvage its documentation for ffio_read_pause.
2011-04-05 08:39:40 +02:00
Anton Khirnov
727c7aa026 avio: deprecate url_get_filename().
URLContext.filename should be used directly.
2011-04-04 17:45:20 +02:00
Anton Khirnov
5958df341d avio: deprecate url_max_packet_size().
URLContext.max_packet_size should be used directly.
2011-04-04 17:45:20 +02:00
Anton Khirnov
1869ea03b7 avio: make url_get_file_handle() internal. 2011-04-04 17:45:20 +02:00
Anton Khirnov
32a97d4630 avio: make url_filesize() internal. 2011-04-04 17:45:20 +02:00
Anton Khirnov
e52a9145c8 avio: make url_close() internal. 2011-04-04 17:45:20 +02:00
Anton Khirnov
58a48c6511 avio: make url_seek() internal. 2011-04-04 17:45:20 +02:00
Anton Khirnov
230a468679 avio: cosmetics, move AVSEEK_SIZE/FORCE declarations together 2011-04-04 17:45:20 +02:00
Anton Khirnov
925e908bc7 avio: make url_write() internal. 2011-04-04 17:45:20 +02:00
Anton Khirnov
dce3756459 avio: make url_read_complete() internal. 2011-04-04 17:45:20 +02:00
Anton Khirnov
bc371aca46 avio: make url_read() internal. 2011-04-04 17:45:20 +02:00
Anton Khirnov
0589da0aa5 avio: make url_open() internal. 2011-04-04 17:45:20 +02:00
Anton Khirnov
62eaaeacb5 avio: make url_connect internal. 2011-04-04 17:45:20 +02:00
Anton Khirnov
5652bb9471 avio: make url_alloc internal. 2011-04-04 17:45:19 +02:00
Martin Storsjö
0d8a33b11e applehttp: Merge two for loops
The previous commit didn't do this straight away, to keep the
diff slightly simpler.
2011-04-04 13:01:59 +03:00
Martin Storsjö
6cc7f13982 applehttp: Restructure the demuxer to use a custom AVIOContext
This avoids issues where EOF at the end of the segment is given
the variant demuxer. Now the demuxers only see one single data
stream (as when using the applehttp protocol handler).
2011-04-04 12:59:23 +03:00
Martin Storsjö
d3964da2c2 applehttp: Move finished and target_duration to the variant struct
This is a preparation for a restructuring of the demuxer, to
minimize the later diff.
2011-04-04 12:44:23 +03:00
Anton Khirnov
333e894363 avio: deprecate url_open_protocol
The unbuffered API will be made private and it's not used anywhere
internally.
2011-04-04 07:46:29 +02:00
Anton Khirnov
e230705392 avio: deprecate url_poll and URLPollEntry
They're unimplemented and nobody cared to do anything with that for
10 years.
2011-04-04 07:45:44 +02:00
Justin Ruggles
e3c007bb43 flvdec: fix segfault in amf_parse_object() due to NULL key
fixes Issue 2674
2011-04-03 20:29:04 -04:00
Anton Khirnov
4dcde00cfc lavf: bump minor version and add an APIChanges entry for avio changes 2011-04-03 23:38:05 +02:00
Anton Khirnov
8bea72f7eb avio: simplify url_open_dyn_buf_internal by using avio_alloc_context() 2011-04-03 23:33:51 +02:00
Anton Khirnov
724f6a0fa4 avio: make url_fdopen internal.
The unbuffered URLContext API will be made private, so there's no point
in this function being public.
2011-04-03 22:47:39 +02:00
Anton Khirnov
403ee835e7 avio: make url_open_dyn_packet_buf internal.
It doesn't look fit to be a part of the public API.

Adding a temporary hack to ffserver to be able to use it, should be
cleaned up when somebody is up for it.
2011-04-03 22:47:32 +02:00
Anton Khirnov
6dc7d80de7 avio: avio_ prefix for url_close_dyn_buf 2011-04-03 22:47:05 +02:00
Anton Khirnov
b92c545282 avio: avio_ prefix for url_open_dyn_buf 2011-04-03 22:46:56 +02:00
Anton Khirnov
8978fedaee avio: introduce an AVIOContext.seekable field
Use it instead of url_is_streamed and AVIOContext.is_streamed.
2011-04-03 22:46:40 +02:00
Anton Khirnov
b4b167ecbf jvdec: don't use deprecated CODEC_TYPE_*/PKT_FLAG_KEY 2011-04-02 16:16:44 +02:00
Anton Khirnov
3c96c64821 avio: document avio_alloc_context. 2011-04-01 20:02:32 +02:00
Anton Khirnov
ab11317c1f lavf: make compute_chapters_end less picky.
In particular, now it assumes that
a) chapters are chronologically ordered
b) chapters have the same timebases
c) duration of the stream is known
and asserts if any of these is not met.

Make it properly deal with harsher conditions.

fixes issue2320
2011-04-01 19:53:55 +02:00
Matthew Hoops
0e635f3e86 sierravmd: fix Indeo3 videos
Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-04-01 19:29:08 +02:00
Kostya Shishkov
29a290439b ape: check that number of seektable entries is equal to number of frames
fixes issue2480

Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-04-01 09:34:44 +02:00
Jindrich Makovicka
e006d71fa8 mpegts: propagate avio EOF in read_packet()
Allows distinguishing between EOF and IO error in read_packet return code.

Signed-off-by: Jindrich Makovicka <makovick@gmail.com>
Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-03-31 19:46:28 +02:00
Kharkov Alexander
cb7e2c1ca8 flvdec: read index stored in the 'keyframes' tag.
'keyframes' metatag is not part of the standard, it is just
convention to use such kind of metatag information for indexing.
Structure is following, it allows to have it inconsistent:
keyframes:
 times (array):
  time0 (num)
  time1 (num)
  time2 (num)
 filepositions (array)
  position0 (num)
  position1 (num)

Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-03-31 07:31:58 +02:00
Alex Converse
9dd94f8379 mov: Add support for zero-sized stsc runs.
A zero sized stsc run doesn't make a lot of sense but the spec does not
prohibit them and MPlayer VLC demuxers support them.

Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-03-31 07:28:20 +02:00
Martin Storsjö
229e2631be rtsp: Use GET_PARAMETER for keep-alive for generic RTSP servers
According to the RFC, GET_PARAMETER should be used for
this, and according to a report from Tim Ouellette,
OPTIONS doesn't work for keeping the connection alive for some
servers. Also, live555 uses GET_PARAMETER for this purpose.

Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2011-03-30 22:44:07 +02:00
Anton Khirnov
b64030f26d avio: make get_checksum() internal. 2011-03-30 07:48:55 +02:00
Anton Khirnov
d09cc22d9c avio: move ff_crc04C11DB7_update() from avio.h -> avio_internal.h 2011-03-30 07:48:38 +02:00
Anton Khirnov
4c4427a75d avio: make init_checksum() internal. 2011-03-30 07:47:08 +02:00
Carl Eugen Hoyos
31f00274f8 id3v1: change filesize to int64_t.
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2011-03-28 21:15:50 -07:00
Carl Eugen Hoyos
13eadbaca4 id3v1: Seek back to old position after reading.
FFmpeg did not seek back to the original position, but to "0", making
reading a VBR tag impossible.
(issue 2645)

Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2011-03-28 21:15:50 -07:00
Kostya Shishkov
42315dabce Chronomaster DFA decoder
Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-03-28 16:55:03 +02:00
Tyler
bc61920d89 http: header field names are case insensitive
Amazon S3 sends header field names all lowercase.
This is actually acceptable according to the HTTP standard.

http://tools.ietf.org/html/rfc2616#section-4.2

Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2011-03-28 04:16:12 +02:00
Justin Ruggles
eb81cf860c mov: set audio service type for AC-3 from bitstream mode in the 'dac3' atom. 2011-03-25 16:59:09 -04:00
Justin Ruggles
c70a6a41dd Use audio_service_type to set stream disposition. 2011-03-25 16:58:50 -04:00
John Stebbins
98a7d560b4 matroskadec: set default duration for simple block
When a normal Block is parsed, duration is initialized to
AV_NOPTS_VALUE.  If it is not changed, then the track's default
duration is used.  But for SimpleBlock, duration is initialized to
0 instead of AV_NOPTS_VALUE.  This is due to the difference in how
EBML_NEST vs EBML_PASS are processed.  Setting duration to 0 leads
eventually to wrongly estimate the frame duration in util.c

Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2011-03-25 00:34:18 +01:00
Ronald S. Bultje
cd256c3b89 ffmetadec.c: fix compiler warnings. 2011-03-24 08:06:39 -04:00
Anton Khirnov
4ec153bb66 avio: make udp_set_remote_url/get_local_port internal. 2011-03-23 17:32:13 +01:00
Vladimir Pantelic
4377fafda1 asfdec: also subtract preroll when reading simple index object
This was missed when ASF was changed to return timestamps
without preroll.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-03-23 13:46:19 +00:00
Anton Khirnov
264935c962 matroskaenc: remove a variable that's unused after bc17bd9.
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2011-03-23 09:01:49 -04:00
Anton Khirnov
491653ed90 avio: cosmetics - nicer vertical alignment.
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-03-23 12:40:10 +00:00
Martin Storsjö
28e9c42afb rtsp: Don't use a locale dependent format string
In this particular case, we aren't ever printing anything else than
0.000 anyway.

Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2011-03-23 07:30:16 -04:00
Tomas Härdin
1b7ecc1662 Add xd55 codec tag for XDCAM HD422 720p25 CBR files.
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2011-03-23 07:30:15 -04:00
Anton Khirnov
bc17bd90f5 matroskaenc: simplify get_aac_sample_rates by using ff_mpeg4audio_get_config
This also fixes broken SBR detection, which produced files with double
sample rate since 8ae0fa2.

Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2011-03-22 21:39:14 -04:00
Carl Eugen Hoyos
78e99e0f32 Do not use format string "%0.3f" for RTSP Range field.
The format string was locale-depending.

Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2011-03-22 21:30:35 -04:00
Anton Khirnov
c5f4c0fd5c id3v2: skip broken tags with invalid size
fixes issue2649.
2011-03-22 09:08:59 -04:00
Anton Khirnov
1885488757 id3v2: don't explicitly skip padding
It's pointless, since there's a seek to the end of tag later.
2011-03-22 09:08:59 -04:00
Martin Storsjö
af79dd36f3 amr: Set the AVFMT_GENERIC_INDEX flag
This makes the amr demuxer support seeking, closing roundup
issue 2593.
2011-03-21 21:31:34 +01:00
Martin Storsjö
026fa81de4 amr: Set the pkt->pos field properly to the start of the packet
Previously, the field pointed to the second byte of the packet
(which is the first byte of the actual AMR payload).
2011-03-21 21:31:34 +01:00
Martin Storsjö
2890cba8b5 amr: Set the codec->bit_rate field based on the last packet
This allows libavformat to guess an estimated duration for
amr files.

For streams with varying bit rates (or with silence descriptors
or "no frame" blocks) the guess is, of course, inaccurate.
2011-03-21 21:31:33 +01:00
Martin Storsjö
895678f823 rtsp: Specify unicast for TCP interleaved streams, too
According to the RFC, the default is multicast if nothing is
specified, which doesn't make sense for TCP.

According to a bug report, some Axis camera models give a
"400 Bad Request" error if this is omitted.

Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2011-03-21 20:58:33 +01:00
Martin Storsjö
dc8b73c069 applehttp: Change the variable for stream position in seconds into int64_t
A similar variable for the total stream duration was changed to
int64_t in b79c3df088, due to overflows in some odd
streams.

Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2011-03-21 20:16:53 +01:00
Anton Khirnov
eb1e7f78ea id3v2: simplify error handling.
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2011-03-21 15:08:01 -04:00
Anton Khirnov
bca6dee386 id3v2: explicitly seek to the end of the tag after reading
Current code might stop in the middle of an invalid tag.

fixes issue2650

Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2011-03-21 14:56:59 -04:00
Anton Khirnov
933e90a69a avio: make av_url_read_fseek/fpause internal.
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2011-03-21 14:54:52 -04:00
Anton Khirnov
8d9769a77b avio: deprecate url_fileno
It's an evil hack that assumes an AVIOContext is always based on top of
an URLContext.
It's also not used anywhere.

Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2011-03-20 20:33:05 -04:00
Anton Khirnov
447fe33691 rmenc: replace avio_seek(0) with avio_tell()
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2011-03-20 20:33:05 -04:00
Anton Khirnov
e42500cb4f lavf: replace some more avio_seek(SEEK_CUR) with avio_skip
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2011-03-20 20:33:05 -04:00
Mans Rullgard
2912e87a6c Replace FFmpeg with Libav in licence headers
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-03-19 13:33:20 +00:00
Anton Khirnov
2cface71ca nutenc: fix a memleak
This fixes a minor memory leak introduced in 073f8b1.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-03-17 16:25:54 +00:00
Vladimir Pantelic
de11ee906e asfdec: subtract the preroll value and thus output 0 based timestamps
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-03-17 16:25:54 +00:00
Martin Storsjö
f1f60f5252 lavf: Make make_absolute_url a lavf internal function
This is shared by both applehttp demuxer and protocol.

Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2011-03-17 12:28:37 +01:00
Martin Storsjö
bc040cb3e2 applehttp: Fix a typo in a comment
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-03-17 11:20:21 +00:00
Stefano Sabatini
68d875addc lavf: make av_interleave_packet() return meaningful error codes
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
(cherry picked from commit c5dcb3d493)

Signed-off-by: Reinhard Tartler <siretart@tauware.de>
2011-03-17 07:30:09 +01:00
Stefano Sabatini
70abc32314 lavf: enable av_dlog message in av_interleaved_write_frame()
Help debugging timestamp issues.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
(cherry picked from commit d541c8b468)

Signed-off-by: Reinhard Tartler <siretart@tauware.de>
2011-03-17 07:29:57 +01:00
Stefano Sabatini
79f43a8cb6 lavf: enable av_dlog() in compute_pkt_fields2()
Turns a comment into an av_dlog() instruction, also add a commented
issues.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
(cherry picked from commit 77f21ce464)

Signed-off-by: Reinhard Tartler <siretart@tauware.de>
2011-03-17 07:29:47 +01:00
Anton Khirnov
b7f2fdde74 avio: rename put_flush_packet -> avio_flush
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2011-03-16 22:59:39 -04:00
Anton Khirnov
35f1023592 avio: deprecate url_close_buf
It's not used anywhere and its return value looks broken.

Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2011-03-16 22:59:39 -04:00
Anton Khirnov
83fddaeb81 avio: deprecate url_open_buf
It's only used in one place and does the same thing as
avio_alloc_context.

Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2011-03-16 22:59:39 -04:00
Anton Khirnov
eda4cf92d7 avio: always compile avio_printf, rather than on CONFIG_MUXERS
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2011-03-16 22:59:39 -04:00
Anton Khirnov
d9d86e00b2 avio: avio_ prefix for url_fprintf
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2011-03-16 22:59:39 -04:00
Anton Khirnov
af02073225 avio: change avio_tell/skip from macros to inline functions
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2011-03-16 22:59:39 -04:00
Anton Khirnov
59f65d9579 avio: make url_setbufsize internal.
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2011-03-16 22:59:38 -04:00
Anton Khirnov
4839c192de lavf: move ff_get_v from avio.h to avio_internal.h
And rename it to ffio_read_varlen.

Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2011-03-16 22:59:38 -04:00
Anton Khirnov
073f8b10d8 nutenc: mux chapters.
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2011-03-17 03:34:16 +01:00
Anton Khirnov
45a8a02a41 lavf: replace avio_seek(SEEK_CUR) with avio_skip where it makes sense
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2011-03-16 22:24:51 -04:00
Ramiro Polla
cbf5d22d24 Remove occurrences of my old email address
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-03-16 23:19:40 +00:00
Janne Grunau
a03be6e1ba use LIBAV_LICENSE and LIBAV_VERSION instead of FFMPEG_* 2011-03-16 21:54:39 +01:00
Janne Grunau
29ba091136 replace FFMPEG with LIBAV in FFMPEG_CONFIGURATION
also update the multiple inclusion guards in config.h|mak
2011-03-16 21:54:39 +01:00
Anton Khirnov
fed5676ffe mp3enc: remove mp3_write_packet(), use ff_raw_write_packet() instead
The two functions are identical, no point in duplicating code here.
2011-03-16 10:20:24 -04:00
Kostya
8312e3fc90 Do not attempt to decode APE file with no frames
This fixes invalid reads/writes with this sample:
http://packetstorm.linuxsecurity.com/1103-exploits/vlc105-dos.txt
2011-03-16 12:53:52 +01:00
Anton Khirnov
1dac4d5547 jvdec: don't use deprecated url_feof() 2011-03-16 12:24:23 +01:00
Anton Khirnov
56e2ac6b45 id3v2: merge TYER/TDAT/TIME to date tag 2011-03-15 13:57:52 -04:00
Nicolas George
c76374c6db Use AVERROR_EXIT with url_interrupt_cb.
Functions interrupted by url_interrupt_cb should not be restarted.
Therefore using AVERROR(EINTR) was wrong, as it did not allow to distinguish
when the underlying system call was interrupted and actually needed to be
restarted.

This fixes roundup issues 2657 and 2659 (ffplay not exiting for streamed
content).

Signed-off-by: Nicolas George <nicolas.george@normalesup.org>
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2011-03-15 08:09:19 -04:00
Anton Khirnov
3e68b3ba7b avio: deprecate url_ferror
AVIOContext.error should be used directly instead.

Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2011-03-15 08:04:28 -04:00
Anton Khirnov
75b9ed04b9 lavf/utils: dont't explicitly check AVIOContext.error
The error should be caught in write_packet()/write_trailer()

Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2011-03-15 08:04:10 -04:00
Peter Ross
7f05c164d8 jv demuxer: prevent video packet size overflow
In the event of overflow, the JV_PADDING state will avio_skip over
any overflow bytes (using JVFrame.total_size).

Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2011-03-14 08:06:19 -04:00
Peter Ross
772cb06281 jv demuxer: define JV_PREAMBLE_SIZE instead of hard coding the number
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2011-03-14 08:05:54 -04:00
Peter Ross
20c1281fe3 jv demuxer: calculate palette_size for each frame in read_header
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2011-03-14 08:05:34 -04:00
Peter Ross
bfaefd87dc Bitmap Brothers JV demuxer
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2011-03-14 08:05:02 -04:00
Benjamin Larsson
35d7d6f748 Add one more avc intra fourcc and extend the description
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2011-03-10 20:32:32 -05:00
Anton Khirnov
fb61a7c534 id3v2: fix typo in error message
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-03-09 10:57:44 +00:00
Anton Khirnov
66e5b1df36 avio: deprecate url_feof
AVIOContext.eof_reached should be used directly instead.

Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2011-03-07 17:20:31 -05:00
Anssi Hannula
6a7e074eb9 mpegts: add all stream languages into metadata
This is used at least on some older DVB broadcasts for dual-mono audio
tracks.

Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2011-03-07 15:00:53 -05:00
Baptiste Coudurier
688c22e033 In retry_transfer_wrapper, do not check url_interrupt_cb, causes problems
when writing and pressing q during encoding. Instead, check url_interrupt_cb
at the end.

Note that when a protocol is interrupted by url_interrupt_cb, some data may
be silently discarded: the protocol context is not suitable for anything
anymore.

Signed-off-by: Nicolas George <nicolas.george@normalesup.org>
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2011-03-07 14:56:25 -05:00
Hendrik Leppkes
789936dbbd Flag DVB subtitles for the hard hearing appropriately using their component_type id.
This is based on the component_type definition in the DVB SI spec [1].

[1]: http://www.dvb.org/technology/standards/a038_DVB-SI_dEN300468v1.12.1.pdf

Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2011-03-07 14:44:29 -05:00
Anssi Hannula
435cebd015 mpegtsenc: handle multiple language tags per stream
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2011-03-07 14:43:03 -05:00
Anssi Hannula
89e568feec lavf: update documentation of AVOutputFormat.flags
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2011-03-07 14:34:32 -05:00
Anton Khirnov
f1ef2cd9ed avio: move ff_rewind_with_probe_data from avio.h to avio_internal.h
also change its prefix to ffio

Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2011-03-07 12:25:36 -05:00
Anton Khirnov
e8bb2e2439 avio: deprecate url_fget_max_packet_size
AVIOContext.max_packet_size should be used directly instead.

Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2011-03-07 12:25:36 -05:00
Anssi Hannula
c92562467e lavf: document the use of multiple entries in language metadata tag
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2011-03-07 12:25:36 -05:00
Peter Ross
d34ca1cfe3 Add audio codec 0x1600 (ADTS AAC)
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2011-03-07 11:11:01 -05:00
Anton Khirnov
76aa876e69 avio: avio_ prefix for url_fsize
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2011-03-07 11:03:39 -05:00
Anton Khirnov
e51975392d avio: deprecate url_fgetc and remove all it uses
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2011-03-07 10:51:21 -05:00
Anton Khirnov
655e45e7df avio: deprecate url_fgets
It's not used anywhere and doesn't look ver useful to be public.

Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2011-03-07 10:19:46 -05:00
Peter Ross
2af07d36fc avio: add avio_skip macro
This is a substitute for the url_fskip function that was deprecated by
commit 0300db8ad7. avio_fskip is provided to
improve demuxer code readability. It distinguishes the act of skipping over
unknown or irrelevant bytes from the standard avio_seek operation.

Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2011-03-07 10:19:46 -05:00
Martin Storsjö
f4f4e12c0d Add Apple HTTP Live Streaming protocol handler
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2011-03-06 23:29:39 +01:00
Martin Storsjö
8f73c06077 URLProtocol: Add URL_PROTOCOL_FLAG_NESTED_SCHEME
If this flag is set, the protocol can handle URLs where the
scheme is a nested scheme such as applehttp+file: - the protocol
can handle any URL where the first segment of the nested scheme
belongs to this protocol.

Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2011-03-06 23:29:39 +01:00
Martin Storsjö
f3bea9915f URLProtocol: Add a flags field
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2011-03-06 23:29:39 +01:00
Anton Khirnov
a2704c9712 avio: add avio_tell macro as a replacement for url_ftell
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2011-03-04 11:26:57 -05:00
Anton Khirnov
e16ead0716 lavf: deprecate get_strz() in favor of avio_get_str
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2011-03-04 11:26:02 -05:00
Reimar Döffinger
41d8555f72 avio: add avio_get_str()
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2011-03-04 11:24:58 -05:00
Ronald S. Bultje
fd085bc082 avio: fix fourcc if any character is >=0x80.
Fixes issue 2638.
2011-03-04 08:33:49 -05:00
Martin Storsjö
863c471638 libavformat: Add av_pkt_dump{, _log}2, taking an AVStream parameter
This removes a fixme issue, by allowing the av_pkt_dump functions
to use the correct time base.

Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2011-03-02 11:29:38 +01:00
Martin Storsjö
e360ada2d1 aviobuf: Write new data at s->buf_end in fill_buffer
In most cases, s->buf_ptr will be equal to s->buf_end when
fill_buffer is called, but this may not always be the case, if
we're seeking forward by reading (permitted by the short seek
threshold).

If fill_buffer is writing to s->buf_ptr instead of s->buf_end (when
they aren't equal and s->buf_ptr is ahead of s->buffer), the data
between s->buf_ptr and s->buf_end is overwritten, leading to
inconsistent buffer content. This could return incorrect data if
later seeking back into the area before the current s->buf_ptr.

Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2011-03-02 11:16:17 +01:00
Baptiste Coudurier
06ed4873e6 movenc: use correct tag for dvcpro hd
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-03-02 00:23:08 +00:00
Baptiste Coudurier
fffdee89cc movenc: fix tkhd height for imx
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-03-01 23:45:03 +00:00
Anton Khirnov
0300db8ad7 avio: deprecate url_fskip
avio_seek should be used instead

Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2011-03-01 12:27:08 -05:00
Anton Khirnov
e356fc57a2 lavf: replace all uses of url_fskip with avio_seek
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2011-03-01 12:22:16 -05:00
Anton Khirnov
6b4aa5dac8 avio: avio_ prefix for url_fseek
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2011-03-01 12:12:33 -05:00
Ronald S. Bultje
13ff92d197 movenc: remove uses of deprecated API.
Replace put_tag() with ffio_wfourcc() and ByteIOContext with AVIOContext.
2011-02-25 17:41:00 -05:00
Maksym Veremeyenko
d184c86cd3 store pasp atom for all types of quicktime movie
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2011-02-25 22:31:16 +01:00
Maksym Veremeyenko
77d207cbe6 reindent after tapt patch
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2011-02-25 22:31:16 +01:00
Maksym Veremeyenko
ea1afa124c use tapt atom for sample aspect ratio
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2011-02-25 22:31:16 +01:00
Peter Ross
588a3ffd96 bink: decode audio track identifiers into AVStream.id
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2011-02-25 15:24:35 -05:00
Peter Ross
f0ca29eb5f bink: set audio stream codec_tag such that binkaudio decoder can identify bitstream version
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2011-02-25 15:24:35 -05:00
Anton Khirnov
61840b4360 avio: deprecate put_tag
it's not used internally anymore and shouldn't be public.

Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2011-02-25 14:38:57 -05:00
Anton Khirnov
bbc413f943 lavf: replace remaining uses of put_tag with avio_write
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2011-02-25 14:38:56 -05:00
Anton Khirnov
99f42c27ab avienc: replace &tag[0] with tag.
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2011-02-25 14:38:55 -05:00
Anton Khirnov
0abdb29317 lavf: use a new ffio_wfourcc macro instead of put_tag() where possible
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2011-02-25 14:38:22 -05:00
longstone
4acc94e97a avienc: fix AVI stream index for files with >10 streams
Fixes issue 2563.

Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2011-02-23 10:44:26 -05:00
Anton Khirnov
22a3212e32 avio: rename url_fopen/fclose -> avio_open/close.
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2011-02-23 10:18:55 -05:00
Martin Storsjö
28c4741a66 libavformat: Remove FF_NETERRNO()
Map EAGAIN and EINTR from ff_neterrno to the normal AVERROR()
error codes. Provide fallback definitions of other errno.h network
errors, mapping them to the corresponding winsock errors.

This eases catching these error codes in common code, without having
to distinguish between FF_NETERRNO(EAGAIN) and AVERROR(EAGAIN).

This fixes roundup issue 2614, unbreaking blocking network IO on
windows.

Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2011-02-23 07:21:31 -05:00
Benjamin Larsson
8f935b9271 Add more AVC Intra FOURCCs
Also change the comments a bit since the FOURCCs aren't specific to Flip4Mac
and different ones are used for 720 versus 1080 lines.

Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2011-02-22 07:21:33 -05:00
Tony Strauss
6c065f0acd mpegtsenc: use correct PES stream_id for AAC
This adds the AAC codec to the list of audio codecs that results
in a PES stream_id of 0xc0 (audio stream).

Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-02-21 23:57:07 +00:00
Ronald S. Bultje
0f86fcabdf spdifenc.c: fix compile because of missing include avio_internal.h. 2011-02-21 15:49:24 -05:00
Anton Khirnov
0ac8e2bf2b avio: make put_nbyte internal.
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2011-02-21 14:25:17 -05:00
Anton Khirnov
77eb5504d3 avio: avio: avio_ prefixes for put_* functions
In the name of consistency:
put_byte           -> avio_w8
put_<type>         -> avio_w<type>
put_buffer         -> avio_write

put_nbyte will be made private
put_tag will be merged with avio_put_str

Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2011-02-21 14:25:15 -05:00
Anton Khirnov
b3db9ceef1 avio: make get_partial_buffer internal.
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2011-02-21 13:40:28 -05:00
Anton Khirnov
b7effd4e83 avio: avio_ prefixes for get_* functions
In the name of consistency:
get_byte           -> avio_r8
get_<type>         -> avio_r<type>
get_buffer         -> avio_read

get_partial_buffer will be made private later

get_strz is left out becase I want to change it later to return
something useful.

Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2011-02-21 11:23:22 -05:00