1
0
mirror of https://github.com/FFmpeg/FFmpeg.git synced 2024-11-21 10:55:51 +02:00
Commit Graph

12590 Commits

Author SHA1 Message Date
Reimar Döffinger
24ae353dfb WC3/xan: move palette handling to decoder, avoiding need for
PaletteControl.
This also fixes playback of some files with ffplay (images were
corrupted for a short time after a palette change).

Originally committed as revision 25778 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-11-21 10:32:23 +00:00
Reimar Döffinger
a08d918e68 Add a av_grow_packet function, to be used by code that merges
palette and video data packets to get rid of PaletteControl.

Originally committed as revision 25776 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-11-21 10:21:06 +00:00
Martin Storsjö
1a68e7ed15 adpcm: Fix a comment in the trellis heap code
This makes the wording consistent with how people usually talk about heaps.

Originally committed as revision 25775 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-11-20 11:24:19 +00:00
Martin Storsjö
78f9d35c9a adpcm: Only increment heap_pos after finding a good enough sample
This increases the PSNR slightly (about 0.1 dB) for trellis sizes
below 8, and gives equal PSNR for sizes above that.

Originally committed as revision 25769 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-11-19 17:36:29 +00:00
Martin Storsjö
d764e3ece9 adpcm: Use a hash table to improve checking for duplicate samples
This lowers the run time from 158 to 21 seconds, for -trellis 8
with a 30 second sample on my machine.

This requires 64 KB additional memory.

Originally committed as revision 25768 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-11-19 17:35:52 +00:00
Baptiste Coudurier
47d2ddca80 Fix qdm2 decoder packet handling to match the api
Originally committed as revision 25767 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-11-19 06:52:30 +00:00
Stefano Sabatini
5878d5bda3 Order matters, fix test files linking.
Originally committed as revision 25766 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-11-19 00:04:23 +00:00
Baptiste Coudurier
9d9c3e1a70 Make DNxHD encoder produce files that are strictly VC-3 compatible
Originally committed as revision 25756 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-11-16 01:00:55 +00:00
Kostya Shishkov
f3d77632d7 16l trocadero: Musepack SV7 decoder may skip more than 16 bits at the
beginning of the frame, so make it use skip_bits_long() instead of
skip_bits() for that.

Originally committed as revision 25754 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-11-15 09:30:20 +00:00
Aurelien Jacobs
c99f9b0ac7 minor bump and Changelog entry for r25747
Originally committed as revision 25753 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-11-14 17:33:43 +00:00
Aurelien Jacobs
c716f91757 minor bump and APIchanges for r25745
Originally committed as revision 25752 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-11-14 17:31:06 +00:00
Martin Storsjö
86abf868ec adpcm: Fix a comment
Originally committed as revision 25751 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-11-14 10:23:58 +00:00
Aurelien Jacobs
5952be07dc add missing files in previous commit (ASS encoder and decoder)
Originally committed as revision 25747 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-11-13 14:18:59 +00:00
Aurelien Jacobs
e9c098dbaa add ASS encoder and decoder
Originally committed as revision 25746 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-11-13 14:17:57 +00:00
Aurelien Jacobs
cb2c971d91 allow passing subtitles header between decoder and encoder
Originally committed as revision 25745 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-11-13 13:57:49 +00:00
Vitor Sessak
c4e8733ac1 Fix visual artifacts in 4XM decoding on big-endian system
Originally committed as revision 25734 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-11-12 19:55:26 +00:00
Martin Storsjö
38b3bda18f adpcm: Replace any of the leaf nodes in the heap
By not looking for the exactly largest node, we avoid an O(n) seek through
the leaf nodes. Just pick one (not the same one every time) and try replacing
that node with the new one.

For -trellis 8, this lowers the run time from 190 to 158 seconds,
for a 30 second 44 kHz mono sample, on my machine.

Originally committed as revision 25733 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-11-12 12:30:27 +00:00
Martin Storsjö
4106b7f1cd Reindent
Originally committed as revision 25732 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-11-12 12:28:02 +00:00
Martin Storsjö
f82e8f3482 adpcm: Store the trellis nodes in a heap instead of a sorted array
This avoids having to memmove the large parts of the array when inserting into
it.

