Log in

View Full Version : xy-VSFilter Project (High Performance VSFilter Compatible Subtitle Filters)


Pages : 1 2 [3] 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23

cyberbeing
22nd July 2013, 08:40
Question to developers:
1 - can you merge this 2 menu items section :
[IMG]
Then it would be convenient to switch the built-in and external subtitles in the menu

Could you give a "mock-up" example of how you would like them merged/grouped, as I'm still a bit unclear with that image?

I'll need to look back, since Zoom Player had special requirements for grouping of these menus and api which we implemented in xy-VSFilter (VSFilter.dll) last year.

2 - Where can be find source(full or just for interfaces)? It's need for better integration with MPC-BE.

The current revision of the subtitle interface can always be found at SubRenderIntf.h (http://madshi.net/SubRenderIntf.h). Currently a revision is under discussion for changing how auto-loading behavior is handled. If you have an opinion one way or another about loading behavior, or would like other changes to the subtitle interface, please express your desires here (http://code.google.com/p/xy-vsfilter/issues/detail?id=152).

madshi
22nd July 2013, 08:41
@cyberbeing, there currently doesn't seem to be an easy way to get debug symbols for XySubFilter? At least there's no link in the first post. I've just received a madVR crash report which was really a crash in XySubFilter.dll. Due to missing debug symbols the crash report is of no use because there's no XySubFilter callstack...

Toku
22nd July 2013, 09:03
@cyberbeing, there currently doesn't seem to be an easy way to get debug symbols for XySubFilter? At least there's no link in the first post. I've just received a madVR crash report which was really a crash in XySubFilter.dll. Due to missing debug symbols the crash report is of no use because there's no XySubFilter callstack...

I think this might have been mine. Was the contact name given Alex? After sending the report I uploaded the problem file to my server and posted it here, but got a message saying my post had to be moderated (Probably because it was a direct link)

Ah yes, that was me. Just received your email. I'll reply with the link of the file. :)

cyberbeing
22nd July 2013, 09:10
I've added a link to the first post with the PDB debug symbols for XySubFilter Beta.

Debug Symbols for XySubFilter 3.1.0.546 (http://xy-vsfilter.googlecode.com/files/XySubFilter_3.1.0.546_Debug_Symbols.7z)

Aleksoid1978
22nd July 2013, 09:57
Could you give a "mock-up" example of how you would like them merged/grouped, as I'm still a bit unclear with that image?

I'll need to look back, since Zoom Player had special requirements for grouping of these menus and api which we implemented in xy-VSFilter (VSFilter.dll) last year.



The current revision of the subtitle interface can always be found at SubRenderIntf.h (http://madshi.net/SubRenderIntf.h). Currently a revision is under discussion for changing how auto-loading behavior is handled. If you have an opinion one way or another about loading behavior, or would like other changes to the subtitle interface, please express your desires here (http://code.google.com/p/xy-vsfilter/issues/detail?id=152).

Can you made that XySubFilter show all internal + external subtitles list and a can select it from API.
Now a can select subtitle stream, example of code:

if (SUCCEEDED(pDVS->get_LanguageCount(&nLangs)) && nLangs) {
bool fHideSubtitles = false;
pDVS->get_HideSubtitles(&fHideSubtitles);

if (!fHideSubtitles) {
int iSelected = 0;
pDVS->get_SelectedLanguage(&iSelected);
iSelected = (iSelected+(nID==0?1:nLangs-1))%nLangs;
pDVS->put_SelectedLanguage(iSelected);

WCHAR* pName = NULL;
pDVS->get_LanguageName(iSelected, &pName);
}
}


But subtitle's stream from LAV/MPC MPEGSplitter not in this list and only show from tray menu of filter.

nautilus7
22nd July 2013, 12:31
Hi cyberbeing, can I use xysubfilter in avisynth scripts like I did with xy-vsfilter? Thanks.

cyberbeing
22nd July 2013, 12:55
Can you made that XySubFilter show all internal + external subtitles list and a can select it from API.
Now a can select subtitle stream, example of code:
...

I passed this along to our developer. The following was his interpretation of your problem:

Source filters like LAVFilter expose only one subtitle output pin and that is treated as one language in VSFilter/XySubFilter. He can NOT select embedded subtitles using the IDirectVobSub interface. However the XySubFilter's systray does allow one to do that. The embedded subtitles list in systray popup menu comes from source filter in such cases.

If the above is a correct interpretation, his response was:
He wants to enumerate all languages using IDirectVobSub interface? Hmmm... maybe it is possible. But I feel that using the IAMStreamSelect interface would be better. IAMStreamSelect of XySubFilter currently can NOT list all embedded subtitles either. It can be changed.

Aleksoid1978
22nd July 2013, 13:03
cyberbeing
It's easy support select stream use IAMStreamSelect(as you do throw tray menu) inside IDirectVobSub interface. Is currently being used is a similar in MPC-BE and we see audio & subtitle in ONE(Single) menu. But to complicate it further and to support XySubFilter i think wrong way, better do it's on you side :)

cyberbeing
22nd July 2013, 13:07
Hi cyberbeing, can I use xysubfilter in avisynth scripts like I did with xy-vsfilter? Thanks.

Unfortunately, no.

But speaking of this, we are looking for a developer who would be willing to assist in updating our Avisynth plugin to support the new colorspaces in version 2.6, as well as write us a VapourSynth plugin. This is not our area of expertise, so we feel it would be more efficient to outsource it to a developer who is already familiar with writing such plugins.

clsid
22nd July 2013, 13:22
@cyberbeing
The tray icon enumerates IAMStreamSelect from other filters in the graph. That can make it a bit messy, for example if ffdshow video decoder is used (which copies list from other filters). It would probably be best to disable this behavior and only show a list for the subs handled by xy*filter itself.
Relevant code can be found in systray.cpp, CSystrayWindow::OnNotifyIcon

Telion
22nd July 2013, 13:41
Aleksoid1978
cyberbeing

It would be very nice to be able to switch subtitles through MPC-BE hotkeys/button menu at last. I hope you come to a decision allowing this, and also backport it to xy-VSFilter if possible.

karamancho
22nd July 2013, 15:27
Aleksoid1978
cyberbeing

It would be very nice to be able to switch subtitles through MPC-BE hotkeys/button menu at last. I hope you come to a decision allowing this, and also backport it to xy-VSFilter if possible.

you can do this in MPC-HC with the 's' key, it shouldn't be much different in MPC-BE.
it works with internal subs, but does nothing with the external ones (well maybe it does but I never have more than one sub loaded so I wouldn't know)

it would be great if you could add an 'subs off' state with external subs in xy-VSFilter. that way we could enable/disable external subs with the keyboard (without leaving the fullscreen)

Asteague
22nd July 2013, 15:38
Did you remember to disable the MPC-HC ISR by unchecking "Auto-load subtitles" under "Playback" in MPC-HC settings?

Are you positive the external subtitle files have an identical file name to your video? Please double-check by renaming one to the other with copy/paste (not including file extension).

Yes, I'm positive on both accounts.
The ISR is disabled, has been for ages since I started using xy-subFilter.
The file name is correct, it worked perfectly before with xy-vsfilter or when enabling ISR. Only xySubFilter has problems with it, for whatever reason, and sporadically it does work, although I haven't managed to reproduced it reliably.
What I forgot to mention: xySubFilter doesn't even seem to load, at least it doesn't show up in the Filters list in the context menu. Also doesn't change if I explicitly set xySubFilter as a preferred external filter.

Telion
22nd July 2013, 15:42
you can do this in MPC-HC with the 's' key, it shouldn't be much different in MPC-BE.
Unfortunately it is, MPC-BE authors removed this function for external splitters.

Kurtnoise
22nd July 2013, 15:48
I'm just wondering coz I didn't found anything on this yet, does the xy-VSFilter/xySubFilter still have an Avisynth interface ? If so, how to manage it ?

:thanks:

Navitron
22nd July 2013, 16:29
Just wanted to say what a great job you guys have done and are still doing! Keep up the great work. :)

GrofLuigi
22nd July 2013, 16:47
I'm just wondering coz I didn't found anything on this yet, does the xy-VSFilter/xySubFilter still have an Avisynth interface ? If so, how to manage it ?

:thanks:

The answer (http://forum.doom9.org/showthread.php?p=1637847#post1637847) (if I didn't misunderstand something). :o

GL

Aleksoid1978
22nd July 2013, 23:23
Unfortunately it is, MPC-BE authors removed this function for external splitters.

Where did you get that info ?
The MPC-BE is perfectly switches the audio and subtitle tracks with hot keys, besides all the audio and subtitle organized in a common menu.

turbojet
22nd July 2013, 23:45
Yes, those are SRT subtitles. I don't see the problem though, our style override dialog functions just fine on that sample.

Override Style
1) Open your sample (http://www.sendspace.com/file/bt4zd8) in MPC-HC

2) Pause video

3) Right-click MPC-HC window -> Filters -> XySubFilter -> Properties

4) Click "Styles"

