dri-devel.lists.freedesktop.org archive mirror
 help / color / mirror / Atom feed
From: bugzilla-daemon@freedesktop.org
To: dri-devel@lists.freedesktop.org
Subject: [Bug 106625] GPL Request: Where is AMD's patch for libomxil-bellagio / gst-plugins-omx to support HEVC decode?
Date: Wed, 23 May 2018 07:53:18 +0000	[thread overview]
Message-ID: <bug-106625-502@http.bugs.freedesktop.org/> (raw)


[-- Attachment #1.1: Type: text/plain, Size: 5532 bytes --]

https://bugs.freedesktop.org/show_bug.cgi?id=106625

            Bug ID: 106625
           Summary: GPL Request: Where is AMD's patch for
                    libomxil-bellagio / gst-plugins-omx to support HEVC
                    decode?
           Product: Mesa
           Version: git
          Hardware: x86-64 (AMD64)
                OS: All
            Status: NEW
          Severity: enhancement
          Priority: medium
         Component: Drivers/Gallium/radeonsi
          Assignee: dri-devel@lists.freedesktop.org
          Reporter: hojuruku@gmail.com
        QA Contact: dri-devel@lists.freedesktop.org

The gallium driver has a h265 decode module for libomxil-bellagio, but not for
https://github.com/tizonia/tizonia-openmax-il implementation.

It's in /gallium/state_trackers/omx
https://github.com/freedesktop/mesa/blob/master/src/gallium/state_trackers/omx/bellagio/vid_dec_h265.c

tizonia includes EGL support so maybe it would be better to add the H265
encode/decode support to that because libomxil-beligago hasn't been updated
upstream since 2012.


Now I've checked with the official AMD Radeon (amdgpu) drivers 18.10 and their
bundled /etc/xdg/gstomx.conf doesn't have the hevc video decoder enabled by
default (through the configuration file), though I haven't checked yet if it's
enabled in the code to make this a proper "GPL" source code request.

The patches are probably already floating AMD, OMX HEVC support has found it's
way into mesa mesa but to the libraries that use it.

Can one use omx HEVC decode in the mesa state tracker without AMD's patch to
libomxil-bellago? Can you please release it?

[omxh264dec]
type-name=GstOMXH264Dec
core-name=/usr/lib64/libomxil-bellagio.so.0
component-name=OMX.mesa.video_decoder.avc
rank=258
in-port-index=0
out-port-index=1

[omxmpeg2dec]
type-name=GstOMXMPEG2VideoDec
core-name=/usr/lib64/libomxil-bellagio.so.0
component-name=OMX.mesa.video_decoder.mpeg2
rank=258
in-port-index=0
out-port-index=1

#[omxh265dec]
#type-name=GstOMXH265Dec
#core-name=/usr/lib64/libomxil-bellagio.so.0
#component-name=OMX.mesa.video_decoder.hevc
#in-port-index=0
#out-port-index=1
#rank=258

[omxh264enc]
type-name=GstOMXH264Enc
core-name=/usr/lib64/libomxil-bellagio.so.0
component-name=OMX.mesa.video_encoder.avc
in-port-index=0
out-port-index=1

The hevc decode support added a 6 months ago (1.14.0) to gst-plugins-omx is for
a different openmax implementation:

https://github.com/GStreamer/gst-omx/commit/5751001ddc0ea099d6cdbe817a6882959991a3c9

"Add HEVC decoder for the zynqultrascaleplus platform.

I used the H264 decoder code as a template.

https://bugzilla.gnome.org/show_bug.cgi?id=785434"

I know you probably implemented it differently but these are some of the things
missing from OMX_Video.h

typedef enum OMX_VIDEO_CODINGTYPE {
    OMX_VIDEO_CodingUnused,     /**< Value when coding is N/A */
    OMX_VIDEO_CodingAutoDetect, /**< Autodetection of coding type */
    OMX_VIDEO_CodingMPEG2,      /**< AKA: H.262 */
    OMX_VIDEO_CodingH263,       /**< H.263 */
    OMX_VIDEO_CodingMPEG4,      /**< MPEG-4 */
    OMX_VIDEO_CodingWMV,        /**< all versions of Windows Media Video */
    OMX_VIDEO_CodingRV,         /**< all versions of Real Video */
    OMX_VIDEO_CodingAVC,        /**< H.264/AVC */
    OMX_VIDEO_CodingMJPEG,      /**< Motion JPEG */
    OMX_VIDEO_CodingHEVC,
    OMX_VIDEO_CodingKhronosExtensions = 0x6F000000, /**< Reserved region for
introducing Khronos Standard Extensions */
    OMX_VIDEO_CodingVendorStartUnused = 0x7F000000, /**< Reserved region for
introducing Vendor Extensions */
    OMX_VIDEO_CodingMax = 0x7FFFFFFF
} OMX_VIDEO_CODINGTYPE;




gstomxh265utils.h:29:1: error: unknown type name ‘OMX_VIDEO_HEVCPROFILETYPE’;
did you mean ‘OMX_VIDEO_AVCPROFILETYPE’?
 OMX_VIDEO_HEVCPROFILETYPE gst_omx_h265_utils_get_profile_from_str (const
 ^~~~~~~~~~~~~~~~~~~~~~~~~
 OMX_VIDEO_AVCPROFILETYPE
gstomxh265utils.h:31:1: error: unknown type name ‘OMX_VIDEO_HEVCLEVELTYPE’; did
you mean ‘OMX_VIDEO_AVCLEVELTYPE’?
 OMX_VIDEO_HEVCLEVELTYPE gst_omx_h265_utils_get_level_from_str (const gchar *
 ^~~~~~~~~~~~~~~~~~~~~~~
 OMX_VIDEO_AVCLEVELTYPE
gstomxh265utils.h:34:57: error: unknown type name ‘OMX_VIDEO_HEVCPROFILETYPE’;
did you mean ‘OMX_VIDEO_AVCPROFILETYPE’?
 const gchar * gst_omx_h265_utils_get_profile_from_enum
(OMX_VIDEO_HEVCPROFILETYPE e);
                                                        
^~~~~~~~~~~~~~~~~~~~~~~~~
                                                        
OMX_VIDEO_AVCPROFILETYPE
gstomxh265dec.c: In function ‘set_profile_and_level’:
gstomxh265dec.c:138:25: error: ‘OMX_VIDEO_HEVCProfileUnknown’ undeclared (first
use in this function); did you mean ‘OMX_VIDEO_AVCProfileMain’?
   if (param.eProfile == OMX_VIDEO_HEVCProfileUnknown)
                         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
                         OMX_VIDEO_AVCProfileMain
gstomxh265dec.c:138:25: note: each undeclared identifier is reported only once
for each function it appears in
gstomxh265dec.c:148:23: error: ‘OMX_VIDEO_HEVCLevelUnknown’ undeclared (first
use in this function); did you mean ‘OMX_VIDEO_HEVCProfileUnknown’?
   if (param.eLevel == OMX_VIDEO_HEVCLevelUnknown)
                       ^~~~~~~~~~~~~~~~~~~~~~~~~~
                       OMX_VIDEO_HEVCProfileUnknown

-- 
You are receiving this mail because:
You are the assignee for the bug.

[-- Attachment #1.2: Type: text/html, Size: 7305 bytes --]

[-- Attachment #2: Type: text/plain, Size: 160 bytes --]

_______________________________________________
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel

             reply	other threads:[~2018-05-23  7:53 UTC|newest]

Thread overview: 12+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-05-23  7:53 bugzilla-daemon [this message]
2018-05-23  9:51 ` [Bug 106625] GPL Request: Where is AMD's patch for libomxil-bellagio / gst-plugins-omx to support HEVC decode? bugzilla-daemon
2018-05-23  9:52 ` [Bug 106625] AMD HEVC support for for libomxil-bellagio / gst-plugins-omx bugzilla-daemon
2018-05-23 11:58 ` bugzilla-daemon
2018-05-23 12:10 ` bugzilla-daemon
2018-05-23 12:20 ` bugzilla-daemon
2018-05-23 12:22 ` bugzilla-daemon
2018-05-23 12:27 ` bugzilla-daemon
2018-05-23 12:28 ` [Bug 106625] Request test app for HEVC decode with AMD proprietary driver bugzilla-daemon
2018-05-23 14:11 ` [Bug 106625] AMD HEVC support for for libomxil-bellagio / gst-plugins-omx bugzilla-daemon
2018-05-23 14:43 ` bugzilla-daemon
2018-05-24 11:09 ` bugzilla-daemon

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=bug-106625-502@http.bugs.freedesktop.org/ \
    --to=bugzilla-daemon@freedesktop.org \
    --cc=dri-devel@lists.freedesktop.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).