All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH] nv50: enable H.264 for NV98+ (VP3, VP4.0)
@ 2013-12-07  4:43 Ilia Mirkin
       [not found] ` <1386391387-26182-1-git-send-email-imirkin-FrUbXkNCsVf2fBVCVOL8/A@public.gmane.org>
  0 siblings, 1 reply; 5+ messages in thread
From: Ilia Mirkin @ 2013-12-07  4:43 UTC (permalink / raw)
  To: Maarten Lankhorst
  Cc: mesa-dev-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW, 10.0,
	nouveau-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW

Create the ref_bo without any storage type flags set for now. This can
probably be split up somehow later on, but this seems to work.

Signed-off-by: Ilia Mirkin <imirkin-FrUbXkNCsVf2fBVCVOL8/A@public.gmane.org>
Cc: "10.0" <mesa-stable-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org>
---

Would be great if someone could see if this also makes MPEG4 work on NVA3+. In
order to do that, remove the if (chipset < 0xc0) conditional entirely from
nouveau_vp3_video.c (which I modify in this patch).

 src/gallium/drivers/nouveau/nouveau_vp3_video.c | 5 +++--
 src/gallium/drivers/nouveau/nv50/nv98_video.c   | 2 +-
 2 files changed, 4 insertions(+), 3 deletions(-)

diff --git a/src/gallium/drivers/nouveau/nouveau_vp3_video.c b/src/gallium/drivers/nouveau/nouveau_vp3_video.c
index 07ce016..2f4196c 100644
--- a/src/gallium/drivers/nouveau/nouveau_vp3_video.c
+++ b/src/gallium/drivers/nouveau/nouveau_vp3_video.c
@@ -362,10 +362,11 @@ nouveau_vp3_screen_get_video_param(struct pipe_screen *pscreen,
    enum pipe_video_format codec = u_reduce_video_profile(profile);
    switch (param) {
    case PIPE_VIDEO_CAP_SUPPORTED:
-      /* For now, h264 and mpeg4 don't work on pre-nvc0. */
+      /* For now, mpeg4 doesn't work on pre-nvc0. */
       if (chipset < 0xc0)
          return codec == PIPE_VIDEO_FORMAT_MPEG12 ||
-            codec == PIPE_VIDEO_FORMAT_VC1;
+            codec == PIPE_VIDEO_FORMAT_VC1 ||
+            codec == PIPE_VIDEO_FORMAT_MPEG4_AVC;
       /* In the general case, this should work, once the pre-nvc0 problems are
        * resolved. */
       return profile >= PIPE_VIDEO_PROFILE_MPEG1 && (
diff --git a/src/gallium/drivers/nouveau/nv50/nv98_video.c b/src/gallium/drivers/nouveau/nv50/nv98_video.c
index 069481d..f748c81 100644
--- a/src/gallium/drivers/nouveau/nv50/nv98_video.c
+++ b/src/gallium/drivers/nouveau/nv50/nv98_video.c
@@ -200,7 +200,7 @@ nv98_create_decoder(struct pipe_context *context,
    dec->ref_stride = mb(templ->width)*16 * (mb_half(templ->height)*32 + nouveau_vp3_video_align(templ->height)/2);
    ret = nouveau_bo_new(screen->device, NOUVEAU_BO_VRAM, 0,
                         dec->ref_stride * (templ->max_references+2) + tmp_size,
-                        &cfg, &dec->ref_bo);
+                        NULL, &dec->ref_bo);
    if (ret)
       goto fail;
 
-- 
1.8.3.2

^ permalink raw reply related	[flat|nested] 5+ messages in thread

* [PATCH] nv50: enable MPEG-4 for NVA3+ (VP4.0)
       [not found] ` <1386391387-26182-1-git-send-email-imirkin-FrUbXkNCsVf2fBVCVOL8/A@public.gmane.org>
