Log of /branches/dev-api-4/xvidcore/src/encoder.c
Parent Directory
Revision
1344 -
(
view)
(
download)
(
annotate)
-
[select for diffs]
Modified
Fri Jan 30 18:53:50 2004 UTC (20 years, 2 months ago) by
chl
File length: 62209 byte(s)
Diff to
previous 1285
,
to
selected 686
Renamed colorspaces to match standard (MPEG's internal format is YCbCr)
Users of internal API: Please use CSP_PLANAR now instead of CSP_USER.
Revision
1230 -
(
view)
(
download)
(
annotate)
-
[select for diffs]
Modified
Sun Nov 30 16:13:16 2003 UTC (20 years, 4 months ago) by
edgomez
File length: 61024 byte(s)
Diff to
previous 1221
,
to
selected 686
* 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
1212 -
(
view)
(
download)
(
annotate)
-
[select for diffs]
Modified
Sun Nov 16 15:32:38 2003 UTC (20 years, 4 months ago) by
edgomez
File length: 61753 byte(s)
Diff to
previous 1210
,
to
selected 686
Valgrind reported lot of unitialized reads. These unitialized reads
helped sysKin finding three bugs:
- ZeroMacroblock did not reset the cbp field. So for some skipped
blocks, a test was done on the cbp value...
- MEanalysis was using wrong mvs from the current bvop (unitialized
or just wrong in current context). That's because in devapi3,
bframes used to share the same mvs array wheras now, it's one array
a bvop.
- Collocated skipped MBs for a bvop didn't reset mvs[0] and b_mvs[0].
Revision
1204 -
(
view)
(
download)
(
annotate)
-
[select for diffs]
Modified
Thu Nov 13 22:35:30 2003 UTC (20 years, 4 months ago) by
edgomez
File length: 61608 byte(s)
Diff to
previous 1202
,
to
selected 686
* 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
1202 -
(
view)
(
download)
(
annotate)
-
[select for diffs]
Modified
Sun Nov 9 20:49:21 2003 UTC (20 years, 4 months ago) by
edgomez
File length: 61627 byte(s)
Diff to
previous 1201
,
to
selected 686
New two pass code. I may say it's just a fixed version, though it looks
more like a "take all the ideas and write it again" version. It performs
better with all natural sequences i have and a bit worse with anime.
Including it now, allow me improving the code during the beta releases.
Revision
1201 -
(
view)
(
download)
(
annotate)
-
[select for diffs]
Modified
Sun Nov 9 20:47:14 2003 UTC (20 years, 4 months ago) by
edgomez
File length: 61527 byte(s)
Diff to
previous 1200
,
to
selected 686
* transfer_8to16_sub2_(c|mmx|xmm|3dne) write back the compensated
result to current frame pointer.
* transfer_8to16_sub2_mmx uses proper rounding (a+b+1)/2. The +1
operation was missing.
* Blocks skipped in bframes must be compensated for psnr computing.
Revision
1200 -
(
view)
(
download)
(
annotate)
-
[select for diffs]
Modified
Wed Nov 5 16:15:47 2003 UTC (20 years, 4 months ago) by
edgomez
File length: 61373 byte(s)
Diff to
previous 1189
,
to
selected 686
Patch from syskin.
* This patch avoids calling setedges and interpolate for uneeded cases:
- setedges is only called once per frame.
- interpolate is called only when the previous rounding
was different from the one needed.
* Interpolation has been optimized a bit for qpel case, we do the
hv pass down to top to use the cache more efficiently (hope so).
Revision
1038 -
(
view)
(
download)
(
annotate)
-
[select for diffs]
Modified
Thu May 22 16:36:07 2003 UTC (20 years, 10 months ago) by
edgomez
File length: 61913 byte(s)
Diff to
previous 1031
,
to
selected 686
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
1031 -
(
view)
(
download)
(
annotate)
-
[select for diffs]
Modified
Sat May 17 13:26:51 2003 UTC (20 years, 10 months ago) by
suxen_drol
File length: 61888 byte(s)
Diff to
previous 1029
,
to
selected 686
* 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
1025 -
(
view)
(
download)
(
annotate)
-
[select for diffs]
Modified
Thu May 15 13:00:37 2003 UTC (20 years, 10 months ago) by
suxen_drol
File length: 60734 byte(s)
Diff to
previous 1014
,
to
selected 686
removedr XVID_DYNAMIC_BFRAMES from enc_encode() main loop.
the frame type return by MEAnalysis will now be respected, unless the bframe buffer is full.
Revision
920 -
(
view)
(
download)
(
annotate)
-
[select for diffs]
Modified
Sat Mar 15 14:32:56 2003 UTC (21 years ago) by
suxen_drol
File length: 58343 byte(s)
Diff to
previous 919
,
to
selected 686
enc_encode CLOSE_GOP fixed, further cleanup
XVID_REQORIGINAL plugin support
plugin examples: xvid_plugin_psnr, xvid_plugin_dump
Revision
914 -
(
view)
(
download)
(
annotate)
-
[select for diffs]
Modified
Mon Mar 10 00:38:49 2003 UTC (21 years ago) by
edgomez
File length: 52829 byte(s)
Diff to
previous 910
,
to
selected 686
2003-03-10 00:36:15 GMT Edouard Gomez <ed.gomez@free.fr> patch-4
Summary:
Adds extended stats support even for bframes in xvidcore.
Revision:
xvidcore--devapi4--1.0--patch-4
This patch enables core extended stats support even for bframes. It
modifies the way the MBTransQuantBVOP function does its work. It used
to not dequant, idct the MB because bframes are never used as reference
frames. However if we want to compute stats, then we must perform these
inverse transformations.
modified files:
src/encoder.c src/utils/mbfunctions.h src/utils/mbtransquant.c
Revision
78 -
(
view)
(
download)
(
annotate)
-
[select for diffs]
Modified
Thu Mar 28 20:57:25 2002 UTC (22 years ago) by
edgomez
Original Path:
trunk/xvidcore/src/encoder.c
File length: 15752 byte(s)
Diff to
previous 73
,
to
selected 686
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,
enter a numeric revision.