x262.git
15 years ago * all: Patches by Loren Merritt:
Laurent Aimar [Wed, 22 Sep 2004 07:07:48 +0000 (07:07 +0000)]
 * all: Patches by Loren Merritt:
"Improved patch. Now supports subpel ME on all candidate MB types,
not just on the winner.

subpel_refine: (completely different scale from before)
0 => halfpel only
1 => 1 iteration of qpel on the winner (same as x264 r46)
2 => 2 iterations of qpel (about the same as my earlier patch, but faster
3 => halfpel on all MB types, qpel on the winner
4 => qpel on all
5 => more iterations

benchmarks:
mencoder dvd://1 -ovc x264 -x264encopts
qp_constant=19:fullinter:cabac:iframe=200:psnr

subpel_refine=1:  PSNR Global:46.82 kb/s:1048.1 fps:17.335
subpel_refine=2:  PSNR Global:46.83 kb/s:1034.4 fps:16.970
subpel_refine=3:  PSNR Global:46.84 kb/s:1023.3 fps:14.770
subpel_refine=4:  PSNR Global:46.87 kb/s:1010.8 fps:11.598
subpel_refine=5:  PSNR Global:46.88 kb/s:1006.9 fps:10.824"

 And

"The current code for calculating the cost of encoding which reference
frame a MB is predicted from, introduces a bias towards ref0 and
against P16x16.
Removing this bias produces an improvement of .4% - 2% bitrate,
depending on content and number of reference frames."

git-svn-id: svn://svn.videolan.org/x264/trunk@47 df754926-b1dd-0310-bc7b-ec298dee348c

15 years ago * x264: added --ipratio --pbratio in help section.
Laurent Aimar [Sun, 29 Aug 2004 12:02:50 +0000 (12:02 +0000)]
 * x264: added --ipratio --pbratio in help section.

git-svn-id: svn://svn.videolan.org/x264/trunk@46 df754926-b1dd-0310-bc7b-ec298dee348c

15 years ago * ratecontrol: path by Loren Merritt.
Laurent Aimar [Sun, 29 Aug 2004 11:32:34 +0000 (11:32 +0000)]
 * ratecontrol: path by Loren Merritt.

 "Use average qp instead of last qp in the frame for 2pass rc.
 (Improves quality and rate accuracy if the first pass was cbr.)"

git-svn-id: svn://svn.videolan.org/x264/trunk@45 df754926-b1dd-0310-bc7b-ec298dee348c

15 years ago * x264: added --quiet and --no-psnr.
Laurent Aimar [Sat, 28 Aug 2004 22:30:44 +0000 (22:30 +0000)]
 * x264: added --quiet and --no-psnr.

git-svn-id: svn://svn.videolan.org/x264/trunk@44 df754926-b1dd-0310-bc7b-ec298dee348c

15 years ago * eval.c: lalala ;)
Laurent Aimar [Sat, 28 Aug 2004 22:19:47 +0000 (22:19 +0000)]
 * eval.c: lalala ;)

git-svn-id: svn://svn.videolan.org/x264/trunk@43 df754926-b1dd-0310-bc7b-ec298dee348c

15 years ago * added Loren Merritt.
Laurent Aimar [Sat, 28 Aug 2004 22:19:15 +0000 (22:19 +0000)]
 * added Loren Merritt.

git-svn-id: svn://svn.videolan.org/x264/trunk@42 df754926-b1dd-0310-bc7b-ec298dee348c