@ 2013-12-07 13:11   ` Martin Peres
  2013-12-07 16:09     ` [Nouveau] " Ilia Mirkin
  2013-12-08  5:31   ` [PATCH] nv50: enable H.264 for NV98+ (VP3, VP4.0) Ilia Mirkin
  1 sibling, 1 reply; 5+ messages in thread
From: Martin Peres @ 2013-12-07 13:11 UTC (permalink / raw)
  To: mesa-dev-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW,
	nouveau-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW
  Cc: Martin Peres, 10.0

From: Martin Peres <martin.peres-BktLLJ5BOkI@public.gmane.org>

This patch is a follow-up from Ilia Mirkin's enable H.264 patch which
solves the problem that prevented MPEG-4 videos to play correctly.

Tested on an nva3.

Signed-off-by: Martin Peres <martin.peres-BktLLJ5BOkI@public.gmane.org>
Tested-by: Martin Peres <martin.peres-BktLLJ5BOkI@public.gmane.org>
Cc: "10.0" <mesa-stable-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org>
---
 src/gallium/drivers/nouveau/nouveau_vp3_video.c | 5 -----
 1 file changed, 5 deletions(-)

diff --git a/src/gallium/drivers/nouveau/nouveau_vp3_video.c b/src/gallium/drivers/nouveau/nouveau_vp3_video.c
index 2f4196c..0843b78 100644
--- a/src/gallium/drivers/nouveau/nouveau_vp3_video.c
+++ b/src/gallium/drivers/nouveau/nouveau_vp3_video.c
@@ -362,11 +362,6 @@ nouveau_vp3_screen_get_video_param(struct pipe_screen *pscreen,
    enum pipe_video_format codec = u_reduce_video_profile(profile);
    switch (param) {
    case PIPE_VIDEO_CAP_SUPPORTED:
-      /* For now, mpeg4 doesn't work on pre-nvc0. */
-      if (chipset < 0xc0)
-         return codec == PIPE_VIDEO_FORMAT_MPEG12 ||
-            codec == PIPE_VIDEO_FORMAT_VC1 ||
-            codec == PIPE_VIDEO_FORMAT_MPEG4_AVC;
       /* In the general case, this should work, once the pre-nvc0 problems are
        * resolved. */
       return profile >= PIPE_VIDEO_PROFILE_MPEG1 && (
-- 
1.8.4.2

^ permalink raw reply related	[flat|nested] 5+ messages in thread

* Re: [Nouveau] [PATCH] nv50: enable MPEG-4 for NVA3+ (VP4.0)
  2013-12-07 13:11   ` [PATCH] nv50: enable MPEG-4 for NVA3+ (VP4.0) Martin Peres
@ 2013-12-07 16:09     ` Ilia Mirkin
       [not found]       ` <CAKb7UviogOGD1XnwpsKyG0H=RKRW+5j1vn85zmOhb45VUiHHHg-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
  0 siblings, 1 reply; 5+ messages in thread
From: Ilia Mirkin @ 2013-12-07 16:09 UTC (permalink / raw)
  To: Martin Peres
  Cc: mesa-dev@lists.freedesktop.org, Martin Peres, 10.0,
	nouveau@lists.freedesktop.org

On Sat, Dec 7, 2013 at 8:11 AM, Martin Peres <martin.peres@free.fr> wrote:
> From: Martin Peres <martin.peres@labri.fr>
>
> This patch is a follow-up from Ilia Mirkin's enable H.264 patch which
> solves the problem that prevented MPEG-4 videos to play correctly.
>
> Tested on an nva3.

I might reword this as

"""
VP3/VP4 now work on all the codecs they are supposed to, remove old restriction.

Tested on NVA3
"""

Or something like that...

