Davide Bergamini | 6 Mar 2011 15:39
Picon

About --sar option

Hi, thanks for your work!
I have a couple of question/suggestion about the --sar option.
I think the real meaning of this option is not sar (storage aspect ratio), but its par (pixel aspect ratio)
and it should be renamed "--input-par". (like --input-res)
Example: a pal dvd mpeg2 widescreen
sar = 5:4 (its the pixel resolution ratio 720/576)
dar = 16:9 (its the output ratio)
par = 64:45 (its the single pixel width/height ratio)
 
 
_______________________________________________
x264-devel mailing list
x264-devel <at> videolan.org
http://mailman.videolan.org/listinfo/x264-devel
BugMaster | 7 Mar 2011 09:08
Picon

Re: About --sar option

On Sun, 6 Mar 2011 15:39:33 +0100, Davide Bergamini wrote:
> Hi, thanks for your work!
> I have a couple of question/suggestion about the --sar option.
> I think the real meaning of this option is not sar (storage aspect
> ratio), but its par (pixel aspect ratio)
> and it should be renamed "--input-par". (like --input-res)
> Example: a pal dvd mpeg2 widescreen
> sar = 5:4 (its the pixel resolution ratio 720/576)
> dar = 16:9 (its the output ratio)
> par = 64:45 (its the single pixel width/height ratio)
>  
>  

Hi. SAR acronym is not for storage aspect ratio, but for sample aspect
ratio. And yes sample aspect ratio has almost the same meaning as
pixel aspect ratio, but we use sample aspect ratio because this is the
name used in official H.264 specs.

_______________________________________________
x264-devel mailing list
x264-devel <at> videolan.org
http://mailman.videolan.org/listinfo/x264-devel

雾卡 | 7 Mar 2011 11:31
Favicon

Wrong reply

I think you have sent the wrong reply to me,that's not my questions。My original letter is:

I am doing study on the Rate Control of Macroblock level based on X264, I have read some documents of this aspect, but there exists some questions, I need your help to make these clear:

1Dose X264 supports the Macroblock level Rate Control?

2If it supports, Is it right I choose the VBV(the same as CBR?)mode? And only VBV mode support the Macroblock layer rate control ,What about other modes?
3
If VBV allows macroblock layer RC, how should I set the command line parameter about the Rate Control, must I set the following parameters, and how to?

-B/--bitrate ,--vbv-maxrate ,--vbv-bufsize ,--vbv-init

 

Look forward to your early reply. So appreciate!

sincerely yours

 

Jane

 
 
------------------ Original ------------------
From:  "BugMaster"<BugMaster <at> narod.ru>;
Date:  Mon, Mar 7, 2011 04:08 PM
To:  "Mailing list for x264 developers"<x264-devel <at> videolan.org>;
Subject:  Re: [x264-devel] About --sar option
 
On Sun, 6 Mar 2011 15:39:33 +0100, Davide Bergamini wrote:
> Hi, thanks for your work!
> I have a couple of question/suggestion about the --sar option.
> I think the real meaning of this option is not sar (storage aspect
> ratio), but its par (pixel aspect ratio)
> and it should be renamed "--input-par". (like --input-res)
> Example: a pal dvd mpeg2 widescreen
> sar = 5:4 (its the pixel resolution ratio 720/576)
> dar = 16:9 (its the output ratio)
> par = 64:45 (its the single pixel width/height ratio)



Hi. SAR acronym is not for storage aspect ratio, but for sample aspect
ratio. And yes sample aspect ratio has almost the same meaning as
pixel aspect ratio, but we use sample aspect ratio because this is the
name used in official H.264 specs.

_______________________________________________
x264-devel mailing list
x264-devel <at> videolan.org
http://mailman.videolan.org/listinfo/x264-devel
_______________________________________________
x264-devel mailing list
x264-devel <at> videolan.org
http://mailman.videolan.org/listinfo/x264-devel
Davide Bergamini | 7 Mar 2011 13:22
Picon

