Updated in [Mesa-dev] [PATCH v2 0/8] The 2nd version for UVD HEVC encode


On 2018-02-05 03:25 PM, Boyuan Zhang wrote:


On 2018-02-05 12:16 PM, James Zhu wrote:
Add UVD hevc encode pipe video codec creation entry

Signed-off-by: James Zhu <james....@amd.com>
---
  src/gallium/drivers/radeonsi/si_uvd.c | 13 +++++++++----
  1 file changed, 9 insertions(+), 4 deletions(-)

diff --git a/src/gallium/drivers/radeonsi/si_uvd.c b/src/gallium/drivers/radeonsi/si_uvd.c
index 64f2f8e..fa43a96 100644
--- a/src/gallium/drivers/radeonsi/si_uvd.c
+++ b/src/gallium/drivers/radeonsi/si_uvd.c
@@ -31,7 +31,8 @@
  #include "radeon/radeon_vce.h"
  #include "radeon/radeon_vcn_dec.h"
  #include "radeon/radeon_vcn_enc.h"
-
+#include "radeon/radeon_uvd_enc.h"
+#include "util/u_video.h"
Could you add back the blank line please?
  /**
   * creates an video buffer with an UVD compatible memory layout
   */
@@ -146,9 +147,13 @@ struct pipe_video_codec *si_uvd_create_decoder(struct pipe_context *context,
      struct si_context *ctx = (struct si_context *)context;
      bool vcn = (ctx->b.family == CHIP_RAVEN) ? true : false;
  -    if (templ->entrypoint == PIPE_VIDEO_ENTRYPOINT_ENCODE)
-        return (vcn) ? radeon_create_encoder(context, templ, ctx->b.ws, si_vce_get_buffer) : -               si_vce_create_encoder(context, templ, ctx->b.ws, si_vce_get_buffer);
+    if (templ->entrypoint == PIPE_VIDEO_ENTRYPOINT_ENCODE) {
+        if (u_reduce_video_profile(templ->profile) == PIPE_VIDEO_FORMAT_HEVC) { +            return (vcn) ? radeon_create_encoder(context, templ, ctx->b.ws, si_vce_get_buffer) : +                            radeon_uvd_create_encoder(context, templ, ctx->b.ws, si_vce_get_buffer);
+        } else
+            return si_vce_create_encoder(context, templ, ctx->b.ws, si_vce_get_buffer);
+    }
It seems that this change will break the original logic for vcn h.264 encode case, please fix it.

Thanks,
Boyuan

        return (vcn) ? radeon_create_decoder(context, templ) :
          si_common_uvd_create_decoder(context, templ, si_uvd_set_dtb);


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

Reply via email to