Commit Graph

79 Commits

Author SHA1 Message Date
Nicolas George
bec994dff2 Ogg demuxer: give meaningful error codes and warnings.
Signed-off-by: Nicolas George <nicolas.george@normalesup.org>
2011-05-17 12:39:00 +02:00
Michael Niedermayer
72153419b5 Merge remote branch 'qatar/master'
* qatar/master: (33 commits)
  rtpdec_qdm2: Don't try to parse data packet if no configuration is received
  ac3enc: put the counting of stereo rematrixing bits in the same place to make the code easier to understand.
  ac3enc: clean up count_frame_bits() and count_frame_bits_fixed()
  mpegvideo: make FF_DEBUG_DCT_COEFF output coeffs via av_log() instead of just via AVFrame.
  srtdec: make sure we don't write past the end of buffer
  wmaenc: improve channel count and bitrate error handling in encode_init()
  matroskaenc: make sure we don't produce invalid file with no codec ID
  matroskadec: check that pointers were initialized before accessing them
  lavf: fix function name in compute_pkt_fields2 av_dlog message
  lavf: fix av_find_best_stream when providing a wanted stream.
  lavf: fix av_find_best_stream when decoder_ret is given and using a related stream.
  ffmpeg: factorize quality calculation
  tiff: add support for SamplesPerPixel tag in tiff_decode_tag()
  tiff: Prefer enum TiffCompr over int for TiffContext.compr.
  mov: Support edit list atom version 1.
  configure: Enable libpostproc automatically if GPL code is enabled.
  Cosmetics: fix prototypes in oggdec
  oggdec: fix memleak with continuous streams.
  matroskaenc: add missing new line in av_log() call
  dnxhdenc: add AVClass in private context.
  ...

swscale changes largely rewritten by me or replaced by baptsites due to lots of bugs in ronalds code.
Above code is also just in case its not obvios to a large extended duplicates that where cherry picked
from ffmpeg.

Conflicts:
	configure
	ffmpeg.c
	libavformat/matroskaenc.c
	libavutil/pixfmt.h
	libswscale/ppc/swscale_template.c
	libswscale/swscale.c
	libswscale/swscale_template.c
	libswscale/utils.c
	libswscale/x86/swscale_template.c
	tests/fate/h264.mak
	tests/ref/lavfi/pixdesc_le
	tests/ref/lavfi/pixfmts_copy_le
	tests/ref/lavfi/pixfmts_null_le
	tests/ref/lavfi/pixfmts_scale_le
	tests/ref/lavfi/pixfmts_vflip_le

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-05-13 04:40:40 +02:00
Clément Bœsch
e575685fad Cosmetics: fix prototypes in oggdec
Signed-off-by: Diego Biurrun <diego@biurrun.de>
2011-05-12 13:34:20 +02:00
Clément Bœsch
5780f41af5 oggdec: fix memleak with continuous streams.
This avoids the creation of a new AVStream instead of replacing it when
a stream reset occurs (track change with some webradios for example).

Signed-off-by: Diego Biurrun <diego@biurrun.de>
2011-05-12 13:34:20 +02:00
Clément Bœsch
b3bbc6fdc5 oggdec: use explicit AVInputFormat struct initializers
Signed-off-by: Diego Biurrun <diego@biurrun.de>
2011-05-12 11:32:26 +02:00
Clément Bœsch
f95257d27c oggdec: simplify ogg_probe
Signed-off-by: Diego Biurrun <diego@biurrun.de>
2011-05-12 11:32:26 +02:00
Reimar Döffinger
48b9b7edb3 Replace deprecated url_fseek by avio_seek. 2011-05-07 20:14:48 +02:00
jan gerber
5901cd6236 oggdec:Correct duration
Based on a patch by Reimar Döffinger.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-05-07 16:21:55 +02:00
Diego Biurrun
045dd4b928 Replace some commented-out debug printf() / av_log() messages with av_dlog(). 2011-04-29 17:27:01 +02:00
Michael Niedermayer
989fb05fe3 Merge remote branch 'qatar/master'
* qatar/master:
  vorbisdec: Employ proper printf format specifiers for uint_fast32_t.
  applehttp: Don't export variant_bitrate if it isn't known
  crypto: Use av_freep instead of av_free
  configure: Add missing libm library dependencies to .pc files.
  oggdec: reindent after 8f3eebd6
  configure: Add missing libavutil inter-library dependencies to .pc files.