5) Click the "Default" tab

6) Edit to bogus value like "Border Width = 10"

7) Click "Ok" to style Dialog

8) Click "Apply" to main setting dialog [note: the need to press Apply here first seems to be a bug]

9) Click "Okay to main setting dialog

10) Style with "Border Width = 10" is applied to subtitles.

OR

Force Default Style
1) Open your sample (http://www.sendspace.com/file/bt4zd8) in MPC-HC

2) Pause video

3) Right-click MPC-HC window -> Filters -> XySubFilter -> Properties

4) Click "Styles"

5) Click the "Global Default" tab

6) Edit to bogus value like "Border Width = 10"

7) Click "Ok" to style Dialog

8) Check "Force Default" in main setting dialog

9) Click "Okay to main setting dialog

10) Style with "Border Width = 10" is applied to subtitles.

11) Exit MPC-HC

12) Re-open your video

13) "Border Width = 10" is still applied to subtitles


That worked fine and it's finally working correctly for those subs. There may not be a logical reason to it and couldn't reproduce it on a vm, but font size and style had no effect (Arial bold 72 looked identical to Arial narrow 8) until the font changed then everything started working. The few other subs tested style/size worked. This is the first time xysubfilter was installed, vsfilter was never installed on a windows 7 x64 as a non-admin user, the problematic subs were the first subs tested. Probably a fluke?

