Commit Graph

8175 Commits

Author SHA1 Message Date
Joseph Wecker
0078430e30 flvdec: A little bit of cleanup 2011-09-07 02:38:57 +02:00
Joseph Wecker
4ee53d7e86 flvenc: Correctly encode data stream into in-band metadata frames. 2011-09-07 02:38:15 +02:00
Joseph Wecker
4c05042978 flvdec: Properly decoding in-band metadata packets as data frames. 2011-09-07 02:38:13 +02:00
Joseph Wecker
c054f11606 flvdec: Started to remove most of the "only 1-audio+1-video" assumptions 2011-09-07 02:36:42 +02:00
Joseph Wecker
30bcd6a945 flv: Ammon's changes migrated from 0.6.0 - I believe for the android broadcaster. 2011-09-07 02:02:03 +02:00
Carl Eugen Hoyos
b5d4c0e26e Support Speex in isom.
Adobe Flash Media Server produces such files although the f4v
specification does not allow Speex (nor Nellymoser).
2011-09-07 01:10:14 +02:00
Michael Niedermayer
9243454e31 libavformat/utils: only run delta_dts_min calculation code when its value is used.
This should improve speed.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-09-07 00:23:18 +02:00
Michael Niedermayer
effbeff503 libavformat/utils: use FFMIN() where possible
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-09-07 00:13:09 +02:00
wg
37ed5df5c5 libavformat/utils: Treat subtitle streams as noninterleaved when 20 seconds have passed without a packet
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-09-07 00:10:44 +02:00
Michael Niedermayer
d2084402e6 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  lavc: fix type for thread_type option
  avconv: move format to options context
  avconv: move limit_filesize to options context
  avconv: move start_time, recording_time and input_ts_offset to options context
  avconv: add a context for options.
  cmdutils: allow storing per-stream/chapter/.... options in a generic way
  cmdutils: split per-option code out of parse_options().
  cmdutils: add support for caller-provided option context.
  cmdutils: declare only one pointer type in OptionDef
  cmdutils: move grow_array() from avconv to cmdutils.
  cmdutils: move exit_program() declaration to cmdutils from avconv
  http: Consider the stream as seekable if the reply contains Accept-Ranges: bytes
  nutenc: add namespace to the api facing functions

Conflicts:
	avconv.c
	cmdutils.c
	cmdutils.h
	ffmpeg.c
	ffplay.c
	ffprobe.c
	ffserver.c
	libavformat/http.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-09-05 03:10:45 +02:00
Stefan Fritsch
346ea9e222 http: Consider the stream as seekable if the reply contains Accept-Ranges: bytes
The initial request contains "Range: 0-", which servers normally
have responded with "HTTP/1.1 206 Partial Content" reply with
a Content-Range header, which was used as indicator for seekability.

Apache, since 2.2.20, responds with "HTTP/1.1 200 OK" for these
requests, which is more friendly to caches and proxies, but the
seekability still is indicated via the Accept-Ranges: bytes header.

Signed-off-by: Martin Storsjö <martin@martin.st>
2011-09-04 11:28:53 +02:00
Luca Barbato
5ee5dc4e9a nutenc: add namespace to the api facing functions
Rename write_{header,packet,trailer} to nut_write_{header,packet,trailer}
in order to make easier debugging them.
2011-09-04 11:09:06 +02:00
Michael Niedermayer
1889c6724a Merge remote-tracking branch 'qatar/master'
* qatar/master:
  AVOptions: fix av_set_string3() doxy to match reality.
  cmdutils: get rid of dummy contexts for examining AVOptions.
  lavf,lavc,sws: add {avcodec,avformat,sws}_get_class() functions.
  AVOptions: add AV_OPT_SEARCH_FAKE_OBJ flag for av_opt_find().
  cpu detection: avoid a signed overflow

