Kodi Community Forum

Full Version: 10-bit h264 (Hi10) Support?
You're currently viewing a stripped down version of our content. View the full version with proper formatting.
Pages: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48
(2012-04-27, 09:03)Roman_V_M Wrote: [ -> ]But even if DXVA (or other VA technologies for that matter) is enabled you'd still want to have multi-threading for videos that are not accelerated. I don't know, maybe there should be some option, e.g. in advancedsettings.xml to tell a decoder how many threads to use, like it is done in LAVFilters Video.

As maruchan explained in post #433 just a little ahead, implement this may be very difficult.
(2012-04-26, 10:11)spiff Wrote: [ -> ]we figured it was so simple, we have left it to you.

I've followed the wiki tutorial, download xbmc code, and knowing absolutely nothing, it take me aroud... 10 minutes to figure out 2 possibilities at first time...

Edited : After having seen a little more, i think the following is good, so only one proposition left :

/* Only allow slice threading, since frame threading is more
   * sensitive to changes in frame sizes, and it causes crashes
   * during HW accell */
  bool disable_mt_frame=true;
#ifdef HAS_DX
  if (disable_mt_frame) m_pCodecContext->thread_type = FF_THREAD_SLICE;
  else m_pCodecContext->thread_type = FF_THREAD_FRAME;

This was indeed higly complex...Undecided
Nevertheless, i think a dev must confirm.
I've been able to create a build with this, very quick test, seems to work...
I've created a new build using an approach similar to maruchan's idea.

This new build is based on the current master (2012-04-29, rev. d2ac454556).

In addition, it contains the following changes:
This should be the best of both worlds:
  • software decoding incl. Hi10P playback with full (frame and slice) MT enabled
  • DXVA decoding working and limited to slice threading like in the current nightlies
The playback delay penalty introduced by pre-checking the files is between 0.1 and 0.3 seconds per file, ie. barely noticable.

The build is here: http://www.mediafire.com/?6cx2ndk11q7q4v8

Thank you very much. Will test this during the next few days.
Thanks for this build, matey, I will have a go at it...
Thanks for the build.

Maybe you can answer my question here ?
Shine: your latest build works perfectly on my end. There's no perceivable difference in playback start times. You should submit a pull request on the official XBMC git. Smile
@maruchan: Thanks for your feedback! However, no, this is not pull-request worthy code. If done properly, it should be implemented in the actual playback thread, not before playback starts. It has multiple other shortcomings, too. I posted the patch in the development forum, but I do not expect or want it to find its way into the official tree in its current form.
I'm loving having Hi10P playback in XBMC (20120426-8cc72eb). The only thing I'm missing now is ordered chapters support, but that wasn't nearly as critical as Hi10P. Can't wait to see what else comes through in the nightly builds!
Oooh, great to see progress is being made on this request Smile
If I get a chance I'll give some of these new builds a try over the next week or two. I'm largely happy with DSPlayer, but as the developmental focus on it has been hit and miss, I'm not against the idea of trying these builds out Smile

Do Shine's latest builds include say the DTSHD/DDTHD bitstream mods from Daniela's builds elsewhere [not sure if those features have been pushed into Nightlies or not!]?
Not yet.
Does the Apple TV 2 play 10bit with the latest nightly build?
(2012-05-02, 16:06)Uichan Wrote: [ -> ]Does the Apple TV 2 play 10bit with the latest nightly build?

No, and it will never will. There is no hardware decoder that is capable of decoding 10-bit h264 and VideoToolBox under iOS is no exception. As the atv2 does not have the ponies to do software decoded 10-bit h264, no love there either.
Okay just wanted to make sure I think a Intel Core i3 2100 will do the job.
Pages: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48