Conflicts:
	configure

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-04-25 02:29:09 +02:00
Clément Bœsch
dc713546d4 oggdec: reindent after 8f3eebd6
Signed-off-by: Diego Biurrun <diego@biurrun.de>
2011-04-24 16:45:45 +02:00
Michael Niedermayer
52512d0a43 oggdec: use av_freep() instead of av_free()
Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-04-20 17:37:16 +02:00
Nicolas George
e61b83d29e Ogg: add support for Xiph's CELT (Opus) codec.
This patch also introduces CODEC_ID_CELT.

Signed-off-by: Nicolas George <nicolas.george@normalesup.org>
2011-04-19 15:49:32 +02:00
Michael Niedermayer
d3b379b95b Merge commit '4d012eb541ed7f35e00c87035a470d9f0a24a6e8'
* commit '4d012eb541ed7f35e00c87035a470d9f0a24a6e8':
  xwma: Fix wrong printf format expression.
  xwma demuxer: typos
  oggdec: simplify audio chained ogg streams support

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-04-16 03:55:48 +02:00
Clément Bœsch
8f3eebd663 oggdec: simplify audio chained ogg streams support
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2011-04-15 11:45:03 +02:00
Michael Niedermayer
c104a6e902 oggdec: use av_freep() instead of av_free()
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-04-11 11:49:36 +02:00
Michael Niedermayer
ab8cfd45f8 Merge remote branch 'qatar/master'
* qatar/master:
  avio: add more documentation for AVIOContext.
  Parse sprite data for WMVP and WVP2, and decode sprites for the latter
  Replace outdated info on the FAQ
  Redefine sameq
  pad: fix example explanation
  gradfun: add notice from the MPlayer manual
  eval: add support for trunc, ceil, and floor functions
  documentation: add setdar and setsar description to filters.texi
  avio: document some members of AVIOContext.
  avio: document avio_close().
  avio: cosmetics, vertically align comments.
  avio: cosmetics, group the reading functions.
  avio: cosmetics, merge all the FF_API_OLD_AVIO blocks.
  avio: cosmetics, move AVIOContext to start of the file.
  avio: update file header.
  os: fix OpenBSD/PowerPC compilation
  pixfmt: add PIX_FMT_BGR48LE and PIX_FMT_BGR48BE
  oggdec: fix demuxing chained audio streams
  fix typo

Conflicts:
	doc/filters.texi
	libavformat/avio.h
	libavutil/pixfmt.h

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-04-11 04:08:08 +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
Reimar Döffinger
d459d8e28d Abort Ogg header parsing when we encounter a data packet.
Fixes ticket #15.
2011-04-10 01:35:48 +02:00
Michael Niedermayer
2cae9809e2 Merge remote branch 'qatar/master'
* qatar/master:
  fate: fix partial run when no samples path is specified
  ARM: NEON fixed-point forward MDCT
  ARM: NEON fixed-point FFT
  lavf: bump minor version and add an APIChanges entry for avio changes
  avio: simplify url_open_dyn_buf_internal by using avio_alloc_context()
  avio: make url_fdopen internal.
  avio: make url_open_dyn_packet_buf internal.
  avio: avio_ prefix for url_close_dyn_buf
  avio: avio_ prefix for url_open_dyn_buf
  avio: introduce an AVIOContext.seekable field
  ac3enc: use generic fixed-point mdct
  lavfi: add fade filter
  Change yadif to not use out of picture lines.
  lavc: deprecate AVCodecContext.antialias_algo
  lavc: mark mb_qmin/mb_qmax for removal on next major bump.

Conflicts:
	doc/filters.texi
	libavcodec/ac3enc_fixed.h
	libavcodec/ac3enc_float.h
	libavfilter/Makefile
	libavfilter/allfilters.c
	libavfilter/vf_fade.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-04-04 02:15:12 +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