Conflicts:
	avconv.c
	cmdutils.c
	doc/APIchanges
	ffmpeg.c
	libavcodec/options.c
	libavcodec/version.h
	libavformat/version.h
	libavutil/avutil.h

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-09-04 04:11:53 +02:00
Stefan Fritsch
31dfc49598 http: Fix decetion of range support in HTTP servers
currently libavformat only allows seeking if a request with "Range:
0-" results in a 206 reply from the HTTP server which includes a
Content-Range header. But according to RFC 2616, the server may also
reply with a normal 200 reply (which is more efficient for a request
for the whole file). In fact Apache HTTPD 2.2.20 has changed the
behaviour in this way and it looks like this change will be kept in
future versions. The fix for libavformat is easy: Also look at the
Accept-Ranges header.
2011-09-03 22:29:07 +02:00
Anton Khirnov
fb4ca26bdb lavf,lavc,sws: add {avcodec,avformat,sws}_get_class() functions. 2011-09-03 20:53:35 +02:00
Anton Khirnov
c11fb8288d AVOptions: add AV_OPT_SEARCH_FAKE_OBJ flag for av_opt_find().
It allows to search for options only with AVClass, without allocating
the corresponding context.
2011-09-03 20:52:21 +02:00
Tomas Härdin
9289eada91 Parse MXF partitions
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-09-02 20:40:54 +02:00
Clément Bœsch
3dd2c8bbbc wav: init st to NULL to avoid a false-positive warning.
If st is NULL, it means no 'fmt ' tag is found, but 'data' tag (which
needs a previous 'fmt ' tag to be parsed correctly and st initialized)
check will make sure st is never dereferenced in that case.
2011-09-01 20:23:40 +02:00
Diego Biurrun
aebb56e184 Replace some commented-out debug printf() / av_log() messages with av_dlog().
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-09-01 01:31:03 +02:00
Carl Eugen Hoyos
a9424d27c4 Support speex in avi. 2011-08-30 23:45:39 +02:00
Carl Eugen Hoyos
c41bf905f4 Only autodetect loas in transport streams.
The Makito encoder sets stream type 0x11 for AAC.
This patch should be reverted if it breaks decoding valid streams (and
the problem can't be fixed in the probe function).
2011-08-30 10:46:51 +02:00
Carl Eugen Hoyos
75a225217c Support Nellymoser in isom. 2011-08-30 10:46:51 +02:00
Baptiste Coudurier
f33be93b1b mov: read tmcd tag and set timecode drop flag accordingly. 2011-08-30 09:14:05 +02:00
Michael Niedermayer
db5effe1a4 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  Revert "h264: Properly set coded_{width, height} when parsing H.264."
  isom: add missing AVC-Intra tags, rearrange list and update comments
  avconv: remove stubs of crop* and pad* options
  avconv: re-add nb_streams to InputFile.

Conflicts:
	avconv.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-08-29 22:24:01 +02:00
Tomas Härdin
8b7222979c isom: add missing AVC-Intra tags, rearrange list and update comments
Signed-off-by: Diego Biurrun <diego@biurrun.de>
2011-08-29 16:48:39 +02:00
Carl Eugen Hoyos
312645e030 Do not set codec_tag property for matroska muxers.
Fixes ticket #8.
2011-08-28 23:13:17 +02:00
Carl Eugen Hoyos
262ab1c59a Do not assume timestamps for mp2 format. 2011-08-28 21:43:04 +02:00
Michael Niedermayer
3dd44e5075 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  Use deinterleavers for demangling audio packets in RealMedia.
  vf_scale: don't leak SWS context.
  doxygen: drop another pointless star from pointer variable name

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-08-28 00:15:05 +02:00
Fredrik Axelsson
09a858da7d Add support for BDAV/m2ts-mode muxing
Signed-off-by: Fredrik Axelsson <fraxbe@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-08-27 23:57:24 +02:00
Reimar Döffinger
056c13fd17 vocdec: Take channel count into account when calculating bit rate.
Fixes trac issue #343.

Carl Eugen Hoyos actually made a patch first, but I missed it because
trac does not send notification emails when an attachment is added.

Signed-off-by: Reimar Döffinger <Reimar.Doeffinger@gmx.de>
2011-08-27 22:12:51 +02:00
Marton Balint
dacd827b81 Rename find_program_from_stream to av_find_program_from_stream and add it to avformat.h
Also extend the functionality to use the last found program to start the search
after that program.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-08-27 22:06:09 +02:00
Michael Niedermayer
941bb552c6 Fix memory corruption in case of memory allocation failure in av_probe_input_buffer()
Reported-by: Tanami Ohad
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-08-27 21:39:52 +02:00
Kostya Shishkov
10397215aa Use deinterleavers for demangling audio packets in RealMedia.
Unlike other containers RealMedia stores its audio packets in scrambled form,
with interleaver ID preceeding audio codec ID. Currently deinterleaving
decision is tied to the codec while it's possible to have non-default
deinterleaver with audio codec (like Int0 deinterleaver instead of specific
one for Sipro).

Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-08-27 17:23:45 +02:00
Michael Niedermayer
094a496818 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  fifo: add FIFO API test program, and fate test
  fifo: add av_fifo_peek2(), and deprecate av_fifo_peek()
  postprocess.c: filter name needs to be double 0 terminated
  doxygen: fix wrong comment syntax, //< vs. ///<
  doxygen: drop pointless star from pointer variable names
  Replace deprecated av_find_stream_info() by avformat_find_stream_info().
  xmv: eliminate superfluous zeroing of zero data
  configure: fix typo in avconv dependency list

Conflicts:
	configure
	doc/APIchanges
	libavutil/Makefile
	libavutil/avutil.h

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-08-26 23:18:54 +02:00
Stefano Sabatini
f2011ed234 fifo: add av_fifo_peek2(), and deprecate av_fifo_peek()
The new function provides a more generic interface than av_fifo_peek()
for peeking at a FIFO buffer data.

Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-08-26 20:53:02 +02:00
Diego Biurrun
c960e67ad0 Replace deprecated av_find_stream_info() by avformat_find_stream_info(). 2011-08-26 17:40:07 +02:00
Sven Hesse
5f677aac76 xmv: eliminate superfluous zeroing of zero data
Signed-off-by: Diego Biurrun <diego@biurrun.de>
2011-08-26 16:26:57 +02:00
Michael Niedermayer
876d1d796b Merge remote-tracking branch 'qatar/master'
* qatar/master:
  vp6: partially propagate huffman tree building errors during coeff model parsing and fix misspelling
  mpeg12: propagate chunk decode errors and fix conditional indentation
  vc1: fix VC-1 Pulldown handling.
  VC1: Fix first/last row checks with slices
  mp4: Handle non-trivial ES Descriptors.
  vc1: properly zero coded_block[] edges on new slice entry.

Conflicts:
	libavcodec/vc1dec.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-08-26 01:29:40 +02:00
Michael Niedermayer
7c4e4c6a06 udp: fix circular buffer error handling
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-08-25 21:43:30 +02:00
Michael Niedermayer
20f0bf8cfb udp: buffer datagrams in circular buffer instead of a bytestream
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-08-25 21:33:54 +02:00
Alex Converse
ad6c7c1b52 mp4: Handle non-trivial ES Descriptors. 2011-08-25 11:53:21 -07:00
Michael Niedermayer
7e7012d0b4 oggdec: subtract time of first packet only from duration when it is significant
this fixes accuracy with normal ogg files while keeping support for ogg files
starting at times different from 0

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-08-24 23:20:09 +02:00
Michael Niedermayer
d2cab951e3 oggdec: Make sure start time correction is applied once to each stream
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-08-24 23:13:57 +02:00
Michael Niedermayer
bd4640375e Merge remote-tracking branch 'qatar/master'
* qatar/master:
  avconv: Replace goto redo on decode fail with continue.
  avconv: Remove dead store.
  libx264: add 'crf_max' private option.
  libx264: add 'weightp' private option.
  libx264: add 'rc_lookahead' private option.
  libx264: add 'psy_trellis' private option.
  libx264: add 'psy_rd' private option.
  libx264: add 'aq_strength' private option.
  libx264: add 'aq_mode' private option.
  libx264: add 'cqp' private option.
  libx264: add 'crf' private option.
  lavc: remove vbv_delay option
  lavf utils: Fix bad indentation.
  avconv: use av_clip_int16 for audio clipping

Conflicts:
	libavcodec/libx264.c
	libavcodec/options.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-08-24 20:26:48 +02:00
Alex Converse
7e6029f98a lavf utils: Fix bad indentation. 2011-08-23 09:53:23 -07:00
Michael Niedermayer
4ca6a151e0 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  avconv: print the codecs names in the stream mapping.
  avconv: move the avcodec_find_decoder() call to add_input_streams().
  Windows Media Image decoder (WMVP/WVP2)
  ac3enc: remove outdated TODO comment for apply_channel_coupling()

Conflicts:
	Changelog
	libavcodec/avcodec.h
	libavcodec/vc1dec.c
	libavcodec/version.h

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-08-23 18:26:37 +02:00
Alberto Delmás
45ecda8554 Windows Media Image decoder (WMVP/WVP2)
Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-08-23 11:18:35 +02:00
Michael Niedermayer
124deea1a0 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  libx264: only use ABR mode when the user explicitly set bitrate.
  libx264: use medium preset by default.
  mp2 encoder: make 128k the default bitrate.
  movenc: use libx264 by default when possible for mov, mp4 and psp
  avienc: saner default audio codec.
  matroskaenc: saner default codecs.
  avplay: add examples of how to specify size/pixel format through private options
  lavc: add A|E|D flags to "ac" and "ar" options

Conflicts:
	doc/ffplay.texi
	libavcodec/libx264.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-08-22 15:00:53 +02:00
Nicolas George
aeba058340 lavf: warn when a parser is needed and not found. 2011-08-22 12:13:27 +02:00
Nicolas George
355ac7ff6c rtpenc: use avcodec_get_name to report unsupported codecs. 2011-08-22 12:13:27 +02:00