Commit Graph

220 Commits

Author SHA1 Message Date
BERO
d4961b3523 fastdiv patch by (BERO <bero at geocities dot co dot jp>) with fixes & cleanup by me
Originally committed as revision 1879 to svn://svn.ffmpeg.org/ffmpeg/trunk
2003-05-14 15:12:13 +00:00
BERO
05858889b2 decode motion & modulo optimize patch by (BERO <bero at geocities dot co dot jp>)
Originally committed as revision 1872 to svn://svn.ffmpeg.org/ffmpeg/trunk
2003-05-14 01:08:02 +00:00
Michael Niedermayer
a0c8317396 2pass stats fix (by ffdshow cvslog)
Originally committed as revision 1822 to svn://svn.ffmpeg.org/ffmpeg/trunk
2003-04-25 19:46:00 +00:00
Michael Niedermayer
7bc9090a41 simplified adressing of most mb based arrays (mb_x + mb_y*s->mb_stride) now instead of mb_x + mb_y*mb_width and 1+mb_x + (1+mb_y)*(mb_width+2) and ... mixture
more direct use of the new mb_type stuff instead of codec specific stuff
runtime mb_type debug output h264/h263 variants/mpeg1/2/4
error concealment /resilience for mpeg1/2
various minor optimizations

Originally committed as revision 1746 to svn://svn.ffmpeg.org/ffmpeg/trunk
2003-04-10 13:18:38 +00:00
Michael Niedermayer
4d2a48349d msmpeg4 2pass support & some related cleanup
Originally committed as revision 1724 to svn://svn.ffmpeg.org/ffmpeg/trunk
2003-04-02 09:57:34 +00:00
Michael Niedermayer
1f9aea9b91 fixing msmpeg4v2 encoding
Originally committed as revision 1723 to svn://svn.ffmpeg.org/ffmpeg/trunk
2003-04-01 15:38:01 +00:00
Michael Niedermayer
46b4feec06 error resilience cleanup (its faster too...)
Originally committed as revision 1692 to svn://svn.ffmpeg.org/ffmpeg/trunk
2003-03-20 01:00:57 +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
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
Michael Niedermayer
ae2d2d6c41 check for qscale==0 (fixes 1/0 on one corrupted stream)
Originally committed as revision 1574 to svn://svn.ffmpeg.org/ffmpeg/trunk
2003-02-10 22:43:30 +00:00
Zdenek Kabelac
5c91a6755b * static,const,compiler warning cleanup
Originally committed as revision 1567 to svn://svn.ffmpeg.org/ffmpeg/trunk
2003-02-10 09:35:32 +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
2826984994 fixed wmv2 slices
Originally committed as revision 1425 to svn://svn.ffmpeg.org/ffmpeg/trunk
2003-01-09 11:37:08 +00:00
Michael Niedermayer
1457ab5233 qpel encoding
4mv+b frames encoding finally fixed
chroma ME
5 comparission functions for ME
b frame encoding speedup
wmv2 codec (unfinished)
user specified diamond size for EPZS

Originally committed as revision 1365 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-12-27 23:51:46 +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
Michael Niedermayer
b8a78f419d reversing header game
MIN/MAX -> FFMIN/FFMAX

Originally committed as revision 1184 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-11-10 11:46:59 +00:00
Michael Niedermayer
060f89b328 mergeing inter & intra rl_length tables (50% smaller & no meassureable difference in filesize/quality)
Originally committed as revision 1078 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-10-27 12:20:58 +00:00
Michael Niedermayer
f3c09da19f 75% smaller rl_length table
Originally committed as revision 1077 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-10-27 12:09:25 +00:00
Michael Niedermayer
917f58279d fixing decoding of streams with no keyframe at the start
Originally committed as revision 1072 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-10-25 16:06:32 +00:00
Michael Niedermayer
fc48cbad5b fixing msmpeg4v3 encoding at bitrates <128k
Originally committed as revision 1052 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-10-20 17:02:41 +00:00
Michael Niedermayer
26893f6bd4 fixing wmv1 slice decoding
Originally committed as revision 1031 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-10-13 19:53:32 +00:00
Michael Niedermayer
4d2858deac better/cleaner error resilience (done in a 2nd pass after decoding)
h263/mpeg4 out of order slice decoding