Re: About --sar option

Thanks you for the explanation! I think the wikipedia article about pixel aspect raio should be updated, I suggested in its discussion page. Bye!

2011/3/7 BugMaster <BugMaster <at> narod.ru>
On Sun, 6 Mar 2011 15:39:33 +0100, Davide Bergamini wrote:
> Hi, thanks for your work!
> I have a couple of question/suggestion about the --sar option.
> I think the real meaning of this option is not sar (storage aspect
> ratio), but its par (pixel aspect ratio)
> and it should be renamed "--input-par". (like --input-res)
> Example: a pal dvd mpeg2 widescreen
> sar = 5:4 (its the pixel resolution ratio 720/576)
> dar = 16:9 (its the output ratio)
> par = 64:45 (its the single pixel width/height ratio)
>
>

Hi. SAR acronym is not for storage aspect ratio, but for sample aspect
ratio. And yes sample aspect ratio has almost the same meaning as
pixel aspect ratio, but we use sample aspect ratio because this is the
name used in official H.264 specs.

_______________________________________________
x264-devel mailing list
x264-devel <at> videolan.org
http://mailman.videolan.org/listinfo/x264-devel

_______________________________________________
x264-devel mailing list
x264-devel <at> videolan.org
http://mailman.videolan.org/listinfo/x264-devel
sandeep mk | 7 Mar 2011 18:53
Picon

- Help in calculation of PSNRs -

Hi,

I am a newbie to x264. I wanted to know how PSNR is calculated between an 8 bit .yuv input file encoded using 10 bit-x264 (in High10 profile) and the 10 bit .yuv output file decoded from a JM decoder.

Thanks,
Sandeep

_______________________________________________
x264-devel mailing list
x264-devel <at> videolan.org
http://mailman.videolan.org/listinfo/x264-devel
Nick Lewycky | 8 Mar 2011 01:03
Picon
Favicon

[PATCH] Remove "8+%1" syntax which isn't supported by LLVM's assembler. FFmpeg has removed theirs already for the same reason.

The ".o | objdump -d" files built before and after this change are the same,
tested by building with and without -DHIGH_BIT_DEPTH.
---
 common/x86/predict-c.c |   22 ++++++++++++----------
 1 files changed, 12 insertions(+), 10 deletions(-)

diff --git a/common/x86/predict-c.c b/common/x86/predict-c.c
index 610740e..fa307bd 100644
--- a/common/x86/predict-c.c
+++ b/common/x86/predict-c.c
 <at>  <at>  -191,10 +191,10  <at>  <at>  static void x264_predict_16x16_p_ssse3( uint8_t *src )
     int H, V;
 #if HIGH_BIT_DEPTH
     asm (
-        "movdqu        -2+%1, %%xmm1 \n"
-        "movdqa        16+%1, %%xmm0 \n"
-        "pmaddwd          %2, %%xmm0 \n"
-        "pmaddwd          %3, %%xmm1 \n"
+        "movdqu           %1, %%xmm1 \n"
+        "movdqa           %2, %%xmm0 \n"
+        "pmaddwd          %3, %%xmm0 \n"
+        "pmaddwd          %4, %%xmm1 \n"
         "paddd        %%xmm1, %%xmm0 \n"
         "movhlps      %%xmm0, %%xmm1 \n"
         "paddd        %%xmm1, %%xmm0 \n"
 <at>  <at>  -202,15 +202,16  <at>  <at>  static void x264_predict_16x16_p_ssse3( uint8_t *src )
         "paddd        %%xmm1, %%xmm0 \n"
         "movd         %%xmm0, %0     \n"
         :"=r"(H)
-        :"m"(src[-FDEC_STRIDE]), "m"(*pw_12345678), "m"(*pw_m87654321)
+        :"m"(src[-FDEC_STRIDE-1]), "m"(src[-FDEC_STRIDE+8]),
+         "m"(*pw_12345678), "m"(*pw_m87654321)
     );
 #else
     asm (
         "movq           %1, %%mm1 \n"
-        "movq         8+%1, %%mm0 \n"
-        "palignr $7, -8+%1, %%mm1 \n"
-        "pmaddubsw      %2, %%mm0 \n"
-        "pmaddubsw      %3, %%mm1 \n"
+        "movq           %2, %%mm0 \n"
+        "palignr $7,    %3, %%mm1 \n"
+        "pmaddubsw      %4, %%mm0 \n"
+        "pmaddubsw      %5, %%mm1 \n"
         "paddw       %%mm1, %%mm0 \n"
         "pshufw $14, %%mm0, %%mm1 \n"
         "paddw       %%mm1, %%mm0 \n"
 <at>  <at>  -219,7 +220,8  <at>  <at>  static void x264_predict_16x16_p_ssse3( uint8_t *src )
         "movd        %%mm0, %0    \n"
         "movsx         %w0, %0    \n"
         :"=r"(H)
-        :"m"(src[-FDEC_STRIDE]), "m"(*pb_12345678), "m"(*pb_m87654321)
+        :"m"(src[-FDEC_STRIDE]), "m"(src[-FDEC_STRIDE+8]),
+         "m"(src[-FDEC_STRIDE-8]), "m"(*pb_12345678), "m"(*pb_m87654321)
     );
 #endif
     V = 8 * ( src[15*FDEC_STRIDE-1] - src[-1*FDEC_STRIDE-1] )