For -trellis 8, this lowers the run time from 245 seconds to 190 seconds,
for a 30 second 44 kHz mono sample, on my machine.

Originally committed as revision 25731 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-11-12 12:27:27 +00:00
Stefano Sabatini
5d6e4c160a Replace deprecated symbols SAMPLE_FMT_* with AV_SAMPLE_FMT_*, and enum
SampleFormat with AVSampleFormat.

Originally committed as revision 25730 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-11-12 11:04:40 +00:00
Alex Converse
5fb2f1347e 10l: dx shouldn't exist.
sorry sorry sorry sorry

Originally committed as revision 25726 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-11-12 05:38:57 +00:00
Alex Converse
0611f67525 10l: vorbisdec: declare dy
Originally committed as revision 25725 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-11-12 05:34:32 +00:00
Gregory Maxwell
8455e8c7c0 vorbisdec: Fix floor1 decoding
An intermediate value in the floor 1 linear interpolation was
overflowing
resulting in obvious artifacts on some files.

e.g.
http://upload.wikimedia.org/wikipedia/commons/7/79/Big_Buck_Bunny_small.ogv

Prior to this fix 87 out of 128 64kbit/s mono files decoded with ffmpeg
have
lower PEAQ ODG values than the same files decoded with libvorbis. With
this
fix none of that set have significantly worse ODG values than libvorbis.

Fixes issue 2352

Patch by Gregory Maxwell <greg@xiph.org>

Originally committed as revision 25724 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-11-12 04:33:26 +00:00
Nicolas George
ba83c4bfb5 MJPEG/AVI1 to JPEG/JFIF bitstream filter.
Originally committed as revision 25721 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-11-11 15:24:11 +00:00
Jason Garrett-Glaser
2c5168afed Remove bitrate tolerance from libx264 interface
Nobody ever uses it correctly, and ffmpeg sets it incorrectly, so we'll just
leave it out.

Originally committed as revision 25720 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-11-11 14:34:27 +00:00
Stefano Sabatini
119a34f716 In avcodec_pix_fmt_string() use local variable pixdesc rather than
av_pix_fmt_descriptors[pix_fmt], simplify.

Originally committed as revision 25718 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-11-10 20:13:24 +00:00
Stefano Sabatini
2de6f6e828 Make avcodec_pix_fmt_string() use the information in the pixel format
descriptors for printing the number of channels/components.

Also replace the term "nb_channels" with "nb_components" which is more
consistent with the FFmpeg internal terminology, and is somehow
different with respect to the current definition of nb_channels in
PixFmtInfo.

See thread:
Subject: [FFmpeg-devel] [PATCH 6/8] Make avcodec_pix_fmt_string() use the
        information in the pixel format descriptors for printing the
        number of planes. Also replace the term "nb_channels" with
        "nb_planes" which is more correct.
Date: Fri,  5 Nov 2010 12:01:38 +0100

Originally committed as revision 25717 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-11-10 20:13:19 +00:00
Nicolas Kaiser
fe655f6723 Simplify: Remove impossible condition.
Patch by Nicolas Kaiser, nikai nikai net

Originally committed as revision 25714 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-11-09 23:58:41 +00:00
Stefano Sabatini
ed5d30d91c Move internal function ff_set_systematic_pal() to libavcore, and
rename it ff_set_systematic_pal2().

Originally committed as revision 25712 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-11-09 22:22:36 +00:00
Thilo Borgmann
a29039aef3 Reindent after last commit.
Originally committed as revision 25711 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-11-08 15:24:11 +00:00
Thilo Borgmann
4051ae7617 Allow clean initialization of lut_status array by changing type to signed int.
Originally committed as revision 25710 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-11-08 15:22:15 +00:00
Stefano Sabatini
d2af7205a1 Use hierarchic names convention (prefix them with av_expr) for the
eval API.

More grep-friendly and more consistent with the rest of the FFmpeg
API.