> Signed-off-by: Martin Peres <martin.peres@labri.fr>
> Tested-by: Martin Peres <martin.peres@labri.fr>
> Cc: "10.0" <mesa-stable@lists.freedesktop.org>
> ---
>  src/gallium/drivers/nouveau/nouveau_vp3_video.c | 5 -----
>  1 file changed, 5 deletions(-)
>
> diff --git a/src/gallium/drivers/nouveau/nouveau_vp3_video.c b/src/gallium/drivers/nouveau/nouveau_vp3_video.c
> index 2f4196c..0843b78 100644
> --- a/src/gallium/drivers/nouveau/nouveau_vp3_video.c
> +++ b/src/gallium/drivers/nouveau/nouveau_vp3_video.c
> @@ -362,11 +362,6 @@ nouveau_vp3_screen_get_video_param(struct pipe_screen *pscreen,
>     enum pipe_video_format codec = u_reduce_video_profile(profile);
>     switch (param) {
>     case PIPE_VIDEO_CAP_SUPPORTED:
> -      /* For now, mpeg4 doesn't work on pre-nvc0. */
> -      if (chipset < 0xc0)
> -         return codec == PIPE_VIDEO_FORMAT_MPEG12 ||
> -            codec == PIPE_VIDEO_FORMAT_VC1 ||
> -            codec == PIPE_VIDEO_FORMAT_MPEG4_AVC;
>        /* In the general case, this should work, once the pre-nvc0 problems are
>         * resolved. */

Update this comment to reflect reality. Or just remove it.

With that change,

Reviewed-by: Ilia Mirkin <imirkin@alum.mit.edu>

Or I can fold this into my h264 change if you don't want to send a v2,
up to you.

>        return profile >= PIPE_VIDEO_PROFILE_MPEG1 && (
> --
> 1.8.4.2
>
> _______________________________________________
> Nouveau mailing list
> Nouveau@lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/nouveau

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [PATCH] nv50: enable MPEG-4 for NVA3+ (VP4.0)
       [not found]       ` <CAKb7UviogOGD1XnwpsKyG0H=RKRW+5j1vn85zmOhb45VUiHHHg-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
@ 2013-12-07 16:27         ` Martin Peres
  0 siblings, 0 replies; 5+ messages in thread
From: Martin Peres @ 2013-12-07 16:27 UTC (permalink / raw)
  To: Ilia Mirkin, Martin Peres
  Cc: mesa-dev-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org, 10.0,
	nouveau-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org

On 07/12/2013 17:09, Ilia Mirkin wrote:
> On Sat, Dec 7, 2013 at 8:11 AM, Martin Peres <martin.peres-GANU6spQydw@public.gmane.org> wrote:
>> From: Martin Peres <martin.peres-BktLLJ5BOkI@public.gmane.org>
>>
>> This patch is a follow-up from Ilia Mirkin's enable H.264 patch which
>> solves the problem that prevented MPEG-4 videos to play correctly.
>>
>> Tested on an nva3.
>
> I might reword this as
>
> """
> VP3/VP4 now work on all the codecs they are supposed to, remove old restriction.
>
> Tested on NVA3
> """
>
> Or something like that...

Yeah, that would make more sense. Feel free to reword it before committing.

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [PATCH] nv50: enable H.264 for NV98+ (VP3, VP4.0)
       [not found] ` <1386391387-26182-1-git-send-email-imirkin-FrUbXkNCsVf2fBVCVOL8/A@public.gmane.org>
  2013-12-07 13:11   ` [PATCH] nv50: enable MPEG-4 for NVA3+ (VP4.0) Martin Peres
@ 2013-12-08  5:31   ` Ilia Mirkin
  1 sibling, 0 replies; 5+ messages in thread
From: Ilia Mirkin @ 2013-12-08  5:31 UTC (permalink / raw)
  To: Maarten Lankhorst
  Cc: mesa-dev-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org, 10.0,
	nouveau-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org

On Fri, Dec 6, 2013 at 11:43 PM, Ilia Mirkin <imirkin-FrUbXkNCsVf2fBVCVOL8/A@public.gmane.org> wrote:
> Create the ref_bo without any storage type flags set for now. This can
> probably be split up somehow later on, but this seems to work.
>
> Signed-off-by: Ilia Mirkin <imirkin-FrUbXkNCsVf2fBVCVOL8/A@public.gmane.org>
> Cc: "10.0" <mesa-stable-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org>
> ---
>
> Would be great if someone could see if this also makes MPEG4 work on NVA3+. In
> order to do that, remove the if (chipset < 0xc0) conditional entirely from
> nouveau_vp3_video.c (which I modify in this patch).

Martin Peres did that, and it seems to work. I'm going to send an
updated series.

>
>  src/gallium/drivers/nouveau/nouveau_vp3_video.c | 5 +++--
>  src/gallium/drivers/nouveau/nv50/nv98_video.c   | 2 +-
>  2 files changed, 4 insertions(+), 3 deletions(-)
>
> diff --git a/src/gallium/drivers/nouveau/nouveau_vp3_video.c b/src/gallium/drivers/nouveau/nouveau_vp3_video.c
> index 07ce016..2f4196c 100644
> --- a/src/gallium/drivers/nouveau/nouveau_vp3_video.c
> +++ b/src/gallium/drivers/nouveau/nouveau_vp3_video.c
> @@ -362,10 +362,11 @@ nouveau_vp3_screen_get_video_param(struct pipe_screen *pscreen,
>     enum pipe_video_format codec = u_reduce_video_profile(profile);
>     switch (param) {
>     case PIPE_VIDEO_CAP_SUPPORTED:
> -      /* For now, h264 and mpeg4 don't work on pre-nvc0. */
> +      /* For now, mpeg4 doesn't work on pre-nvc0. */
>        if (chipset < 0xc0)
>           return codec == PIPE_VIDEO_FORMAT_MPEG12 ||
> -            codec == PIPE_VIDEO_FORMAT_VC1;
> +            codec == PIPE_VIDEO_FORMAT_VC1 ||
> +            codec == PIPE_VIDEO_FORMAT_MPEG4_AVC;
>        /* In the general case, this should work, once the pre-nvc0 problems are
>         * resolved. */
>        return profile >= PIPE_VIDEO_PROFILE_MPEG1 && (
> diff --git a/src/gallium/drivers/nouveau/nv50/nv98_video.c b/src/gallium/drivers/nouveau/nv50/nv98_video.c
> index 069481d..f748c81 100644
> --- a/src/gallium/drivers/nouveau/nv50/nv98_video.c
> +++ b/src/gallium/drivers/nouveau/nv50/nv98_video.c
> @@ -200,7 +200,7 @@ nv98_create_decoder(struct pipe_context *context,
>     dec->ref_stride = mb(templ->width)*16 * (mb_half(templ->height)*32 + nouveau_vp3_video_align(templ->height)/2);
>     ret = nouveau_bo_new(screen->device, NOUVEAU_BO_VRAM, 0,
>                          dec->ref_stride * (templ->max_references+2) + tmp_size,
> -                        &cfg, &dec->ref_bo);
> +                        NULL, &dec->ref_bo);
>     if (ret)
>        goto fail;
>
> --
> 1.8.3.2
>

^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2013-12-08  5:31 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2013-12-07  4:43 [PATCH] nv50: enable H.264 for NV98+ (VP3, VP4.0) Ilia Mirkin
     [not found] ` <1386391387-26182-1-git-send-email-imirkin-FrUbXkNCsVf2fBVCVOL8/A@public.gmane.org>
2013-12-07 13:11   ` [PATCH] nv50: enable MPEG-4 for NVA3+ (VP4.0) Martin Peres
2013-12-07 16:09     ` [Nouveau] " Ilia Mirkin
     [not found]       ` <CAKb7UviogOGD1XnwpsKyG0H=RKRW+5j1vn85zmOhb45VUiHHHg-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2013-12-07 16:27         ` Martin Peres
2013-12-08  5:31   ` [PATCH] nv50: enable H.264 for NV98+ (VP3, VP4.0) Ilia Mirkin

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.