Kodi Community Forum

Full Version: No multithreaded Video decoding on XBMC INTREPID version (in-depth testing)
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
aron Wrote:I just need to create a patch, so it can be applied to the source.
EDIT: Avi playback is buggy ... But 1080o video playback is cool now Wink

Great news Aron !
I'm just trying to compile xbmc source overwritten with ffmpeg-mt source files. I report back if it works.

Edit: It is not working like this. When i press play it does nothing. Stays in the menu.

Anyway i tried to compile ffplay on HARDY from XBMC dir, but it is NOT working like inside xbmc multiple threads but one core is in use. Same thing with Intrepid. So i am stuck with this ffmpeg version now. I will try copying the libs, maybe at least xbmc could be better if not ffplay.
As i understand it xbmc sync ffmpeg with the main ffmpeg branch and then make some changes in their own tree to make it work with xbmc.

i guess the first step would be to find out which revision of ffmpeg xbmc uses.
then get that revision from ffmpeg and compare the changes.

then the same changes would be needed to be done to the ffmpeg-mt branch
dizzey Wrote:As i understand it xbmc sync ffmpeg with the main ffmpeg branch and then make some changes in their own tree to make it work with xbmc.

i guess the first step would be to find out which revision of ffmpeg xbmc uses.
then get that revision from ffmpeg and compare the changes.

then the same changes would be needed to be done to the ffmpeg-mt branch

It's simpler to write a patch to the XBMC version of ffmpeg. Btw xbmc uses "SVN-r17035" (according to version.h).

I'm already working on it. Have to debug some things because segmentation fault occurs on playback of h264 content.
aron Wrote:I'm already working on it. Have to debug some things because segmentation fault occurs on playback of h264 content.

Aron you really are a genius ! wish i had the knowledge...

There was some code change in the ffmpeg-mt branch today.
Hi,

Thanks for all your work on this guys. I just want to add that I checked this problem on my new hardware (asus p5n7a-vm and intel e8400) and of course I am suffering this loss in performance between intrepid and hardy. Basically killa sample plays without dropped frames in hardy and drops frames in intrepid. Sad

I'm going to try the ffmpeg-mt branch to see if I also see the performance gain. btw, aron when you say:

aron Wrote:It's simpler to write a patch to the XBMC version of ffmpeg. Btw xbmc uses "SVN-r17035" (according to version.h).

I think that revision is the xbmc revision! not the ffmpeg! :confused2: I think in order to make progress in this issue we'd need a xbmc developer to tell us which ffmpeg revision and which patches (besides the cabac one) are applied in xbmc.

Please let us know your progress in making this patch, and ask for help if you need it!! Wink

regards,
btw, as a side note I'm also experiencing lots of tearing in intrepid.I'm using nvidia 180.11 drivers. Do you see the same issues? which nvidia driver version are you guys using?
pilluli Wrote:btw, as a side note I'm also experiencing lots of tearing in intrepid.I'm using nvidia 180.11 drivers. Do you see the same issues? which nvidia driver version are you guys using?

Please start a new thread regarding that topic. It has nothing to do with this one.
althekiller Wrote:Please start a new thread regarding that topic. It has nothing to do with this one.

Sure!

related to this topic, is there any document where we can see the exact ffmpeg version xbmc is using and the patches applied?

regards,
No, but you can diff the clean sources from ffmpeg that reside in the /vendor dir of svn with the ones in linuxport.
althekiller Wrote:No, but you can diff the clean sources from ffmpeg that reside in the /vendor dir of svn with the ones in linuxport.

Thanks for the useful info. I will test building ffplay from xbmc's patched ffmpeg on different kernels with different lib files. I won't give up !

I will open up a new thread for the ffmpeg-mt patch Aron started to work. Any help from Devs are really welcome there, I think it could be a really usefull esperiment !
I finished the patch ...

http://trac.xbmc.org/ticket/5680

How to use it:
1. Download freshest SVN
2. copy the patch file to : linuxport/XBMC/ (or cd to dir and run `wget http://trac.xbmc.org/raw-attachment/tick...g_mt.patch` )
3. run:
Code:
patch -p0 < xbmc_ffmpeg_mt.patch
4. ./configure && make && make install

For me it works ok under hardy and intrepid ... Please test it and post the results Wink
GREAT Aron !

Thanks for the hard work ! I will test it tonight, and report back.
I can confirm that this patch works for me. I now have 0 dropped frames running "killer sample" on my E8400.

The utilization between cores is much better and during the "white birds" it is about 97-98% on both cores.

Thanks!

aron Wrote:I finished the patch ...

http://trac.xbmc.org/ticket/5680

How to use it:
1. Download freshest SVN
2. copy the patch file to : linuxport/XBMC/ (or cd to dir and run `wget http://trac.xbmc.org/raw-attachment/tick...g_mt.patch` )
3. run:
Code:
patch -p0 < xbmc_ffmpeg_mt.patch
4. ./configure && make && make install

For me it works ok under hardy and intrepid ... Please test it and post the results Wink
Many thanks Aron for your great work!! I'll test it as soon as I get home and I'll post results.

later,
aron Wrote:I finished the patch ...

http://trac.xbmc.org/ticket/5680

How to use it:
1. Download freshest SVN
2. copy the patch file to : linuxport/XBMC/ (or cd to dir and run `wget http://trac.xbmc.org/raw-attachment/tick...g_mt.patch` )
3. run:
Code:
patch -p0 < xbmc_ffmpeg_mt.patch
4. ./configure && make && make install

For me it works ok under hardy and intrepid ... Please test it and post the results ;)

I don't know if i did anything wrong, but i can't see any improvement.
I did:
svn co http://xbmc.svn.sourceforge.net/svnroot/...linuxport/
cd linuxport/XBMC
wget http://trac.xbmc.org/raw-attachment/tick...g_mt.patch
patch -p0 < xbmc_ffmpeg_mt.patch
./configure && make && make install

then it complained about permissions, so i ran
sudo make install

Any way that i can confirm what version i am running when i start xbmc?
Pages: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22