Kodi Community Forum

Full Version: libstagefright - Experimental hardware video decoding builds
You're currently viewing a stripped down version of our content. View the full version with proper formatting.
Hi Koying,

I found some technical information on the VC-1 codec here: http://wiki.multimedia.cx/index.php?title=VC-1

Maybe it can be of some help.

Cheers,
Alchete
(2013-02-25, 14:30)Katch Wrote: [ -> ]
(2013-02-25, 13:25)Koying Wrote: [ -> ]
(2013-02-24, 13:47)Katch Wrote: [ -> ]Are we to assume that Herman's patched libstagefright.so is required for further testing and development of these builds on RK3066 SoCs? If so we could do with a link and explanation in the OP or we'll end up with a slew of problems stemming from users not having installed that file.
Indeed. Having a working libstagefright.so is only half the solution. The other half is getting it on the devices self.
I assume the level of post-sale support and updates differ greatly amongst the various device vendors, so It will be hard to have a one-size-fits-all.

As of now, I think the safe route is to keep blacklisting non-MOD16/32 vids, with the option of bypassing the blacklisting via advancedsettings.xml

---

Well, actually the one-size-fits-all solution would be that Rockchip renames the components in the corrected libstagefright.so, so that we can detect whether it's the fixed version or not, but that seems far-fetched.
A good one would maybe to somehow pass a version number in the metadata just after doing the OMXCodec::create...

I can't see the patched libstagefright.so making it into vendors ROMS & updates any time soon (if ever) - It is my understanding that OEMs are responsible for their own firmware and updates so they would need to pick up this fix and include it - I can't believe they are even aware of it.

So moving forward we need to assume that replacing the libstagefright.so is part of the installation process for RK3066 users unless they are using an aftermarket ROM that includes the fix - I will do what I can to disseminate the lib around the other RK3066 devs that I work with at Flashmyandroid and Slatedroid - but it will continue to be an issue for end users I feel...

Unfortunately I can see no easy way to distribute the patched lib as it requires Root and /system write access.

@Herman

Do Rockchip provide a base ROM to OEM vendors and will this patched libstagefright.so be included in future release through official channels?


(2013-02-25, 18:16)Katch Wrote: [ -> ]
(2013-02-25, 17:54)Gaenya Wrote: [ -> ]I got a question, the patched library works only on official rom?, because i tried it on finless 1.7 and the device didnt boot again so i had to reflash it.
Sorry if this is the wrong place to ask that question.

Thanks.

It works only on 4.1 as far as I am aware - what base is finless 1.7? Probably best to approach that ROM dev with the patched lib and ask for support rather than discussing it here.

it wont work on every current circulating jelly bean firmware see above

and blacklisting as Koying said should be left as hard as it sounds and as pretty useless it makes it by that overall Sad

The only real solution as said many times is a fully Hardware adapted XBMC like the AMlogic version else you still will need a external Player Wink
(2013-02-26, 10:15)CruNcher Wrote: [ -> ][quote='Katch' pid='1348132' dateline='1361795428']
[quote='Koying' pid='1348059' dateline='1361791500']

and blacklisting as Koying said should be left as hard as it sounds and as pretty useless it makes it by that overall Sad

The only real solution as said many times is a fully Hardware adapted XBMC like the AMlogic version else you still will need a external Player Wink



But with this new lib from rockchip isn't this solved?

After this new Lib the XBMC still need changes?


Why not 2 versions of the XBMC for the RK30x one with blacklist and another without for people with custom rom that now he had the "new" lib?
No it's not entirely solved the major problem coming after that is Performance
I tried out XBMC with the lighstagefright.so file in a custom rom I made for the iMito MX2 (RK3066) chip, it no longer crashes, and content is no longer garbled. 720p content runs great, the ones that used to crash are now slow. I'm guessing its using the SW renderer that Koying was talking about. But the machine runs really solid. Its a great step in fixing the problem. Keep up the good work.
I think ultimately - once we have performance up to speed - the best solution is an installation guide for RK3066 chipsets (in the xbmc hardware wiki) that instructs users to check their libstagefright.so version and install the patched version if necessary. Is there a terminal command we could use that would spit out a version number for that lib?

I know it is not an ideal solution - as it requires end users to not only root but also to mount system r/w - but it's the best option we have. We could always write a little script or apk that will do the mount and copy - but root will still be required.
(2013-02-27, 12:40)mmesh Wrote: [ -> ]...Sorry to thread-jack a bit but...
...System info in XBMC says it's an "AMLogic 8726-M3" if that helps...
Did you read first post before you will be banned?Cool
(2013-02-27, 12:40)mmesh Wrote: [ -> ]I tried a stable version of XBMC and I only get SW video decoding (not usable).

System info in XBMC says it's an "AMLogic 8726-M3" if that helps...
RTFOP
(2013-02-27, 13:12)mmesh Wrote: [ -> ]OK, that answered my question regarding this build - but maybe someone knows if there is any other version which will do HW decoding on said HW?
Really that hard to do a search rather than thread-jacking?
(2013-02-27, 14:02)Koying Wrote: [ -> ]Really that hard to do a search rather than thread-jacking?

I don't want to be rude but I did do a search on the forum and on the Google and haven't found any conclusive answer.
So, I said to myself: "Hey, here are are some very hard working people doing the work and knowing all the nooks and crannies about HW video decoding on Android so why not ask them.
They sure will have an answer for me."

If by doing that I offended any one - I'm deeply apologizing as that wasn't my intention.

And... on that bomb shell: I bid You all farewell!
(2013-02-27, 14:16)mmesh Wrote: [ -> ]I don't want to be rude but I did do a search on the forum and on the Google and haven't found any conclusive answer...
...means that you really didn't search very hard: http://forum.xbmc.org/showthread.php?tid...ht=amlogic
Quick status:
I'm waiting for an ODROID U2 (should come in 3-4 weeks). Once it is confirmed this one works ok (Exynos4), I suppose we could say the test is conclusive.
I'll then put the patch in shape and submit it to the scrutiny of the Team for inclusion in master.
(2013-02-27, 15:10)mmesh Wrote: [ -> ]I was just looking for a straight answer from somebody who knows more about the topic then me:
Nothing wrong with that.
Wrong is to try to get this answer from a thread specifically NOT for you chipset. VERY wrong is insisting.
If you didn't find your answer, open a thread in the Hardware subforum.
Hi Everyone,

I just tried this build on my Samsung Galaxy Tab 2 7" tablet - and have to say I am impressed. From the generic XBMC build which played 1080p video at a slideshow rate, this build played it without any stuttering at all! Great work!

I do, however, have an issue with a couple SD videos (which do work in the generic build). Trying to play them causes XBMC to crash fairly quickly. I have pasted the debug log Here. Trying the same videos with libstagefright turned off allows the videos to play.

However, I have a feeling I need something else (as I don't see much related to the crash in the log). I did read something about a "logcat" log for crashes, but do not know how to obtain (and a quick search on google didn't help much, but I didn't look too hard). If someone points me in the correct direction, I would be more than happy to provide whatever is needed. My device is at the Samsung stock Jellybean level. It is not rooted, so that may be a limiting factor.

Thanks! and once again, great work!
(2013-02-27, 14:51)Koying Wrote: [ -> ]Quick status:
I'm waiting for an ODROID U2 (should come in 3-4 weeks). Once it is confirmed this one works ok (Exynos4), I suppose we could say the test is conclusive.
I'll then put the patch in shape and submit it to the scrutiny of the Team for inclusion in master.

Mine arrives tomorrow so I'll give it a test and drop some logs if you like.