Commit Graph

29567 Commits

Author SHA1 Message Date
Reimar Döffinger cf16104ad1 Change guess_palette so its output matches the most common palette.
This means it uses full brightness range and brightness
increasing instead of decreasing with index of non-opaque
color.

Based on patch by Alexandre Colucci [alexandre elgato com]
2011-05-02 18:39:03 +02:00
Reimar Döffinger 148ffcd2ce Make DV (sub) demuxer set proper pkt->pos values.
This makes the avi demuxer create packets with proper pos values
with the file from ticket #140.
2011-05-02 18:38:01 +02:00
Stefano Sabatini f97905e61d scale: fix leak occurring when a scale filter is reconfigured
This currently only occurrs in vsrc_buffer in case of mid-stream
size/format change.

Fix trac issue #124.
2011-05-02 16:46:24 +02:00
Stefano Sabatini 0f1ef8a316 vsrc_buffer: improve reporting in case of format/size change 2011-05-02 16:46:15 +02:00
Stefano Sabatini ce5e49b0c2 replace deprecated FF_*_TYPE symbols with AV_PICTURE_TYPE_* 2011-05-02 16:41:41 +02:00
Stefano Sabatini 301183d9be replace deprecated av_get_pict_type_char() with av_get_picture_type_char() 2011-05-02 16:41:35 +02:00
Michael Niedermayer c3f5b81125 Merge remote branch 'qatar/master'
* qatar/master:
  ALPHA: Replace sized int_fast integer types with plain int/unsigned.
Duplicate  DPX image encoder
Duplicate  DPX decoder: read sample aspect ratio
Duplciate  DPX decoder: add buffer size checks.
  ac3enc: clip large coefficient values and negative exponents rather than using av_assert2().
  ac3enc: do not store a bandwidth code for each channel.
  ac3enc: remove bandwidth reduction as fallback for bit allocation failure.
  ac3enc: merge compute_exp_strategy_ch() into compute_exp_strategy()
  ac3enc: return error if frame+exponent bits are too large instead of using av_assert2().
  ac3enc: differentiate between current block and reference block in bit_alloc()
  ac3enc: simplify exponent_init() by calculating exponent_group_tab[] based on exponent group sizes.
  ac3enc: simplify stereo rematrixing decision options
Include both URLs:  Update URL to fate samples

Conflicts:
	Changelog
	doc/fate.txt
	libavcodec/ac3enc.c
	libavcodec/dpxenc.c
	libavcodec/version.h

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-05-02 03:45:58 +02:00
Michael Niedermayer 3862ebba23 AVOptions: av_set_string3() allow NULL strings
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-05-02 02:58:09 +02:00
Michael Niedermayer 007d352c1c dct-test: Support testing bits>8
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-05-02 02:58:09 +02:00
Michael Niedermayer c92a9d069e ffplay: demuxer specific options support
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-05-02 02:58:09 +02:00
zhentan feng 5edb23295e WTV: Add ff_ prefix to the moved fields.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-05-01 21:13:18 +02:00
zhentan feng 5ab826c165 WTV:move the common variable used by wtvdec.c and wtvenc.c to a new file wtv.h and wtv.c.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-05-01 21:12:02 +02:00
zhentan feng 80a330679f rename wtv.c to wtvdec.c
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-05-01 21:10:00 +02:00
Diego Biurrun ad1862d64a ALPHA: Replace sized int_fast integer types with plain int/unsigned.
int/unsigned is the natural memory access type for CPUs, using sized types
for temporary variables, counters and similar just increases code size and
can possibly cause a slowdown.
2011-05-01 20:50:12 +02:00
Peter Ross e27ce0eea3 DPX image encoder 2011-05-01 19:35:55 +02:00
Peter Ross 406629150c DPX decoder: read sample aspect ratio
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-05-01 19:35:55 +02:00
Reimar Döffinger 3777ea13fb DPX decoder: add buffer size checks. 2011-05-01 19:35:55 +02:00
Justin Ruggles 63b1866ae1 ac3enc: clip large coefficient values and negative exponents rather than using
av_assert2().
2011-05-01 13:32:04 -04:00
Justin Ruggles 177fed4e9b ac3enc: do not store a bandwidth code for each channel.
Although AC-3 allows it, it's not very useful. The encoder uses the same code
for all full-bandwidth channels.
2011-05-01 13:32:04 -04:00
Justin Ruggles a1d0f511fc ac3enc: remove bandwidth reduction as fallback for bit allocation failure.
It was only needed at low bitrates, which now already use a low bandwidth, so
the bandwidth reduction is no longer needed.
2011-05-01 13:32:04 -04:00
Justin Ruggles ba6bce5140 ac3enc: merge compute_exp_strategy_ch() into compute_exp_strategy() 2011-05-01 13:32:04 -04:00
Justin Ruggles 4142487d1c ac3enc: return error if frame+exponent bits are too large instead of using
av_assert2().

