Commit Graph
100 Commits
Author SHA1 Message Date
David Conrad 161e8cf42c Move CODEC_FLAG_GRAY check to outer loop
Originally committed as revision 21805 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-13 18:59:25 +00:00
David Conrad 7c2e31d1f0 Move branch based on custom mode outside the loop
Originally committed as revision 21804 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-13 18:59:21 +00:00
David Conrad eb691ef219 Directly check whether a fragment is coded for 4MV mode instead of iterating
through the entire coded fragment list.

Originally committed as revision 21803 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-13 18:55:27 +00:00
David Conrad 15675ce609 Eliminate fragment -> macroblock mapping array
Originally committed as revision 21802 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-13 18:55:24 +00:00
David Conrad ea67614457 Eliminate macroblock -> fragment mapping array
Originally committed as revision 21801 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-13 18:55:21 +00:00
David Conrad 19cd517dbf Eliminate superblock <-> macroblock mapping array
Originally committed as revision 21800 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-13 18:55:17 +00:00
David Conrad b7098cc153 Special case VP5/6 chroma alignment on x86 as well
Originally committed as revision 21782 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-12 22:01:42 +00:00
David Conrad 735acf567c Don't pre-calculate first_pixel
3.6% faster on Elephants_Dream_HD-q7-aq7.ogg on my penryn

Originally committed as revision 21781 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-12 22:01:38 +00:00
David Conrad a8de390163 Implement CODEC_CAP_DRAW_HORIZ_BAND for VP3 decoder
Originally committed as revision 21780 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-12 22:01:35 +00:00
David Conrad 621f9a40b1 Cosmetics: reindent
Originally committed as revision 21779 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-12 22:01:32 +00:00
David Conrad 256c0662ef Do loop filter per-row rather than per-frame
3% faster on Elephants_Dream_HD-q7-aq7.ogg on my penryn

Originally committed as revision 21778 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-12 22:01:29 +00:00
David Conrad fe3135564a Move apply_loop_filter above render_slice, it'll be used by the latter soon
Originally committed as revision 21777 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-12 22:01:25 +00:00
David Conrad ea3c2d5393 Export Theora colorspace info if present
Originally committed as revision 21776 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-12 22:01:22 +00:00
David Conrad 337f5c6e30 Theora 3.4 doesn't exist; these fields were misunderstandings of the spec
Originally committed as revision 21775 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-12 22:01:18 +00:00
David Conrad 45c3c92576 Remove unused code that's moved elsewhere
Originally committed as revision 21774 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-12 22:00:29 +00:00
David Conrad 19530266a5 Enable SSE2 (put|avg)_pixels_16_sse2
SVQ1 chroma has been special-cased aligned to 16-bytes since at least r15466
Other architectures also assume 16-byte alignment here too but set STRIDE_ALIGN
to 16.

Originally committed as revision 21736 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-10 02:02:06 +00:00
David Conrad ecc0027bc6 Fix playback with invalid files that don't set the continuation flag for
pages that continue packets started in prior pages.
Fixes issue1248

Originally committed as revision 21688 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-08 10:13:03 +00:00
David Conrad 3f3dc76cb1 Add function to translate SWS_CS_* to coefficient array
Originally committed as revision 30513 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2010-02-05 16:09:03 +00:00
David Conrad ac1e18cb78 Update regression tests after r21372
Originally committed as revision 21374 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-21 23:35:26 +00:00
David Conrad 01cc47dcd3 More const-correctness for sws_scale
Originally committed as revision 30381 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2010-01-21 09:52:11 +00:00
David Conrad 0fc07ad951 Set start_time and duration in AVStream instead of AVFormatContext for
formats with only one stream; the AVFormatContext values will be derived from
the AVStream and this helps in calculating stream bitrate.

Originally committed as revision 21361 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-21 09:47:02 +00:00
David Conrad 1f630b9717 Use two separate memory arguments since 8+() is invalid gas syntax
Originally committed as revision 21360 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-21 09:46:57 +00:00
David Conrad c4f2b6dce3 Use constant offsets for memory operands since gcc is unable to
This fixes gcc failing to fit 6 memory locations into 7 registers on x86-32

Originally committed as revision 21337 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-20 00:34:10 +00:00
David Conrad 28b2866f45 /nop is illegal with Apple's older version of gas, this was fixed elsewhere
but not here since it was unused before now.

