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.
(2013-01-19, 15:13)Jasper Wrote: [ -> ]And the second version which crashed at the start of playback:

E/SurfaceTexture(23730): [unnamed-23730-0] updateTexImage: error binding external texture image 0x3f64bc6c (slot 1): 0x502

Pulled with *:E , dont know if its enough.
Yep Thanks, perfect. This is Nexus 7 CM10.1, right?
(2013-01-19, 15:18)Koying Wrote: [ -> ]
(2013-01-19, 15:13)Jasper Wrote: [ -> ]And the second version which crashed at the start of playback:

E/SurfaceTexture(23730): [unnamed-23730-0] updateTexImage: error binding external texture image 0x3f64bc6c (slot 1): 0x502

Pulled with *:E , dont know if its enough.
Yep Thanks, perfect. This is Nexus 7 CM10.1, right?

No go, xbmc-stagefrigh v3

Sound start, no video (SD mp4 file on SMB share) then xbmc crash and kick me out

Android stick Uhost2

Rk3066 Mali

OEM Firmware : U2.404.000.11.121221 http://tabletrepublic.com/forum/download...ile&id=182

full dmesg and lsmod for that device


then XBMC.log


Confirmed working on Ouya, too Wink
Hey I have a Imito mx 2: (http://www.geekbuying.com/item/iMito-MX2...12720.html)

Specs (reported by XBMC):
GPU: Mali-400 MP
OpenGl vendor ARM
OpenGL version: OpenGL Es 20.0
Hardware: RK30Board

I used the test video files linked in the first post on the internal storage and I am using the current rom from geekbuying (http://blog.geekbuying.com/index.php/201...ustom-rom/). It is a BOB/Finless rom.

Findings regarding the video files:
Harry Potter -> 2 x Crash. But I am pretty sure it worked in the older version of your XBMC build.
Suzumiya, anime -> No problems, and played perfect
The planet clip -> First time I tried to play it XBMC crashed, 2nd time it played.. It looks like it has a little constant lag.
The planet, unstyled subs, clip -> Less lag then the other planet clip (or non lag at all). (side note: the subs did not changed at the end of the clip. I do not know if it is bug, though)
shrinkage mkv -> No problem, played perfect
shrinkage mp4 -> First time I tried to play it xbmc crashed, 2nd time the clip played without problems
monsters -> Played at 10 fps, with weird black and white lines at top of the screen. The clip playes perfect in mx player. If I recall correct the "old" version of your xbmc build just showed a black screen and the sound played in the background
Birds -> XBMC crashed when trying to play this clip. It seems like XBMC is trying to play the file, xbmc player changed to the player icon to play ">", and then crashed XBMC.
CV1 -> 10 fps, alot of lag (unwatchable). If I remember correct your older xbmc version crashed when playing this file
Matrix -> plays perfect

I could not find the log files (I do not use an external storage), so I used the "upload log files" add on. I hope it is the right log I am linking to (it is "old" log), because I had exited XBMC before using the "upload log files" addon.
It can be found her: http://xbmclogs.com/show.php?id=28947

I do not know how to get the "adb logcat" log, so I can not give much information about the crashing of xbmc. The crash looked a little random, because if I played the same file a second time it would not crash... I have not tried other functionality in xbmc then the video play back functionality, so I do not know the overall stability on my android device.
At the moment I do not have that much time to test further (I just became a dad, 5 days ago), but if you need more information or I can do anything to help out say so. Keep up your awesome work Smile

the linked log file do not seem to be the whole log file (thought "old" file log was a truncation of all the older log files), because when looking at the time stamp it is only about 3 min. long. If I use internal storage do anyone know where and how to get the log files?
For you guys trying to get logcats - here's the method I use for my UG007 so I don't have to sit on the floor in front of my TV with my laptop:


You need to have root to use it, but then it's as simple as starting the program and clicking the big green button.

Then, for ADB, just follow the guide here:


Then to grab a log, all you need to do is open a command prompt where you saved ADB and type:

ADB connect ANDROIDIP:5555


adb logcat > xbmclog.txt

Let it run for a few seconds so it spits the text to xbmclog.txt, then hit ctrl+c to stop, and open your logfile to see the output. Big Grin
I have tested this XBMC version on my MK802III and I have to say, that´s work fine, but not perfect.
All my 720p and 1080p mkv movies plays good, but some has artifact in screen.
Paradoxically I could not play mkv files with SD resolution like this (sound is ok):
UniqueID/String : 205263498345684055968568762464466711951 (0x9A6C4FD1D22851F8AE1DE90BCA9D358F)
Celý název a cesta : d:\pohádky\Pejsek a kočička\pejsek a kočička dělali dort.mkv
Formát : Matroska
Format_Version : Version 2
Velikost souboru : 65,6 MiB
Duration/String : 8mn 57s
Celkový BitRate : 1 024 Kbps
Encoded date : UTC 2011-10-17 14:34:22
Použitý software : mkvmerge v4.7.0 ('Just Like You Imagined') built on Apr 21 2011 01:13:14
Enkódoval : libebml v1.2.0 + libmatroska v1.1.0

ID : 1
Formát : AVC
Formát/ : Advanced Video Codec
Format_Profile : [email protected]
Format_Settings_CABAC/String : Ano
Format_Settings_RefFrames/String : 4 frame
Duration/String : 8mn 57s
Bit rate : 998 Kbps
Šířka : 720pixely
Výška : 540pixely
Poměr stran : 4:3
Frame rate : 25,000 fps
ColorSpace : YUV
ChromaSubsampling : 4:2:0
BitDepth/String : 8 bits
ScanType/String : Progressive
Bits/(Pixel*Frame) : 0.103
StreamSize/String : 62,7 MiB (96%)
Enkódoval : x264 core 116 r2074 2641b9e
Nastavení enkoderu : cabac=1 / ref=3 / deblock=1:0:0 / analyse=0x3:0x113 / me=hex / subme=7 / psy=1 / psy_rd=1.00:0.00 / mixed_ref=1 / me_range=16 / chroma_me=1 / trellis=1 / 8x8dct=1 / cqm=0 / deadzone=21,11 / fast_pskip=1 / chroma_qp_offset=-2 / threads=6 / sliced_threads=0 / nr=0 / decimate=1 / interlaced=0 / bluray_compat=0 / constrained_intra=0 / bframes=3 / b_pyramid=2 / b_adapt=1 / b_bias=0 / direct=1 / weightb=1 / open_gop=0 / weightp=2 / keyint=250 / keyint_min=25 / scenecut=40 / intra_refresh=0 / rc_lookahead=40 / rc=2pass / mbtree=1 / bitrate=998 / ratetol=1.0 / qcomp=0.60 / qpmin=0 / qpmax=69 / qpstep=4 / cplxblur=20.0 / qblur=0.5 / vbv_maxrate=17500 / vbv_bufsize=14000 / nal_hrd=none / ip_ratio=1.40 / aq=1:1.00
Default : Ano
Forced : Ne

ID : 2
Formát : MPEG Audio
Format_Version : Version 2
Format_Profile : Layer 3
CodecID : A_MPEG/L3
/ : MP3
Duration/String : 8mn 57s
Bit rate : 24,0 Kbps
Kanál(y) : 1 kanál
Sampling rate : 24,0 KHz
StreamSize/String : 1,54 MiB (2%)
Default : Ano
Forced : Ne

In conclusion I would like to ask, what I did wrong.
Here I read, how to turn on log
But in this path: external storage/sdcard at: Android/data/org.xbmc.xbmc/files/.xbmc/temp/xbmc.log
I don´t have temp directory and of course no log...
Choppy playback on my MyGica 510b M3 Futeko device - which should also be the same as pivos xios DS :/ (tested with 720p and 1080p mkv files)
Seems no hardware decoding is done here.

Firmware 20121208 with update_patch_xbmc from their site (which basically only exchanges libamplayer.so libamlayerjni.so and libdvm.so) as hw decoding was broken with update20121208.

@Wolfsteen: youll find the log probably here (not SD): /data/data/org.xbmc.xbmc/files/.xbmc/temp or /data/data/org.xbmc.xbmc/cache/temp
Tried xbmc-debug-stagefright-20130113.apk last night on my MK802 III and it works almost perfectly.. Laugh
Im currently running the Finless&Dark4u 1.7 rom.

Performence is definitely improved, am playing a 8 GB 1080P MKV X264 DTS movie over WiFi and over Ethernet using a cheap USB to LAN adapter.
Havent watced a full movie yet, because its keeps buffering evry 60 sec. or so. Probably the througput from my WiFi and USB NIC, the 60 sec of video looks pretty smooth though, hardly a stutter..

Have been working a a fix for this, so i tried expanding the videocache (think i t was in guisettings.xml) from 2048 to 4096, but with no apparent difference.

Also found out how to get full HD, full screen.
In the guisettings.xml there is een entry "Windowed" the original code is:


If you change this to:


and save the file and start XBMC in the System -> Video Hardware screen you will be able to switch to windowded mode (just try the up and down arrows).
XBMC will pop out of the top of your screen and the cursor will be of by 48 pixels, but if you now ""Hide" the taskbar, XBMC will be full screen, 1920 x 1080 P !

Keep up the good work Cool
(2013-01-19, 23:47)tvont Wrote: [ -> ]Seems no hardware decoding is done here.

Firmware 20121208 with update_patch_xbmc from their site (which basically only exchanges libamplayer.so libamlayerjni.so and libdvm.so) as hw decoding was broken with update20121208.
If you are using libamlplayer, then you are probably not using libstagefright, so probably wrong thread...

There is no Software Decoder Fallback yet right, so non supported files will be forced to play via the VPU even if it doesn't support it ?

Then i would say Hardware acceleration works here very nice for 720p on the RK3066 VPU, testing some more it seems 1080p has problems though 1 sample crashed the whole XBMC that works fine in MX Player and Rockchips own Player will continue testing (i started it when the 720p was still playing back in the background so could be an issue also with that), some overall VPU results (very recent firmware) can be found over here http://www.android-hilfe.de/sonstige-and...metal.html Smile

I will prepare my test Bitstreams including the ones in your description and test them with each released version and post a complete report
between Stock Player, MX Player and XBMC Hardware test, also if a Hardware overlay is supported with the OSD Interface and subbtitles which is the case for both the Stock Player and MX Player (seemless switching between Hardware overlay and GPU renderer Android GUI)

PS: This is some great work from everyone involved, also it's nice to see my AS@L5 Bitstream being used for validation here Smile

I too have to have to report big success with Galaxy Note N7000 with Jellybean XXLSC based ROM.

Tried with 2 latest 720p HDTV x264 Fringe Finale episodes, was able to download subtitles for them and butter smooth playback.

Will test with a 1080p x264 mkv with DTS sound and high bitrate, which I use as my reference for determining if a player is fit and report back.

Thanks for everything guys! You really do rock!
TP7-1500DC-metal (RK3066 VPU) Jelly Bean 4.1.1

Bitstream    Stock Player        MX Player       XBMC-Hardware 13.01.2012
Birds             x                  x                  f (crash)
hddvd             x                  x                  x (slow >10 fps)
Monsters          x                  x                  x (8)
Suzumiya          x (2)              x                  x (9)
Matrix            f (3)              x (software)       x (10)
Harry             x (4)              x (7)              x (11)
planet            x                  x                  x (Decoding errors on end crashes XBMC)
shrinkage         x                  x                  x (11)
shrinkage 2       x (4)              x (4)              x (11)    
planet 2          x (5)              x                  x (11)

1 = no subs
2 = no styled subs (subs allways displayed with default fonts)
3 = can't be parsed
4 = frame stuck issues (timestamps) only with the english audio track
5 = hungarian subs wrong characters ?
6 = no overlay
7 = frame stuck issues (timestamps) both audio tracks
8 = only subs and audio then stops after 2 seconds loading of another file takes a long time after this
9 = Decoding errors same as with planet + frame jumps forth/back subs wrong placed unstyled after playback crash
10 = CPU XBMC 80% sub selection is awkward complicated compared to stock and MX Player
11 = CPU XBMC 53% Decoding Errors (horizontal tearing ?) same as Planet and Suzumiya same crash @ end

Puhhh Mx Player is definitely nicely done, so now with that base of issues i can continue testing further builds Smile
eh ? we don't care about Mx Player in this thread. The topic is libstagefright. Please stay on topic or risk getting your post deleted without warning.
Sorry i keep that in mind and concentrate only on the XBMC issues

is the Information about the location of the Debug log outdated in the wiki ?

i searched for it in
Android external storage/sdcard at: Android/data/org.xbmc.xbmc/files/.xbmc/temp/xbmc.log

but the Debug OSD output tells me its location is /data/org.xbmc.xbmc/cache/temp/xbmc.log

i can't find it in either of those places /cache nor /temp exist ?