Jason Garrett-Glaser | 8 Mar 2011 03:11

Re: [PATCH] Remove "8+%1" syntax which isn't supported by LLVM's assembler. FFmpeg has removed theirs already for the same reason.

On Mon, Mar 7, 2011 at 4:03 PM, Nick Lewycky <nlewycky <at> google.com> wrote:
> The ".o | objdump -d" files built before and after this change are the same,
> tested by building with and without -DHIGH_BIT_DEPTH.
> ---
>  common/x86/predict-c.c |   22 ++++++++++++----------
>  1 files changed, 12 insertions(+), 10 deletions(-)
>
> diff --git a/common/x86/predict-c.c b/common/x86/predict-c.c
> index 610740e..fa307bd 100644
> --- a/common/x86/predict-c.c
> +++ b/common/x86/predict-c.c
>  <at>  <at>  -191,10 +191,10  <at>  <at>  static void x264_predict_16x16_p_ssse3( uint8_t *src )
>     int H, V;
>  #if HIGH_BIT_DEPTH
>     asm (
> -        "movdqu        -2+%1, %%xmm1 \n"
> -        "movdqa        16+%1, %%xmm0 \n"
> -        "pmaddwd          %2, %%xmm0 \n"
> -        "pmaddwd          %3, %%xmm1 \n"
> +        "movdqu           %1, %%xmm1 \n"
> +        "movdqa           %2, %%xmm0 \n"
> +        "pmaddwd          %3, %%xmm0 \n"
> +        "pmaddwd          %4, %%xmm1 \n"
>         "paddd        %%xmm1, %%xmm0 \n"
>         "movhlps      %%xmm0, %%xmm1 \n"
>         "paddd        %%xmm1, %%xmm0 \n"
>  <at>  <at>  -202,15 +202,16  <at>  <at>  static void x264_predict_16x16_p_ssse3( uint8_t *src )
>         "paddd        %%xmm1, %%xmm0 \n"
>         "movd         %%xmm0, %0     \n"
>         :"=r"(H)
> -        :"m"(src[-FDEC_STRIDE]), "m"(*pw_12345678), "m"(*pw_m87654321)
> +        :"m"(src[-FDEC_STRIDE-1]), "m"(src[-FDEC_STRIDE+8]),
> +         "m"(*pw_12345678), "m"(*pw_m87654321)
>     );
>  #else
>     asm (
>         "movq           %1, %%mm1 \n"
> -        "movq         8+%1, %%mm0 \n"
> -        "palignr $7, -8+%1, %%mm1 \n"
> -        "pmaddubsw      %2, %%mm0 \n"
> -        "pmaddubsw      %3, %%mm1 \n"
> +        "movq           %2, %%mm0 \n"
> +        "palignr $7,    %3, %%mm1 \n"
> +        "pmaddubsw      %4, %%mm0 \n"
> +        "pmaddubsw      %5, %%mm1 \n"
>         "paddw       %%mm1, %%mm0 \n"
>         "pshufw $14, %%mm0, %%mm1 \n"
>         "paddw       %%mm1, %%mm0 \n"
>  <at>  <at>  -219,7 +220,8  <at>  <at>  static void x264_predict_16x16_p_ssse3( uint8_t *src )
>         "movd        %%mm0, %0    \n"
>         "movsx         %w0, %0    \n"
>         :"=r"(H)
> -        :"m"(src[-FDEC_STRIDE]), "m"(*pb_12345678), "m"(*pb_m87654321)
> +        :"m"(src[-FDEC_STRIDE]), "m"(src[-FDEC_STRIDE+8]),
> +         "m"(src[-FDEC_STRIDE-8]), "m"(*pb_12345678), "m"(*pb_m87654321)
>     );
>  #endif
>     V = 8 * ( src[15*FDEC_STRIDE-1] - src[-1*FDEC_STRIDE-1] )
> --
> 1.7.3.1
>

