Re: [libav-devel] [PATCH 1/2] lavr: clarify documentation for avresample_get/set_matrix()

2012-11-30 Thread Anton Khirnov
On Thu, 29 Nov 2012 15:08:04 -0500, Justin Ruggles justin.rugg...@gmail.com wrote: --- libavresample/avresample.h |6 +- 1 files changed, 5 insertions(+), 1 deletions(-) diff --git a/libavresample/avresample.h b/libavresample/avresample.h index affeeeb..a73d686 100644 ---

Re: [libav-devel] [PATCH 2/2] lavr: temporarily store custom matrix in AVAudioResampleContext

2012-11-30 Thread Anton Khirnov
On Thu, 29 Nov 2012 23:36:05 -0500, Justin Ruggles justin.rugg...@gmail.com wrote: This allows AudioMix to be treated the same way as other conversion contexts and removes the requirement to allocate it at the same time as the AVAudioResampleContext. The current matrix get/set functions

Re: [libav-devel] [PATCH 1/1] svq3: check and reject negative slice types

2012-11-30 Thread Janne Grunau
On 2012-11-29 17:21:45 +, Måns Rullgård wrote: Janne Grunau janne-li...@jannau.net writes: On 2012-11-29 13:46:12 +, Måns Rullgård wrote: Janne Grunau janne-li...@jannau.net writes: On 2012-11-29 00:08:52 +, Måns Rullgård wrote: Janne Grunau janne-li...@jannau.net

Re: [libav-devel] [PATCH 1/1] svq3: check and reject negative slice types

2012-11-30 Thread Måns Rullgård
Janne Grunau janne-li...@jannau.net writes: On 2012-11-29 17:21:45 +, Måns Rullgård wrote: Janne Grunau janne-li...@jannau.net writes: On 2012-11-29 13:46:12 +, Måns Rullgård wrote: Janne Grunau janne-li...@jannau.net writes: On 2012-11-29 00:08:52 +, Måns Rullgård

Re: [libav-devel] [PATCHES] scalarproduct_and_madd_int16 and wma lossless

2012-11-30 Thread Christophe Gisquet
2012/11/27 Justin Ruggles justin.rugg...@gmail.com: Either make the function name lowercase or make it a macro. Also, if you leave it as an inline function, put the opening brace on a separate line. Moved to a macro. This was mimicking apedec codec. If the patches are declared ok, someone

[libav-devel] [PATCH 1/1] avprobe: report per stream bit rate if set by the decoder