Originally committed as revision 1030 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-10-13 13:16:04 +00:00
Fabrice Bellard
18f4e34ff6 removed unused variables
Originally committed as revision 1027 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-10-11 13:49:16 +00:00
Michael Niedermayer
2ad1516a6c idct permutation cleanup, idct can be selected per context now
fixing some threadunsafe code

Originally committed as revision 980 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-09-29 22:44:22 +00:00
Michael Niedermayer
62959862df faster vlc table selection
Originally committed as revision 848 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-08-09 00:13:54 +00:00
Michael Niedermayer
159d10fc2c hopefully fixing unreprodceable segfault when overreading the end if error_resilience==-1 (it didnt overread here though)
Originally committed as revision 841 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-08-04 19:28:27 +00:00
Michael Niedermayer
5507833249 supporting rare overflow mess even with error_resilience>=0
Originally committed as revision 839 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-08-04 16:46:18 +00:00
Michael Niedermayer
44273f1951 making some error checks optional
Originally committed as revision 838 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-08-04 16:21:41 +00:00
Michael Niedermayer
05174fd411 fixing bitrate vs. kbitrate in header
fixing wmv1 decoder (was broken during some optimizations ...)
inter-intra prediction encoding

Originally committed as revision 786 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-07-22 08:15:27 +00:00
Michael Niedermayer
1a013246fb fixes fire.avi & subtitles.avi
Originally committed as revision 769 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-07-17 09:15:14 +00:00
Michael Niedermayer
0fd90455ec uvlinesize
export has_b_frames
mb_skip with more than 2 ip buffers

Originally committed as revision 762 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-07-15 14:15:10 +00:00
Michael Niedermayer
45a82edbdd rl vlc decoding optimizations
Originally committed as revision 748 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-07-13 14:55:12 +00:00
Michael Niedermayer
08dce7b02f get_vlc() optimizations
Originally committed as revision 737 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-07-10 20:05:42 +00:00
Michael Niedermayer
de0f2f4cca wmv1 slice_height != mb_height support
encoding of slice_height != mb_height
1bit shorter wmv1 headers if bit_rate<50 !? ROTFL M$ is even more stupid than i thought
using dc of non intra blocks for dc prediction of wmv1 if bitrate < 129 && res < 320x240

Originally committed as revision 723 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-07-07 08:34:46 +00:00
Michael Niedermayer
bd5e1c72f8 fixing wmv1 bugs, it was foolish to belive that m$ would use the same dc prediction as mpeg4 just cuz they changed it a bit from msmpeg4v3
Originally committed as revision 700 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-06-22 15:52:25 +00:00
Michael Niedermayer
f5957f3fe2 wmv1 support
dc scale optimisation
better ac table selection for msmpeg4

Originally committed as revision 696 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-06-18 00:49:00 +00:00
Fabrice Bellard
d81c598383 fixed multiple allocation bug
Originally committed as revision 675 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-06-06 14:31:18 +00:00
Falk Hüffner
20695ec921 Minor warning cleanup.
Originally committed as revision 654 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-06-03 11:16:11 +00:00
Michael Niedermayer
287229e554 msmpeg4v1 decoding
Originally committed as revision 643 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-06-02 12:22:30 +00:00
Zdenek Kabelac
cd4af68ad5 * started to cleanup name clashes for onetime compilation
Originally committed as revision 617 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-05-27 16:42:14 +00:00
Fabrice Bellard
ff4ec49e64 license/copyright change
Originally committed as revision 599 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-05-25 22:45:33 +00:00
Michael Niedermayer
92ba5ffbb5 workaround dc_scale bug in old ffmpeg msmpeg4v3 encoder (set workaround_bugs=1 for this)
Originally committed as revision 561 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-05-21 23:13:57 +00:00
Fabrice Bellard
6000abfa89 removed useless header includes - use av memory functions
Originally committed as revision 522 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-05-18 23:03:29 +00:00
Michael Niedermayer
bb71e31757 fixing msmpeg4v3 dc-scale for quantizers 24-31
Originally committed as revision 427 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-04-30 01:29:29 +00:00
Michael Niedermayer
e1a9dbffed wmv1 header parser (unfinished)
Originally committed as revision 380 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-04-06 22:29:37 +00:00
Michael Niedermayer
3825cd1d55 msmpeg4v2 encoding
Originally committed as revision 379 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-04-05 21:04:09 +00:00
Michael Niedermayer
2ed627e64e fixing msmpeg4v2 bugs (is bugfree now afaik)
Originally committed as revision 378 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-04-05 16:51:12 +00:00
Michael Niedermayer
84afee348f msmpeg4v2 decoding (no encoding yet)
Originally committed as revision 376 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-04-05 04:09:04 +00:00
Michael Niedermayer
7f89b6fbdc msmpeg4v2 header parser & some dump bits code behind #if 0
Originally committed as revision 368 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-03-29 02:07:25 +00:00
Michael Niedermayer
dbbe89994b minor optimizations / simplifications
Originally committed as revision 367 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-03-29 01:53:59 +00:00
Michael Niedermayer
2b9ab1d54a fixing msmpeg4 decoding if fps < 16 (i thought it was a indicator for the ext header, its the fps indeed)
Originally committed as revision 313 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-02-22 19:19:01 +00:00
Zdenek Kabelac
38d171ebbe * simplified indexing
* ignoring error from msmpeg4_decode_block

