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)



- blinkseb - 2010-05-19

gulp Wrote:Compiling rev-30311
i've a lot (100) errors like these:

Code:
AviSplitter.obj : error LNK2001: simbolo esterno "public: virtual long __stdcall IDSMChapterBagImpl::ChapSort(void)" (?ChapSort@IDSMChapterBagImpl@@UAGJXZ) non risolto
FLVSplitter.obj : error LNK2001: simbolo esterno "public: virtual long __stdcall IDSMChapterBagImpl::ChapSort(void)" (?ChapSort@IDSMChapterBagImpl@@UAGJXZ) non risolto
BaseSplitter.obj : error LNK2001: simbolo esterno "public: virtual long __stdcall IDSMChapterBagImpl::ChapSort(void)" (?ChapSort@IDSMChapterBagImpl@@UAGJXZ) non risolto
DX9AllocatorPresenter.obj : error LNK2001: simbolo esterno "bool __cdecl BitBltFromRGBToRGB(int,int,unsigned char *,int,int,unsigned char *,int,int)" (?BitBltFromRGBToRGB@@YA_NHHPAEHH0HH@Z) non risolto
BaseVideoFilter.obj : error LNK2001: simbolo esterno "bool __cdecl BitBltFromRGBToRGB(int,int,unsigned char *,int,int,unsigned char *,int,int)" (?BitBltFromRGBToRGB@@YA_NHHPAEHH0HH@Z) non risolto
DXVADecoderH264.obj : error LNK2001: simbolo esterno "public: bool __thiscall CH264Nalu::ReadNext(void)" (?ReadNext@CH264Nalu@@QAE_NXZ) non risolto
DXVADecoderH264.obj : error LNK2001: simbolo esterno "public: void __thiscall CH264Nalu::SetBuffer(unsigned char *,int,int)" (?SetBuffer@CH264Nalu@@QAEXPAEHH@Z) non risolto
BaseSplitter.obj : error LNK2001: simbolo esterno "public: virtual __thiscall IDSMPropertyBagImpl::~IDSMPropertyBagImpl(void)" (??1IDSMPropertyBagImpl@@UAE@XZ) non risolto
BaseSplitter.obj : error LNK2001: simbolo esterno "public: __thiscall IDSMPropertyBagImpl::IDSMPropertyBagImpl(void)" (??0IDSMPropertyBagImpl@@QAE@XZ) non risolto
BaseSplitter.obj : error LNK2001: simbolo esterno "public: void __thiscall CFontInstaller::UninstallFonts(void)" (?UninstallFonts@CFontInstaller@@QAEXXZ) non risolto
BaseSplitter.obj : error LNK2001: simbolo esterno "public: virtual __thiscall CFontInstaller::~CFontInstaller(void)" (??1CFontInstaller@@UAE@XZ) non risolto
BaseSplitter.obj : error LNK2001: simbolo esterno "public: __thiscall CFontInstaller::CFontInstaller(void)" (??0CFontInstaller@@QAE@XZ) non risolto

here my buildlog http://pastebin.com/N9RXKHA6

usually i compile the svn rev of dsplayer once a day, but today i've these strange errors.

Weird I fixed that yesterday. VS2008 or vs 2010? Will check.


- zilexa - 2010-05-19

Huh could you please clarify? Now other people are compiling as you recommended earlier many times... but they can't publish it.. Aren't you interested in test results? Do you expect every tester to compile her/his own build? No flame intended, just trying to understand.


- blinkseb - 2010-05-19

zilexa Wrote:Huh could you please clarify? Now other people are compiling as you recommended earlier many times... but they can't publish it.. Aren't you interested in test results? Do you expect every tester to compile her/his own build? No flame intended, just trying to understand.

You can of course share your build with everyone, just don't post a link on the thread. There is a difference between tiben & I builds and others. When we post a new build, it's usually for having feedback from you guys. Right now, there's nothing new on dsplayer : I'm passing my exams, and tiben's working on filters. So no need for testing. Futhermore, the builds are not tested like we do before uploading a new revs.

If you want to share your build, I suggest you to open a new thread and post the link here, but tell clearly that's it's your build, so no support Wink

