Jump to content

S905x H/W Video Accel for Gstreamer?


whoman

Recommended Posts

Hello All,

 

how can I get hardware video acceleration for S905x on Debian/Armbian using Gstreamer?

 

I installed gstreamer, and using 'decodebin' and 'fbdevsink' gives terrible performance (software decoding).

 

I did some searching and found that amlogic has two GST plugins for hardware accelerated video decoding: "amlvdec" and "amlvsink"

 

I was able to locate the source code here:

http://openlinux.amlogic.com:8000/download/ARM/filesystem/

 

I downloaded the newest archive "arm-buildroot-2016-08-18-5aaca1b35f.tar.gz"

 

Would this work with debian/Armbian?

 

When I try to compile the plugin, I get the message:

 

 

usr/bin/ld: cannot find -lamcodec
/usr/bin/ld: cannot find -lamadec
/usr/bin/ld: cannot find -lamavutils
collect2: error: ld returned 1 exit status
 

 

so I searched online, and found:

https://github.com/mdrjr/c1_aml_libs

 

I tried to compile this however I got the error:

 

 

cc: error: unrecognized command line option ‘-mlong-calls’

 

 

Does anyone know how I can get Gstreamer to play videos with hardware acceleration?

 

Thanks so much!

 

Link to comment
Share on other sites

So I found the correct version after some more searching

 

"https://github.com/mdrjr/c2_aml_libs"

and everything compiles except for the 'example'

 

 

cc -I/home/onev/c2-aml-libs/c2_aml_libs/example -pthread -O2 esplayer.c -o esplayer -L/usr/lib/aml_libs -lamcodec -ldl -lamadec -lasound -lamavutils
/usr/bin/ld: cannot find -lamcodec
/usr/bin/ld: cannot find -lamadec
/usr/bin/ld: cannot find -lasound
/usr/bin/ld: cannot find -lamavutils
collect2: error: ld returned 1 exit status
Makefile:25: recipe for target 'esplayer' failed
make[1]: *** [esplayer] Error 1
 

 

I'm guessing that since this is the example file I do not need it?  so I commented it out of the Makefile, and finished with "make all" and "make install"

 

however I still get this error when trying to compile GST plugins

 

 

/usr/bin/ld: cannot find -lamcodec
/usr/bin/ld: cannot find -lamadec
/usr/bin/ld: cannot find -lamavutils

 

am I missing some basic step to enable /usr/bin/ld to find the libraries?

Link to comment
Share on other sites

for "gst-aml-plugins1", compile did complete however "make install" placed the *.so and *.la files into /usr/local/lib/gstreamer1.0

 

So I had to manually copy the files to "/usr/lib/aarch64-linux-gnu/gstreamer-1.0/"

 

now when I run gst-inspect, I get errors for the amlogic plugins:

 

 

 gst-inspect-1.0 |grep aml

(gst-plugin-scanner:16911): GStreamer-WARNING **: Failed to load plugin '/usr/lib/aarch64-linux-gnu/gstreamer-1.0/libgstamlvdec.so': /usr/lib/aml_libs/libamadec.so: undefined symbol: snd_pcm_writei

(gst-plugin-scanner:16911): GStreamer-WARNING **: Failed to load plugin '/usr/lib/aarch64-linux-gnu/gstreamer-1.0/libgstamlasink.so': /usr/lib/aml_libs/libamadec.so: undefined symbol: snd_pcm_writei

(gst-plugin-scanner:16911): GStreamer-WARNING **: Failed to load plugin '/usr/lib/aarch64-linux-gnu/gstreamer-1.0/libgstamladec.so': /usr/lib/aml_libs/libamadec.so: undefined symbol: snd_pcm_writei

(gst-plugin-scanner:16911): GStreamer-WARNING **: Failed to load plugin '/usr/lib/aarch64-linux-gnu/gstreamer-1.0/libgstamlvsink.so': /usr/lib/aarch64-linux-gnu/gstreamer-1.0/libgstamlvsink.so: undefined symbol: amvideo_release

 

What is the problem with my compilation?  Am I not linking something correctly?

Link to comment
Share on other sites

Guest
This topic is now closed to further replies.
×
×
  • Create New...

Important Information

Terms of Use - Privacy Policy - Guidelines