Re: [libav-devel] [PATCH] bfin: vp3: Separate VP3 initialization code

2013-01-28 Thread Diego Biurrun
On Thu, Jan 24, 2013 at 11:44:00AM +0100, Diego Biurrun wrote:
 On Wed, Jan 23, 2013 at 04:45:22PM +0100, Luca Barbato wrote:
  From: Diego Biurrun di...@biurrun.de
  
  Signed-off-by: Luca Barbato lu_z...@gentoo.org
  ---
  
  Rebased after the move to int16_t.
  
  En passant, adding the missing memsets as pointed by Ronald.
 
 Please separate those, patch LGTM otherwise.

.. ping ..

This conflicts with and thus holds up hpeldsp.

Diego
___
libav-devel mailing list
libav-devel@libav.org
https://lists.libav.org/mailman/listinfo/libav-devel


Re: [libav-devel] [PATCH] bfin: vp3: Separate VP3 initialization code

2013-01-28 Thread Luca Barbato
On 28/01/13 20:00, Diego Biurrun wrote:
 On Thu, Jan 24, 2013 at 11:44:00AM +0100, Diego Biurrun wrote:
 On Wed, Jan 23, 2013 at 04:45:22PM +0100, Luca Barbato wrote:
 From: Diego Biurrun di...@biurrun.de

 Signed-off-by: Luca Barbato lu_z...@gentoo.org
 ---

 Rebased after the move to int16_t.

 En passant, adding the missing memsets as pointed by Ronald.

 Please separate those, patch LGTM otherwise.
 
 .. ping ..
 
 This conflicts with and thus holds up hpeldsp.
 

I'll split it now, first memsets then the rest, ok?

___
libav-devel mailing list
libav-devel@libav.org
https://lists.libav.org/mailman/listinfo/libav-devel


Re: [libav-devel] [PATCH] bfin: vp3: Separate VP3 initialization code

2013-01-28 Thread Ronald S. Bultje
Hi,

On Mon, Jan 28, 2013 at 11:01 AM, Luca Barbato lu_z...@gentoo.org wrote:
 On 28/01/13 20:00, Diego Biurrun wrote:
 On Thu, Jan 24, 2013 at 11:44:00AM +0100, Diego Biurrun wrote:
 On Wed, Jan 23, 2013 at 04:45:22PM +0100, Luca Barbato wrote:
 From: Diego Biurrun di...@biurrun.de

 Signed-off-by: Luca Barbato lu_z...@gentoo.org
 ---

 Rebased after the move to int16_t.

 En passant, adding the missing memsets as pointed by Ronald.

 Please separate those, patch LGTM otherwise.

 .. ping ..

 This conflicts with and thus holds up hpeldsp.


 I'll split it now, first memsets then the rest, ok?

No, just commit it. I'm really bright enough to do a trivial rebase.
Please review each patch on its own merits.

Ronald
___
libav-devel mailing list
libav-devel@libav.org
https://lists.libav.org/mailman/listinfo/libav-devel


Re: [libav-devel] [PATCH] bfin: vp3: Separate VP3 initialization code

2013-01-24 Thread Diego Biurrun
On Wed, Jan 23, 2013 at 04:45:22PM +0100, Luca Barbato wrote:
 From: Diego Biurrun di...@biurrun.de
 
 Signed-off-by: Luca Barbato lu_z...@gentoo.org
 ---
 
 Rebased after the move to int16_t.
 
 En passant, adding the missing memsets as pointed by Ronald.

Please separate those, patch LGTM otherwise.

Diego
___
libav-devel mailing list
libav-devel@libav.org
https://lists.libav.org/mailman/listinfo/libav-devel


[libav-devel] [PATCH] bfin: vp3: Separate VP3 initialization code

2013-01-23 Thread Luca Barbato
From: Diego Biurrun di...@biurrun.de

Signed-off-by: Luca Barbato lu_z...@gentoo.org
---

Rebased after the move to int16_t.

En passant, adding the missing memsets as pointed by Ronald.

 libavcodec/bfin/Makefile   |  4 ++--
 libavcodec/bfin/dsputil_bfin.c |  8 +---
 libavcodec/bfin/vp3_bfin.c | 13 -
 libavcodec/vp3dsp.c|  2 ++
 libavcodec/vp3dsp.h|  1 +
 5 files changed, 18 insertions(+), 10 deletions(-)