Thanks


- zilexa - 2010-05-19

Ok thats clear, could get very confusing indeed, thanks.
for me, this build has a lot new, new bugfixes Smile


- liquidskin76 - 2010-05-19

blinkseb Wrote:Weird I fixed that yesterday. VS2008 or vs 2010? Will check.

Hey seb,

2008 for me.

Cheers


- gulp - 2010-05-19

liquidskin76 Wrote:Hey seb,

2008 for me.

Cheers

2008 for me too.


- blinkseb - 2010-05-19

Fixed in r30320. I fixed that yesterday but forgot to commit Rolleyes


Why no Scripts or Plugins? - offline_thk - 2010-05-20

Just a bit curious about why these are not present in DSPlayer builds and when you think we can expect them? Is this version not stable enough?


- hsinchu308 - 2010-05-20

blinkseb Wrote:1) It's look like mpc-hc... because it's from mpc-hc Laugh

2) Must have a problem with sharders. Can you try with bilinear with dsplayer and mpc-hc and tell me if only dsplayer hangs?

3) You can set the texture resolution manually if you want to try. File SubManager.cpp from libsubs_dll project. Line 19, change m_texturesize to what you want. Tell me if it solve your issue, I'll add it on the gui when my exams are done.

4) You need to upgrade your DirectX SDK and make sure folders in vs2008 points to the right place.

5) What do you mean by built in? The filter provided with dsplayer or the one tiben is working on?

Hi Blinkseb,

Regarding #3: It worked, THANKS!!!! At first I changed the subtitle resolution from the default 1024 x 768 to 800 x 600...and absolutely no change in the stuttering or the subtitle resolution on screen, so I was quite puzzled. Then I see in the lines above that "round up to power of 2" for subtitle texture (the description from MPC-HC) was set to true, so I changed it to false, and voilĂ ...it worked. At 800x600 the stuttering with Asian subtitles was massively reduced, and at 640x480 it's completely gone.

Could you put this in the GUI (w/ the ability to turn off "round up to power of 2") when your exams are done?

FYI: With my Acer Revo 3610 (Intel atom w/ Nvidia ION), I still get occasional stuttering with English subtitles, even with the trunk version's DXVA2, so I've set up MPC-HC as my default MKV player in XBMC, so that I could watch a whole movie without stuttering due to subtitles (if I turn off the subtitle the stuttering disappears). To me this is a huge improvement, to be able to use the internal DSplayer! Nod