Originally committed as revision 307 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-02-18 09:34:54 +00:00
Michael Niedermayer
fa778d53ad workaround gcc 2.95.2 bug
Originally committed as revision 289 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-02-09 00:38:44 +00:00
Michael Niedermayer
6fe84b4327 use multiply instead of divides for DC prediction on X86
Originally committed as revision 286 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-02-05 22:51:23 +00:00
Zdenek Kabelac
320680d420 * temporal solution for shared lib compilation
* using ALPHA code optimalization for non ARCH_I386

Originally committed as revision 282 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-01-28 18:06:28 +00:00
Nick Kurshev
1e98dffb7a Alpha optimizations by Falk Hueffner <falk.hueffner@student.uni-tuebingen.de>
Originally committed as revision 274 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-01-20 14:48:02 +00:00
Michael Niedermayer
ae40484c1c (commit by michael)
bye bye weird al rounding bug ;)

Originally committed as revision 268 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-01-15 22:22:41 +00:00
Michael Niedermayer
6f903d8e27 (commit by michael)
16-bit divide instead of 32-bit on x86 in msmpeg_pred_dc()

Originally committed as revision 264 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-01-14 04:34:52 +00:00
Michael Niedermayer
99180fe39d (commit by michael)
new msmpeg4 dequantizer did dequantize too early

Originally committed as revision 261 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-01-13 06:12:35 +00:00
Michael Niedermayer
badaf88eeb (commit by michael)
dequantizers skip trailing zeros
msmpeg4 non-intra decoder has its dequantizer "build in" now

Originally committed as revision 260 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-01-13 04:59:37 +00:00
Michael Niedermayer
6fb904ce30 s->c_dc_scale was 7 if s->qscale==2 but should be 8 (the bug is visible in deep red areas in high bitrate clips) - patch by Michael Niedermayer <michaelni@gmx.at>
Originally committed as revision 255 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-01-11 21:27:04 +00:00
Michael Niedermayer
3046f265b9 fix slices when code=0x18, patch by Michael Niedermayer <michael@mplayer.dev.hu>
Originally committed as revision 246 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-01-08 00:21:41 +00:00
Zdenek Kabelac
525782f33f * prevent crash in decoder
Originally committed as revision 179 to svn://svn.ffmpeg.org/ffmpeg/trunk
2001-10-23 19:02:55 +00:00
Fabrice Bellard
2cb1773ddc fixed mb_intra_vlc decoding table size
Originally committed as revision 61 to svn://svn.ffmpeg.org/ffmpeg/trunk
2001-08-11 18:56:40 +00:00
Fabrice Bellard
98be975df1 types fix
Originally committed as revision 36 to svn://svn.ffmpeg.org/ffmpeg/trunk
2001-08-06 00:47:50 +00:00
Arpi
612476ef9b get_bits() specialization, gives 4\speedup
Originally committed as revision 32 to svn://svn.ffmpeg.org/ffmpeg/trunk
2001-08-04 00:46:50 +00:00
Fabrice Bellard
3bb4e23a8a added skip macroblock optimization (big perf win on black regions for example)
Originally committed as revision 13 to svn://svn.ffmpeg.org/ffmpeg/trunk
2001-07-24 20:43:41 +00:00
Fabrice Bellard
de6d9b6404 Initial revision
Originally committed as revision 5 to svn://svn.ffmpeg.org/ffmpeg/trunk
2001-07-22 14:18:56 +00:00