Kodi Community Forum
[WINDOWS] Internal Directshow Based Player [NO LONGER DEVELOPED] - Printable Version

+- Kodi Community Forum (https://forum.kodi.tv)
+-- Forum: Support (https://forum.kodi.tv/forumdisplay.php?fid=33)
+--- Forum: General Support (https://forum.kodi.tv/forumdisplay.php?fid=111)
+---- Forum: Windows (https://forum.kodi.tv/forumdisplay.php?fid=59)
+---- Thread: [WINDOWS] Internal Directshow Based Player [NO LONGER DEVELOPED] (/showthread.php?tid=61355)



- tiben20 - 2010-06-10

>>X<<' Wrote:Just for information only if you mean Rar files theres actually a directshow filter called "RarFileSource" I've used it in the past to open rar files in MPC-HC and Zoom Player while still using Haali Media Splitter

http://www.v12pwr.com/RARFileSource/

I guess its something that would need adding not something the user can just add ?

Just thought I'd mention it
I dont really care about rar file source filter the xbmc internal source filter for handling rar file is much better than this one.


- therealjoeblow - 2010-06-10

OK, sorted my crap out, fixed my editing errors in the XML (note to self, don't edit xml when intoxicated...), and got R31004 working. Here's some feedback on WinXP x86, Radeon HD3200 (780G chipset), Catalyst 10.5. I'm using ffdshow software filter for 720p and less with built in resize to 1080p; and *want* to use ffdshow dxva filter for 1080p via file naming rule, but having issues...

1) Tearing - gone! (using default VMR settings, nothing tweaked at all) Great work, it's been a long road but Frakkin awesome now!

2) Judder - doesn't appear to be any with the ffdshow software filter. However if I use the ffdshow dxva filter, then I get exactly the same judder as with R30385, plays smooth for 2~3 seconds followed by jerky frames for 2~3 seconds, repeating. So, looks like judder could be an issue specific to ffdshow/dxva - other users with this problem who use ffdshow/dxva might want to try MPC instead - read on...

If I use the included MPC filter in dxva mode for my 1080p content, then there is no judder any more, it plays perfectly smooth (and without tearing). So far so good!

HOWEVER: in this build I can't resume playback of 1080p material with either of the dxva filters (both ffd and mpc) - If I play a file and stop part way through, the next time I try to play it, whether I pick either of Resume from hh:mmConfuseds or Play from Beginning, it won't play back. Sometimes it will play a half-second of audio before freezing, sometimes it will just flash the player's progress bar over the UI and then come back to the clean UI, sometimes it will actually crash XBMC back to windows. If I try to play a 1080p file w/dxva never played before it loads and plays fine, but when trying to resume or replay, it's dead every time. Even if I reload XBMC, can't replay files. Didn't have this problem with previous build(s), I was always able to reload/resume all files without issue.

->Seems to be something wrong with the seeking mechanism to me.

3) Pixel Shaders - when I enable any of them, I only get a screen with full-screen colorful blotches that shift as if it's trying to render something, but no actual useful image is rendered. This is unlike the previous build where they would actually load for me, but play back jerky.

Anyone else experiencing the problem with not being able to reload/replay 1080p/dxva material now?

no debug log available, I can post one later if you think it would be helpful in tracking that problem down, but like I said, it appears to be that dsplayer is stalling out when it tries to seek to the time index specified, or back to the beginning of the file as the case may be.

Cheers
The REAL Joe

BTW - in case I wasn't clear - ***THANKS*** for fixing the tearing issue, this is a huge step forward, and I really appreciate the efforts!


Good Job !! - tschi - 2010-06-10

I 've got perfect smooth playback with last build Big Grin
screenshot with renderstat (good idea to put it :Wink)
http://img685.imageshack.us/img685/7227/renderersettings.png
I tried with files
- mkv/720p/H264/23.976/ mpc dxva
- avi/xvid sd/25 im/s and ffdshow post processing
+ reclock
I am on win7 x86 aero wit ati 4350 driver 10.5 with vsync off , tv lcd 50hz
I use hsinchu308 renderersettings (thx Nod)
I renamed xml root node (I don't know if it was post, I guess it was because of file renaming)

Code:
<renderersettings>
  <sharedsettings>
    <VSync>false</VSync>
  </sharedsettings>
  <evrsettings>
    <HighColorResolution>true</HighColorResolution>
  </evrsettings>
  <vmr9settings>
    
  </vmr9settings>
</renderersettings>

Without renderersettings.xml the playback is jerky

I will do some others tests, but that's looks so good Big Grin

Many Thanks.


- blinkseb - 2010-06-10

therealjoeblow Wrote:OK, sorted my crap out, fixed my editing errors in the XML (note to self, don't edit xml when intoxicated...), and got R31004 working. Here's some feedback on WinXP x86, Radeon HD3200 (780G chipset), Catalyst 10.5. I'm using ffdshow software filter for 720p and less with built in resize to 1080p; and *want* to use ffdshow dxva filter for 1080p via file naming rule, but having issues...

1) Tearing - gone! (using default VMR settings, nothing tweaked at all) Great work, it's been a long road but Frakkin awesome now!

2) Judder - doesn't appear to be any with the ffdshow software filter. However if I use the ffdshow dxva filter, then I get exactly the same judder as with R30385, plays smooth for 2~3 seconds followed by jerky frames for 2~3 seconds, repeating. So, looks like judder could be an issue specific to ffdshow/dxva - other users with this problem who use ffdshow/dxva might want to try MPC instead - read on...

If I use the included MPC filter in dxva mode for my 1080p content, then there is no judder any more, it plays perfectly smooth (and without tearing). So far so good!

HOWEVER: in this build I can't resume playback of 1080p material with either of the dxva filters (both ffd and mpc) - If I play a file and stop part way through, the next time I try to play it, whether I pick either of Resume from hh:mmConfuseds or Play from Beginning, it won't play back. Sometimes it will play a half-second of audio before freezing, sometimes it will just flash the player's progress bar over the UI and then come back to the clean UI, sometimes it will actually crash XBMC back to windows. If I try to play a 1080p file w/dxva never played before it loads and plays fine, but when trying to resume or replay, it's dead every time. Even if I reload XBMC, can't replay files. Didn't have this problem with previous build(s), I was always able to reload/resume all files without issue.

->Seems to be something wrong with the seeking mechanism to me.

it's more complicated that you seems to think Smile Seek works like it should work, because it is not handled by dsplayer, but by DirectShow itself. A debug log should be usefull, because i can't reproduce the issue. All file (dxva or not) can resume and play well here. The debug will be really usefull when xbmc crashes!

Quote:3) Pixel Shaders - when I enable any of them, I only get a screen with full-screen colorful blotches that shift as if it's trying to render something, but no actual useful image is rendered. This is unlike the previous build where they would actually load for me, but play back jerky.

Pixel Shaders were not available before this release. I think you'r talking about the resizers, but it's not the same thing.

What shader have you tried? Did they all make the same thing?
Here, all work really fine and produce the expected behavior.


- therealjoeblow - 2010-06-10

blinkseb Wrote:it's more complicated that you seems to think Smile Seek works like it should work, because it is not handled by dsplayer, but by DirectShow itself. A debug log should be usefull, because i can't reproduce the issue. All file (dxva or not) can resume and play well here. The debug will be really usefull when xbmc crashes!

OK, I'll up one later tonight when I get home.

blinkseb Wrote:Pixel Shaders were not available before this release. I think you'r talking about the resizers, but it's not the same thing.

What shader have you tried? Did they all make the same thing?
Here, all work really fine and produce the expected behavior.

Yes, sorry, I meant the PS Resizers that are (and were previously) available in the GUI - they produce this weird effect, unlike in the previous build. I tried them all, and they all do exactly the same thing. Only standard bilinear and nearest neighbor work now.

Cheers
The REAL Joe


- uncertainty - 2010-06-10

blinkseb Wrote:New build online Smile

Just upgraded from build 30385 to 31004 and it seems my Library is empty. I guess its related to changes in the Trunk. Is there a configuration I have to adjust for the Library to show or is it just the older library just incompatiable with the newer trunk?

thanks


- steelman1991 - 2010-06-10

uncertainty Wrote:Just upgraded from build 30385 to your latest and it seems my Library is empty. I guess its related to changes in the Trunk. Is there a configuration I have to adjust for the Library to show or is it just the older library just incompatiable with the newer trunk?

thanks
Totally misread your post sorry for any confusion. Haven't come across an upgrade doing this - a roll-back yes but not an upgrade? Strange.


- uncertainty - 2010-06-10

steelman1991 Wrote:Yeah had same problem - re-build from backup, or alternatively try the new new build r31004. 30385 is so old hat.

I edited my message as I lost the library going from 30385 to 31004. Just wondering if others had the same issue.

thanks


edit: BTW it seems 31004 and newer trunks now read the userdata folder from xbmc/portable_data/userdata for those using portable mode.


- steelman1991 - 2010-06-10

uncertainty Wrote:I edited my message as I lost the library going from 30385 to 31004. Just wondering if others had the same issue.

thanks
Damn man your so to quick - thought I had rectified that before I looked like like a right idiot - thanks Laugh.


- steelman1991 - 2010-06-11

Seb/Tiben. I'm currently having issues with the OSD. Current build r31004, when attempting to access filter properties directly from video OSD xbmc freezes up and only a computer restart solves the problem. Any ideas, a debug can be provided if either of you need one.


- therealjoeblow - 2010-06-11

blinkseb Wrote:it's more complicated that you seems to think Smile Seek works like it should work, because it is not handled by dsplayer, but by DirectShow itself. A debug log should be usefull, because i can't reproduce the issue. All file (dxva or not) can resume and play well here. The debug will be really usefull when xbmc crashes!

OK, here's a debug log:

http://pastebin.com/grBnvAvg

The following is what I did:

1) Loaded Episode01 (a 1080p dxva file), played it fine for a while, hit stop to return to UI,

