Firefly Open Source Community

   Login   |   Register   |
New_Topic
Print Previous Topic Next Topic

hw accelerated video / video processor (VPU) running on linux on RK3288 / fir...

844

Credits

42

Prestige

48

Contribution

advanced

Rank: 4

Credits
844

hw accelerated video / video processor (VPU) running on linux on RK3288 / fir...

Posted at 4/17/2015 21:09:21      View:15338 | Replies:7        Print      Only Author   [Copy Link] 1#
                               
Higuys,

Justto show I've got the RK3288 video processor (VPU) working on linux-both decoder and encoder-:



TechnicallyI use
-Android's libraries: for access to the vpu device driver and formemory management – both encoding and decoding h264 byte-streams
-libhybris: to access these libraries on linux/ubuntu
-rga2 device driver for 2D HW accelerated blitting and convertingframes (yuv/nv21 <=> rgb32)
-ARMs OpenGL library, driver and examples (fbdev) to render rotatedimages using the GPU
-raw framebuffer device access to blit full-screen (full-screen playerand recorder)
-avlib to demux movie containers (mp4/mov) to bytestreams (player) andvice versa (recorder)

Dueto a clean low-level interface it should be quite easy to add videoacceleration to xbmc, avlib-tools, gstreamer, vlc, … Also all hwsupported formats should be supported (including HEVC).

Basicallythis should also work on RK3188 devices, as Androids libs are almostidentical and libhybris is also working (my next project...)

Cheers!

-- MAC


已有 1评分Prestige +10 Money +11 Contribution +12 Pack up reason
peba + 10 + 11 + 12

View all ratings

Reply

Use props Report

71

Credits

0

Prestige

0

Contribution

registered members

Rank: 2

Credits
71
Posted at 10/9/2015 09:38:03        Only Author  recommend
mac_l1 Posted at 5/6/2015 14:51
Just to share an update I posted on: http://freaktab.com/forum/tv-player-support/rk3288-devices/4944 ...

hi,mac_l1,

I want to directly call codec method, not through xbmc, how to do? or can obtain xbmc source code, reference codec is how to call the codec method by hyris.
Reply

Use props Report

844

Credits

42

Prestige

48

Contribution

advanced

Rank: 4

Credits
844
Posted at 4/22/2015 17:17:52        Only Author  recommend
@e97: The vpu actually decodes the input stream per frame-packet. In the full screen/ full speed example i use the max decoding speed for an h264 movie and i dont wait for anything. Not for vertical blank nor some timeout. Basically it is a loop of: 1) parse movie to h264 byte stream, 2) decode this to frame, 3) blit it to framebuffer (no rendering) using hw, and again; with a bit of multi-threading. Then i get about 50fps max for these movies, wouldn't expect too much here.
Maybe a bit more efficient multi-threading can crank-up the fps a bit and also some other decoding format like hevc/h265, so 60fps might be do-able. Haven't checked that.

Repo is not yet there.  But will certainly share it. Currently my code is a bit experimental and a mess. I have to clean it up and especially find a way to "package" libhybris and a minimal recompiled android /system image that is essential.
Reply

Use props Report

175

Credits

0

Prestige

0

Contribution

registered members

Rank: 2

Credits
175
Posted at 4/22/2015 07:31:32        Only Author  2#
Last edited by e97 In 4/22/2015 07:33 Editor

Great work!

Is 1080p / 60 fps VPU decode supported? Do you have a repo somewhere to further your work?
Reply

Use props Report

2442

Credits

0

Prestige

0

Contribution

vip

Rank: 6Rank: 6

Credits
2442
Posted at 4/23/2015 11:44:54        Only Author  4#
nice
could you share the firmware, I want to have a try
Reply

Use props Report

844

Credits

42

Prestige

48

Contribution

advanced

Rank: 4

Credits
844
Posted at 5/6/2015 14:51:38        Only Author  5#
Just to share an update I posted on: http://freaktab.com/forum/tv-pla ... k3288-firefly/page2.

"Update: i am now working on xbmc/kodi. Thanks to memeka I got his xbmc working based on hybris, android EGL/GLES and mediaplayer (not using the low-level libvpu i demo-ed), really thanks memeka! Runs both on rk3288 and rk3188. However sound is crap ,video not yet smooth (probably slow yuv2rgb shader and syncing issues) and some crashes. Now migrating to spmc of Koying as he has lots of rockchip support in his repos and keeps his stuff uptodate, maybe I can push to his repo later.

So still have to wait a bit, maybe a month or so. First a decent kodi version working and then a decent release (still looking for a decent way to package hybris)."
Reply

Use props Report

You need to log in before you can reply Login | Register

This forum Credits Rules

Quick Reply Back to top Back to list