Commit Graph

232 Commits

Author SHA1 Message Date
Daniel Maas
0b297700b7 DVCPRO50 support.
Patch by Daniel Maas dmaas at maasdigital dot com

Originally committed as revision 5113 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-03-06 08:54:33 +00:00
Dan Maas
40116978de Assign class 2 to most macroblocks by default, instead of a more conservative
method defined by SMPTE

Patch by Dan Maas

Originally committed as revision 5074 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-02-28 02:54:48 +00:00
Roman Shaposhnik
e5867e4d50 Not that we're that far from being an *initial* implementation, but
at least weighting got implemented thanks to Dan. ;-)

Originally committed as revision 5071 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-02-27 05:04:05 +00:00
Dan Maas
2e52b44e50 AC coefficient weighing (per SMPTE 314M) for the DV encoder and decoder. The
performance impact is less than 1%.

Patch by Dan Maas  (dmaas at maasdigital dot com)

Originally committed as revision 5070 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-02-27 04:50:06 +00:00
Michael Niedermayer
0403f791b3 remove wrong assert()
Originally committed as revision 5067 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-02-26 15:40:08 +00:00
Michael Niedermayer
d676478c8d replace for loop with 2 asserts()
Originally committed as revision 5066 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-02-26 15:24:42 +00:00
Dan Maas
6df5f6ae51 size[0-3] are not initialized (and can get random negative trash
values), so the comparison with vs_total_ac_bits is messed up on the
first couple loop iterations, leading to AC underflows.

the b->prev[] pointers were not being maintained correctly. We
potentially have to update b->prev[] both before and after the area
whose VLC length is getting adjusted.

this also might fix the ppc regression failure?

patch by (Dan Maas <dmaas maasdigital com>)

Originally committed as revision 5064 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-02-25 22:58:26 +00:00
Michael Niedermayer
7bdb4f67bc 10l (forgot EOBs)
Originally committed as revision 5059 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-02-24 09:16:26 +00:00
Michael Niedermayer
6661b2130d dont lowwer qnos of more blocks then needed
Originally committed as revision 5055 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-02-23 13:05:37 +00:00
Michael Niedermayer
d2d230a756 fixing dv_guess_qnos()
roman, dont hesitate to reverse this and solve it differntly if you want ...

Originally committed as revision 5053 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-02-23 08:56:53 +00:00
Michael Niedermayer
fe78f7cdaa print a big warning if we mess up and run out of space ...
Originally committed as revision 5052 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-02-23 00:16:45 +00:00
Steve L'Homme
68b51e58ce MSVC-compatible __align8/__align16 declaration
patch by Steve Lhomme, steve .dot. lhomme .at. free .dot. fr

Originally committed as revision 4942 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-02-05 13:35:17 +00:00
Diego Biurrun
5509bffa88 Update licensing information: The FSF changed postal address.
Originally committed as revision 4842 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-01-12 22:43:26 +00:00
Roman Shaposhnik
aa06658248 Moving dv_anchor back to the global scope. This creates a tiny memory
leak for cases like dlopening libavcodec.so and such, but I still
   don't know how to catch such events.

Originally committed as revision 4818 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-01-06 19:19:39 +00:00
Burkhard Plaum
c842aa378d Fix DV memory leak and allow multiple instances patch by (Burkhard Plaum?)
approved by Roman Shaposhnik

Originally committed as revision 4777 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-12-25 22:38:21 +00:00
Diego Biurrun
bb270c0896 COSMETICS: tabs --> spaces, some prettyprinting
Originally committed as revision 4764 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-12-22 01:10:11 +00:00
Diego Biurrun
115329f160 COSMETICS: Remove all trailing whitespace.
Originally committed as revision 4749 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-12-17 18:14:38 +00:00
Michael Niedermayer
4325ffd0a2 lowres support
Originally committed as revision 4545 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-09-02 08:30:26 +00:00
Michael Niedermayer
c619ff6daf optimizations
dc coeff rounding fix
class=3 num of bits fix
do interlaced check & idct only if CODEC_FLAG_INTERLACED_DCT