We currently have no intentions of adding a bitmap resizing function within XySubFilter. The actual resizing code should exist in madVR, even if we ourselves trigger use of such code.

Oh well, could really make subfilter stick out. A DVD/BD with small subs currently requires ripping, extracting the subs, resizing the subs with bdsup2sub, muxing them back together, playing the muxed file. Could take well over an hour for a BD as opposed to a few seconds adjusting zoom of the sub renderer.

madVR has much to do with the subtitle interface used by XySubFilter. Unless madVR adds such code to madVR, and offers a way for us to trigger such functionality, there is nothing we can do. You need to make a case to madshi for why he should support such a feature in madVR and the subtitle interface.

It doesn't bother me and there's no need for a third party to get involved but it's comparable to subfilter having options to control madvr's refresh rate changer.

Is there any way to get subfilter to use the same size font independent of the aspect ratio. 1.33:1 subs are much larger than 2.35:1 at the same 'font size'. Examples at http://www.sendspace.com/file/hsaiei

cyberbeing
23rd July 2013, 01:30
This is the first time xysubfilter was installed, vsfilter was never installed on a windows 7 x64 as a non-admin user, the problematic subs were the first subs tested. Probably a fluke?
Can you reproduce this if you delete the entire XySubFilter registry key? We don't write settings to the registry until the setting dialog is closed for the first time, so maybe that could be related.

HKEY_CURRENT_USER\Software\Gabest\xysubfilter