2) Loaded Episode02, which had been previously played, selected Resume from HH:MM:SS, and it never loaded, the debug logger at the top of the screen showed it tried to go to 55 fps or so, but it never played, the US just sat there. Hit stop, and that restored UI functionality.

3) Reloaded Episode01, tried to resume playback from where it left off, and exactly the same thing as in #2, it just sat there till I hit stop again and exited XBMC

Here's my XML for the .mkv rule:

Code:
<rule filetypes="mkv">
      <source filter="mkvsource" />
      <splitter filter="mkvsplitter" />
      <video>
        <video dxva="true" filename=".*1080.*" filter="mpcvideodec" />
        <video filter="ffdvideodec" />
      </video>
      <audio filter="ffdaudiodec" />
      <!--<extra>
        <extra filter="ac3filter" />
        <extra filter="dcgraphiceq" />
      </extra>-->
    </rule>

And here's a log of the same procedure but using ffdshow's dxva filter instead of mpc if it makes any difference. The result was exactly the same as described above:

http://pastebin.com/QAPC23v1

And another one, but now I switched both the source and splitter to "haali", in this case Episode01 played fine; Episode02 actually loaded audio for 1/2 sec, and the UI disappeared (black screen) and it froze at 8.6 fps; then after hitting stop, the UI reappeared and trying to play Episode01 again did the same as in the first 2 cases - UI froze and logger reported 55 fps but no audio or video:

http://pastebin.com/in6vbtiK

And last tests with these files, here's with haali and back to MPC's dxva filter. In this case EP01 played; then EP02 actually loaded and played fine when resuming from where it previously left off (which never happened in any of the other cases); but then EP01 refused to load, it froze the UI at 8.6 fps:

http://pastebin.com/c5tZZPAj


Finally, I tried another totally different file, not from this same TV show set but a movie that had been played to near the end before. This time on attempt 1, I selected "Play from beginning", and it played audio for about 1 second, but the video never loaded, then it froze with the UI at 5.5 fps. After pressing stop, the UI became responsive again, and on second attempt to play, it still asked if I wanted to resume from 1:22Confuseds even though trying to play from the start previously should have reset the counter but it didn't. So I asked it to resume from there instead this time, with exactly the same result, 1 second of audio, then freeze at 5.5 fps. This was still with the haali/mpc dxva combination:

http://pastebin.com/mudbp3LA

Also note, after watching for several hours, I notice that *am* getting a tiny bit of judder on my 720p material played with ffdshow software decoder - it's not huge, but it's also note perfectly smooth. Every 20~30 seconds, there's a few jumpy frames. It's almost imperceptible, you have to watch for a while to realize it's going on, but after you notice it, it drives me nuts. I reverted back to 28016 just to check something else didn't get fubar, and nope, that one is absolutely perfect, as is ZoomPlayer and MPC-HC.