Originally committed as revision 25708 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-11-08 14:06:49 +00:00
Stefano Sabatini
46db10ed0e Optimize / simplify avcodec_get_pix_fmt_name() check.
Originally committed as revision 25689 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-11-07 15:04:35 +00:00
Stefano Sabatini
a5f27f6db8 Use av_pix_fmt_descriptors information in avcodec_pix_fmt_string().
Originally committed as revision 25688 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-11-07 13:30:39 +00:00
Stefano Sabatini
f35a41ff5d Make avpicture_fill() return a meaningful error code.
Originally committed as revision 25687 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-11-07 13:30:36 +00:00
Stefano Sabatini
24409b5053 Remove alpha information from avcodec_pix_fmt_string(), as that
information does not belong to the pixel format.

Originally committed as revision 25686 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-11-07 13:01:12 +00:00
Alex Converse
ebb7f7de82 aaclatm: Eliminate dummy packets due to muxlength calculation.
Muxlength does not include the 3 bytes of AudioSyncStream() before the
AudioMuxElement(). If these three bytes are not accounted for the last three
bytes of the LATM packet are sent back to the decoder again.

Fixes issue244/mux2.share.ts

Originally committed as revision 25685 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-11-07 03:05:12 +00:00
Reimar Döffinger
c4d5ee233a Fix indentation.
Originally committed as revision 25683 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-11-06 16:48:41 +00:00
Reimar Döffinger
931856a267 Improve PGS parsing: the "state" field is not relevant to us,
the object number is, it determines whether we should continue
parsing the presentation description and whether we should
clear the subtitles on the next display command.
Based on patch by Mark Goodman [mark goodman gmail com]

Originally committed as revision 25682 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-11-06 16:46:03 +00:00
Kostya Shishkov
c5cb9c946b try to give TrueSpeech decoder tables more sensible names
Originally committed as revision 25681 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-11-06 13:31:17 +00:00
Stefano Sabatini
58b4e5407d Fix FFv1 decoder buffer releasing.
Previously it was releasing the buffer which was returned to the user,
which was resulting in a crash in case of direct rendering.

Originally committed as revision 25678 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-11-04 22:45:46 +00:00
Janne Grunau
bbdee6e5f9 aacdec: consume the audio specific config during LATM parsing
Spotted by Alex after Carl Eugen found errors some samples. There no errors or
noticeable artifacts in the samples I used during development.

Originally committed as revision 25676 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-11-04 21:00:01 +00:00
Reimar Döffinger
00d1e96bf4 H.264 decode: support cropping up to 28 pixels in interlaced mode.
Contrary to progressive, just being able to crop up to 14/15 pixels
is not enough to encode all supported resolutions, and the new
behaviour is also consistent with e.g. MPEG-2 etc.

Originally committed as revision 25669 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-11-03 20:52:28 +00:00
Stefano Sabatini
ba7d6e798e Remove usage of deprecated libavcodec/audioconvert.h functions.
Originally committed as revision 25668 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-11-03 20:19:34 +00:00
Reimar Döffinger
e75f418cf2 Fix aspect for 24bpp TM1 samples.
Originally committed as revision 25663 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-11-03 17:22:19 +00:00
Reimar Döffinger
a940dc6912 Fix decoding of 24 bpp TM1 (except for aspect).
Originally committed as revision 25662 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-11-03 17:01:30 +00:00
Reimar Döffinger
f1c5301413 100l, calculate mb_change_bits_row_size from the update width.
Originally committed as revision 25661 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-11-03 16:57:05 +00:00
Reimar Döffinger
97113c2178 Support mid-stream resolution/format changes for TM1.
This makes it easier to fix playback of 24 bit formats.

Originally committed as revision 25660 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-11-03 16:45:55 +00:00
Stefano Sabatini
6f84cd1279 Add av_get_bits_per_sample_fmt() to libavcore/samplefmt.h and
deprecate av_get_bits_per_sample_format().

Originally committed as revision 25654 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-11-02 22:20:49 +00:00
Stefano Sabatini
d63e456a2a Implement functions:
av_get_sample_fmt_name()
av_get_sample_fmt()
av_get_sample_fmt_string()

in libavcore, and deprecate the corresponding libavcodec/audioconvert.h functions:
avcodec_get_sample_fmt_name()
avcodec_get_sample_fmt()
avcodec_sample_fmt_string()

Originally committed as revision 25653 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-11-02 22:08:02 +00:00