Hi,

Right now gst-vaapi-encoder doesn't have support to negotiate the custom profile set via capsfilter. But we are selecting an appropriate profile based on other coding tools. We start from "constrained-baseline" as the default choice, then if user ask for b frame encoding or cabac entropy coding, it will switch to "main" profile.. Similarly asking for 8x8 dct
will switch  the profile to "high"..

Basically if you are not choosing any of those coding tools, it could be enough to use constrained-baseline.. Any decoder which can support main profile should be able enough to decode the constrained-baseline too.
Similarly high profile decoder can decode main profile too..

But adding a provision for selecting profiles as per user's choice seems fine for me. If you can file a bug against gstreamer-vaapi (https://bugzilla.gnome.org/enter_bug.cgi?product=gstreamer-vaapi) asking for this feature,
we can discuss it there..

On 10.11.2015 20:23, William Katsak wrote:
I've been looking at the source this afternoon, and my interpretation of it is 
that specifying the profile via caps is only serving a restrictive role, vs. a 
configuration role. Obviously, I need to study it more, but is this true? To 
target a different profile, do we need to specifically specify which encoding 
tools that we want to use?

Thanks,
Bill

________________________________________
From: Libva [libva-boun...@lists.freedesktop.org] on behalf of William Katsak 
[william.kat...@ericsson.com]
Sent: Tuesday, 10 November 2015 10:33 AM
To: libva@lists.freedesktop.org
Subject: [Libva] gstreamer-vaapi strange issue

Hello,

I am not sure if this the right list for this, but I am seeing a strange issue 
with gstreamer-vaapi on Intel Haswell.

I am doing some experimentation using gstreamer-vaapi on an Intel i3-4370 CPU. 
I am running libva 1.6.1, and libva Intel driver 1.6.0 on Ubuntu 15.04.

My issue is that I cannot seem to get the thing to do anything except 
constrained baseline, despite asking it to do other profiles.

If I do something like this:

gst-launch-1.0 filesrc location=/ramdisk/bbb_sunflower_1080p_30fps_normal.mp4 ! 
qtdemux ! vaapidecode ! vaapiencode_h264 ! video/x-h264,profile=high ! qtmux ! 
filesink location=/ramdisk/tmp.mov

It appears to work fine, but if I check with this:

avprobe -show_streams /ramdisk/tmp.mov

the output will indicate:
profile=Constrained Baseline

However, if I change the encode element to:
vaapiencode_h264 dct8x8=1
it does change the output profile.

My question is, is this correct behavior? Do we need dct8x8 to do anything 
higher than Constrained Baseline? If so, why? Is this a fundamental detail of 
H.264, or is this an implementation detail?

Thanks in advance for any help or pointers that you might able to give me.
-Bill








_______________________________________________
Libva mailing list
Libva@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/libva
_______________________________________________
Libva mailing list
Libva@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/libva

--
Thanks
Sree

---------------------------------------------------------------------
Intel Finland Oy
Registered Address: PL 281, 00181 Helsinki Business Identity Code: 0357606 - 4 Domiciled in Helsinki
This e-mail and any attachments may contain confidential material for
the sole use of the intended recipient(s). Any review or distribution
by others is strictly prohibited. If you are not the intended
recipient, please contact the sender and delete all copies.
_______________________________________________
Libva mailing list
Libva@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/libva

Reply via email to