Originally committed as revision 4542 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-08-30 20:03:19 +00:00
Burkhard Plaum
5b2bf94340 Fix for memleak in dv.c patch by (Burkhard Plaum; plaum, ipf uni-stuttgart de)
Originally committed as revision 4539 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-08-26 15:41:28 +00:00
Edward Hervey
856170f752 DV video encoder/decoder doesn't set keyframe and picture type properties patch by (Edward Hervey:bilboed,gmail com)
Originally committed as revision 4503 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-08-11 01:28:04 +00:00
Roine Gustafsson
983ea0bc87 a few #ifdef CONFIG_X_ENCODER, patch by (Roine Gustafsson <roine users.sourceforge net]
Originally committed as revision 4213 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-05-10 20:39:11 +00:00
Michael Niedermayer
5bb8a0daa1 various fixes related to the non alt_bitstream_reader
Originally committed as revision 4136 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-04-18 12:08:16 +00:00
Michael Niedermayer
934982c4ac avoid buf_size == 0 checks in every decoder
Originally committed as revision 3872 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-01-23 18:09:06 +00:00
Michael Niedermayer
0ecca7a49f various security fixes and precautionary checks
Originally committed as revision 3822 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-01-12 00:16:25 +00:00
Burkhard Plaum
073c2593c9 Memory leak fix patch by (Burkhard Plaum <plaum >at< ipf.uni-stuttgart )dot( de>)
Originally committed as revision 3717 to svn://svn.ffmpeg.org/ffmpeg/trunk
2004-11-27 18:10:06 +00:00
Jeff Muizelaar
21e1913175 * simplification patch by Jeffrey Ryan Muizelaar
Originally committed as revision 3491 to svn://svn.ffmpeg.org/ffmpeg/trunk
2004-09-22 05:04:18 +00:00
Michael Niedermayer
53db1cae1c data_size = 0 cleanup
Originally committed as revision 3146 to svn://svn.ffmpeg.org/ffmpeg/trunk
2004-05-21 14:37:16 +00:00
Michael Niedermayer
5da42be192 oops, forgot to commit that change from the warning fixes by (Michael Roitzsch <mroi at users dot sourceforge dot net>)
Originally committed as revision 3145 to svn://svn.ffmpeg.org/ffmpeg/trunk
2004-05-21 14:29:25 +00:00
Michael Niedermayer
eea8c08fa8 cleanup & memleak fix
Originally committed as revision 3095 to svn://svn.ffmpeg.org/ffmpeg/trunk
2004-04-30 17:42:58 +00:00
Roman Shaposhnik
901ee2bea3 * some significant clean-up of the dv_decode_ac (it looks real
simple now, take a look for yourself).

   * additional optimizations of the decoder. It runs at 55fps now
     on my desktop and it used to be ~45fps.

Originally committed as revision 2926 to svn://svn.ffmpeg.org/ffmpeg/trunk
2004-03-25 01:46:40 +00:00
Falk Hüffner
7906085fcc warning patrol
Originally committed as revision 2925 to svn://svn.ffmpeg.org/ffmpeg/trunk
2004-03-24 23:32:48 +00:00
Roman Shaposhnik
5825425795 * removing casualties of battle of the wits and English language
Originally committed as revision 2902 to svn://svn.ffmpeg.org/ffmpeg/trunk
2004-03-18 04:19:34 +00:00
Roman Shaposhnik
6faa4645c5 * DV decoding/encoding now supports MultiThreading for up to 324 CPUs ;-)
Originally committed as revision 2893 to svn://svn.ffmpeg.org/ffmpeg/trunk
2004-03-14 23:45:42 +00:00
Roman Shaposhnik
380fd6b1b4 * DV decoder simplifications. Now it looks to be 6% faster. At least
on my desktop.
     * Misc. DV cleanups and fixes.

Originally committed as revision 2892 to svn://svn.ffmpeg.org/ffmpeg/trunk
2004-03-14 22:09:58 +00:00
Roman Shaposhnik
e7a18d5deb * moving some of the commonly used bit reading/writing functions
from common.c -> common.h so that they can be inlined.
         + performace gain ~1% (measured with DV decoding)
	 + code bloat 0.05%
      Looks like a win-win solution.

