Commit Graph
100 Commits
Author SHA1 Message Date
David Conrad 105b37859b mov: Read Flash's chpl variant
This is based off of F4V specs rather than any actual files

Originally committed as revision 24035 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-04 04:59:12 +00:00
David Conrad 5245c04da3 VP8: Move calculation of outer filter limit out of dsp functions for normal
filter to match the simple loop filter

Originally committed as revision 24010 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-02 21:04:45 +00:00
David Conrad b67a8f49a4 Use __clang_version__ when available
Originally committed as revision 24009 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-02 21:04:39 +00:00
David ConradandAurelien Jacobs 41c1ccc332 matroskadec: merge only SSA packets together
fixes issue 2052
patch by David Conrad

Originally committed as revision 24004 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-02 16:41:38 +00:00
David Conrad 982fac7357 Altivec VP8 MC functions
Originally committed as revision 23884 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-06-29 06:42:17 +00:00
David Conrad 7bf4e9d7f7 Altivec: Add helper function to load from a constant misalignment
Originally committed as revision 23883 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-06-29 06:42:12 +00:00
David Conrad a3ef994cea vorbis: cosmetics, remove trailing comma for values that will never have
anything added

Originally committed as revision 23882 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-06-29 06:42:08 +00:00
David Conrad 30bdefd1de Fix build without yasm
Originally committed as revision 23816 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-06-27 02:52:43 +00:00
David Conrad 21f45508ba Add myself as VP8 and vorbisdec maintainer
Originally committed as revision 23814 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-06-27 01:46:34 +00:00
David Conrad 0ef1dbedcb VP8 bilinear filter
Originally committed as revision 23813 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-06-27 01:46:29 +00:00
David Conrad a02bb835ac vorbisdec: Take channels into account when checking against residue overflow
Fixes issue1969

Originally committed as revision 23812 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-06-27 01:46:23 +00:00
David Conrad 54fdf5d150 vorbisdec: Fix header parsing with no floor1 partitions
Originally committed as revision 23811 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-06-27 01:46:20 +00:00
David Conrad 780621b832 vorbisdec: Remove write-only variable
Originally committed as revision 23810 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-06-27 01:46:14 +00:00
David ConradandRonald S. Bultje 3b636f21da Native VP8 decoder.
Patch by David Conrad <lessen42 gmail com> and myself.

Originally committed as revision 23719 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-06-22 19:24:09 +00:00
David ConradandRonald S. Bultje 3ad289fca7 Add intra prediction functions for VP8.
Patch by David Conrad <lessen42 gmail com> and myself.

Originally committed as revision 23716 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-06-22 19:17:09 +00:00
David ConradandRonald S. Bultje caaf098cec Make "topright" argument to pred4x4() const.
Patch by David Conrad <lessen42 gmail com>.

Originally committed as revision 23714 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-06-22 19:12:54 +00:00
David Conrad e7ddafd515 matroskaenc: Don't write a second seekhead for the clusters; mkvalidate agrees
with me that it's unnecessary.

Originally committed as revision 23478 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-06-04 22:41:11 +00:00
David Conrad d06735a34a matroskaenc: Check that tracks was allocated
Originally committed as revision 23477 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-06-04 22:41:06 +00:00
David Conrad 1f4280e744 matroskaenc: Use av_get_random_seed -> lfg for segment UID
Originally committed as revision 23476 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-06-04 22:41:03 +00:00
David Conrad 4a6bef1f36 matroskaenc: Make put_ebml_binary take a void pointer
Originally committed as revision 23475 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-06-04 22:40:58 +00:00
David Conrad 3ad0b189f7 Add myself as libvorbis.c maintainer
Originally committed as revision 23472 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-06-04 22:40:44 +00:00
David Conrad 57ebbccf9c libvorbis: Disable strict bitrate management when not requested
This is 3 times faster in a quick benchmark

Originally committed as revision 23471 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-06-04 22:40:40 +00:00
David Conrad ed638b5c4b libvorbis: OV_ECTL_RATEMANAGE_AVG is depreciated in favor of
OV_ECTL_RATEMANAGE2_SET