2012-11-30 Thread Janne Grunau
--- avprobe.c | 4 1 file changed, 4 insertions(+) diff --git a/avprobe.c b/avprobe.c index 3a3ae0f..4da9621 100644 --- a/avprobe.c +++ b/avprobe.c @@ -654,6 +654,10 @@ static void show_stream(AVFormatContext *fmt_ctx, int stream_idx) probe_str(avg_frame_rate,

[libav-devel] [PATCH 00/10] Various patches for AAC SBR DSP

2012-11-30 Thread Christophe Gisquet
Those are mostly x86 SSE asm. First patch is a continuation of thread [PATCHES] SBR DSP and sbr_hf_gen. Except for hf_apply_noise, they are tested using fate-aac on win32/win64 and linux x86-64. I didn't check under linux x86-32. I couldn't find a vector excercising qmf_deint_neg, and I guess

[libav-devel] [PATCH 01/10] SBR DSP x86: implement SSE sbr_hf_gen

2012-11-30 Thread Christophe Gisquet
Start and end index are multiple of 2, therefore guaranteeing aligned access. Also, this allows to generate 4 floats per loop, keeping the alignment all along. Timing: - 32 bits: 326c - 172 - 64 bits: 323c - 156c --- libavcodec/x86/sbrdsp.asm| 73 -

[libav-devel] [PATCH 03/10] SBR DSP x86: implement SSE qmf_post_shuffle

2012-11-30 Thread Christophe Gisquet
On penrynn, from 255 to 174c. Unrolling yields no gain. --- libavcodec/x86/sbrdsp.asm| 21 + libavcodec/x86/sbrdsp_init.c |2 ++ 2 files changed, 23 insertions(+), 0 deletions(-) diff --git a/libavcodec/x86/sbrdsp.asm b/libavcodec/x86/sbrdsp.asm index

[libav-devel] [PATCH 05/10] SBR DSP x86: implement SSE qmf_deint_neg

2012-11-30 Thread Christophe Gisquet
No vector tests it. --- libavcodec/x86/sbrdsp.asm| 19 +++ libavcodec/x86/sbrdsp_init.c |2 ++ 2 files changed, 21 insertions(+), 0 deletions(-) diff --git a/libavcodec/x86/sbrdsp.asm b/libavcodec/x86/sbrdsp.asm index b9f0709..aff6879 100644 ---

[libav-devel] [PATCH 04/10] SBR DSP x86: implement SSE qmf_pre_shuffle

2012-11-30 Thread Christophe Gisquet
From 253 to 185c. --- libavcodec/x86/sbrdsp.asm| 23 +++ libavcodec/x86/sbrdsp_init.c |2 ++ 2 files changed, 25 insertions(+), 0 deletions(-) diff --git a/libavcodec/x86/sbrdsp.asm b/libavcodec/x86/sbrdsp.asm index 2b90100..b9f0709 100644 ---

[libav-devel] [PATCH 06/10] SBR DSP x86: implement SSE neg_odd_64

2012-11-30 Thread Christophe Gisquet
From 210 cycles to 87 on penrynn. Unrolling and not storing mask both save some cycles. --- libavcodec/x86/sbrdsp.asm| 21 + libavcodec/x86/sbrdsp_init.c |2 ++ 2 files changed, 23 insertions(+), 0 deletions(-) diff --git a/libavcodec/x86/sbrdsp.asm

[libav-devel] [PATCH 02/10] SBR DSP x86: implement SSE sum64x5

2012-11-30 Thread Christophe Gisquet
698 to 174 cycles on penrynn. Unrolling is a 6 cycles gain. unrol 6 cycles --- libavcodec/x86/sbrdsp.asm| 22 ++ libavcodec/x86/sbrdsp_init.c |2 ++ 2 files changed, 24 insertions(+), 0 deletions(-) diff --git a/libavcodec/x86/sbrdsp.asm b/libavcodec/x86/sbrdsp.asm

[libav-devel] [PATCH 07/10] SBR DSP x86: implement SSE qmf_deint_bfly

2012-11-30 Thread Christophe Gisquet
From 713 to 209 cycles on Penrynn. Having a loop counter is a 7 cycle gain. Unrolling is another 7 cycle gain. Working in reverse scan is another 6 cycles. --- libavcodec/x86/sbrdsp.asm| 31 +++ libavcodec/x86/sbrdsp_init.c |2 ++ 2 files changed, 33

[libav-devel] [PATCH 08/10] x264asm: fix cmp* number of arguments

2012-11-30 Thread Christophe Gisquet
cmp{p,s}{s,d} instructions do take an imm8 operand. --- libavutil/x86/x86inc.asm |8 1 files changed, 4 insertions(+), 4 deletions(-) diff --git a/libavutil/x86/x86inc.asm b/libavutil/x86/x86inc.asm index 52ee46a..3744e46 100644 --- a/libavutil/x86/x86inc.asm +++

[libav-devel] [PATCH 09/10] AAC SBR: avoid a memcpy.

2012-11-30 Thread Christophe Gisquet
Swapping buffer indices allows saving one memcpy that accounts for 1% of the runtime, according to oprofile. --- libavcodec/aacsbr.c | 22 +++--- 1 files changed, 11 insertions(+), 11 deletions(-) diff --git a/libavcodec/aacsbr.c b/libavcodec/aacsbr.c index df5d927..40b08f9

[libav-devel] [PATCH 10/10] SBR DSP x86: implement SSE hf_apply_noise

2012-11-30 Thread Christophe Gisquet
497 to 253 cycles under Win64. Replacing the multiplication by s_m[m] by an andps and an xorps with appropriate vectors is slower. Unrolling is a 15 cycles win. --- libavcodec/sbrdsp.c |1 - libavcodec/x86/sbrdsp.asm| 93 ++

[libav-devel] [PATCH 1/3] avutil: Include io.h with a separate condition from windows console functions

2012-11-30 Thread Martin Storsjö
Not all versions of windows have the console color functions, while io.h might be needed for isatty (which can be found in unistd.h or io.h). Signed-off-by: Martin Storsjö mar...@martin.st --- libavutil/log.c |4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git

[libav-devel] [PATCH 2/3] avutil: Use a configure check to enable windows console functions

2012-11-30 Thread Martin Storsjö
Not all versions or API subsets of windows have these functions. Signed-off-by: Martin Storsjö mar...@martin.st --- configure |2 ++ libavutil/log.c |4 ++-- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/configure b/configure index 5e1be33..38f49e0 100755 ---

[libav-devel] [PATCH 3/3] configure: Use headers in the check for _beginthreadex for w32threads

2012-11-30 Thread Martin Storsjö
When targeting the metro API subset, this function still exists in the link libraries, but is excluded from the headers. This makes sure w32threads is automatically disabled when targeting this API subset (since not all the necessary functions for it are available). Signed-off-by: Martin Storsjö

Re: [libav-devel] [PATCH 00/10] Various patches for AAC SBR DSP

2012-11-30 Thread Måns Rullgård
Christophe Gisquet christophe.gisq...@gmail.com writes: I couldn't find a vector excercising qmf_deint_neg, and I guess neither did the one who wrote it, I can assure you I did, but I don't remember which one(s). as not all the code in the same code block of aacsbr was moved to DSP

Re: [libav-devel] [PATCH 3/3] configure: Use headers in the check for _beginthreadex for w32threads

2012-11-30 Thread Måns Rullgård
Martin Storsjö mar...@martin.st writes: When targeting the metro API subset, this function still exists in the link libraries, but is excluded from the headers. This makes sure w32threads is automatically disabled when targeting this API subset (since not all the necessary functions for it

Re: [libav-devel] [PATCH 1/3] avutil: Include io.h with a separate condition from windows console functions

2012-11-30 Thread Måns Rullgård
Martin Storsjö mar...@martin.st writes: Not all versions of windows have the console color functions, while io.h might be needed for isatty (which can be found in unistd.h or io.h). Signed-off-by: Martin Storsjö mar...@martin.st --- libavutil/log.c |4 +++- 1 file changed, 3

Re: [libav-devel] [PATCH 2/3] avutil: Use a configure check to enable windows console functions

2012-11-30 Thread Måns Rullgård
Martin Storsjö mar...@martin.st writes: Not all versions or API subsets of windows have these functions. Signed-off-by: Martin Storsjö mar...@martin.st --- configure |2 ++ libavutil/log.c |4 ++-- 2 files changed, 4 insertions(+), 2 deletions(-) LGTM -- Måns Rullgård

Re: [libav-devel] [PATCH 1/1] avprobe: report per stream bit rate if set by the decoder

2012-11-30 Thread Luca Barbato
On 11/30/12 3:45 PM, Janne Grunau wrote: --- avprobe.c | 4 1 file changed, 4 insertions(+) Ok. ___ libav-devel mailing list libav-devel@libav.org https://lists.libav.org/mailman/listinfo/libav-devel

Re: [libav-devel] [PATCH 00/10] Various patches for AAC SBR DSP

2012-11-30 Thread Christophe Gisquet
2012/11/30 Måns Rullgård m...@mansr.com: I couldn't find a vector excercising qmf_deint_neg, and I guess neither did the one who wrote it, I can assure you I did, but I don't remember which one(s). Ok, it's just that it looked so much like where I ended that I thought the same had happened to

Re: [libav-devel] [PATCH 1/2] lavr: clarify documentation for avresample_get/set_matrix()

2012-11-30 Thread Justin Ruggles
On 11/30/2012 05:47 AM, Anton Khirnov wrote: On Thu, 29 Nov 2012 15:08:04 -0500, Justin Ruggles justin.rugg...@gmail.com wrote: --- libavresample/avresample.h |6 +- 1 files changed, 5 insertions(+), 1 deletions(-) diff --git a/libavresample/avresample.h

Re: [libav-devel] [PATCH 1/2] lavr: clarify documentation for avresample_get/set_matrix()

2012-11-30 Thread Anton Khirnov
On Fri, 30 Nov 2012 11:18:08 -0500, Justin Ruggles justin.rugg...@gmail.com wrote: On 11/30/2012 05:47 AM, Anton Khirnov wrote: On Thu, 29 Nov 2012 15:08:04 -0500, Justin Ruggles justin.rugg...@gmail.com wrote: --- libavresample/avresample.h |6 +- 1 files changed, 5

Re: [libav-devel] [PATCH 09/10] AAC SBR: avoid a memcpy.

2012-11-30 Thread Luca Barbato
On 11/30/12 3:58 PM, Christophe Gisquet wrote: Swapping buffer indices allows saving one memcpy that accounts for 1% of the runtime, according to oprofile. --- libavcodec/aacsbr.c | 22 +++--- 1 files changed, 11 insertions(+), 11 deletions(-) The idea is nice, is Ypos

Re: [libav-devel] [PATCH 09/10] AAC SBR: avoid a memcpy.

2012-11-30 Thread Christophe Gisquet
2012/11/30 Luca Barbato lu_z...@gentoo.org: The idea is nice, is Ypos always 0 or 1? Yes, and actually, Ypos is here because we already dealt with a similar situation (see commit cc412b71047ebf77c7e810c90b044f018a1c0c2d). So I am just reapplying the same solution. -- Christophe

Re: [libav-devel] [PATCH] configure: sunos: clean up shared library options

2012-11-30 Thread Sean McGovern
On Wednesday, November 28, 2012, Sean McGovern gsean...@gmail.com wrote: On Wed, Nov 28, 2012 at 8:08 PM, Måns Rullgård m...@mansr.com wrote: Sean McGovern gsean...@gmail.com writes: Several of the options were incorrect for suncc. --- configure | 8 +--- 1 file changed, 5

[libav-devel] [PATCH 1/1] golomb: use unsigned arithmetics in svq3_get_ue_golomb()

2012-11-30 Thread Janne Grunau
This prevents undefined behaviour of signed left shift if the coded value is larger than 2^31. Large values are most likely invalid and caused errors or by feeding random. Validate every use of svq3_get_ue_golomb() and changed the place there the return value was compared with negative numbers.

[libav-devel] Request for a raspberry pi hardware accelerated scaling function

2012-11-30 Thread Arjen Vellekoop
Sorry, sent it previously from an unknown email address Dear readers. I am a bit confused, just subscribed and expected to be redericted to a forum. Since this is not the case I'll try this way. Hope not to spam the whole list. pls point me to the right direction if I am in the wrong list here.

Re: [libav-devel] [PATCH 01/10] SBR DSP x86: implement SSE sbr_hf_gen

2012-11-30 Thread Loren Merritt
On Fri, 30 Nov 2012, Christophe Gisquet wrote: +movam0, [X_lowq + start] +movlhps m1, m1 ; (a2 a3 a2 a3) +movlhps m2, m2 ; (a0 a1 a0 a1) +shufps m3, m3, 00010001b ; (a3 a2 a3 a2) +shufps m4, m4, 00010001b ; (a1 a0 a1 a0)

Re: [libav-devel] [PATCH 02/10] SBR DSP x86: implement SSE sum64x5

2012-11-30 Thread Loren Merritt
On Fri, 30 Nov 2012, Christophe Gisquet wrote: 698 to 174 cycles on penrynn. Unrolling is a 6 cycles gain. --- libavcodec/x86/sbrdsp.asm| 22 ++ libavcodec/x86/sbrdsp_init.c |2 ++ 2 files changed, 24 insertions(+), 0 deletions(-) LGTM. --Loren Merritt

Re: [libav-devel] [PATCH 03/10] SBR DSP x86: implement SSE qmf_post_shuffle

2012-11-30 Thread Loren Merritt
On Fri, 30 Nov 2012, Christophe Gisquet wrote: +cglobal sbr_qmf_post_shuffle, 2,3,3,W,z + lea r2q, [zq + (64-4)*4] +.loop: + mova m0, [r2q] + mova m1, [zq ] + xorps m0, [ps_neg] + shufps m0, m0, 0x1B + mova m2, m0 + unpcklps m0, m1 + unpckhps

Re: [libav-devel] [PATCH 10/10] SBR DSP x86: implement SSE hf_apply_noise

2012-11-30 Thread Loren Merritt
On Fri, 30 Nov 2012, Christophe Gisquet wrote: 497 to 253 cycles under Win64. cpu is more relevant than os. +; r0q=Y r1q=s_m r2q=q_filt r3q=noise r4q=max_m +cglobal hf_apply_noise_main You can invoke DEFINE_ARGS even if not generating a prologue. + dec r3q + shl r4q,

Re: [libav-devel] [PATCH 09/10] AAC SBR: avoid a memcpy.

2012-11-30 Thread Luca Barbato
On 11/30/12 6:28 PM, Christophe Gisquet wrote: 2012/11/30 Luca Barbato lu_z...@gentoo.org: The idea is nice, is Ypos always 0 or 1? Yes, and actually, Ypos is here because we already dealt with a similar situation (see commit cc412b71047ebf77c7e810c90b044f018a1c0c2d). So I am just

Re: [libav-devel] [PATCH 03/10] SBR DSP x86: implement SSE qmf_post_shuffle

2012-11-30 Thread Christophe Gisquet
Hello, 2012/11/30 Loren Merritt lor...@u.washington.edu: If you increment an index into W and z rather than the pointers themselves, then you can eliminate an add and a cmp. I add already tested that, and redid it: cglobal sbr_qmf_post_shuffle, 2,4,3,W,z mov r3q, 32*4 lea r2q,

Re: [libav-devel] [PATCH 01/10] SBR DSP x86: implement SSE sbr_hf_gen

2012-11-30 Thread Christophe Gisquet
Hello, 2012/11/30 Loren Merritt lor...@u.washington.edu: Recommend using base-4 for shuffle constants. I wrote that code like 6 months ago, before I really wrapped my head around/noticed that. Do you want me to change it now, or is that a remark for later contributions? -- Christophe

Re: [libav-devel] [PATCH 03/10] SBR DSP x86: implement SSE qmf_post_shuffle

2012-11-30 Thread Måns Rullgård
Christophe Gisquet christophe.gisq...@gmail.com writes: 4 space tabs. OK, I was a bit puzzled and looking for trailing whitespaces/... You mean style change then. A bit cumbersome to redo all patches because of that. :%s/^ // -- Måns Rullgård m...@mansr.com

Re: [libav-devel] [PATCH 03/10] SBR DSP x86: implement SSE qmf_post_shuffle

2012-11-30 Thread Ronald S. Bultje
Hi, On Fri, Nov 30, 2012 at 1:14 PM, Christophe Gisquet christophe.gisq...@gmail.com wrote: Hello, 2012/11/30 Loren Merritt lor...@u.washington.edu: If you increment an index into W and z rather than the pointers themselves, then you can eliminate an add and a cmp. I add already tested

Re: [libav-devel] [PATCH 10/10] SBR DSP x86: implement SSE hf_apply_noise

2012-11-30 Thread Jason Garrett-Glaser
On Fri, Nov 30, 2012 at 6:58 AM, Christophe Gisquet christophe.gisq...@gmail.com wrote: 497 to 253 cycles under Win64. Replacing the multiplication by s_m[m] by an andps and an xorps with appropriate vectors is slower. Unrolling is a 15 cycles win. --- libavcodec/sbrdsp.c |1 -

[libav-devel] Invitation to connect on LinkedIn

2012-11-30 Thread fei wang
LinkedIn libav, I'd like to add you to my professional network on LinkedIn. - fei fei wang software engineer at Marvell corp. Shanghai City, China Confirm that you know fei wang: https://www.linkedin.com/e/-yb2raf-ha6e0xg6-14/isd/9843425302/RxRGuAd1/?hs=falsetok=1OxcRjoCG0rlw1

Re: [libav-devel] Request for a raspberry pi hardware accelerated scaling function

2012-11-30 Thread Attila Kinali
Dear raspberry pi user On Fri, 30 Nov 2012 20:33:28 +0100 Arjen Vellekoop mgpa...@zonnet.nl wrote: I am a bit confused, just subscribed and expected to be redericted to a forum. Since this is not the case I'll try this way. Hope not to spam the whole list. pls point me to the right direction

Re: [libav-devel] Invitation to connect on LinkedIn

2012-11-30 Thread Attila Kinali
On Sat, 1 Dec 2012 06:56:08 + (UTC) fei wang philip584...@gmail.com wrote: I'd like to add you to my professional network on LinkedIn. I blocked linkedin at our mailserver, this shouldnt happen again. I also unsubscribed this guy for trying to add a mailinglist to linkedin.