Log of /xvidcore/src/decoder.c
Parent Directory
Revision
1.81 -
(
view)
(
download)
(
annotate)
-
[select for diffs]
Thu May 28 15:42:06 2009 UTC (13 years, 10 months ago) by
Isibaar
Branch:
MAIN
Changes since
1.80: +9 -6 lines
Diff to
previous 1.80
,
to
selected 1.18
Bugfix:
- Added missing resync marker range check in decoder.c (reported by IBM X-Force. Thanks go to John McDonald and Christopher Valasek)
- return E_FAIL instead of S_FALSE upon XVID_ERR_MEMORY error in dshow frontend (reported by IBM X-Force. Thanks to John McDonald and Mark Dowd)
Revision
1.78 -
(
view)
(
download)
(
annotate)
-
[select for diffs]
Mon Mar 27 11:21:48 2006 UTC (17 years ago) by
Skal
Branch:
MAIN
Changes since
1.77: +2 -1 lines
Diff to
previous 1.77
,
to
selected 1.18
fix for the visual_object_verid vs. video_object_layer_verid
problem of 6.3.3, reported by Li Xiang (lixiang01 at gmail dot com)
Thanks for report and test bitstreams!
Revision
1.74 -
(
view)
(
download)
(
annotate)
-
[select for diffs]
Tue Sep 20 11:54:11 2005 UTC (17 years, 6 months ago) by
suxen_drol
Branch:
MAIN
Changes since
1.73: +2 -2 lines
Diff to
previous 1.73
,
to
selected 1.18
> > - uint32_t intra_dc_threshold; /* fake variable */
> > + int intra_dc_threshold; /* fake variable */
This patch fixes a warning spotted by gcc 4.0.1, because &intra_dc_threshold
is passed to some function which expects a int*, not a uint32_t* (on 64bit this
is important, even if this is fake data, the callee could corrupt the stack
writing 64bit to a 32bit allocated destination)
Revision
1.73 -
(
view)
(
download)
(
annotate)
-
[select for diffs]
Tue Sep 13 12:12:15 2005 UTC (17 years, 6 months ago) by
suxen_drol
Branch:
MAIN
Changes since
1.72: +1392 -1192 lines
Diff to
previous 1.72
,
to
selected 1.18
Field interlaced decoding, contributed by Christoph Kuehnel
decoder.c
=========
- Some new defines for DIV
- <decoder_mb_decode> modified: had wrong address offsets for interlaced
- <decoder_mbinter_field> = new function for interlaced
- <get_motion_vector_interlaced> = new function for interlaced motion vector prediction
- <decoder_pframe> modified so that it differs between frame and field prediction
global.h
========
- For field motion prediction MACORBLOCK has new member that is the average of
field1 and field2 motion vector = <mvs_avg>
xvid.c
======
- For field predicted macroblocks we need new field oriented transfer functions.
For colour calculations they may only process 4 lines (one field from the colour
macroblock that is 8x8). So I introduced 4 new function pointers:
<transfer8x4_copy, interpolate8x4_ ...)
mbcoding.c
==========
- _DEBUG code; index is checked against 64
interpolate8x8.[c,h,asm]
===========================
- New 8x4 functions
mbpredicition.[c,h]
===============
- New function <get_pmv2_interlaced> for interlaced prediciton according to spec
mem_transfer.[c,h,asm]
==============
- New 8x4 function
Revision
1.71 -
(
view)
(
download)
(
annotate)
-
[select for diffs]
Mon May 23 09:29:43 2005 UTC (17 years, 10 months ago) by
Skal
Branch:
MAIN
Changes since
1.70: +2 -2 lines
Diff to
previous 1.70
,
to
selected 1.18
encoder.c: simplify_time() optimized by Euclid.
bitstream.c: write_video_packet_header() was buggy and
kind of obfuscated, as noticed by Sigdrak at free.fr.
from Edouard:
gcc4 warning removal.
- No executable shared objects installed
(Do not install the lib as executable. It's no use as the SO has no
main symbol anyway, and the static lib is not runnable anyway.)
- Statically link xvid_bench with libxvidcore.a
- New autoconf garbage removal
- Quotes in configure.in
Revision
1.70 -
(
view)
(
download)
(
annotate)
-
[select for diffs]
Tue May 17 21:03:32 2005 UTC (17 years, 10 months ago) by
Skal
Branch:
MAIN
Changes since
1.69: +39 -71 lines
Diff to
previous 1.69
,
to
selected 1.18
encoder.c: better error handling upon MEM_ERROR
bitstream.c: faster log2bin (xvid_bench.c updated)
bitstream.c: added unused functions:
BitstreamWriteEndOfSequence()
BitstreamWriteGroupOfVopHeader()
write_video_packet_header()
Original input: sigdrak at free.fr and Angela Belda. Thanks.
Revision
1.69 -
(
view)
(
download)
(
annotate)
-
[select for diffs]
Sun Mar 27 03:59:41 2005 UTC (18 years ago) by
suxen_drol
Branch:
MAIN
Changes since
1.68: +22 -13 lines
Diff to
previous 1.68
,
to
selected 1.18
xvidcore
========
* added XVID_GLOBAL_DIVX5_USERDATA global flag
* removed the bvop delay warning text ("warning: nothing to output), as this often confuses joe user.
* minor changed to closed gop image_printf statement: s/"DX50 BVOP->PVOP"/"CLOSED GOP BVOP->PVOP"
* additional comments for low_delay_default mode within decoder_decode()
* divx userdata string: s/DivX999b000/DivX503b1393. this has been suggested by dxn for improved hardware compatibility [nb: i dont have a hardware player to confirm this]
* vbv_peakrate constraint is ignored if <= 0
vfw frontend
============
* dxn profiles now confirm to "DivX Certified Profile Compatibility v1.1", February 2005. this document was provided by DivXNetworks, USA. when a dxn profile is selected, strict conformance is enabled:
- force 1:1 picture aspect ratio
- disable bframes if interlacing is enabled
- force maximum of 1 consecutive bvops for the portable and ht profiles, 2 bvops for the hd profile
- always write divx 5 userdata string to bitstream
- force packed bitstream option
- updated dxn vbv parameters
* added PROFILE_4MV flag. 4mv is now disabled for the dxn handheld profile.
* moved PROFILE_AS/PROFILE_ARTS/PROFILE_S to config.c
* profile[].max_bitrate now measured in bit/sec (not kbps)
* profile->level box: widgets are now greyed-out if they are not used.
* increase vertical size of profile drop down list.
* about box button: s/Dismiss/OK
Revision
1.65 -
(
view)
(
download)
(
annotate)
-
[select for diffs]
Tue Aug 10 21:58:55 2004 UTC (18 years, 7 months ago) by
edgomez
Branch:
MAIN
Changes since
1.64: +29 -64 lines
Diff to
previous 1.64
,
to
selected 1.18
Decoder speedups: merge interpolation and dst averaging for bvop blocks, unify qpel framework (should slow things for PPC until new functions get merged)
Revision
1.53 -
(
view)
(
download)
(
annotate)
-
[select for diffs]
Sat Apr 10 04:30:07 2004 UTC (18 years, 11 months ago) by
suxen_drol
Branch:
MAIN
Changes since
1.52: +2 -1 lines
Diff to
previous 1.52
,
to
selected 1.18
stats->type set to NOTHING by default
in some instances stats->type was not being set (namely lowdelay=1, packed=1, type=nvop).
Revision
1.49.2.20 -
(
view)
(
download)
(
annotate)
-
[select for diffs]
Sun Nov 30 16:13:15 2003 UTC (19 years, 4 months ago) by
edgomez
Branch:
dev-api-4
Changes since
1.49.2.19: +13 -3 lines
Diff to
previous 1.49.2.19
, to
branch point 1.49
,
to
selected 1.18
* Thread safe MPEG4 quantization functions.
Cleaned up version of patch provided by Michael
- fixed compiling problems on gcc
- added const qualifiers every where it was possible to help C compiler
optimization.
- added the mpeg_quant_matrices param to all ASM function prototype
in comments (even if it's not used, that shows we do it deliberatly)
- forces m[intra][0][0] = 8, otherwise XviD could write invalid streams.
* Added real CRC computing in xvid_bench.c
Revision
1.49.2.19 -
(
view)
(
download)
(
annotate)
-
[select for diffs]
Thu Nov 13 22:35:30 2003 UTC (19 years, 4 months ago) by
edgomez
Branch:
dev-api-4
Changes since
1.49.2.18: +11 -23 lines
Diff to
previous 1.49.2.18
, to
branch point 1.49
,
to
selected 1.18
* encoder.c: GMC code fix in encoder.c. Now gmcval is initialized
correctly when using GME.
* xvid_decraw.c: Fix elementary stream output.
* plugin_2pass2.c: Small parsing bug in stats reading in 2pass2.
* decoder.c: Read resync markers in bframes.
Revision
1.49.2.5 -
(
view)
(
download)
(
annotate)
-
[select for diffs]
Thu May 22 16:34:05 2003 UTC (19 years, 10 months ago) by
edgomez
Branch:
dev-api-4
Changes since
1.49.2.4: +18 -18 lines
Diff to
previous 1.49.2.4
, to
branch point 1.49
,
to
selected 1.18
Removed this annoying \n from DPRINTF output. DPRINTF behaves
now like usual printf.
Just for fun, i decided to exercice my regexp skills:
for i in `find . -name "*.c"` ; do
sed s/'\(DPRINTF(XVID_DEBUG.*\)"\([^"]\+[^\\][^n]\)"\(.*\)$'/'\1"\2\\n"\3'/g $i > $i.tmp;
mv $i.tmp $i
done
Nice isn't it ? It just adds a \n to every DPRINTF call that
was relying on old behavior (automatic trailing \n).
Revision
1.49.2.4 -
(
view)
(
download)
(
annotate)
-
[select for diffs]
Sat May 17 13:24:10 2003 UTC (19 years, 10 months ago) by
suxen_drol
Branch:
dev-api-4
Changes since
1.49.2.3: +18 -18 lines
Diff to
previous 1.49.2.3
, to
branch point 1.49
,
to
selected 1.18
* dynamic bvop decision stats bug fixed
* added runtime debug level option. this only only activated when _DEBUG is defined.
level is specified globaly, via "xvid_glb_init_t.debug" and XVID_DEBUG_xxx defines.
references to previous DPRINTF_LEVEL_xxx's have been replaced throughout libxvidcore
* futher bitrate zone fixes for plugin_2pass2.c
* removed old ratecontrol.c from msvc project
* xvid_encraw.c specifc:
* added "-max_key_interval integer" option
* renamed -debug to -vop_debug
* added "-debug integer" option, which sets xvid_gbl_init_t.debug field
* s/length/len/ status line
* vfw specific:
* zone/bitrate typos fixed ("you eediot")
* renamed "debug" regkey to "vop_debug"
* added "debug" regeky and textbox which sets xvid_gbl_init_t.debug field
Revision
1.48 -
(
view)
(
download)
(
annotate)
-
[select for diffs]
Mon Feb 17 23:33:12 2003 UTC (20 years, 1 month ago) by
edgomez
Branch:
MAIN
Changes since
1.47: +81 -119 lines
Diff to
previous 1.47
,
to
selected 1.18
- GPL Header
- ANSI C comments
- Min Chen removed from comments (no offense, the name will be added
to the header when i'll restore copyrights just like i did for 0.9.x)
Revision
1.46 -
(
view)
(
download)
(
annotate)
-
[select for diffs]
Tue Feb 11 21:56:31 2003 UTC (20 years, 1 month ago) by
edgomez
Branch:
MAIN
CVS Tags:
release-0_9_1,
release-0_9_2
Branch point for:
release-0_9_1-fixes
Changes since
1.45: +10 -616 lines
Diff to
previous 1.45
,
to
selected 1.18
patch-13
More "unknown compiler" friendly portab.h file.
patch-14
The PPC port is now disabled because it is outdated.
patch-15
Added the configure bootstrap script.
patch-16
Changed linking option on PPC platforms (-flat_namespace)
patch-17
Added IA64 DCT source choice according to the compiler basename.
patch-18
Fixed xvid_encraw help message.
patch-19
Fixed libxvidcore.def, revamped Makefile output, fixed ia64 build, added ranlib detection.
patch-20
Removed BFrame outdated bframe/qpel decoding.
Revision
1.18 -
(
view)
(
download)
(
annotate)
-
[selected]
Mon May 20 17:12:53 2002 UTC (20 years, 10 months ago) by
Isibaar
Branch:
MAIN
Changes since
1.17: +10 -2 lines
Diff to
previous 1.17
#define BFRAMES
Revision
1.7 -
(
view)
(
download)
(
annotate)
-
[select for diffs]
Thu Mar 28 20:57:24 2002 UTC (21 years ago) by
edgomez
Branch:
MAIN
Changes since
1.6: +77 -82 lines
Diff to
previous 1.6
,
to
selected 1.18
Big patch, use it with care (tests done with GNU/Linux) :
- Trivial warnings in encoder.c line 282 ret1 = ret 2 = 0;
- Lot of "New line at end of file missing" warnings fixed (gcc3)
- All 2d arrays have been turned into 1d arrays
To force alignment of matrices on stack, use DECLARE_ALIGNED_MATRIX
(read portab.h)
Win32 users should give feedback.
This form allows you to request diffs between any two revisions of this file.
For each of the two "sides" of the diff,
select a symbolic revision name using the selection box, or choose
'Use Text Field' and enter a numeric revision.