20 Nov 2019 - TVDB Scraper v3.2.0 is now available which reinstates scraping. TVDB are still in the process of fixing a number of bugs so there may still be further breakages. See this post. 2901570 (post)

Kodi DSPlayer – DirectShow Player for Windows
UPDATE: Jarvis DSPlayer 16.0 Beta1

15 November 2015 (737db9f)
  • ReAdded EVR as video renderer
  • Added built-in XyVSFilter v3.0.0.306 (DSPlayer version) as Internal Filter for EVR
  • Added parameter "videocodec" to define a <rule> in media rules configuration
  • Added rule priority order system to reorder rule merits
  • Added DSPlayer option to move the GUI into active video area while playback (madVR / EVR)
  • Added DSPlayer option to define visible screen area
  • Updated internal LavFilters to v0.67 (DSPlayer version)
  • Updated DSPlayer GUI to fully support madVR zoom control options
  • Updated DSPlayer GUI to support new madVR settings for Image Enhancements and Upscaling Refinement (madVR 0.89.14 and above)
  • Fixed an issue in DSPlayer that was causing the chapter's name not properly shown
  • Fixed an issue that could cause DSPlayer to crash by stopping during playstart
  • General DSPlayer code optimization
  • Merged with the official master/Jarvis branch

ReAdded EVR as video renderer
when i begun to work to "optimize" DSPlayer's code to make it less invasive in Kodi i had to take a decision on EVR, completely remove the code or do something to make it work again.
honestly I don't had the heart to delete the hard work of those who preceded me in DSPlayer, plus there was some recent request to have EVR back.
madVR will still remain the default video renderer, there are not future plans to improve EVR at moment, if there was limits or issues with previous version there will be also now
I had also some problems to implement the fullscreen exclusive mode so for now is disabled, there were so many things to do that i preferred to not spend to much time only on a single thing
EVR will work in dx9 with his own d3d9 device, the Kodi GUI is drawn on EVR at same as with madVR with a shared resource synchronized with the main application thread

Added built-in XyVSFilter v3.0.0.306 (DSPlayer version) as Internal Filter for EVR
since the current EVR version in DSPlayer don't supports XySubFilter I had to add XyVSFilter as internal subtitles filter for the "Internal filters" configuration
as with the others internal filters it's needed to have a custom build

Added rule priority order system to reorder rule merits and parameter "videocodec" to define a <rule> in media rules configuration
until now we never worried about the merits of the rules configured with "Media rules configuration", the problem has come out with the difficulties to set Lentoid as video decoder only for "HEVC" through the GUI
so by now you can define a rule also with the parameter "videocodec" and assign a priority order, just to be more clear here some example

with these defined rules will be always used lavvideo as decoder because the rule on top match all the defined restrictions and so it will be used even with a file "mkv" that contains a video in HEVC

Code:
<mediasconfig>
<rules>
  <rule filetypes="mkv">
   <source filter="lavsource_internal" />
   <splitter filter="lavsplitter_internal" />
   <video filter="lavvideo_internal" />
   <audio filter="lavaudio_internal" />
   <subs filter="xysubfilter_internal" />
  </rule>
  <rule videocodec="hevc">
   <source filter="lavsource_internal" />
   <splitter filter="lavsplitter_internal" />
   <video filter="lentoid_hevc_decoder" />
   <audio filter="lavaudio_internal" />
   <subs filter="xysubfilter_internal" />
  </rule>
</rules>
</mediasconfig>

to make it properly work the rule should be formulated in this way

Code:
<mediasconfig>
<rules>
  <rule videocodec="hevc">
   <source filter="lavsource_internal" />
   <splitter filter="lavsplitter_internal" />
   <video filter="lentoid_hevc_decoder" />
   <audio filter="lavaudio_internal" />
   <subs filter="xysubfilter_internal" />
  </rule>
  <rule filetypes="mkv">
   <source filter="lavsource_internal" />
   <splitter filter="lavsplitter_internal" />
   <video filter="lavvideo_internal" />
   <audio filter="lavaudio_internal" />
   <subs filter="xysubfilter_internal" />
  </rule>
</rules>
</mediasconfig>

to manage these things and reorder the merits through the Kodi GUI i added a new parameter "Priority order"
with the value set to "0" the rule will be moved on top, you can assign a value between 0 and 9, by default when this parameter is not set the value will be 0.
it's just a system to rearrange the merits, i had not chance to add a button to move up and down the rules because i have to use the templates for the dialogs already defined in Kodi otherwise i cannot guarantee the compatibility with all skins, so why i had to implement it in this way

Image

Image


Added DSPlayer option to move the GUI into active video are while playback (madVR / EVR) and to define the visible screen area
these options could be very useful with a projector setup where there is a screen with a different aspect ratio (2.35.1), in this case by enabling the option "move the GUI into active video area" you will have the possibility to have the GUI perfectly rendered inside the mask

Image

here two pics just to show you the differences

without the option

Image

and with the option

Image

the limit is that Kodi have to render something even without a playback and in these cases it cannot retrieve the rect of an "active video area" from madVR or EVR, but if you want fill your screen with a different aspect ratio also without a playback you can use the option "define visible screen area", the defined rect will be not considered during playback if the option "move the gui inside active video area" is enabled otherwise the GUI will maintain the same custom rect defined in the option
so there are differents possibility to use these options together or only one of them, let me know if there are differents scenarios and if i can make something to improve this aspect

Updated DSPlayer GUI to fully support madVR zoom control options
all madVR options to control zoom functionality are now added in DSPlayer and can be set and modified during playback
these options could be very importants with a projector setup, for example by cropping the hardcoded black bars to perfectly fill a wide screen, plus the new options to move the GUI inside the video rect included in DSPlayer should guarantee a perfect performance in these cases

Image


Updated DSPlayer GUI to support new madVR settings for Image Enhancements and Upscaling Refinement
all new madVR algos to improve the image are now added and supported by DSPlayer (Sharpen Edges, Crispen Edges, Thin Edges, Enhance Detail)

Image

Fixed an issue that could cause DSPlayer to crash by stopping during playstart
this fix should be useful for some addons, for example CinemaVision

General DSPlayer code optimization
I spent some days to read each line of DSPlayer's code written outside the DSPlayer folder to make the integration less invasive, it's just a beginning, more things could be done but not without an hope to see one day DSPlayer inside an official release

since there was alot of new things that i added in this release i preferred to leave Isengard DSPlayer with a status of stable release, so this Jarvis beta should be considered also a beta release for DSPlayer

link at first page
Reply
 
Thread Rating:
  • 46 Vote(s) - 4.41 Average


Messages In This Thread
Lockup on STOP issue resolved! - by MKANET - 2015-04-11, 21:59
RE: 4G aware patch - by MagikMark - 2015-09-08, 03:27
Alt-F4 no longer quits - by JeffA - 2015-10-31, 20:38
RE: Kodi DSPlayer – DirectShow Player for Windows - by aracnoz - 2015-11-15, 23:03