This can occur in some very rare cases with low bitrates.
2011-05-01 13:32:03 -04:00
Justin Ruggles 987fe2dc55 ac3enc: differentiate between current block and reference block in bit_alloc() 2011-05-01 13:32:03 -04:00
Justin Ruggles 6b2636bba6 ac3enc: simplify exponent_init() by calculating exponent_group_tab[] based
on exponent group sizes.
2011-05-01 13:32:03 -04:00
Justin Ruggles e0b33d479c ac3enc: simplify stereo rematrixing decision options 2011-05-01 13:32:03 -04:00
Reimar Döffinger 636ee66f1c Fix data_size handling for AC3 and dca decoders.
They use now code identical to the AAC decoder.
The AC3 decoder previously did not check the data_size and
the dca decoder checked against and set wrong values for float.
2011-05-01 19:13:01 +02:00
Reinhard Tartler a28b058745 Update URL to fate samples 2011-05-01 15:06:03 +02:00
Stefano Sabatini 35fe66abbc lavfi: rename AVFilterBufferRefVideoProps.pixel_aspect to sample_aspect_ratio
Improve consistency with libavcodec.

This breaks libavfilter API/ABI.

The non-sequential 2.1.0 -> 2.4.0 bump is due to the mess previously
done with the lavfi minor number.
2011-05-01 13:10:18 +02:00
Stefano Sabatini 77e9dee8ae lavc: add a sample_aspect_ratio field to AVFrame
The sample aspect ratio is a per-frame property, so it makes sense to
define it in AVFrame rather than in the codec/stream context.
Simplify application-level sample aspect ratio information extraction,
and allow further simplifications.
2011-05-01 13:10:06 +02:00
Stefano Sabatini 1ba5727242 lavc: add a pkt_pos field to AVFrame
This is similar to what was done with pkt_pts. This simplifies the
operation of extracting the pos information from the AVPacket, and
allows further simplifications.
2011-05-01 13:09:58 +02:00
Carl Eugen Hoyos aba0278e9f Fix compilation in some cases if the flac decoder was disabled.
flac.o implies vorbis_data.o because of flac channel layout.
2011-05-01 06:39:08 +02:00
Michael Niedermayer c059d7aa57 H264: Fix intra only decoding.
This possibly fixes issue2679
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-05-01 02:38:30 +02:00
Michael Niedermayer 0ae4aba649 H264:Print short+long+max values when they dont match up.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-05-01 02:38:30 +02:00
Michael Niedermayer 7ac85f4be8 H264:use av_assert0() for frame num check
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-05-01 02:38:29 +02:00
Michael Niedermayer 0e5758d101 H264: print nal_ref_idc too for debug
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-05-01 02:38:29 +02:00
Mike Scheutzow e12926393b Fix decoding of mpegts streams with h264 video that does *NOT* have b frames
One of the causes of this bug is that the h264 parser defaults low_delay
to 1, but the h264 codec defaults low_delay to 0. Really Ugly.