db44ea960d avio: avio_ prefix for url_fsize
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
(cherry picked from commit 76aa876e69)
2011-03-08 02:09:21 +01:00
Anton Khirnov
1447dc59de avio: deprecate url_fgetc and remove all it uses
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
(cherry picked from commit e51975392d)
2011-03-08 02:09:17 +01: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
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
384c9c2fa7 avio: add avio_tell macro as a replacement for url_ftell
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
(cherry picked from commit a2704c9712)
2011-03-05 02:29:31 +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
f59d8ff8cd avio: avio_ prefix for url_fseek
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
(cherry picked from commit 6b4aa5dac8)
2011-03-03 14:15:03 +01: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
Anton Khirnov
e63a362857 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>
(cherry picked from commit b7effd4e83)
2011-02-22 02:44:37 +01: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
Anton Khirnov
471fe57e1a avio: rename ByteIOContext to AVIOContext.
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
(cherry picked from commit ae628ec1fd)
2011-02-20 19:05:47 +01:00
Anton Khirnov
ae628ec1fd avio: rename ByteIOContext to AVIOContext.
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2011-02-20 08:37:15 -05:00
Reimar Döffinger
94dfea71ed oggdec: Fix incorrect assumption about header/data interleaving
Currently (since the data_offset fix) the ogg demuxer assumes that
after the first non-header packets in any stream no more header packets
will follow.
This is not guaranteed, so change the code back again to wait until it
has finished the headers for all streams before returning from ogg_get_headers.

This fixes issue 2428.

Signed-off-by: Mans Rullgard <mans@mansr.com>
(cherry picked from commit 6bd69e6ada)
2011-02-09 03:33:55 +01:00
Reimar Döffinger
6bd69e6ada oggdec: Fix incorrect assumption about header/data interleaving
Currently (since the data_offset fix) the ogg demuxer assumes that
after the first non-header packets in any stream no more header packets
will follow.
This is not guaranteed, so change the code back again to wait until it
has finished the headers for all streams before returning from ogg_get_headers.

This fixes issue 2428.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-02-08 21:40:03 +00: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
Diego Elio Pettenò
c6610a216e 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.
2011-01-26 22:10:09 +00:00
Aaron Colwell
365d8e471d Ensure that data_offset is set correctly when there are partial
data packets before the first complete one.
Patch by Aaron Colwell [acolwell chromium org].

Originally committed as revision 25846 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-11-29 19:02:28 +00:00
Anton Khirnov
03700d399b Export metadata in the generic format. Deprecate old conversion API.
patch by Anton Khirnov  anton _at_ khirnov _dot_ net

Originally committed as revision 25493 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-10-15 19:04:25 +00:00
Eli Friedman
461628c6a8 Fix printf format warnings
patch by Eli Friedman <eli dot friedman at gmail dot com>

Originally committed as revision 23547 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-06-09 08:59:41 +00:00
Reimar Döffinger
f1a0518524 Enable AVFMT_GENERIC_INDEX for Ogg demuxer. This avoids the many
seeks needed for binary search when seeking to a previously seen
location.

Originally committed as revision 23279 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-05-23 23:33:38 +00:00
David Conrad
adc725b558 oggdec: Move warning about missing granule to the correct place
Originally committed as revision 22891 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-04-16 12:21:38 +00:00
David Conrad
44a088eab7 oggdec: Fix duration calculation if the last page in a file has no granule
Originally committed as revision 22890 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-04-16 12:21:35 +00:00
David Conrad
49c2d29089 oggdec: Remove write-only variable
Originally committed as revision 22889 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-04-16 12:21:29 +00:00
Jean-Daniel Dupas
cc947f04cc Replace all occurences of PKT_FLAG_KEY with AV_PKT_FLAG_KEY.
Patch by Jean-Daniel Dupas, devlists shadowlab org

Originally committed as revision 22744 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-03-31 12:29:58 +00:00
Stefano Sabatini
72415b2adb Define AVMediaType enum, and use it instead of enum CodecType, which
is deprecated and will be dropped at the next major bump.

Originally committed as revision 22735 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-03-30 23:30:55 +00:00
James Darnley
66061a1220 Add VorbisComment writing to FLAC files.
Patch by James Darnley <james darnley at gmail>.

Originally committed as revision 22605 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-03-20 13:36:43 +00:00
David Conrad
81b743eb10 oggdec: Pass packets to header() until the stream is done with them
This fixes some old ogm files that had the 3rd vorbis header after a data
packet in another stream. This is invalid in ogg, but this change shouldn't
affect the behaviour of any valid file.

Originally committed as revision 22478 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-03-12 05:17:01 +00:00
David Conrad
d8b91fae1d oggdec: Seek to keyframes
Originally committed as revision 22463 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-03-11 07:18:00 +00:00