15 years ago * all: added eval.c (I hope libx264.dsp is correct, I can't test).
Laurent Aimar [Sat, 28 Aug 2004 22:16:48 +0000 (22:16 +0000)]
 * all: added eval.c (I hope libx264.dsp is correct, I can't test).

git-svn-id: svn://svn.videolan.org/x264/trunk@41 df754926-b1dd-0310-bc7b-ec298dee348c

15 years ago * all: 2pass patch by Loren Merritt <lorenm AT u.washington DOT edu>
Laurent Aimar [Sat, 28 Aug 2004 22:14:26 +0000 (22:14 +0000)]
 * all: 2pass patch by Loren Merritt <lorenm AT u.washington DOT edu>

 "Mostly borrowed from libavcodec.
 There is not much theoretical basis behind my choice of defaults for
 rc_eq, qcompress, qblur, and ip_factor."

git-svn-id: svn://svn.videolan.org/x264/trunk@40 df754926-b1dd-0310-bc7b-ec298dee348c

15 years ago * all: first part of the 2pass patch by Loren Merritt
Laurent Aimar [Sat, 28 Aug 2004 19:24:08 +0000 (19:24 +0000)]
 * all: first part of the 2pass patch by Loren Merritt
 (only the header/textures bits computed for now).

git-svn-id: svn://svn.videolan.org/x264/trunk@39 df754926-b1dd-0310-bc7b-ec298dee348c

15 years ago * all: include stdarg.h (needed for x264_log)
Laurent Aimar [Sun, 22 Aug 2004 15:01:46 +0000 (15:01 +0000)]
 * all: include stdarg.h (needed for x264_log)

git-svn-id: svn://svn.videolan.org/x264/trunk@38 df754926-b1dd-0310-bc7b-ec298dee348c

15 years agoUse x264_log() in ratecontrol.c
Måns Rullgård [Wed, 18 Aug 2004 09:28:56 +0000 (09:28 +0000)]
Use x264_log() in ratecontrol.c

git-svn-id: svn://svn.videolan.org/x264/trunk@37 df754926-b1dd-0310-bc7b-ec298dee348c

15 years ago * encoder/encoder.c: oops. (fixed compilation).
Laurent Aimar [Tue, 17 Aug 2004 21:08:23 +0000 (21:08 +0000)]
 * encoder/encoder.c: oops. (fixed compilation).

git-svn-id: svn://svn.videolan.org/x264/trunk@36 df754926-b1dd-0310-bc7b-ec298dee348c

15 years ago * all: more fprintf -> x264_log.
Laurent Aimar [Tue, 17 Aug 2004 20:39:03 +0000 (20:39 +0000)]
 * all: more fprintf -> x264_log.

git-svn-id: svn://svn.videolan.org/x264/trunk@35 df754926-b1dd-0310-bc7b-ec298dee348c

15 years ago * all: added a x264_param_t.analyse.b_psnr
Laurent Aimar [Tue, 17 Aug 2004 20:27:05 +0000 (20:27 +0000)]
 * all: added a x264_param_t.analyse.b_psnr

git-svn-id: svn://svn.videolan.org/x264/trunk@34 df754926-b1dd-0310-bc7b-ec298dee348c

15 years ago * encoder/encoder.c: kb/s with k=1000 (more consistant). Patch by Loren
Laurent Aimar [Tue, 17 Aug 2004 20:03:46 +0000 (20:03 +0000)]
 * encoder/encoder.c: kb/s with k=1000 (more consistant). Patch by Loren
Merritt <lorenm AT u DOT washington DOT edu>

git-svn-id: svn://svn.videolan.org/x264/trunk@33 df754926-b1dd-0310-bc7b-ec298dee348c

15 years ago * all: introduced a x264_log function. It's not yet used everywhere
Laurent Aimar [Tue, 17 Aug 2004 19:56:36 +0000 (19:56 +0000)]
 * all: introduced a x264_log function. It's not yet used everywhere
 but we should start using it :)

git-svn-id: svn://svn.videolan.org/x264/trunk@32 df754926-b1dd-0310-bc7b-ec298dee348c

15 years ago OS X is missing exp2f()
Eric Petit [Mon, 16 Aug 2004 08:52:05 +0000 (08:52 +0000)]
 OS X is missing exp2f()

git-svn-id: svn://svn.videolan.org/x264/trunk@31 df754926-b1dd-0310-bc7b-ec298dee348c

15 years agoFixed warnings with PPC 64
Eric Petit [Mon, 16 Aug 2004 08:47:51 +0000 (08:47 +0000)]
Fixed warnings with PPC 64

git-svn-id: svn://svn.videolan.org/x264/trunk@30 df754926-b1dd-0310-bc7b-ec298dee348c

15 years agoAdd my svn user name.
Måns Rullgård [Fri, 13 Aug 2004 13:36:14 +0000 (13:36 +0000)]
Add my svn user name.

git-svn-id: svn://svn.videolan.org/x264/trunk@29 df754926-b1dd-0310-bc7b-ec298dee348c

15 years agoBugfix.
Måns Rullgård [Fri, 13 Aug 2004 13:34:47 +0000 (13:34 +0000)]
Bugfix.

git-svn-id: svn://svn.videolan.org/x264/trunk@28 df754926-b1dd-0310-bc7b-ec298dee348c

15 years agoInclude timing info in VUI.
Måns Rullgård [Thu, 12 Aug 2004 20:52:24 +0000 (20:52 +0000)]
Include timing info in VUI.
Change frame rate from float to fraction (sorry for the inconvenience).

git-svn-id: svn://svn.videolan.org/x264/trunk@27 df754926-b1dd-0310-bc7b-ec298dee348c

15 years agoAdd TAGS rule.
Måns Rullgård [Thu, 12 Aug 2004 13:07:41 +0000 (13:07 +0000)]
Add TAGS rule.

git-svn-id: svn://svn.videolan.org/x264/trunk@26 df754926-b1dd-0310-bc7b-ec298dee348c

15 years agoFixes by Loren Merritt (lorenm at u.washington.edu).
Måns Rullgård [Wed, 11 Aug 2004 20:24:20 +0000 (20:24 +0000)]
Fixes by Loren Merritt (lorenm at u.washington.edu).

git-svn-id: svn://svn.videolan.org/x264/trunk@25 df754926-b1dd-0310-bc7b-ec298dee348c

15 years agoGet rid of integer overflows that caused the rate control to go
Måns Rullgård [Wed, 11 Aug 2004 01:02:05 +0000 (01:02 +0000)]
Get rid of integer overflows that caused the rate control to go
haywire in some situations.

git-svn-id: svn://svn.videolan.org/x264/trunk@24 df754926-b1dd-0310-bc7b-ec298dee348c

15 years ago * encoder: correct range for i_idr_pic_id is 0..65535
Laurent Aimar [Mon, 9 Aug 2004 00:05:22 +0000 (00:05 +0000)]
 * encoder: correct range for i_idr_pic_id is 0..65535
 (Not 0..65534)

git-svn-id: svn://svn.videolan.org/x264/trunk@23 df754926-b1dd-0310-bc7b-ec298dee348c

15 years ago ratecontrol: patch by Loren Merritt <lorenm AT u DOT washington DOT edu>
Laurent Aimar [Sun, 8 Aug 2004 21:36:41 +0000 (21:36 +0000)]
 ratecontrol: patch by Loren Merritt <lorenm AT u DOT washington DOT edu>

 "The new cbr mode fails to completely disable itself when encoding in
 constant QP mode. The per-block QPs are then randomized between QP+4 and
 QP-2 based on uninitialized ratecontrol parameters."

git-svn-id: svn://svn.videolan.org/x264/trunk@22 df754926-b1dd-0310-bc7b-ec298dee348c

15 years ago * ratecontrol: patch by Måns Rullgård <mru AT mru DOT ath DOT cx>
Laurent Aimar [Sun, 8 Aug 2004 19:15:10 +0000 (19:15 +0000)]
 * ratecontrol: patch by Måns Rullgård <mru AT mru DOT ath DOT cx>
 "This patch fixes a small bug (divide by 0 possible) in the rate control."

git-svn-id: svn://svn.videolan.org/x264/trunk@21 df754926-b1dd-0310-bc7b-ec298dee348c

15 years ago * encoder: simpler scene cut detection (seems better but do not check
Laurent Aimar [Sun, 8 Aug 2004 16:18:49 +0000 (16:18 +0000)]
 * encoder: simpler scene cut detection (seems better but do not check
size anymore, so need more testing).

git-svn-id: svn://svn.videolan.org/x264/trunk@20 df754926-b1dd-0310-bc7b-ec298dee348c

15 years ago * all: Change the way PSNR is computed (based on a patch by Loren
Laurent Aimar [Sun, 8 Aug 2004 14:23:50 +0000 (14:23 +0000)]
 * all: Change the way PSNR is computed (based on a patch by Loren
Merritt <lorenmn AT u DOT washington DOT edu>
 Using SQE(DeltaSourceReconstructed) = Sum( delta^2 )
       PSNR( SQE, Size ) = -10Ln(SQE / 255^2 / Size )/Ln(10) )
       Y+U+V : Union of YUV planes.

 Now there is
  - Mean PSNR : Sum( PSNR( SQE(Y/U/V), Size(Y/U/V) ) / TotalFrames
  - Average PSNR: Sum( PSNR( SQE(Y+U+V), Size(Y+U+V) ) ) / TotalFrames
  - Global PSNR: PSNR( Sum( SQE(Y+U+V) ), Size(Y+U+V)*TotalFrames )

  Mean PSNR is used by the JM, and Average/Overall is used on Doom9 for
example.

git-svn-id: svn://svn.videolan.org/x264/trunk@19 df754926-b1dd-0310-bc7b-ec298dee348c

15 years ago * x264.h: increased X264_BUILD.
Laurent Aimar [Sat, 7 Aug 2004 16:02:20 +0000 (16:02 +0000)]
 * x264.h: increased X264_BUILD.

git-svn-id: svn://svn.videolan.org/x264/trunk@18 df754926-b1dd-0310-bc7b-ec298dee348c

15 years ago * all: Patch from Måns Rullgård <mru AT mru DOT ath DOT cx>
Laurent Aimar [Fri, 6 Aug 2004 18:06:09 +0000 (18:06 +0000)]
 * all: Patch from Måns Rullgård <mru AT mru DOT ath DOT cx>

"Here's a patch that adds some kind of rate control.  I suppose it is
 by no means perfect, but it's much better than constant quantizer.  It
 also has a very crude scene change detection that sometimes avoids a
 buffer underflow by reencoding oversized P/B frames as I frames."

git-svn-id: svn://svn.videolan.org/x264/trunk@17 df754926-b1dd-0310-bc7b-ec298dee348c

15 years ago Linux PPC AltiVec fix
Eric Petit [Mon, 2 Aug 2004 07:05:05 +0000 (07:05 +0000)]
 Linux PPC AltiVec fix

git-svn-id: svn://svn.videolan.org/x264/trunk@16 df754926-b1dd-0310-bc7b-ec298dee348c

15 years ago BeOS fixes (no stdint.h, no libm)
Eric Petit [Wed, 28 Jul 2004 21:39:06 +0000 (21:39 +0000)]
 BeOS fixes (no stdint.h, no libm)

git-svn-id: svn://svn.videolan.org/x264/trunk@15 df754926-b1dd-0310-bc7b-ec298dee348c

15 years ago Attempt to fix build on Linux PPC
Eric Petit [Tue, 27 Jul 2004 08:34:59 +0000 (08:34 +0000)]
 Attempt to fix build on Linux PPC

git-svn-id: svn://svn.videolan.org/x264/trunk@14 df754926-b1dd-0310-bc7b-ec298dee348c

15 years ago * encoder.c, analyse.c, macroblock: fixed when using a qp per MB.
Laurent Aimar [Fri, 23 Jul 2004 18:14:59 +0000 (18:14 +0000)]
 * encoder.c, analyse.c, macroblock: fixed when using a qp per MB.
 (Buggy for pskip and mb with null cbp luma and chroma).
 * dct*: fixed order of idct.

git-svn-id: svn://svn.videolan.org/x264/trunk@13 df754926-b1dd-0310-bc7b-ec298dee348c

15 years ago * cpu.asm: mmh trashing ebp,esi and edi isn't a good idea I fear ;)
Laurent Aimar [Fri, 16 Jul 2004 18:26:19 +0000 (18:26 +0000)]
 * cpu.asm: mmh trashing ebp,esi and edi isn't a good idea I fear ;)

git-svn-id: svn://svn.videolan.org/x264/trunk@12 df754926-b1dd-0310-bc7b-ec298dee348c

15 years ago * all: fixed ss2 runtime selection.
Laurent Aimar [Tue, 29 Jun 2004 22:41:42 +0000 (22:41 +0000)]
 * all: fixed ss2 runtime selection.

git-svn-id: svn://svn.videolan.org/x264/trunk@11 df754926-b1dd-0310-bc7b-ec298dee348c

15 years agoupdate & SSE2 support
Min Chen [Fri, 18 Jun 2004 02:00:40 +0000 (02:00 +0000)]
update & SSE2 support

git-svn-id: svn://svn.videolan.org/x264/trunk@10 df754926-b1dd-0310-bc7b-ec298dee348c

15 years agoupdate
Min Chen [Thu, 17 Jun 2004 09:01:19 +0000 (09:01 +0000)]
update

git-svn-id: svn://svn.videolan.org/x264/trunk@9 df754926-b1dd-0310-bc7b-ec298dee348c

15 years agoremove some unused code
Min Chen [Thu, 17 Jun 2004 08:58:43 +0000 (08:58 +0000)]
remove some unused code

git-svn-id: svn://svn.videolan.org/x264/trunk@8 df754926-b1dd-0310-bc7b-ec298dee348c

15 years agosupport for build checkasm.exe
Min Chen [Mon, 14 Jun 2004 05:47:51 +0000 (05:47 +0000)]
support for build checkasm.exe

git-svn-id: svn://svn.videolan.org/x264/trunk@7 df754926-b1dd-0310-bc7b-ec298dee348c

15 years ago * build fix (thx xxcd).
Laurent Aimar [Thu, 10 Jun 2004 18:13:38 +0000 (18:13 +0000)]
 * build fix (thx xxcd).

git-svn-id: svn://svn.videolan.org/x264/trunk@6 df754926-b1dd-0310-bc7b-ec298dee348c

15 years ago * TODO: test.
VideoLAN [Thu, 10 Jun 2004 07:32:18 +0000 (07:32 +0000)]
 * TODO: test.

git-svn-id: svn://svn.videolan.org/x264/trunk@5 df754926-b1dd-0310-bc7b-ec298dee348c

16 years ago * vfw/* : oops...
Laurent Aimar [Wed, 9 Jun 2004 19:35:31 +0000 (19:35 +0000)]
 * vfw/* : oops...

git-svn-id: svn://svn.videolan.org/x264/trunk@4 df754926-b1dd-0310-bc7b-ec298dee348c

16 years ago * mc-c.c compilation fix for gcc >= 3.3
Laurent Aimar [Wed, 9 Jun 2004 19:35:07 +0000 (19:35 +0000)]
 * mc-c.c compilation fix for gcc >= 3.3

git-svn-id: svn://svn.videolan.org/x264/trunk@3 df754926-b1dd-0310-bc7b-ec298dee348c

16 years ago * all: re-import of CVS.
Laurent Aimar [Thu, 3 Jun 2004 19:29:57 +0000 (19:29 +0000)]
 * all: re-import of CVS.

git-svn-id: svn://svn.videolan.org/x264/trunk@2 df754926-b1dd-0310-bc7b-ec298dee348c

16 years ago * all: re-import of the CVS.
Laurent Aimar [Thu, 3 Jun 2004 19:29:33 +0000 (19:29 +0000)]
 * all: re-import of the CVS.

git-svn-id: svn://svn.videolan.org/x264/trunk@1 df754926-b1dd-0310-bc7b-ec298dee348c