cheers,
The REAL Joe


- blinkseb - 2010-06-11

therealjoeblow Wrote:OK, here's a debug log:

http://pastebin.com/grBnvAvg

The following is what I did:

1) Loaded Episode01 (a 1080p dxva file), played it fine for a while, hit stop to return to UI,

2) Loaded Episode02, which had been previously played, selected Resume from HH:MM:SS, and it never loaded, the debug logger at the top of the screen showed it tried to go to 55 fps or so, but it never played, the US just sat there. Hit stop, and that restored UI functionality.

3) Reloaded Episode01, tried to resume playback from where it left off, and exactly the same thing as in #2, it just sat there till I hit stop again and exited XBMC

Here's my XML for the .mkv rule:

Code:
<rule filetypes="mkv">
      <source filter="mkvsource" />
      <splitter filter="mkvsplitter" />
      <video>
        <video dxva="true" filename=".*1080.*" filter="mpcvideodec" />
        <video filter="ffdvideodec" />
      </video>
      <audio filter="ffdaudiodec" />
      <!--<extra>
        <extra filter="ac3filter" />
        <extra filter="dcgraphiceq" />
      </extra>-->
    </rule>

And here's a log of the same procedure but using ffdshow's dxva filter instead of mpc if it makes any difference. The result was exactly the same as described above:

http://pastebin.com/QAPC23v1

And another one, but now I switched both the source and splitter to "haali", in this case Episode01 played fine; Episode02 actually loaded audio for 1/2 sec, and the UI disappeared (black screen) and it froze at 8.6 fps; then after hitting stop, the UI reappeared and trying to play Episode01 again did the same as in the first 2 cases - UI froze and logger reported 55 fps but no audio or video:

http://pastebin.com/in6vbtiK

And last tests with these files, here's with haali and back to MPC's dxva filter. In this case EP01 played; then EP02 actually loaded and played fine when resuming from where it previously left off (which never happened in any of the other cases); but then EP01 refused to load, it froze the UI at 8.6 fps:

http://pastebin.com/c5tZZPAj


Finally, I tried another totally different file, not from this same TV show set but a movie that had been played to near the end before. This time on attempt 1, I selected "Play from beginning", and it played audio for about 1 second, but the video never loaded, then it froze with the UI at 5.5 fps. After pressing stop, the UI became responsive again, and on second attempt to play, it still asked if I wanted to resume from 1:22Confuseds even though trying to play from the start previously should have reset the counter but it didn't. So I asked it to resume from there instead this time, with exactly the same result, 1 second of audio, then freeze at 5.5 fps. This was still with the haali/mpc dxva combination:

http://pastebin.com/mudbp3LA

Also note, after watching for several hours, I notice that *am* getting a tiny bit of judder on my 720p material played with ffdshow software decoder - it's not huge, but it's also note perfectly smooth. Every 20~30 seconds, there's a few jumpy frames. It's almost imperceptible, you have to watch for a while to realize it's going on, but after you notice it, it drives me nuts. I reverted back to 28016 just to check something else didn't get fubar, and nope, that one is absolutely perfect, as is ZoomPlayer and MPC-HC.