After many hours of looking at this, I'm still not sure how has_b_frames
is *intended* to behave, but to me the implementation appears way more
complicated than it ought to be.

My patch relies on the encoder to set an optional field in the SPS. This
works for libx264 streams, but I'm not sure that all h264 encoders will
set it.
2011-05-01 01:47:35 +02:00
ami_stuff 8556406d38 lavc: lowercase the FRWU codec name
This is more consistent with all the other codec names.

Signed-off-by: Stefano Sabatini <stefano.sabatini-lala@poste.it>
2011-05-01 00:42:21 +02:00
Michael Niedermayer ffb5a0d533 Merge commit '85770f2a2651497861ed938efcd0df3696ff5e45'
* commit '85770f2a2651497861ed938efcd0df3696ff5e45':
  AVOptions: make default_val a union, as proposed in AVOption2.
  Move ff_dynarray_add to lavu and make it public.
  lavf: remove duplicate assignment in avformat_alloc_context.
  lavf: use designated initializers for AVClasses.
  options: simplify av_find_opt by using av_next_option.

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-05-01 00:26:05 +02:00
Reimar Döffinger 1a9f9f81b1 Do not drop packets with no valid ->pos set as e.g. DV-in-AVI produces.
Fixes ticket #140.
2011-04-30 23:06:04 +02:00
Michael Niedermayer fa1195227f FFMPEG: support demuxer specific options.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-04-30 22:09:15 +02:00
Michael Niedermayer ffdc49df25 AVIDEC: use_odmc demuxer specific option. (mostly an exmaple for demuxer specific options)
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-04-30 22:09:15 +02:00
Michael Niedermayer 492026209b LAVFAPI: demuxer specific options.
(someone please add doxy)
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-04-30 22:09:15 +02:00
Michael Niedermayer ce62b35c31 output_example: use avformat_alloc_output_context()
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-04-30 22:09:15 +02:00
Michael Niedermayer 7d727f1338 LAVFAPI: avformat_alloc_output_context() / simplify usage of muxers.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-04-30 22:09:15 +02:00
Michael Niedermayer a2eef3e9f5 LAVF API: remove AVOutputFormat.set_parameters() the field is unused.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-04-30 22:09:15 +02:00
Philip Langdale 8de45adb37 CrystalHD: Add auto-detection of packed b-frame bug.
I still don't fully understand the cause but the difference between
the samples that trigger the bug and the samples that don't is
that the former uses delay frames and the later uses drop frames
as placeholders for the packed frame. So, if we see the one type
of frame, we can assume the bug will or won't be present.

Right now, I'm detecting the frame types by size, which may not be
safe in general, but given the specific codec and file type, I
expect any scenario where we encounter these frames where they
aren't being used for b-frame packing won't care one way or
another whether the work around is in effect or not.

Signed-off-by: Philip Langdale <philipl@overt.org>
2011-04-30 09:47:28 -07:00
Stefano Sabatini d5551265f3 lavc: remove disabled avcodec_decode_video() code
Fix warning:
libavcodec/utils.c: At top level:
libavcodec/utils.c:714:5: warning: "FF_API_VIDEO_OLD" is not defined

Also fix trac issue #139.
2011-04-30 11:57:13 +02:00
Reimar Döffinger 543f3db978 Read the album_artist, grouping and lyrics metadata.
Our muxer writes these out, so we really should support reading them.
Fixes ticket #30.
2011-04-30 11:02:49 +02:00
Anton Khirnov 85770f2a26 AVOptions: make default_val a union, as proposed in AVOption2.
This breaks API and ABI.
2011-04-30 08:34:16 +02:00
Baptiste Coudurier 97dc86b793 In libx264 wrapper, change wpredp to a codec specific option. 2011-04-29 18:44:59 -07:00