Originally committed as revision 2874 to svn://svn.ffmpeg.org/ffmpeg/trunk
2004-03-12 23:39:38 +00:00
Michael Niedermayer
ac548c5d1d 10000l
Originally committed as revision 2665 to svn://svn.ffmpeg.org/ffmpeg/trunk
2004-01-04 19:49:57 +00:00
Michael Niedermayer
a8380f44cf removing unused var & converting 64->32bit
Originally committed as revision 2567 to svn://svn.ffmpeg.org/ffmpeg/trunk
2003-12-05 23:12:03 +00:00
Roman Shaposhnik
e15c330246 * 3x encoding speedup. Finally we seem to be on par with libdv
in terms of time and we're doing slightly better w.r.t. to
     quality. I don't think there's much room for improvement
     left, but I'd like to try and vectorize a couple of things.
     Btw, any ideas on what may impact performance will be greatly
     appreciated.

Originally committed as revision 2532 to svn://svn.ffmpeg.org/ffmpeg/trunk
2003-11-27 01:40:13 +00:00
Michel Bardiaux
9b87956678 av_log() patch by (Michel Bardiaux <mbardiaux at peaktime dot be>)
Originally committed as revision 2469 to svn://svn.ffmpeg.org/ffmpeg/trunk
2003-11-03 13:26:22 +00:00
Roman Shaposhnik
10acc47995 * introducing dct248 into the DSP context.
* simple/accurate implementation of dct248
   * DV encoding now supports 2-4-8 DCT
   * DV encoding gets a bit faster (but still miles away
     from what I think it could do)
   * misc. DV codec cleanups

Originally committed as revision 2425 to svn://svn.ffmpeg.org/ffmpeg/trunk
2003-10-24 18:28:01 +00:00
Michael Niedermayer
9dad924e22 bottom_field_first -> top_field_first
Originally committed as revision 2402 to svn://svn.ffmpeg.org/ffmpeg/trunk
2003-10-20 10:33:13 +00:00
Roman Shaposhnik
2744ca9ac9 * providing MPEG codecs with a generic fields in AVFrame to use.
* fixing YUV4MPEG format.

    * fixing a bug in DV codec where coded_frame was not set.

Originally committed as revision 2396 to svn://svn.ffmpeg.org/ffmpeg/trunk
2003-10-18 03:19:44 +00:00
Roman Shaposhnik
00c28046e4 * fix for a trivial 100l declaration typo
Originally committed as revision 2393 to svn://svn.ffmpeg.org/ffmpeg/trunk
2003-10-16 04:50:54 +00:00
Michael Niedermayer
f539eb52fe align
Originally committed as revision 2389 to svn://svn.ffmpeg.org/ffmpeg/trunk
2003-10-15 16:20:50 +00:00
Alex Beregszaszi
ed7debda14 removed the obsolete and unused parameters of init_put_bits
Originally committed as revision 2366 to svn://svn.ffmpeg.org/ffmpeg/trunk
2003-10-12 21:25:00 +00:00
Roman Shaposhnik
86a7e11502 * recommiting change from SF CVS
Originally committed as revision 2350 to svn://svn.ffmpeg.org/ffmpeg/trunk
2003-10-11 01:41:41 +00:00
Roman Shaposhnik
4fa1c4fa8d * preAlpha DV encoding support -- there's still a truckload
of work to do, but it least people can try it out and share
      ideas. Please don't hesitate to give it a spin:

         $ ffmpeg -i file.avi file.dv

      is all you need.

    * fix for a deallocation bug in DV muxer

Originally committed as revision 2327 to svn://svn.ffmpeg.org/ffmpeg/trunk
2003-10-01 23:34:46 +00:00
Roman Shaposhnik
7458ccbb02 * DV handling was streamlined for both muxing/demuxing and
decoding. All muxing/demuxing functionality is now available
     in libavformat/dv.[ch].

   * dv1394.c and avidec.c were hooked up with general DV demuxer.

   * DVAUDIO is dead! Long live pcm_s16le!

   * DV audio is now always recognized -- which means we can
     now hear all those ducks quaking in pond.dv.