diff --git a/libavcodec/bfin/Makefile b/libavcodec/bfin/Makefile
index be81e6c..d1b41bc 100644
--- a/libavcodec/bfin/Makefile
+++ b/libavcodec/bfin/Makefile
@@ -2,7 +2,7 @@ OBJS += bfin/dsputil_bfin.o 
\
 bfin/fdct_bfin.o\
 bfin/idct_bfin.o\
 bfin/pixels_bfin.o  \
-bfin/vp3_bfin.o \
-bfin/vp3_idct_bfin.o\
 
 OBJS-$(CONFIG_MPEGVIDEOENC) += bfin/mpegvideo_bfin.o
+OBJS-$(CONFIG_VP3DSP)   += bfin/vp3_bfin.o  \
+   bfin/vp3_idct_bfin.o
diff --git a/libavcodec/bfin/dsputil_bfin.c b/libavcodec/bfin/dsputil_bfin.c
index 5d60184..896a3c5 100644
--- a/libavcodec/bfin/dsputil_bfin.c
+++ b/libavcodec/bfin/dsputil_bfin.c
@@ -257,13 +257,7 @@ void ff_dsputil_init_bfin( DSPContext* c, AVCodecContext 
*avctx )
 if (avctx-dct_algo == FF_DCT_AUTO)
 c-fdct  = ff_bfin_fdct;
 