Originally committed as revision 30289 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2010-01-12 19:03:09 +00:00
David Conrad 2d4970d88d oggdec: Set dts when known
Originally committed as revision 21134 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-11 05:51:09 +00:00
David Conrad 18ca491bf1 mkvdec: Avoid divide-by-zero crash on invalid real audio tracks
Originally committed as revision 21129 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-11 00:31:55 +00:00
David Conrad 24ca518bd1 Add support for dirac in ogg
Originally committed as revision 21128 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-11 00:31:52 +00:00
David Conrad 66b0255248 Add a function to parse Dirac's sequence header
Originally committed as revision 21127 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-11 00:31:44 +00:00
David Conrad c4dffe7e36 Export fullrange flag and color information for h.264
Originally committed as revision 21126 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-11 00:31:39 +00:00
David Conrad 2e87e71438 Register myself as libdirac libschroedinger and libtheora maintainer
Originally committed as revision 21021 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-04 22:29:53 +00:00
David Conrad a4914ac708 Clarify comment: although still hacky, it is correct for existing libtheora
Originally committed as revision 20817 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-12-12 20:18:49 +00:00
David Conrad c39b94be60 libtheoraenc.c: mark keyframes
Originally committed as revision 20816 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-12-12 20:18:46 +00:00
David Conrad 5e15c7d95b Fix PTS for OGM codecs.
Fixes issue251

Originally committed as revision 20815 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-12-12 20:18:43 +00:00
David Conrad 800841fd0c Support compiling against libtheora older than 1.1
Originally committed as revision 20609 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-11-25 16:00:14 +00:00
David Conrad c261a5d927 libtheora: using the 1.0 API requires linking to both
libtheoraenc and libtheoradec; libtheora is the pre-1.0 library.
Documented at http://theora.org/doc/libtheora-1.0/
Fixes issue1564

Originally committed as revision 20588 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-11-23 18:18:21 +00:00
David Conrad b9c78bca26 MOV: cprt is another tag used for copyright
Originally committed as revision 20587 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-11-23 08:47:47 +00:00
David Conrad 7382902b86 MOV: Add several iTunes metadata tags
Originally committed as revision 20586 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-11-23 08:47:44 +00:00
David Conrad 620af1a17a MOV: Fix writing \251wrt metadata (r20453 only fixed the demuxer)
Originally committed as revision 20585 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-11-23 08:47:40 +00:00
David Conrad 6c2289b52e Set colorspace for libtheora encoding
Originally committed as revision 20583 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-11-22 21:08:46 +00:00
David Conrad af89b1781f Support 4:2:2 and 4:4:4 subsampling in libtheora encoding
Originally committed as revision 20582 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-11-22 21:08:43 +00:00
David Conrad b0a6d9ca86 Add support for two pass encoding in libtheora
Originally committed as revision 20581 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-11-22 21:08:40 +00:00
David Conrad bdc8c48893 Update libtheora wrapper to use the 1.0 API
Originally committed as revision 20580 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-11-22 21:08:37 +00:00
David Conrad 06da694372 Add clang to detected compilers
Originally committed as revision 20350 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-10-22 21:19:13 +00:00
David Conrad 144fec83b3 dca and aac decoders use float_to_int16_interleave, so check for
the C version of that rather than float_to_int16.
Fixes output on ARM/VFP

Originally committed as revision 20192 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-10-08 14:40:14 +00:00
David Conrad de27f4d957 Check whether 32-bit x86 is really 64-bit
Fixes configure on OS X 10.6