Originally committed as revision 2319 to svn://svn.ffmpeg.org/ffmpeg/trunk
2003-09-29 17:54:07 +00:00
Fabrice Bellard
df15903f27 removed unused variable
Originally committed as revision 2159 to svn://svn.ffmpeg.org/ffmpeg/trunk
2003-08-24 22:13:48 +00:00
Michael Niedermayer
62cf114b59 seems i guessed correctly (last 411 chroma block isnt scaled but cut and reordered)
Originally committed as revision 1888 to svn://svn.ffmpeg.org/ffmpeg/trunk
2003-05-16 21:47:02 +00:00
Michael Niedermayer
924311cd98 some libmpeg2 style bitstream reader fixes (no dv doesnt yet work with it)
Originally committed as revision 1874 to svn://svn.ffmpeg.org/ffmpeg/trunk
2003-05-14 10:54:25 +00:00
Michael Niedermayer
e20c40697c release buffer cleanup
Originally committed as revision 1839 to svn://svn.ffmpeg.org/ffmpeg/trunk
2003-05-06 20:43:37 +00:00
Roman Shaposhnik
ed543377a4 making it nicer to the client who doesn't expect errors messages in stdout
Originally committed as revision 1829 to svn://svn.ffmpeg.org/ffmpeg/trunk
2003-05-01 22:45:09 +00:00
Roman Shaposhnik
880e8ba730 * fixing NTSC frame rate for DV streams
* let ffmpeg preserve 'aspect_ratio' for recoding.
  Do we want to make it tweakable from the command line ?

Originally committed as revision 1827 to svn://svn.ffmpeg.org/ffmpeg/trunk
2003-04-29 01:51:38 +00:00
Michael Niedermayer
d90cf87b90 fixing mixed dr1 + internal buffers
Originally committed as revision 1820 to svn://svn.ffmpeg.org/ffmpeg/trunk
2003-04-25 00:29:48 +00:00
Michael Niedermayer
6aafe463e5 support for DV aspect ratio and erroneous audio patch by (Dan Dennedy (dan at dennedy dot org) and Roman Shaposhnick <rvs at sun dot com>)
Originally committed as revision 1731 to svn://svn.ffmpeg.org/ffmpeg/trunk
2003-04-04 13:45:45 +00:00
Roman Shaposhnik
deb0a292b0 AVI type 1 support patch by (Roman Shaposhnick <rvs at sun dot com>)
Originally committed as revision 1714 to svn://svn.ffmpeg.org/ffmpeg/trunk
2003-03-28 14:05:55 +00:00
Michael Niedermayer
14bea432f1 per context frame_rate_base, this should finally fix frame_rate related av sync issues
Originally committed as revision 1666 to svn://svn.ffmpeg.org/ffmpeg/trunk
2003-03-12 15:16:19 +00:00
Michael Niedermayer
983e3246b7 per file doxy
Originally committed as revision 1634 to svn://svn.ffmpeg.org/ffmpeg/trunk
2003-03-06 11:32:04 +00:00
Michael Niedermayer
b0368839ac MpegEncContext.(i)dct_* -> DspContext.(i)dct_*
bitexact cleanup

