On 26.10.2013 16:31, Peter Frühberger wrote:
Hi,

I looked at the openmax decoder posted yesterday and have seen that
only two fields are missing to also decode hi10p with the current
vdpau uvd infrastructure in place.

I mailed two patches to the vdpau mailing list in order to get the API
bumped to "ship" those two fields via the h264 structure to later have
them available, the rest is already there with [1].


Maybe it would be nice to get some further useful API additions into VDPAU along the way? For instance, 10 bpc video surfaces would be quite useful (for software decoding w/ VDPAU presentation), or a video mixer attribute to configure chroma sample cositing.

Best regards
Grigori

In mesa it is currently handled with the already given profiles, see
attached patch. This is - I think - a minimal way of get it decoded.
Happy to discuss a more general approach.

Input welcome, I will especially update, when I get feedback on the
vdpau Mailinglist (bumped versions are only to be seen prototypical).

[1] http://lists.freedesktop.org/archives/mesa-dev/2013-October/046944.html

Best regards
Peter

 From 9f9df1a397a7d9a0b6471e16c49e9a330c13172d Mon Sep 17 00:00:00 2001
From: fritsch <peter.fruehber...@gmail.com>
Date: Sat, 26 Oct 2013 15:52:46 +0200
Subject: [PATCH 1/3] hi10p: vdpau state tracker patch

---
  src/gallium/state_trackers/vdpau/vdpau_private.h | 4 ++++
  1 file changed, 4 insertions(+)

diff --git a/src/gallium/state_trackers/vdpau/vdpau_private.h
b/src/gallium/state_trackers/vdpau/vdpau_private.h
index 60196ac..99bad8f 100644
--- a/src/gallium/state_trackers/vdpau/vdpau_private.h
+++ b/src/gallium/state_trackers/vdpau/vdpau_private.h
@@ -260,6 +260,8 @@ ProfileToPipe(VdpDecoderProfile vdpau_profile)
           return PIPE_VIDEO_PROFILE_VC1_MAIN;
        case VDP_DECODER_PROFILE_VC1_ADVANCED:
           return PIPE_VIDEO_PROFILE_VC1_ADVANCED;
+      case VDP_DECODER_PROFILE_H264_HI10;
+         return PIPE_VIDEO_PROFILE_MPEG4_AVC_HI10;
        default:
           return PIPE_VIDEO_PROFILE_UNKNOWN;
     }
@@ -281,6 +283,8 @@ PipeToProfile(enum pipe_video_profile p_profile)
           return VDP_DECODER_PROFILE_H264_MAIN;
        case PIPE_VIDEO_PROFILE_MPEG4_AVC_HIGH:
           return VDP_DECODER_PROFILE_H264_HIGH;
+      case PIPE_VIDEO_PROFILE_MPEG4_AVC_HI10:
+         return VDP_DECODER_PROFILE_H264_HI10;
        case PIPE_VIDEO_PROFILE_MPEG4_SIMPLE:
           return VDP_DECODER_PROFILE_MPEG4_PART2_SP;
        case PIPE_VIDEO_PROFILE_MPEG4_ADVANCED_SIMPLE:


_______________________________________________
mesa-dev mailing list
mesa-dev@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/mesa-dev

Reply via email to