Originally committed as revision 20134 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-10-01 21:38:25 +00:00
David Conrad 6945c2bc4c Support constant-quant encoding for libtheora
Based on a patch by j f (gonzaz-z # operamail (d) com)

Originally committed as revision 20109 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-09-30 22:25:49 +00:00
David Conrad 3e962f315b Fix "warning: assignment discards qualifiers from pointer target type"
Originally committed as revision 19424 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-07-13 01:59:48 +00:00
David Conrad 2483298ae2 ARM: NEON VP3 IDCT
15% faster VP3/Theora, 10% faster VP6

Originally committed as revision 19345 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-07-04 20:41:11 +00:00
David Conrad 29024501b7 Revert r19149 "Disable native Vorbis encoder"
Originally committed as revision 19290 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-06-29 09:02:07 +00:00
David Conrad 86b61d4241 Also accept TS as a prefix for wav twoccs (used by Flip4Mac) instead of
adding entries to codec_movaudio_tags.
This ensures ADPCM_IMA_WAV uses the standard ms prefix when muxing to mov
rather than TS.

Originally committed as revision 19177 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-06-13 00:50:57 +00:00
David Conrad 34edd9948d Add sac3 to mp4 fourccs for mov+h264+aac-sac3+mp4s+ETERNAL_cut.mp4
Originally committed as revision 19162 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-06-12 05:26:40 +00:00
David Conrad 77fc598d98 Disable native Vorbis encoder; quality is much worse than libvorbis and
there really isn't a reason to use it on purpose unless you're improving it.

Originally committed as revision 19149 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-06-11 06:28:06 +00:00
David Conrad 12d7c0793b Ensure that the extradata buffer is padded appripriately in the ogg demuxer.
Spotted by valgrind.

Originally committed as revision 19119 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-06-05 23:39:11 +00:00
David Conrad f2264fa531 Support block-level quantization in Theora
Originally committed as revision 18986 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-05-29 21:43:22 +00:00
David Conrad 454403ba55 Altivec VP3 IDCT
Originally committed as revision 18949 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-05-25 22:19:35 +00:00
David Conrad 548a99742c ARM: actually add VP3 loop filter
Originally committed as revision 18917 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-05-23 18:47:26 +00:00
David Conrad 6db8697a39 ARM: NEON VP3 Loop Filter
Originally committed as revision 18916 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-05-23 18:36:20 +00:00
David Conrad cc0aae4343 Fix libtheora encoding for non-mod16 sizes
Originally committed as revision 18899 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-05-22 22:01:50 +00:00
David Conrad ef516f7377 Move ALIGN macro to libavutil/common.h and use it in various places
Originally committed as revision 18898 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-05-22 21:32:13 +00:00
David Conrad 533c3c84e7 Set speex frame_size in ogg demuxer
Originally committed as revision 18895 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-05-22 18:34:01 +00:00
David Conrad ebcf3b742b Ensure that we don't read from invalid memory with B-frame qpel
Originally committed as revision 18839 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-05-15 07:49:59 +00:00
David Conrad 0a8dedc9e1 Use skip_bits_long() for large skips
This fixes ogg/theora on ARM (more generally the A32 bitstream reader)

Originally committed as revision 18819 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-05-14 00:02:07 +00:00
David Conrad de96180137 Copy input codec's chroma_sample_location to output codec when transcoding.
Currently only used by yuv4mpeg.

Originally committed as revision 18799 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-05-12 00:47:19 +00:00
David Conrad 325aef38da Update regression tests for y4m after r18796
The default changed from 420mpeg2 to 420jpeg

Originally committed as revision 18797 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-05-11 08:45:20 +00:00
David Conrad 56bb72dc3b Use chroma_sample_location in reading/writing yuv4mpeg
Originally committed as revision 18796 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-05-11 04:35:15 +00:00
David Conrad 580a7465fb Add a chroma_sample_location field to define positioning of chroma samples
Originally committed as revision 18795 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-05-11 04:34:23 +00:00
David Conrad d647ed789f ARM: Use fewer register in NEON put_pixels _y2 and _xy2
Approved by Mans on IRC

Originally committed as revision 18713 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-04-29 11:38:09 +00:00
David Conrad 428bf2ac88 ARM: NEON put_pixels_clamped
Originally committed as revision 18712 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-04-29 11:31:43 +00:00
David Conrad d8f3f340ad Add guaranteed alignment for loading dest pixels in avg_pixels16_neon
Originally committed as revision 18535 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-04-16 08:39:13 +00:00
David Conrad 2d08f9ea54 VC1 loop filter uses the frame quantizer not the mb quantizer
Originally committed as revision 18534 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-04-16 07:34:52 +00:00
David Conrad c21c835b8d avg_ pixel functions need to use (dst+pix+1)>>1 to average with existing
pixels, not (dst+pix)>>1.
This makes the mmx functions bitexact with the C functions.

Originally committed as revision 18527 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-04-15 19:10:16 +00:00
David Conrad ddd94932fb Ensure that there's pages to read for duration calculation in the ogg demuxer
Originally committed as revision 18523 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-04-15 06:41:08 +00:00
David Conrad 99cc7f8a02 Altivec version of avg_no_rnd_vc1_chroma_mc8
Originally committed as revision 18522 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-04-15 06:23:40 +00:00
David Conrad 3992526b3c Split VC1 loop filter into separate functions for h/v and size
Originally committed as revision 18521 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-04-15 06:22:17 +00:00
David Conrad 0e58865d6e Move VC1 loop filter to DSPContext
Originally committed as revision 18520 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-04-15 06:20:22 +00:00
David Conrad 9bf0fdf378 VC1: extend MMX qpel MC to include MMX2 avg qpel
Originally committed as revision 18519 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-04-15 02:25:42 +00:00
David Conrad 8013da7364 VC1: add and use avg_no_rnd chroma MC functions
Originally committed as revision 18518 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-04-14 23:56:10 +00:00
David Conrad c374691b28 Rename put_no_rnd_h264_chroma* to reflect its usage in VC1 only
Originally committed as revision 18517 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-04-14 23:55:39 +00:00
David Conrad 6cecd63005 VC1: Do qpel when needed for both MVs in a B frame
Originally committed as revision 18511 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-04-14 19:26:33 +00:00
David Conrad cc2e555420 ARM: NEON optimized put_signed_pixels_clamped
Originally committed as revision 18333 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-04-04 21:02:48 +00:00
David Conrad 710441c2f6 Add SSE4 detection support
Originally committed as revision 18302 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-04-01 09:11:32 +00:00
David Conrad 828775e160 Remove unused FILTSIGN macro
Originally committed as revision 18300 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-04-01 08:06:30 +00:00
David Conrad 1a4ab332c6 Reindent
Originally committed as revision 18102 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-03-21 08:22:36 +00:00
David Conrad 6e6abd0237 Fix Speex header parsing in ogg demuxer
Originally committed as revision 18101 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-03-21 08:22:09 +00:00
David Conrad 1fa9726cf6 Document ogg_codec's header function
Originally committed as revision 18100 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-03-21 08:03:30 +00:00
David Conrad c15020dd1d Hostile takeover of the ogg demuxer, agreed to by Mans on irc
Originally committed as revision 18081 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-03-20 23:36:34 +00:00
David Conrad 170e6b14f7 Remove long unused ALTIVEC_USE_REFERENCE_C_CODE ifdef; all other references
to it were removed in r6606

Originally committed as revision 17997 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-03-16 03:56:42 +00:00
David Conrad 137ae32760 Workaround for gcc 3.4 to align sh properly
Originally committed as revision 16797 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-01-26 03:40:48 +00:00
David Conrad d43b26ea13 Copy width/height for subtitle streams (needed for scodec copy of mov/mp4
timed text)

Originally committed as revision 16662 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-01-17 23:54:27 +00:00
David Conrad 4bcafc9a23 Update regression tests after r16651
Originally committed as revision 16656 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-01-17 18:34:47 +00:00
David Conrad 3194b00479 Cosmetics: indent
Originally committed as revision 16652 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-01-17 04:31:42 +00:00
David Conrad 1c3db2aa50 Treat disposition==0 as undefined and don't write the default flag
Originally committed as revision 16651 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-01-17 04:31:14 +00:00
David Conrad 8a86aaa3b2 Flush the buffer after writing the header and when done with writing the files
Fixes writing small (~4kb) files.

Originally committed as revision 16650 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-01-17 04:30:36 +00:00
David Conrad 6cdbff63cd Use the dimensions in tkhd for timed text tracks
Originally committed as revision 16561 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-01-11 23:24:28 +00:00
David Conrad f620488654 Add support for muxing mov/mp4/3gp timed text streams
Originally committed as revision 16531 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-01-11 10:26:44 +00:00
David Conrad 58e9f2edb6 Read extradata (justification, colors, fonts, etc) for mov/mp4 timed text
Originally committed as revision 16530 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-01-11 08:24:44 +00:00
David ConradandGuillaume Poirier b06688ffed Add AltiVec versions of h264_idct_add(8|16|16intra),
allowing to re-enable ff_h264_idct_add_altivec's usage.

Patch by David Conrad %lessen42 A gmail P com%

Originally committed as revision 16465 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-01-07 13:54:26 +00:00
David ConradandGuillaume Poirier 4929c63679 Add Altivec version of vector_fmul_window.
Patch by David Conrad %lessen42 A gmail P com%

Originally committed as revision 16459 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-01-06 23:03:33 +00:00
David ConradandGuillaume Poirier 8b2bc85f29 add AltiVec implementation of weight_h264_pixels(16|8)x(16|8|4)
Patch by David Conrad %lessen42 A gmail P com%

Originally committed as revision 16458 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-01-06 22:29:26 +00:00
David ConradandGuillaume Poirier aa9a9b7af7 Fix float_to_int16_altivec prototype to match float_to_int16's in dsputil.h
(parameter 'len' is a long not an int).
Patch by David Conrad % lessen42 A gmail P com %

Originally committed as revision 16451 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-01-06 12:51:35 +00:00