cheers,
The REAL Joe

It seems like you're using the match refreh-rate feature, and that you'r on XP. Can you try without it please?


- oldpainless - 2010-06-11

therealjoeblow Wrote:Also note, after watching for several hours, I notice that *am* getting a tiny bit of judder on my 720p material played with ffdshow software decoder - it's not huge, but it's also note perfectly smooth. Every 20~30 seconds, there's a few jumpy frames. It's almost imperceptible, you have to watch for a while to realize it's going on, but after you notice it, it drives me nuts. I reverted back to 28016 just to check something else didn't get fubar, and nope, that one is absolutely perfect, as is ZoomPlayer and MPC-HC.

cheers,
The REAL Joe

Joe,

hsinchu308 solution (renderersettings.xml) made a big difference, but I still was getting judder on all my MKV's (would play fine, but the moment I paused or ff\rr, the judder was back)....I tried Haali, but still the judder was there.

I tried a couple of my H.264 TS files (had to change the video dec tho), and I noticed that there was no judder in the TS playback - odd I thought....

So, I changed the MKV splitter -

<rule filetypes="mkv">
<source filter="mkvsource" />
<splitter filter="mpegsplitter" />
<video filter="arcvideodec" />
<!-- You can do like that to specifie a DXVA only filters.
If you want to use the same filter for DXVA and non DXVA media, just add
a single <video> line.
<video>
<video dxva="true" filter="arcvideodec" />
<video filter="arcvideodec" />
</video> -->
<audio filter="ac3filterdec" />

Now, playback is a smooth as silk! (full screen with auto refresh)....worked for me anyway.

K


- therealjoeblow - 2010-06-11

blinkseb Wrote:It seems like you're using the match refreh-rate feature, and that you'r on XP. Can you try without it please?

I don't believe I am, at least not intentionally - I have never enabled that feature. Does it look like it's enabled from the logs? Cause if it is, then it somehow got auto-enabled during the update from 28016 to 31004 by itself, like I said, I don't use it.

Will check later when back at home.

Note though, simply reverting back to 28016 there is no problem whatsoever with resuming, seeking, playing, judder, etc. It's *perfect* there (I saved my database and just renamed my XBMC folder before installing 31004, so swapping back and forth is very simple for comparison or rollback).

Cheers,
The REAL Joe


- therealjoeblow - 2010-06-11

oldpainless Wrote:Joe,

hsinchu308 solution (renderersettings.xml) made a big difference, but I still was getting judder on all my MKV's (would play fine, but the moment I paused or ff\rr, the judder was back)....I tried Haali, but still the judder was there.

I tried a couple of my H.264 TS files (had to change the video dec tho), and I noticed that there was no judder in the TS playback - odd I thought....

So, I changed the MKV splitter -

<rule filetypes="mkv">
<source filter="mkvsource" />
<splitter filter="mpegsplitter" />
<video filter="arcvideodec" />
<!-- You can do like that to specifie a DXVA only filters.
If you want to use the same filter for DXVA and non DXVA media, just add
a single <video> line.
<video>
<video dxva="true" filter="arcvideodec" />
<video filter="arcvideodec" />
</video> -->
<audio filter="ac3filterdec" />

Now, playback is a smooth as silk! (full screen with auto refresh)....worked for me anyway.

K

Odd... can the mpegsplitter actually demux matroska files with h264 video in them? Who would have thought that. I'll give it a try later tonight.

Still, as I've repeatedly said - it works *perfect* in all of: ZP, and MPC-HC, and DSPlayer r28016 with either of ffdshow or mpcdecoder *and* with either of mkvsplitter or haali - all those combinations work *perfect*.

So by simple deduction, there has to be something wrong with what current builds of DSPlayer are doing. If it's only not working in one particular application, the answer can't be that there's something wrong with the systems that are having the problem - it's got to be with what the app is doing. You shouldn't have to jump through hoops to make the one work like all the others.

Cheers, and thanks again for all the ongoing efforts from the devs (Seb and Tiben) and all the testers/helpers!

The REAL Joe