-// FIXME convert to VP3DSPContext
-if (0) { // avctx-idct_algo == FF_IDCT_VP3) {
-c-idct_permutation_type = FF_NO_IDCT_PERM;
-c-idct  = ff_bfin_vp3_idct;
-c-idct_add  = ff_bfin_vp3_idct_add;
-c-idct_put  = ff_bfin_vp3_idct_put;
-} else if (avctx-idct_algo == FF_IDCT_AUTO) {
+if (avctx-idct_algo == FF_IDCT_AUTO) {
 c-idct_permutation_type = FF_NO_IDCT_PERM;
 c-idct  = ff_bfin_idct;
 c-idct_add  = bfin_idct_add;
diff --git a/libavcodec/bfin/vp3_bfin.c b/libavcodec/bfin/vp3_bfin.c
index 962d383..f454f3a 100644
--- a/libavcodec/bfin/vp3_bfin.c
+++ b/libavcodec/bfin/vp3_bfin.c
@@ -19,8 +19,9 @@
  */
 
 #include libavcodec/avcodec.h
-#include libavcodec/dsputil.h
+#include libavcodec/vp3dsp.h
 #include dsputil_bfin.h
+#include vp3_bfin.h
 
 /* Intra iDCT offset 128 */
 void ff_bfin_vp3_idct_put (uint8_t *dest, int line_size, int16_t *block)
@@ -33,6 +34,8 @@ void ff_bfin_vp3_idct_put (uint8_t *dest, int line_size, 
int16_t *block)
 for (i=0;i8;i++)
 for (j=0;j8;j++)
 dest[line_size*i+j]=cm[block[i*8+j]];
+
+memset(block, 0, 128);
 }
 
 /* Inter iDCT */
@@ -40,4 +43,12 @@ void ff_bfin_vp3_idct_add (uint8_t *dest, int line_size, 
int16_t *block)
 {
 ff_bfin_vp3_idct (block);
 ff_bfin_add_pixels_clamped (block, dest, line_size);
+
+memset(block, 0, 128);
+}
+
+void ff_vp3dsp_init_bfin(VP3DSPContext *c, int flags)
+{
+c-idct_add = ff_bfin_vp3_idct_add;
+c-idct_put = ff_bfin_vp3_idct_put;
 }
diff --git a/libavcodec/vp3dsp.c b/libavcodec/vp3dsp.c
index f6d2c2a..01649f0 100644
--- a/libavcodec/vp3dsp.c
+++ b/libavcodec/vp3dsp.c
@@ -310,6 +310,8 @@ av_cold void ff_vp3dsp_init(VP3DSPContext *c, int flags)
 
 if (ARCH_ARM)
 ff_vp3dsp_init_arm(c, flags);
+if (ARCH_BFIN)
+ff_vp3dsp_init_bfin(c, flags);
 if (ARCH_PPC)
 ff_vp3dsp_init_ppc(c, flags);
 if (ARCH_X86)
diff --git a/libavcodec/vp3dsp.h b/libavcodec/vp3dsp.h
index a5e25ec..755271d 100644
--- a/libavcodec/vp3dsp.h
+++ b/libavcodec/vp3dsp.h
@@ -49,6 +49,7 @@ typedef struct VP3DSPContext {
 
 void ff_vp3dsp_init(VP3DSPContext *c, int flags);
 void ff_vp3dsp_init_arm(VP3DSPContext *c, int flags);
+void ff_vp3dsp_init_bfin(VP3DSPContext *c, int flags);
 void ff_vp3dsp_init_ppc(VP3DSPContext *c, int flags);
 void ff_vp3dsp_init_x86(VP3DSPContext *c, int flags);
 
-- 
1.8.0.2

___
libav-devel mailing list
libav-devel@libav.org
https://lists.libav.org/mailman/listinfo/libav-devel


Re: [libav-devel] [PATCH] bfin: vp3: Separate VP3 initialization code

2013-01-23 Thread Ronald S. Bultje
Hi,

On Wed, Jan 23, 2013 at 7:45 AM, Luca Barbato lu_z...@gentoo.org wrote:
 From: Diego Biurrun di...@biurrun.de

 Signed-off-by: Luca Barbato lu_z...@gentoo.org
 ---

 Rebased after the move to int16_t.

 En passant, adding the missing memsets as pointed by Ronald.

  libavcodec/bfin/Makefile   |  4 ++--
  libavcodec/bfin/dsputil_bfin.c |  8 +---
  libavcodec/bfin/vp3_bfin.c | 13 -
  libavcodec/vp3dsp.c|  2 ++
  libavcodec/vp3dsp.h|  1 +
  5 files changed, 18 insertions(+), 10 deletions(-)

TY, should be good now.

Ronald
___
libav-devel mailing list
libav-devel@libav.org
https://lists.libav.org/mailman/listinfo/libav-devel


[libav-devel] [PATCH] bfin: vp3: Separate VP3 initialization code from general dsputil code

2013-01-21 Thread Diego Biurrun
---

This is untested due to lack of a bfin cross-compilation environment.

 libavcodec/bfin/Makefile   |4 ++--
 libavcodec/bfin/dsputil_bfin.c |8 +---
 libavcodec/bfin/vp3_bfin.c |6 ++
 libavcodec/vp3dsp.c|2 ++
 libavcodec/vp3dsp.h|1 +
 5 files changed, 12 insertions(+), 9 deletions(-)

diff --git a/libavcodec/bfin/Makefile b/libavcodec/bfin/Makefile
index be81e6c..d1b41bc 100644
--- a/libavcodec/bfin/Makefile
+++ b/libavcodec/bfin/Makefile
@@ -2,7 +2,7 @@ OBJS += bfin/dsputil_bfin.o 
\
 bfin/fdct_bfin.o\
 bfin/idct_bfin.o\
 bfin/pixels_bfin.o  \
-bfin/vp3_bfin.o \
-bfin/vp3_idct_bfin.o\
 
 OBJS-$(CONFIG_MPEGVIDEOENC) += bfin/mpegvideo_bfin.o
+OBJS-$(CONFIG_VP3DSP)   += bfin/vp3_bfin.o  \
+   bfin/vp3_idct_bfin.o
diff --git a/libavcodec/bfin/dsputil_bfin.c b/libavcodec/bfin/dsputil_bfin.c
index 6a96d08..492e8c8 100644
--- a/libavcodec/bfin/dsputil_bfin.c
+++ b/libavcodec/bfin/dsputil_bfin.c
@@ -256,13 +256,7 @@ void ff_dsputil_init_bfin( DSPContext* c, AVCodecContext 
*avctx )
 if (avctx-bits_per_raw_sample = 8) {
 if (avctx-dct_algo == FF_DCT_AUTO)
 c-fdct  = ff_bfin_fdct;
-
-if (avctx-idct_algo == FF_IDCT_VP3) {
-c-idct_permutation_type = FF_NO_IDCT_PERM;
-c-idct  = ff_bfin_vp3_idct;
-c-idct_add  = ff_bfin_vp3_idct_add;
-c-idct_put  = ff_bfin_vp3_idct_put;
-} else if (avctx-idct_algo == FF_IDCT_AUTO) {
+if (avctx-idct_algo == FF_IDCT_AUTO) {
 c-idct_permutation_type = FF_NO_IDCT_PERM;
 c-idct  = ff_bfin_idct;
 c-idct_add  = bfin_idct_add;
diff --git a/libavcodec/bfin/vp3_bfin.c b/libavcodec/bfin/vp3_bfin.c
index 962d383..b45063e 100644
--- a/libavcodec/bfin/vp3_bfin.c
+++ b/libavcodec/bfin/vp3_bfin.c
@@ -41,3 +41,9 @@ void ff_bfin_vp3_idct_add (uint8_t *dest, int line_size, 
int16_t *block)
 ff_bfin_vp3_idct (block);
 ff_bfin_add_pixels_clamped (block, dest, line_size);
 }
+
+void ff_vp3dsp_init_bfin(VP3DSPContext *c, int flags)
+{
+c-idct_add  = ff_bfin_vp3_idct_add;
+c-idct_put  = ff_bfin_vp3_idct_put;
+}
diff --git a/libavcodec/vp3dsp.c b/libavcodec/vp3dsp.c
index 7354ec5..a8966e2 100644
--- a/libavcodec/vp3dsp.c
+++ b/libavcodec/vp3dsp.c
@@ -291,6 +291,8 @@ av_cold void ff_vp3dsp_init(VP3DSPContext *c, int flags)
 
 if (ARCH_ARM)
 ff_vp3dsp_init_arm(c, flags);
+if (ARCH_BFIN)
+ff_vp3dsp_init_bfin(c, flags);
 if (ARCH_PPC)
 ff_vp3dsp_init_ppc(c, flags);
 if (ARCH_X86)
diff --git a/libavcodec/vp3dsp.h b/libavcodec/vp3dsp.h
index acc70e1..6e3910e 100644
--- a/libavcodec/vp3dsp.h
+++ b/libavcodec/vp3dsp.h
@@ -33,6 +33,7 @@ typedef struct VP3DSPContext {
 
 void ff_vp3dsp_init(VP3DSPContext *c, int flags);
 void ff_vp3dsp_init_arm(VP3DSPContext *c, int flags);
+void ff_vp3dsp_init_bfin(VP3DSPContext *c, int flags);
 void ff_vp3dsp_init_ppc(VP3DSPContext *c, int flags);
 void ff_vp3dsp_init_x86(VP3DSPContext *c, int flags);
 
-- 
1.7.2.5

___
libav-devel mailing list
libav-devel@libav.org
https://lists.libav.org/mailman/listinfo/libav-devel


Re: [libav-devel] [PATCH] bfin: vp3: Separate VP3 initialization code from general dsputil code

2013-01-21 Thread Ronald S. Bultje
Hi,

On Mon, Jan 21, 2013 at 1:01 AM, Diego Biurrun di...@biurrun.de wrote:
 ---

 This is untested due to lack of a bfin cross-compilation environment.

  libavcodec/bfin/Makefile   |4 ++--
  libavcodec/bfin/dsputil_bfin.c |8 +---
  libavcodec/bfin/vp3_bfin.c |6 ++
  libavcodec/vp3dsp.c|2 ++
  libavcodec/vp3dsp.h|1 +
  5 files changed, 12 insertions(+), 9 deletions(-)

OK.

Ronald
___
libav-devel mailing list
libav-devel@libav.org
https://lists.libav.org/mailman/listinfo/libav-devel


[libav-devel] [PATCH] bfin: vp3: Separate VP3 initialization code

2013-01-21 Thread Luca Barbato
From: Diego Biurrun di...@biurrun.de

---

This one builds, I have yet to patch qemu to run it though...

 libavcodec/bfin/Makefile   |  4 ++--
 libavcodec/bfin/dsputil_bfin.c |  8 +---
 libavcodec/bfin/vp3_bfin.c | 14 ++
 libavcodec/vp3dsp.c|  2 ++
 libavcodec/vp3dsp.h|  1 +
 5 files changed, 16 insertions(+), 13 deletions(-)

diff --git a/libavcodec/bfin/Makefile b/libavcodec/bfin/Makefile
index be81e6c..d1b41bc 100644
--- a/libavcodec/bfin/Makefile
+++ b/libavcodec/bfin/Makefile
@@ -2,7 +2,7 @@ OBJS += bfin/dsputil_bfin.o 
\
 bfin/fdct_bfin.o\
 bfin/idct_bfin.o\
 bfin/pixels_bfin.o  \
-bfin/vp3_bfin.o \
-bfin/vp3_idct_bfin.o\
 
 OBJS-$(CONFIG_MPEGVIDEOENC) += bfin/mpegvideo_bfin.o
+OBJS-$(CONFIG_VP3DSP)   += bfin/vp3_bfin.o  \
+   bfin/vp3_idct_bfin.o
diff --git a/libavcodec/bfin/dsputil_bfin.c b/libavcodec/bfin/dsputil_bfin.c
index 52860c6..699f78a 100644
--- a/libavcodec/bfin/dsputil_bfin.c
+++ b/libavcodec/bfin/dsputil_bfin.c
@@ -257,13 +257,7 @@ void ff_dsputil_init_bfin( DSPContext* c, AVCodecContext 
*avctx )
 if (avctx-dct_algo == FF_DCT_AUTO)
 c-fdct  = ff_bfin_fdct;
 
-// FIXME convert to VP3DSPContext
-if (0) { // avctx-idct_algo == FF_IDCT_VP3) {
-c-idct_permutation_type = FF_NO_IDCT_PERM;
-c-idct  = ff_bfin_vp3_idct;
-c-idct_add  = ff_bfin_vp3_idct_add;
-c-idct_put  = ff_bfin_vp3_idct_put;
-} else if (avctx-idct_algo == FF_IDCT_AUTO) {
+if (avctx-idct_algo == FF_IDCT_AUTO) {
 c-idct_permutation_type = FF_NO_IDCT_PERM;
 c-idct  = ff_bfin_idct;
 c-idct_add  = bfin_idct_add;
diff --git a/libavcodec/bfin/vp3_bfin.c b/libavcodec/bfin/vp3_bfin.c
index bec25a0..d7eecd3 100644
--- a/libavcodec/bfin/vp3_bfin.c
+++ b/libavcodec/bfin/vp3_bfin.c
@@ -19,11 +19,11 @@
  */
 
 #include libavcodec/avcodec.h
-#include libavcodec/dsputil.h
-#include dsputil_bfin.h
+#include libavcodec/vp3dsp.h
+#include vp3_bfin.h
 
 /* Intra iDCT offset 128 */
-void ff_bfin_vp3_idct_put (uint8_t *dest, int line_size, DCTELEM *block)
+void ff_bfin_vp3_idct_put(uint8_t *dest, int line_size, DCTELEM *block)
 {
 uint8_t *cm = ff_cropTbl + MAX_NEG_CROP + 128;
 int i,j;
@@ -36,8 +36,14 @@ void ff_bfin_vp3_idct_put (uint8_t *dest, int line_size, 
DCTELEM *block)
 }
 
 /* Inter iDCT */
-void ff_bfin_vp3_idct_add (uint8_t *dest, int line_size, DCTELEM *block)
+void ff_bfin_vp3_idct_add(uint8_t *dest, int line_size, DCTELEM *block)
 {
 ff_bfin_vp3_idct (block);
 ff_bfin_add_pixels_clamped (block, dest, line_size);
 }
+
+void ff_vp3dsp_init_bfin(VP3DSPContext *c, int flags)
+{
+c-idct_add  = ff_bfin_vp3_idct_add;
+c-idct_put  = ff_bfin_vp3_idct_put;
+}
diff --git a/libavcodec/vp3dsp.c b/libavcodec/vp3dsp.c
index 9e6209d..f29dc2c 100644
--- a/libavcodec/vp3dsp.c
+++ b/libavcodec/vp3dsp.c
@@ -286,6 +286,8 @@ av_cold void ff_vp3dsp_init(VP3DSPContext *c, int flags)
 
 if (ARCH_ARM)
 ff_vp3dsp_init_arm(c, flags);
+if (ARCH_BFIN)
+ff_vp3dsp_init_bfin(c, flags);
 if (ARCH_PPC)
 ff_vp3dsp_init_ppc(c, flags);
 if (ARCH_X86)
diff --git a/libavcodec/vp3dsp.h b/libavcodec/vp3dsp.h
index feb3000..2e2f9e3 100644
--- a/libavcodec/vp3dsp.h
+++ b/libavcodec/vp3dsp.h
@@ -34,6 +34,7 @@ typedef struct VP3DSPContext {
 
 void ff_vp3dsp_init(VP3DSPContext *c, int flags);
 void ff_vp3dsp_init_arm(VP3DSPContext *c, int flags);
+void ff_vp3dsp_init_bfin(VP3DSPContext *c, int flags);
 void ff_vp3dsp_init_ppc(VP3DSPContext *c, int flags);
 void ff_vp3dsp_init_x86(VP3DSPContext *c, int flags);
 
-- 
1.8.0.2

___
libav-devel mailing list
libav-devel@libav.org
https://lists.libav.org/mailman/listinfo/libav-devel


Re: [libav-devel] [PATCH] bfin: vp3: Separate VP3 initialization code

2013-01-21 Thread Luca Barbato
On 21/01/13 20:38, Luca Barbato wrote:
 +void ff_vp3dsp_init_bfin(VP3DSPContext *c, int flags)
 +{
 +c-idct_add  = ff_bfin_vp3_idct_add;
 +c-idct_put  = ff_bfin_vp3_idct_put;

c-idct missing.

qemu-user is not really working for us sadly =\

lu
___
libav-devel mailing list
libav-devel@libav.org
https://lists.libav.org/mailman/listinfo/libav-devel


Re: [libav-devel] [PATCH] bfin: vp3: Separate VP3 initialization code

2013-01-21 Thread Luca Barbato
On 21/01/13 22:13, Luca Barbato wrote:
 On 21/01/13 20:38, Luca Barbato wrote:
 +void ff_vp3dsp_init_bfin(VP3DSPContext *c, int flags)
 +{
 +c-idct_add  = ff_bfin_vp3_idct_add;
 +c-idct_put  = ff_bfin_vp3_idct_put;
 
 c-idct missing.
 

Actually the idct_dc_add not sure if we can safely mix and match them,
probably we can.

lu
___
libav-devel mailing list
libav-devel@libav.org
https://lists.libav.org/mailman/listinfo/libav-devel


Re: [libav-devel] [PATCH] bfin: vp3: Separate VP3 initialization code

2013-01-21 Thread Luca Barbato
On 21/01/13 22:43, Luca Barbato wrote:
 Actually the idct_dc_add not sure if we can safely mix and match them,
 probably we can.

I'd push tomorrow the updated patch, idct_dc_add is compatible from what
I can see.
___
libav-devel mailing list
libav-devel@libav.org
https://lists.libav.org/mailman/listinfo/libav-devel


Re: [libav-devel] [PATCH] bfin: vp3: Separate VP3 initialization code

2013-01-21 Thread Ronald S. Bultje
Hi,

On Mon, Jan 21, 2013 at 1:13 PM, Luca Barbato lu_z...@gentoo.org wrote:
 On 21/01/13 20:38, Luca Barbato wrote:
 +void ff_vp3dsp_init_bfin(VP3DSPContext *c, int flags)
 +{
 +c-idct_add  = ff_bfin_vp3_idct_add;
 +c-idct_put  = ff_bfin_vp3_idct_put;

 c-idct missing.

vp3dsp has no idct.

Ronald
___
libav-devel mailing list
libav-devel@libav.org
https://lists.libav.org/mailman/listinfo/libav-devel


Re: [libav-devel] [PATCH] bfin: vp3: Separate VP3 initialization code

2013-01-21 Thread Ronald S. Bultje
Hi,

On Mon, Jan 21, 2013 at 2:31 PM, Luca Barbato lu_z...@gentoo.org wrote:
 On 21/01/13 22:43, Luca Barbato wrote:
 Actually the idct_dc_add not sure if we can safely mix and match them,
 probably we can.

 I'd push tomorrow the updated patch, idct_dc_add is compatible from what
 I can see.

Please make sure that they set their coefficients to zero after the
idct, that was a recent modification in the API (like VP8) which the
asm previously (when this was written) didn't do.

Ronald
___
libav-devel mailing list
libav-devel@libav.org
https://lists.libav.org/mailman/listinfo/libav-devel