Re: [libav-devel] [PATCH 4/5] vc1dec: Set opposite to the correct value for 1REF field pictures

2012-10-09 Thread Kostya Shishkov
On Tue, Oct 09, 2012 at 04:38:18PM -0400, Mashiat Sarker Shakkhar wrote:
> ---
>  libavcodec/vc1dec.c |   14 ++
>  1 file changed, 10 insertions(+), 4 deletions(-)
> 
> diff --git a/libavcodec/vc1dec.c b/libavcodec/vc1dec.c
> index 491e200..40164cc 100644
> --- a/libavcodec/vc1dec.c
> +++ b/libavcodec/vc1dec.c
> @@ -1458,10 +1458,16 @@ static inline void vc1_pred_mv(VC1Context *v, int n, 
> int dmv_x, int dmv_y,
>  }
>  
>  if (v->field_mode) {
> -if (num_samefield <= num_oppfield)
> -opposite = 1 - pred_flag;
> -else
> -opposite = pred_flag;
> +if (!v->numref)
> +// REFFIELD determines if the last field or the second-last 
> field is
> +// to be used as reference
> +opposite = 1 - v->reffield;
> +else {
> +if (num_samefield <= num_oppfield)
> +opposite = 1 - pred_flag;
> +else
> +opposite = pred_flag;
> +}
>  } else
>  opposite = 0;
>  if (opposite) {
> -- 

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


Re: [libav-devel] [PATCH 4/5] vc1dec: Set opposite to the correct value for 1REF field pictures

2012-10-09 Thread Ronald S. Bultje
Hi,

On Tue, Oct 9, 2012 at 1:38 PM, Mashiat Sarker Shakkhar
 wrote:
> ---
>  libavcodec/vc1dec.c |   14 ++
>  1 file changed, 10 insertions(+), 4 deletions(-)

OK.

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


[libav-devel] [PATCH 4/5] vc1dec: Set opposite to the correct value for 1REF field pictures

2012-10-09 Thread Mashiat Sarker Shakkhar
---
 libavcodec/vc1dec.c |   14 ++
 1 file changed, 10 insertions(+), 4 deletions(-)

diff --git a/libavcodec/vc1dec.c b/libavcodec/vc1dec.c
index 491e200..40164cc 100644
--- a/libavcodec/vc1dec.c
+++ b/libavcodec/vc1dec.c
@@ -1458,10 +1458,16 @@ static inline void vc1_pred_mv(VC1Context *v, int n, 
int dmv_x, int dmv_y,
 }
 
 if (v->field_mode) {
-if (num_samefield <= num_oppfield)
-opposite = 1 - pred_flag;
-else
-opposite = pred_flag;
+if (!v->numref)
+// REFFIELD determines if the last field or the second-last field 
is
+// to be used as reference
+opposite = 1 - v->reffield;
+else {
+if (num_samefield <= num_oppfield)
+opposite = 1 - pred_flag;
+else
+opposite = pred_flag;
+}
 } else
 opposite = 0;
 if (opposite) {
-- 
1.7.9.5

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