View Single Post
  #1 (permalink)  
Old 28th December 2011
Prof Yaffle Prof Yaffle is offline
Junior Member
BS.Player Newbie
Join Date: Dec 2011
Posts: 3
Rep Power: 0
Prof Yaffle is on a distinguished road
Default Non-standard H.264 files/Unable to play

Folks -

I've noticed that BSPlayer for Android (very good, by the way - price it right and I'll gladly pay you for it when you launch a pro version, just for the LAN support!) seems to suffer from an issue I've seen on other ffmpeg-based players. The manifestation is different (you just give up and fail over to software, other players carry on and show image corruption), but...

It's a long and sorry saga, you can find more on the XBMC forums here and on trac here. However, the summary is that it seems to struggle with non-standard y-dimensions (e.g. a 1280x724 file instead of a 1280x720)... these are common (at least in the UK) from TV-on-demand services - the extra lines (SEI/VUI) are fine according to the H.264 standards since they can contain additional information about the file, but should be cropped during rendering. I think the issue is that you end up cropping twice - once in hardware, then again in ffmpeg - unless you pass ffmpeg the correct (cropped) file dimensions. Or something like that!

I don't pretend to understand the finer points of cropping, surfaces and similar - let alone on an ARM platform (Asus Transformer TF101). How this manifests, though, is that the file is rejected ("Error opening... trying in software mode") - unfortunately, CPU grunt isn't enough to play in software mode. It isn't just HD files, though - some SD files from similar sources (BBC iPlayer, Channel 5 on demand) will show the same issues, although there's enough CPU power to play those.

So, the simple summary: BSPlayer for Android (maybe on other platforms as well?) refuses to play H.264 files with SEI, and thus additional lines.

Anyway, thought you should know, since this also shows up in various versions on mplayer, quicktime, and many other media players which haven't completely implemented things properly as I understand it. XBMC has now fixed it.

Of course, it could be for a completely different reason, but it's suspicious that the same files that choked XBMC are now doing the same on BSPlayer, while true 1280x720 H.264 files (e.g. from YouTube) play fine.
Reply With Quote

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20