Is there any way to get subfilter to use the same size font independent of the aspect ratio.
Not currently, since our scale function in XySubFilter is based around VSFilter behavior, which adjusts font size based on frame height + layout resolution. This only works in MPC-HC ISR since they always render based on a fixed frame size (and hence fixed relative font size), while XySubFilter renders directly to target size. Maybe we could look into such an option for SRT and other plaintext subtitles.

Yes, I'm positive on both accounts.
The ISR is disabled, has been for ages since I started using xy-subFilter.
The file name is correct, it worked perfectly before with xy-vsfilter or when enabling ISR. Only xySubFilter has problems with it, for whatever reason, and sporadically it does work, although I haven't managed to reproduced it reliably.
What I forgot to mention: xySubFilter doesn't even seem to load, at least it doesn't show up in the Filters list in the context menu. Also doesn't change if I explicitly set xySubFilter as a preferred external filter.

No idea. madVR is in currently in charge of loading XySubFilter into the graph for external subtitles, so if XySubFilter doesn't even show up in Filters, it could be a madVR bug. I'd suggest creating a new bug on madshi's bug tracker (http://bugs.madshi.net/my_view_page.php) about this, and attach a madVR debug log. Depending on what madshi has to say, we'll see where to go from there.

What happens if you uninstall XySubFilter, xy-VSFilter, LAV Filters, and Haali Splitter, madVR and then:


Install CCCP Beta RC3-2013-07-22 (http://www.cccp-project.net/beta/Combined-Community-Codec-Pack-RC3-2013-07-22.exe)
From CCCP Settings run "Reset User Settings" & "Repair CCCP"
Install XySubFilter (http://code.google.com/p/xy-vsfilter/downloads/detail?name=XySubFilter_3.1.0.546_BETA_Installer_v2.exe)
Install madVR (http://madshi.net/madVR.zip)
Run the MPC-HC build provided with CCCP
Select madVR as video renderer
Attempt to reproduce the issue


Does that resolve the problem?

Also be aware of this issue (http://code.google.com/p/xy-vsfilter/issues/detail?id=156). We have a workaround in place for MPC-HC based media players, which currently requires the app name contain "mpc-hc". Does this issue occur with other media players like Zoom Player (http://www.inmatrix.com/download_relay/beta/zoomplayer.com_free.html) with "Smart Play" disabled? If not, maybe our workaround has an intermittent issue on Win8, in which case I *really* hope MPC-based players can add an exception, so our workaround could be removed from future releases.

cyberbeing
23rd July 2013, 06:07
As of MPC-BE r3087 and newer Issue #156 (MPC-BE prevents XySubFilter from loading external subtitles) (http://code.google.com/p/xy-vsfilter/issues/detail?id=156) has been resolved.

turbojet
23rd July 2013, 07:07
Can you reproduce this if you delete the entire XySubFilter registry key? We don't write settings to the registry until the setting dialog is closed for the first time, so maybe that could be related.

HKEY_CURRENT_USER\Software\Gabest\xysubfilter


Nope, tried 3 times.

Aleksoid1978
23rd July 2013, 07:12
Another bug.
If no embedded subtitle, call IDirectVobSub->put_FileName() but subtitle is not displayed. Call get_HideSubtitles(&fHideSubtitles) return fHideSubtitles == false;
To improve this situation i need after
put_FileName()
call
put_HideSubtitles(true);
put_HideSubtitles(false);

After that subtitle display.

Telion
23rd July 2013, 11:18
Where did you get that info ?
The MPC-BE is perfectly switches the audio and subtitle tracks with hot keys, besides all the audio and subtitle organized in a common menu.
From my experience with LAV Splitter/Haali and xy-VSFilter/XySubFilter. Obviously I'm not talking about ISR here, which works as you described, and not about audio tracks either. With the same set of external filters installed in OS, MPC-HC switches multiple subtitle tracks in MKV with S/Shift-S and lists them all in Navigate/Subtitle Language submenu, while MPC-BE doesn't, as there is always one track in that menu - the one selected through xy-VSFilter tray menu. If you're telling me that there should be no difference, then what's wrong with my setup? Am I the only one experiencing this problem with MPC-BE here?

Aleksoid1978
23rd July 2013, 11:57
From my experience with LAV Splitter/Haali and xy-VSFilter/XySubFilter. Obviously I'm not talking about ISR here, which works as you described, and not about audio tracks either. With the same set of external filters installed in OS, MPC-HC switches multiple subtitle tracks in MKV with S/Shift-S and lists them all in Navigate/Subtitle Language submenu, while MPC-BE doesn't, as there is always one track in that menu - the one selected through xy-VSFilter tray menu. If you're telling me that there should be no difference, then what's wrong with my setup? Am I the only one experiencing this problem with MPC-BE here?

What about open in MPC-HC + LAV + VSFilter files with embedded subtitle + external. Can you change it within MPC-HC menu, what you see.

Telion
23rd July 2013, 14:12
Aleksoid1978
In both players 1 external track takes precedence over 2 embedded after playback starts (VSFilter set to External - Load when needed). In MPC-HC menu I don't see external track, only 2 embedded. I can switch between embedded and external only through VSFilter. In the player I can switch between 2 embedded after I switch from external to embedded in VSFilter. In MPC-BE menu I see external track and 1 embedded (chosen by splitter as default one according to track selection preferences). I can switch between them. To be able to select second embedded track I must go to VSFilter tray menu.

Asteague
23rd July 2013, 17:30
(snip)
Does that resolve the problem?

Also be aware of this issue (http://code.google.com/p/xy-vsfilter/issues/detail?id=156). We have a workaround in place for MPC-HC based media players, which currently requires the app name contain "mpc-hc". Does this issue occur with other media players like Zoom Player (http://www.inmatrix.com/download_relay/beta/zoomplayer.com_free.html) with "Smart Play" disabled? If not, maybe our workaround has an intermittent issue on Win8, in which case I *really* hope MPC-based players can add an exception, so our workaround could be removed from future releases.

Nope, still the same problem in MPC-HC, xySubFilter still not showing up in the filter list.
Using Zoom Player on the other hand, everything works as one would expect. xySubFilter shows up in the list and successfully loads the external sub file.

I'd kind of understand if xySubFilter completely refused to work with MPC-HC, but it's only happening with files that have only external sub files, for whatever reason...

cyberbeing
23rd July 2013, 19:20
I'd kind of understand if xySubFilter completely refused to work with MPC-HC, but it's only happening with files that have only external sub files, for whatever reason...

MPC-HC has code which removes XySubFilter from the graph with external subtitles if we don't have a connected subtitle pin. Our beta build has a workaround, but maybe it's not working correctly for you and MPC-HC removes us anyway. Do XySubFIlter external subtitles work with MPC-BE r3087 (http://dev.mpc-next.ru/index.php/topic,1654.msg9236.html#msg9236) without issue?

If it does, I'm going to need to make another push on the MPC-HC devs to add an exception for XySubFilter in this code.

Stephen R. Savage
23rd July 2013, 19:32
Hopefully we can find a way to optimize the effect in this script a bit more.

You've not scaled \be in that sample though. If you replace every \be1 with \be3 or \be4 does it still play fine?


Why would XySubFilter do something as exceedingly performance-pessimistic as this? There's already a de-facto standard for scaling ASS subtitles, and that's Aegisub's automatic resolution adjustment. Increasing the number of \be passes (which is not an edge blur radius) has a drastic effect on performance.

nevcairiel
23rd July 2013, 19:40
Why would XySubFilter do something as exceedingly performance-pessimistic as this? There's already a de-facto standard for scaling ASS subtitles, and that's Aegisub's automatic resolution adjustment. Increasing the number of \be passes (which is not an edge blur radius) has a drastic effect on performance.

To be fair, the de-facto ASS standard is how VSFilter 2.39 renders it.

cyberbeing
23rd July 2013, 20:29
To be fair, the de-facto ASS standard is how VSFilter 2.39 renders it.

Correct, and this means our scale function attempts to maintain the original resolution VSFilter 2.39 appearance of \be when scaled.

There's already a de-facto standard for scaling ASS subtitles, and that's Aegisub's automatic resolution adjustment.
Aegisub's resample resolution function has always been a half-way solution which requires to re-doing many effects from scratch. It's not a de-facto standard, its a time-saving measure which breaks scripts. The main reason that Aegisub doesn't scale \be is because it only accepts integer values, and cannot be scaled easily.

The \be function should have never even been patched into to VSFilter 2.39 in the first place because of these scaling limitations, but now we are stuck with it. Scripts which use \be will appear incorrect if we do not scale it properly. We've added floating-point and anamorphic support for \be, and made adjustments the active blurring area to assist in achieving subjectively accurate scaling. Not as perfect a match as \blur scaling, but it comes close enough.

Why would XySubFilter do something as exceedingly performance-pessimistic as this?

Increasing the number of \be passes (which is not an edge blur radius) has a drastic effect on performance.
Well I'm still waiting to hear back from thewebchat about this. I'm not yet convinced that \be is the cause of his problem on his Ivy Bridge laptop. On my Ivy Bridge desktop, 90%+ of the total CPU use still exists @2560x1440 even after I strip \be and \fade effects from the script. I'm suspecting the source of his performance issue is elsewhere. But yes, the computation load of multiple \be passes are rather linear, but it shouldn't be too bad on a modern CPU since its been re-written and SSE2 optimized compared to the original VSFilter 2.39 implementation which was very slow.

Asteague
23rd July 2013, 22:08
MPC-HC has code which removes XySubFilter from the graph with external subtitles if we don't have a connected subtitle pin. Our beta build has a workaround, but maybe it's not working correctly for you and MPC-HC removes us anyway. Do XySubFIlter external subtitles work with MPC-BE r3087 (http://dev.mpc-next.ru/index.php/topic,1654.msg9236.html#msg9236) without issue?

If it does, I'm going to need to make another push on the MPC-HC devs to add an exception for XySubFilter in this code.

Yep, using MPC-BE works flawlessly. It seems you'll have to push MPC-HC in the right direction in this case.

cyberbeing
24th July 2013, 02:38
Yep, using MPC-BE works flawlessly. It seems you'll have to push MPC-HC in the right direction in this case.

I've heard back that MPC-HC will hopefully commit a fix sometime tomorrow.

They've also been making good initial progress on writing a Subtitle Consumer supporting XySubFilter for other MPC-HC renderers like EVR-CP. Still in the very early stages of development, but for users who do not have GPUs capable of running madVR, this is something to keep an eye out for in the future.

Starks
24th July 2013, 05:34
XySubfilter is really nice so far. Much faster than libass and no slowdown when rendering high-resolution karaoke or signs.

That being said, I can't help but wonder if an opportunity is being missed to make a cross-platform successor to vsfilter and its forks. libass hasn't fulfilled that role well enough and the main dev is pretty much on his own.

madshi
24th July 2013, 07:37
I can't help but wonder if an opportunity is being missed to make a cross-platform successor to vsfilter
XySubFilter is still based on the VSFilter rendering engine (although with a lot of tweaks). This rendering engine uses a lot of win32 API calls, so it can't be easily converted to other OSs. The XySubFilter main developer has enough work on his hands as it is. You can't expect him to do what nobody before him dared to do in all those years, namely making the VSFilter rendering engine work on other OSs.

If you want XySubFilter to be cross-platform, of course you're free to work on this yourself, or to hire a professional developer to do the work... ;)

Aleksoid1978
24th July 2013, 07:55
If who interested - i make full integrate VSFilter/XySubFilter's subtitle selection mechanism into MPC-BE. Now you see and can select any subtitle stream from MPC-BE, embedded and external.
I combined IDirectVobSub & IAMStreamSelect interface control in one :)

http://aleksoid.voserver.net/MPC-BE/mpc-be.exe_VSFilter_XySubFilter_General_SubtitleMenu_Final.7z

Who interested - test please.

Soukyuu
24th July 2013, 12:00
That being said, I can't help but wonder if an opportunity is being missed to make a cross-platform successor to vsfilter and its forks. libass hasn't fulfilled that role well enough and the main dev is pretty much on his own.You know, I think the major problem with the linux world is that people don't concentrate on improving existent software but instead start their own thing - that ends up just as half-assed because they lose interest halfway.

IMHO, a better idea would be a collaboration between xySubFilter and libass, for example to assist the libass devs in implementing a cache so that only the portion of the output that changed has to be rendered, not the whole screen as libass does now.

Telion
24th July 2013, 13:40
Aleksoid1978
Thank you very much, now the last major inconvenience of MPC-BE has gone! But I suggest to exclude the "No subtitles" item from the S/Shift-S cycle, since there is another hotkey to enable/disable subtitles. It's not very reasonable to have a no-subtitle slot when I want to repeatedly switch between different subtitles (e.g. to compare variants of translation).

cyberbeing
24th July 2013, 14:01
But I suggest to exclude the "No subtitles" item from the S/Shift-S cycle, since there is another hotkey to enable/disable subtitles. It's not very reasonable to have a no-subtitle slot when I want to repeatedly switch between different subtitles (e.g. to compare variants of translation).

I disagree with this. I personally use the "s" key with the intention of disabling subtitles, much more often than I use it with the intention of switching subtitles. It's convenient to have both functions using the intuitive "s" (subtitle) hotkey with the default behavior. Any new hotkey behavior which disables built-in functionality which has always existed for over a decade since the Gabest days, should get a new non-default setting under Player->Keys, as to not force millions of users to relearn a new hotkey, IMHO. More often than not, we the subtitle filter get stuck supporting such users when core functionality like this breaks unexpectedly.

ryrynz
24th July 2013, 14:21
Who interested - test please.

Ran that build tonight, experienced two crashes, no subtitles for that episode either. Anyone else?

Telion
24th July 2013, 15:34
No crashes here as yet. But there is a reported problem with >1 external subtitle tracks, guess it'll be fixed soon. Is this your case?

cyberbeing
24th July 2013, 19:35
If who interested - i make full integrate VSFilter/XySubFilter's subtitle selection mechanism into MPC-BE. Now you see and can select any subtitle stream from MPC-BE, embedded and external.
http://aleksoid.voserver.net/MPC-BE/mpc-be.exe_VSFilter_XySubFilter_General_SubtitleMenu_Final.7z

Good:

MPC-BE prevents XySubFilter & ISR from running at the same time, which avoid performance issues and duplicates with both being active. MPC-BE ISR disables itself when XySubFilter is present, even if "Auto-Load Subtitles" is enabled. (MPC-HC doesn't do this for some reason, which can lead to issues)

MPC-BE "Sub" button on main window can be used to switch all available subtitle tracks with XySubFilter/xy-VSFilter during playback.

MPC-BE "Load Subtitle" can be used to load external subtitles with XySubFilter/xy-VSFilter during playback.

MPC-BE drag and drop can be used to load external subtitles with XySubFilter/xy-VSFilter during playback.

MPC-BE "Subtitles" context menu can be used to enable/disable subtitles with XySubFilter/xy-VSFilter during playback.

MPC-BE seems to prevent XySubFilter BETA from entering graph with EVR-CP and other renderers without a Subtitle Consumer.


Issue:

MPC-BE "Subtitle Database" download "replace currently loaded subtitles" does not load subtitles into XySubFilter/xy-VSFilter when active.

MPC-BE does not prevent XySubFilter from entering the graph with EVR-CP if another filter loads it into the graph by mistake. Not an issue with Beta, but at least until a Subtitle Consumer which is not a video renderer exists, you may want to block XySubFilter from loading with any video renderer without a known Subtitle Consumer. [Edit: We recommend that you wait until we can send you a test build for our next release]

madshi
24th July 2013, 22:52
MPC-BE does not prevent XySubFilter from entering the graph with EVR-CP if another filter loads it into the graph by mistake. Not an issue with Beta, but at least until a Subtitle Consumer which is not a video renderer exists, you may want to block XySubFilter from loading with any video renderer without a known Subtitle Consumer. Our recommended future-proof way to do this is by exposing the dummy IXySubFilterGraphMutex (https://github.com/Cyberbeing/xy-VSFilter/commit/ef5b1d6151fa40db2bef1fe78daef31b4d0a31ce) interface, which will prevent XySubFilter from entering the graph when present.
I find this dummy IXySubFilterGraphMutex interface an unnecessarily complicated solution to the problem. Why not simply dynamically blocking XySubFilter (and the auto-load helper) instead? Much easier and no dummy interface needed.

Aleksoid1978
25th July 2013, 00:15
Good:
Issue:

MPC-BE "Subtitle Database" download "replace currently loaded subtitles" does not load subtitles into XySubFilter/xy-VSFilter when active.


I update build - now it's normal open and manipulate of multiple external subtitles.
http://aleksoid.voserver.net/MPC-BE/mpc-be.exe_VSFilter_XySubFilter_General_SubtitleMenu_Final_2.7z

About "subtitle database" - i have tried many times to download subtitles, but my films there was nothing :).

Can you upload a video that i can download subtitle. Then I can fix this issue.

cyberbeing
25th July 2013, 03:38
I find this dummy IXySubFilterGraphMutex interface an unnecessarily complicated solution to the problem. Why not simply dynamically blocking XySubFilter (and the auto-load helper) instead? Much easier and no dummy interface needed.
What auto-load helper? Until we actually release something, there is no new behavior or filter to dynamically block. ;)

[Edit: I've just clarified with our dev, and you are correct, I misunderstood something. IXySubFilterGraphMutex was intended for use by directshow filter developers, not player developers. Sorry about the confusion Aleksoid1978, you shouldn't have any need for this in MPC-BE.]

But yes, the new auto-load helper test code you provided causes this bad behavior. I've been throwing ideas back and forth with our dev for the last few days in private, attempting to figure our a way to fix it without breaking something else even worse in the process. Now that I've seen MPC-BE behavior in this build, we need to be extra careful not to break its functionality. The hope is that media players won't need any workarounds whatsoever, but I have no way to guarantee that at this time. This is not a discussion for this thread, as there may be no problems at all once we release our next build.

About "subtitle database" - i have tried many times to download subtitles, but my films there was nothing :).

Can you upload a video that i can download subtitle. Then I can fix this issue.

Sure, I'll send you a sample.

And as implied above, specifics of loading behavior for the next release XySubFilter are still uncertain. It may be best to wait it out until we send you a test build which can be specifically designed around. We also will likely have bug-fixes for some of the other issues you've mentioned to us.

Telion
25th July 2013, 03:46
I update build - now it's normal open and manipulate of multiple external subtitles.
In case of multiple external subtitles it now works with VSFilter but doesn't work with XySubFilter, the filter doesn't get loaded.

Aleksoid1978
25th July 2013, 03:53
In case of multiple external subtitles it now works with VSFilter but doesn't work with XySubFilter, the filter doesn't get loaded.

Must work fine - it's use one interface.

http://i.imgur.com/qsJhY5l.png
http://i.imgur.com/PC8Lwsm.png

Telion
25th July 2013, 04:06
Aleksoid1978
The problem appears here with SRT subs and AVI/MKV without embedded subs. If MKV has embedded sub track, then it works.

cyberbeing
I noticed that double-clicking on XySubFilter tray icon doesn't bring up Properties, as it does with xy-VSFilter. Can you confirm this?

Aleksoid1978
25th July 2013, 04:19
Telion

All ok for me.
http://i.imgur.com/g9gqfwP.png
http://i.imgur.com/sYqKl9p.png

can you upload a avi/mkv + .srt files for test ??

cyberbeing
25th July 2013, 04:19
cyberbeing
I noticed that double-clicking on XySubFilter tray icon doesn't bring up Properties, as it does with xy-VSFilter. Can you confirm this?
What OS are you running? This works fine for me with XySubFilter Beta on Win7 SP1 x64.

Can anyone else reproduce this problem with double-clicking the tray icon which Telion is reporting?