Originally committed as revision 23470 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-06-04 22:40:36 +00:00
David Conrad e5a5ea9e89 libvorbis: Hook up min/max bitrate
Originally committed as revision 23469 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-06-04 22:40:31 +00:00
David Conrad 413abbe164 Add bitexact versions of put_no_rnd_pixels8 _x2 and _y2 for vp3/theora
Originally committed as revision 23463 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-06-04 04:46:26 +00:00
David Conrad 6a7d7b88af arm neon: Add missing mangle to external symbol
Originally committed as revision 23418 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-06-01 20:59:06 +00:00
David Conrad c0fda017d1 vp3: 10l Fix DC-only IDCT for C and ARM too
Originally committed as revision 23359 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-05-28 07:22:04 +00:00
David Conrad 179655b6c6 vp3: The DC-only IDCT is surprisingly not supposed to be bitexact to the
full IDCT. Fix this.

Originally committed as revision 23358 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-05-28 07:01:34 +00:00
David Conrad 173bb37f82 On2 IVF demuxer
Originally committed as revision 23357 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-05-27 21:23:04 +00:00
David Conrad 4717f87259 VP8 parser
Originally committed as revision 23349 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-05-27 04:39:31 +00:00
David Conrad 910b9f30c8 Add const to ff_emulated_edge_mc
Originally committed as revision 23348 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-05-27 04:39:27 +00:00
David Conrad 94b303ba08 Add more const to _l4 pixel functions
Originally committed as revision 23347 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-05-27 04:39:23 +00:00
David Conrad a4501a45db vp3: Skip the loop filter when strength is 0 or when requested
Originally committed as revision 23346 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-05-27 04:39:12 +00:00
David Conrad cc46005f50 theora: Don't read an excess bit for maximum length long bit runs if the run
exactly ends the remaining blocks.

Originally committed as revision 23304 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-05-25 03:19:54 +00:00
David Conrad 7bb83d8ddf matroskaenc: Write codec time base as default duration for video tracks.
This isn't exactly semantically equivalent, but the field has already been
long abused to mean this, and writing it helps in determining a decent cfr
time base when transcoding from a mkv where the video codec stores none (VP8).

Originally committed as revision 23284 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-05-24 08:58:19 +00:00
David Conrad 31fdd64194 Convert NaN to 0/0 in av_d2q
This fixes aspect ratio calculation for encoding from files with 0/0 stored,
common with ogg/theora

Originally committed as revision 23280 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-05-24 00:44:02 +00:00
David Conrad 8daed34e48 matroskadec: Revert adding the doctype to metadata; it has no meaning elsewhere
Originally committed as revision 23275 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-05-23 22:20:04 +00:00
David Conrad 85e86b6810 Update regression tests after removing track timecode scale from mkvenc
Originally committed as revision 23248 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-05-22 02:13:01 +00:00
David Conrad 577abedb39 matroskaenc: Don't write track timecode scale
It's not required for mkv and unsupported in webm

Originally committed as revision 23247 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-05-22 01:41:38 +00:00
David Conrad c7b913c8ad matroskadec: Allow unknown EBML doctype
Originally committed as revision 23246 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-05-22 01:41:35 +00:00
David Conrad 7382617a2f Bump minor version for CODEC_ID_VP8
Originally committed as revision 23194 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-05-19 20:13:50 +00:00
David Conrad 5549aa6d0d matroskadec: Free ebml binary buffer on error
Based on a Chromium patch

Originally committed as revision 23169 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-05-18 21:21:37 +00:00
David Conrad 465c28b6b4 matroskadec: Fix buffer overread in matroska_ebmlnum_uint
Based on a Chromium patch

Originally committed as revision 23168 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-05-18 21:21:32 +00:00
David Conrad d98bd80ed3 matroskadec: Ensure time_scale is nonzero, fixes divide-by-zero if the file
has 0 written

Based on a Chromium patch

Originally committed as revision 23167 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-05-18 21:21:28 +00:00
David Conrad 1c664b239c matroskadec: Use av_freep in ebml_read_ascii
Based on a Chromium patch