Thanks again. (When I started compiling XBMC I though I was going to spend a month or more rewriting the subtitle engine for the DXVA2 trunk, to get rid of the subtitle stuttering, but you've reduced the work to basically zero. Laugh)

PS. Subtitle font size at the smallest available (16) is still a little too big. Which file contain the list of font sizes? Can DSplayer handle subtitle font size < 16?


- blinkseb - 2010-05-20

hsinchu308 Wrote:Hi Blinkseb,

Regarding #3: It worked, THANKS!!!! At first I changed the subtitle resolution from the default 1024 x 768 to 800 x 600...and absolutely no change in the stuttering or the subtitle resolution on screen, so I was quite puzzled. Then I see in the lines above that "round up to power of 2" for subtitle texture (the description from MPC-HC) was set to true, so I changed it to false, and voilĂ ...it worked. At 800x600 the stuttering with Asian subtitles was massively reduced, and at 640x480 it's completely gone.

Could you put this in the GUI (w/ the ability to turn off "round up to power of 2") when your exams are done?

FYI: With my Acer Revo 3610 (Intel atom w/ Nvidia ION), I still get occasional stuttering with English subtitles, even with the trunk version's DXVA2, so I've set up MPC-HC as my default MKV player in XBMC, so that I could watch a whole movie without stuttering due to subtitles (if I turn off the subtitle the stuttering disappears). To me this is a huge improvement, to be able to use the internal DSplayer! Nod

Thanks again. (When I started compiling XBMC I though I was going to spend a month or more rewriting the subtitle engine for the DXVA2 trunk, to get rid of the subtitle stuttering, but you've reduced the work to basically zero. Laugh)

PS. Subtitle font size at the smallest available (16) is still a little too big. Which file contain the list of font sizes? Can DSplayer handle subtitle font size < 16?

Thanks for the feedback! It's good to know that the power of two option is usefull. I'll had these to the GUI next week!

For the subtitle font size, it's a known issue. I need to find a way to proper convert from dvdplayer size to pt. As you can see, I failed lol. You can trhow an eye on StreamsManager.cpp (XBMC project), line 790. The subtitle font size is set here. Tell me if you find the way to have the same font size in dsplayer as in dvdplayer Wink


- hsinchu308 - 2010-05-20

blinkseb Wrote:Thanks for the feedback! It's good to know that the power of two option is usefull. I'll had these to the GUI next week!

For the subtitle font size, it's a known issue. I need to find a way to proper convert from dvdplayer size to pt. As you can see, I failed lol. You can trhow an eye on StreamsManager.cpp (XBMC project), line 790. The subtitle font size is set here. Tell me if you find the way to have the same font size in dsplayer as in dvdplayer Wink

Ok, I've changed line 791 in StreamManager.ccp to

style.fontSize *= 13.0 / 72.0

and now subtitle font sizes in DSPlayer are identical to those of DVDPlayer (< 5% difference, I measured them with a ruler Nod). I am using font size of 28 now with my build.

Thanks blinkseb.


- blinkseb - 2010-05-20

hsinchu308 Wrote:Ok, I've changed line 791 in StreamManager.ccp to

style.fontSize *= 13.0 / 72.0

and now subtitle font sizes in DSPlayer are identical to those of DVDPlayer (< 5% difference, I measured them with a ruler Nod). I am using font size of 28 now with my build.

Thanks blinkseb.

Any reason for 13.0 or did you test every possible values Laugh? But thanks, I've made the change Wink


- hsinchu308 - 2010-05-20

blinkseb Wrote:Any reason for 13.0 or did you test every possible values Laugh? But thanks, I've made the change Wink

I just calculated what the value has to be to make the subtitle size between the two players agree. Since the two players use completely different way of rendering subtitles, I did not want to spend too much time coming up with a more elegant equation, because the end result would still be the same. To verify, I checked the subtitle size at both 28pt and 42pt, for both 720p and 1080p movies, for both players, and they match.


- blinkseb - 2010-05-20

hsinchu308 Wrote:I just calculated what the value has to be to make the subtitle size between the two players agree. Since the two players use completely different way of rendering subtitles, I did not want to spend too much time coming up with a more elegant equation, because the end result would still be the same. To verify, I checked the subtitle size at both 28pt and 42pt, for both 720p and 1080p movies, for both players, and they match.

Well, the calculation already inplace was based on dvdplayer, with some tweaks. But it's great if you said it works for you, that's enough for me. I will try and commit the changes Wink

EDIT: Unfortunatly, still not correct for me. There must be some resolution issue. I'm at 1440x900, and I supposed it's not your case Wink I'll need to investigate a little more, but it's clearly not a big issue right now. Anyway, I commit the change, since it allows having smaller subtitles Wink Thanks!


- hsinchu308 - 2010-05-21

blinkseb Wrote:Well, the calculation already inplace was based on dvdplayer, with some tweaks. But it's great if you said it works for you, that's enough for me. I will try and commit the changes Wink

EDIT: Unfortunatly, still not correct for me. There must be some resolution issue. I'm at 1440x900, and I supposed it's not your case Wink I'll need to investigate a little more, but it's clearly not a big issue right now. Anyway, I commit the change, since it allows having smaller subtitles Wink Thanks!

Ok, I think I got it this time. Change line 790 and 791 to the following:

style.fontSize = (float) g_guiSettings.GetInt("subtitles.height");
style.fontSize *= 27.1 / 72.0;

I tested under both 1920x1200 (my desktop resolution) and 800x600 and the subtitle font sizes are now identical for dsplayer between the two resolutions, as well as between dsplayer and dvdplayer. Previously, changing the resolution from 1920x1200 to 800x600 changes the font size in dsplayer (by a factor of 2!) but not dvdplayer.

Regards,