Problem installing GStreamer-vaapi

Zelnes mehdi.ghesh at hotmail.fr
Wed Jun 14 13:22:30 UTC 2017


Hyunjun Ko wrote
> 
> Zelnes wrote
>> I'm coming back with bad news...
>> Actually, I don't really have 1.12 working. I mean, when I installed it
>> first, and told you it was okay, I hadn't reboot the computer yet. And
>> when I did it, I couldn't get the screen working, I was unable to access
>> the Desktop, but only ttys. So I backup-ed my packets to get the screen
>> working good, but it uninstalled 1.12 for 1.8 again.
>> Finally, I deal with a loop, because whenever I try to purge three
>> libgstreamers packets, it tries to purge also a bunch of others packets,
>> and if it is not purged, I can't expect to install 1.12 version. I've
>> just fail, I tried to uninstall the old version, listing every packets
>> that shouldn't be purged, then install gstreamer 1.12 (with Base, Good,
>> Bad an Vaapi plugins) and install back listed packets. Unfortunately,
>> once done, Gstreamer 1.8 was back, instead of 1.12 !
>> 
>> Do you have any clue on what's going on ?
> Hmm, maybe you should try to build all gstreamer projects and use it
> without installation.
> There's a simple way provided by gstreamer.
> Note that this is going to pull out the master of gstreamer.
> 
> Here's the step:
> 1. Pull and build all gstreamer projects
>   1) Download the script
> https://cgit.freedesktop.org/gstreamer/gstreamer/plain/scripts/create-uninstalled-setup.sh
> 
>   2) Modify the script to add gstreamer-vaapi 
>   In line 46:
>   from MODULES="gstreamer gst-plugins-base gst-plugins-good
> gst-plugins-ugly gst-plugins-bad gst-libav"
>   to  MODULES="gstreamer gst-plugins-base gst-plugins-good
> gst-plugins-ugly gst-plugins-bad gst-libav gstreamer-vaapi"
> 
>   3) Run the script
>    # sh ./create-uninstalled-setup.sh ( which creates ~/gst directory by
> default )
> 
>   4) Get into the gst-uninstalled shell and build all
>    # ~/gst/gst-master ( by default )
>    # cd 
> <MODULE>
> ; ./autogen.sh; make
>    ( First gstreamer, then gst-plugins-base, then the other modules.
>      You do NOT need to do 'make install' )


Victor Jaquez wrote
>>
>> Hmm, maybe you should try to build all gstreamer projects and use it
>> without
>> installation.
>> There's a simple way provided by gstreamer.
>> Note that this is going to pull out the master of gstreamer.
>>
>> Here's the step:
>> 1. Pull and build all gstreamer projects
>>   1) Download the script
>> https://cgit.freedesktop.org/gstreamer/gstreamer/plain/scripts/create-uninstalled-setup.sh
>>
>>   2) Modify the script to add gstreamer-vaapi
>>   In line 46:
>>   from MODULES="gstreamer gst-plugins-base gst-plugins-good
>> gst-plugins-ugly
>> gst-plugins-bad gst-libav"
>>   to  MODULES="gstreamer gst-plugins-base gst-plugins-good
>> gst-plugins-ugly
>> gst-plugins-bad gst-libav gstreamer-vaapi"
>>
>>   3) Run the script
>>    # sh ./create-uninstalled-setup.sh ( which creates ~/gst directory by
>> default )
>>
>>   4) Get into the gst-uninstalled shell and build all
>>    # ~/gst/gst-master ( by default )
>>    # cd 
> <MODULE>
> ; ./autogen.sh; make
>>    ( First gstreamer, then gst-plugins-base, then the other modules.
>>      You do NOT need to do 'make install' )
>>
>> 2. Test
>>  Once step 1 is all done, you should verify if it's built perfectly on
>> gst-uninstalled shell.
>>  # gst-inspect-1.0 --version : this should print out "1.13"
> ... [show rest of quote]
> 
> The problem with version 1.13 is it's a development one. Which means it
> might
> be broken some days or hours, since it's changing constantly.
> 
> Instead of creating a symbolic link called gst-master, create it named
> gst-1.12 and the script is smart enough to compile the release 1.12
> 
>>  # gst-inspect-1.0 vaapi : this should print out information of vaapi
>> elements.
>>  # gst-launch-1.0 playbin [file] : should play well. (check if vaapi
>> elements are working with GST_DEUBG=vaapi*:6)
>>
>> This is not going to harm your system since they are not installed to
>> your
>> /usr/local/lib or /usr/lib.
>> You can just run ~/gst/gst-master to get into the sandboxed shell and
>> then
>> you can use your new gstreamer.
>>
>>
>>
>>
>>
>> --
>> View this message in context:
>> http://gstreamer-devel.966125.n4.nabble.com/Problem-installing-GStreamer-vaapi-tp4683225p4683365.html
>> Sent from the GStreamer-devel mailing list archive at Nabble.com.
>> _______________________________________________
>> gstreamer-devel mailing list
>> [hidden email]
>> https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel
> «  [hide part of quote]

I have followed your advices, and I finally "installed" 1.12 (I couldn't get
1.13 working, because my libva version is 0.39 and it is required to have at
least 0.40).


Hyunjun Ko wrote
> 2. Test
>  Once step 1 is all done, you should verify if it's built perfectly on
> gst-uninstalled shell.
>  # gst-inspect-1.0 --version : this should print out "1.13"
>  # gst-inspect-1.0 vaapi : this should print out information of vaapi
> elements.
>  # gst-launch-1.0 playbin [file] : should play well. (check if vaapi
> elements are working with GST_DEUBG=vaapi*:6)
> 
> This is not going to harm your system since they are not installed to your
> /usr/local/lib or /usr/lib.
> You can just run ~/gst/gst-master to get into the sandboxed shell and then
> you can use your new gstreamer.

I think every-thing's good now, I checked outside the shell, 3 plugins are
present, and in the shell more (167), and vaapi is present.

Now that's great, I can even compile without editing the makefile, as
pkg-config treats correctly the requested uninstalled libs. But when I run
my pipeline in the shell, that is : filesrc location="my_file.mp4" ! qtdemux
! vaapidecodebin ! autovideosink, it works great, and when I want to execute
the same in-code (with appsink instead of autovideosink), it does not even
recognize qtdemux element, fails at it's creation, and leave the program.
Something must be missing, do you have any idea ?




--
View this message in context: http://gstreamer-devel.966125.n4.nabble.com/Problem-installing-GStreamer-vaapi-tp4683225p4683382.html
Sent from the GStreamer-devel mailing list archive at Nabble.com.


More information about the gstreamer-devel mailing list