Originally committed as revision 23166 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-05-18 21:21:23 +00:00
David Conrad e9d96831f7 schroenc: Set colorspace info
Originally committed as revision 23030 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-05-05 21:38:02 +00:00
David Conrad 37284120ca schroenc: Use AV_RB32
Originally committed as revision 23029 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-05-05 21:37:58 +00:00
David Conrad 31cf8c650a schroenc: Set open-gop
Originally committed as revision 23028 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-05-05 21:02:49 +00:00
David Conrad 3d6fa004e8 schroenc: Set keyframe interval
Originally committed as revision 23027 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-05-05 21:02:45 +00:00
David Conrad e0a24555b4 schroenc: Use constant quality for constant quality, not noise threshold
Originally committed as revision 23026 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-05-05 21:02:41 +00:00
David Conrad 614748ceeb schroenc: Don't touch gop_structure by default, it should be left adaptive
Originally committed as revision 23025 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-05-05 21:02:37 +00:00
David Conrad ddb630177a movenc: Write QuickTime chapters
Originally committed as revision 23022 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-05-05 08:41:10 +00:00
David Conrad 1b206f62ea movenc: Swap positions of mov_write_header and mov_write_packet
Originally committed as revision 23021 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-05-05 08:41:06 +00:00
David Conrad 1cf9f6ed4f mov: Read nero chapters
Originally committed as revision 23020 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-05-05 08:41:01 +00:00
David Conrad 8e6daa4a95 theora: coeff huffman codes are allowed to be up to 32 bits long (for 32 tokens)
Originally committed as revision 22931 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-04-21 13:19:00 +00:00
David Conrad 7221579b0c mov: Read QuickTime chapters
Originally committed as revision 22928 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-04-21 06:36:09 +00:00
David Conrad dc75e4e3b3 movenc: Write nero chapters
Originally committed as revision 22927 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-04-21 06:36:05 +00:00
David Conrad 33e623831b vp3: Use avctx pointer directly
Originally committed as revision 22899 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-04-17 10:37:42 +00:00
David Conrad 8099d6c985 vp3: Read fps and aspect ratio in the decoder
Originally committed as revision 22898 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-04-17 02:04:39 +00:00
David Conrad ddc7e438e0 vp3: Don't crop if there's a left/top offset, it's wrong
Fixes issue1834

Originally committed as revision 22897 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-04-17 02:04:35 +00:00
David Conrad eb6a6cd788 vp3: DC-only IDCT
2-4% faster overall decode

Originally committed as revision 22896 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-04-17 02:04:30 +00:00
David Conrad 6086731299 vp3: More buffer length checks
.5% slower to fix some crashes on invalid streams

Originally committed as revision 22893 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-04-16 12:21:44 +00:00
David Conrad d7097c2d88 vp3: Remove internal debug statement
Originally committed as revision 22892 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-04-16 12:21:41 +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
David Conrad 14268254c8 vp3: Split out motion vectors to their own array
1.5% faster overall decode on my penryn