Applied locally, will be in the next push.

Jason
_______________________________________________
x264-devel mailing list
x264-devel <at> videolan.org
http://mailman.videolan.org/listinfo/x264-devel

sandeep mk | 8 Mar 2011 19:19
Picon

Re: - Help in calculation of PSNRs -

Hi,

I am a newbie to x264. I had two questions regarding the PSNRs in H.264.

1. I have an 8 bit .yuv input file input to the x264 encoder which gives me an 8 bit encoded stream. This encoded stream is decoded by a 8 bit decoder and lets call the output as 'Stream 1'. Next, I have a 10 bit .yuv input file input to the x264 encoder which gives me an 10 bit encoded stream and is further decoded by a 10 bit decoder. Lets call this stream as 'Stream 2'. My question is how do we compare the PSNRs of 'Stream 1' and 'Stream 2' or what is the best was of comparing the quality of the streams 1 and 2.

2. My second question is how is PSNR calculated between an 8 bit .yuv input file encoded using 10 bit-x264 (in High10 profile) and the 10 bit .yuv output file decoded from 10 bit h264 decoder.


Thanks,
Sandeep

_______________________________________________
x264-devel mailing list
x264-devel <at> videolan.org
http://mailman.videolan.org/listinfo/x264-devel
Max Lapshin | 12 Mar 2011 19:26
Picon

Encode motion in selected rectangle

I'm creating now encoder using libx264: it takes video from
surveillance camera, unpacks it,
process and encode only small rectangle.

I have hardware tool that can tell me where movement is, so in each
moment I have map of blocks, where movement is and
let libx264 work only in this small region. It is required to lower
bitrate, because there is noise on matrix and I want
to use this trick to block any useless calculations on FullHD image
and encode only real movement.

I've saw topic:
http://mailman.videolan.org/pipermail/x264-devel/2010-November/007874.html
(about infrared cameras),
but I haven't understood: is it what I need?

I thought about some API, that will require from me list of changed
macroblocks.  Google didn't help me, because I haven't found
anything about my problem there.
_______________________________________________
x264-devel mailing list
x264-devel <at> videolan.org
http://mailman.videolan.org/listinfo/x264-devel

Shalom Levytam | 15 Mar 2011 05:27

x264 Install: Cannot Follow Symbolic Link

Hi,

I'm getting numerous "cannot follow symbolic link" errors when trying to install x264 on Solaris.

Here's what I'm seeing: http://pastebin.com/bGnGuuMh

Can anyone be of help?  

Thanks,

slevytam
_______________________________________________
x264-devel mailing list
x264-devel <at> videolan.org
http://mailman.videolan.org/listinfo/x264-devel


Gmane