Originally committed as revision 1617 to svn://svn.ffmpeg.org/ffmpeg/trunk
2003-03-03 14:54:00 +00:00
Roman Shaposhnik
948c3a1397 support for PAL 4:1:1 SMPTE 314M DV streams patch by (Roman Shaposhnick <rvs at sun dot com>)
Originally committed as revision 1612 to svn://svn.ffmpeg.org/ffmpeg/trunk
2003-02-27 23:26:31 +00:00
Wolfgang Hesseler
7604246d1a more #ifdef CONFIG_ENCODERS patch by (Wolfgang Hesseler <qv at multimediaware dot com>) with modifications by me (s/WOLFGANG/CONFIG_ENCODERS/ and some other fixes)
Originally committed as revision 1588 to svn://svn.ffmpeg.org/ffmpeg/trunk
2003-02-16 23:05:38 +00:00
Zdenek Kabelac
0c1a9edad4 * UINTX -> uintx_t INTX -> intx_t
Originally committed as revision 1578 to svn://svn.ffmpeg.org/ffmpeg/trunk
2003-02-11 16:35:48 +00:00
Fabrice Bellard
425ed6e223 DV audio decoder by Roman Shaposhnick
Originally committed as revision 1514 to svn://svn.ffmpeg.org/ffmpeg/trunk
2003-01-27 09:21:30 +00:00
Michael Niedermayer
68f593b484 GetBitContext.size is allways multiplied by 8 -> use size_in_bits to avoid useless *8 in a few inner loops
Originally committed as revision 1486 to svn://svn.ffmpeg.org/ffmpeg/trunk
2003-01-21 17:34:12 +00:00
Michael Niedermayer
0e15384d9d fixing DCTELEM != short
Originally committed as revision 1462 to svn://svn.ffmpeg.org/ffmpeg/trunk
2003-01-15 19:21:21 +00:00
bubu
ccfddafbd9 warnings patch by (bubu <bubu at bubu dot net>)
Originally committed as revision 1386 to svn://svn.ffmpeg.org/ffmpeg/trunk
2003-01-01 15:10:45 +00:00
Michael Niedermayer
492cd3a920 AVVideoFrame -> AVFrame
Originally committed as revision 1327 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-12-09 12:03:43 +00:00
Michael Niedermayer
1e491e29c2 cleanup
adding AVVideoFrame
 moving quality, pict_type, key_frame, qscale_table, ... to AVVideoFrame
 removing obsolete variables in AVCodecContext
 skiping of MBs in b frames
 correctly initalizing AVCodecContext
 picture buffer cleanup

Originally committed as revision 1302 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-12-04 10:04:03 +00:00
Zdenek Kabelac
adb4328917 * not checking for get_buffer_callback - it would be user's error
* if DR1 is disabled in get_buffer_callback silently fallback to
  non-dr rendering

Originally committed as revision 1208 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-11-14 18:43:49 +00:00
Zdenek Kabelac
18f770162b * fixing some minor const warnings
Originally committed as revision 1205 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-11-12 15:00:04 +00:00
Zdenek Kabelac
eb4b3dd3c3 * using DSPContext - so each codec could use its local (sub)set of CPU extension
Originally committed as revision 1194 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-11-11 09:40:17 +00:00
Arpi
df1c67adda 10l - set pixelfmt (colorspace) _before_ calling get_buffer() callback
Originally committed as revision 1185 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-11-10 18:45:36 +00:00
Zdenek Kabelac
b0397e0e00 * DR1 support
Originally committed as revision 1157 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-11-04 18:03:10 +00:00
Fabrice Bellard
d017ab70f4 support buffers containing more than one frame
Originally committed as revision 1016 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-10-09 12:35:22 +00:00
Fabrice Bellard
1c05e11d02 fixed NTSC end of line bug
Originally committed as revision 1014 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-10-08 17:54:02 +00:00
Arpi
9e39878252 10l - MMX/FPU state was not restored, causing nonsense fpu behaviour in caller (mplayer)
Originally committed as revision 1011 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-10-07 23:08:42 +00:00
Arpi
e9feea594a DV ntsc support, 411P colorspace added
Originally committed as revision 1010 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-10-07 21:28:33 +00:00
Alex Beregszaszi
defdfc9aa0 moved dct init out from mpv_common_init to dct_common_init (for less-uglier way for dv)
Originally committed as revision 1002 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-10-04 20:59:29 +00:00
Fabrice Bellard
7be166e4ea simplified parsing - added MMX idct support
Originally committed as revision 1000 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-10-04 07:49:00 +00:00
Fabrice Bellard
5d2231ee8f first working version of DV video decoder
Originally committed as revision 998 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-10-03 21:07:39 +00:00