Originally committed as revision 22504 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-03-13 10:25:41 +00:00
David Conrad 1e76a1da05 theora: Add support for 4:2:2 and 4:4:4 subsampling
Originally committed as revision 22500 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-03-13 05:59:22 +00:00
David Conrad 1a8560423e vp3: remove unneeded error, this is internal and doesn't happen
Originally committed as revision 22499 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-03-13 05:59:18 +00:00
David Conrad 577838842d vp3: Make fragment_width _height by plane
Originally committed as revision 22498 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-03-13 05:56:15 +00:00
David Conrad 1c183aa418 vp3: we only need a temp MV array of size 4
Originally committed as revision 22497 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-03-13 05:56:11 +00:00
David Conrad 703acd540e vp3: Use memset to clear the fragment array
Originally committed as revision 22496 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-03-13 05:56:08 +00:00
David Conrad cd9c03f57f vp3: Init MVs to 0
Originally committed as revision 22495 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-03-13 05:56:05 +00:00
David Conrad a16389c18f vp3: Simplify init_block_mapping
Originally committed as revision 22494 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-03-13 05:56:01 +00:00
David Conrad 3477897e5a oggdec: Set packet duration for ogm streams
Originally committed as revision 22493 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-03-13 05:55:57 +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 8730fad595 oggdec: Parse ogm chapters
Originally committed as revision 22477 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-03-12 05:16:57 +00:00
David Conrad 2e5085854c oggdec: Cosmetics
Originally committed as revision 22476 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-03-12 05:16:54 +00:00
David Conrad d8ba748359 oggdec: Read ogm metadata
Originally committed as revision 22475 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-03-12 05:16:51 +00:00
David Conrad 533c30fced Const correctness for vorbis_comment
Originally committed as revision 22474 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-03-12 05:16:47 +00:00
David Conrad b53cde48bd oggdec: Metadata is per-stream; don't merge multiple streams' together
Originally committed as revision 22473 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-03-12 05:16:44 +00:00
David Conrad e4d2d8c5d7 Add ff_ prefix to vorbis_comment
Originally committed as revision 22472 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-03-12 05:16:39 +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
David Conrad 873d117e4b oggdec: Determine pts and filepos on a packet basis in read_timestamp
This takes into account whether the granule defines the start or end times
of packets, and sets the correct file offset of the associated page.

Originally committed as revision 22462 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-03-11 07:17:56 +00:00
David Conrad 6abaa27211 oggdec: Move PTS/DTS calculation to a function
Originally committed as revision 22461 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-03-11 07:17:53 +00:00
David Conrad 2ac41150c0 oggdec: Fix memory leak in setting up vorbis headers
Originally committed as revision 22460 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-03-11 07:17:49 +00:00
David Conrad 8f8320d7c3 oggdec: Don't use ogg_stream's seq for vorbis or speex headers
Originally committed as revision 22459 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-03-11 07:17:46 +00:00
David Conrad 77560b0ef1 oggdec: Fix duration calculation for streams with non-zero start
Originally committed as revision 22458 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-03-11 07:17:43 +00:00
David Conrad 32ad869284 oggdec: Parse skeleton to determine the start time of each stream
Originally committed as revision 22457 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-03-11 07:17:40 +00:00
David Conrad 296bdf9cf1 oggdec: Check that we have a codec in gptopts (needed for skeleton)
Originally committed as revision 22456 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-03-11 07:17:36 +00:00
David Conrad dfaed51f04 oggdec: Move ogg_find_stream and ogg_gptopts to oggdec.h
(skeleton will need them)

Originally committed as revision 22455 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-03-11 07:17:33 +00:00
David Conrad 50a9d32310 oggdec: Set data_offset to the right value
Otherwise it gets set automatically to a page midstream and prevents seeking
to the first page.

Originally committed as revision 22454 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-03-11 07:17:29 +00:00
David Conrad 73823cb941 oggdec: Save offset of the page needed to reconstruct the current packet
Originally committed as revision 22453 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-03-11 07:17:24 +00:00
David Conrad f50dafa8fc vp3: avoid buffer overread in coeff decode
I couldn't measure it to be slower for normal interframe videos.
For the worst case, high-bitrate intra-only videos, it can be 0.7% slower.

Originally committed as revision 22416 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-03-10 00:59:32 +00:00
David Conrad d63a718764 vp3: correctly clip vp3_draw_horiz_band call
Originally committed as revision 22377 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-03-09 06:52:33 +00:00
David Conrad f9ff7179ff mkvenc: Handle negative timestamps correctly
Originally committed as revision 22372 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-03-09 04:23:36 +00:00
David Conrad 654b65d012 mkvenc: Don't try to write packets with unknown timestamps
Originally committed as revision 22371 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-03-09 04:23:33 +00:00
David Conrad 84d4e599a5 mkvenc: write dts for VFW mode
Originally committed as revision 22370 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-03-09 04:23:28 +00:00
David Conrad ff65969fd8 vp3: Set pict_type
Originally committed as revision 22361 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-03-09 00:29:26 +00:00
David Conrad 7a4e8b5913 vp3: Allocate a dummy reference frame if we have no keyframe
Originally committed as revision 22360 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-03-09 00:29:22 +00:00