Bug 405300 - Can't get past the DVD menu
Summary: Can't get past the DVD menu
Status: RESOLVED NOT A BUG
Alias: None
Product: kaffeine
Classification: Applications
Component: general (other bugs)
Version First Reported In: 2.0.16-2
Platform: Neon Linux
: NOR normal
Target Milestone: ---
Assignee: Mauro Carvalho Chehab
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2019-03-10 10:56 UTC by dagobertram
Modified: 2019-05-09 17:53 UTC (History)
2 users (show)

See Also:
Latest Commit:
Version Fixed In:
Sentry Crash Report:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description dagobertram 2019-03-10 10:56:42 UTC
SUMMARY
When I want to play a DVD, I can't get past the DVD menu.

STEPS TO REPRODUCE
1. put a DVD in your PC and open Dragon Player
2. press "4" on the keyboard to play the DVD
3. the DVD menu shows up and it plays the beginnig sequence in a loop

OBSERVED RESULT
You should be able to play the DVD

EXPECTED RESULT
You can't do anything to actually play the DVD

SOFTWARE/OS VERSIONS
Windows: 
MacOS: 
Linux/KDE Plasma: 
(available in About System)
KDE Plasma Version: 5.15.2
KDE Frameworks Version: 5.55.0
Qt Version: 5.12.0

ADDITIONAL INFORMATION
Comment 1 Mauro Carvalho Chehab 2019-03-10 13:50:49 UTC
(In reply to dagobertram from comment #0)

> 1. put a DVD in your PC and open Dragon Player

I suspect you opened the bug against the wrong player... you opened it for Kaffeine :-)

I'll change the bug to point to dragonplayer instead.
Comment 2 dagobertram 2019-03-10 15:10:51 UTC
(In reply to Mauro Carvalho Chehab from comment #1)
> (In reply to dagobertram from comment #0)
> 
> > 1. put a DVD in your PC and open Dragon Player
> 
> I suspect you opened the bug against the wrong player... you opened it for
> Kaffeine :-)
> 
> I'll change the bug to point to dragonplayer instead.

No. Unfortunately it does not work in either of them. Because of that, I filed two bug reports. :(
Comment 3 Christoph Feck 2019-03-31 07:20:07 UTC
Mauro, does Kaffeine not have DVD playing? The ticket for DragonPlayer is bug 405299; this one was reported for Kaffeine.
Comment 4 dagobertram 2019-03-31 12:37:43 UTC
(In reply to Mauro Carvalho Chehab from comment #1)
> (In reply to dagobertram from comment #0)
> 
> > 1. put a DVD in your PC and open Dragon Player
> 
> I suspect you opened the bug against the wrong player... you opened it for
> Kaffeine :-)
> 
> I'll change the bug to point to dragonplayer instead.

I probably got confused with the bug reports, since it was the same problem twice. And I might have forgotton to change "Dragon Player" under Nr. 1 to "Kaffeine"
Comment 5 Mauro Carvalho Chehab 2019-04-01 06:17:54 UTC
(In reply to Christoph Feck from comment #3)
> Mauro, does Kaffeine not have DVD playing? The ticket for DragonPlayer is
> bug 405299; this one was reported for Kaffeine.

It does, but step 1 of this bug says:

> 1. put a DVD in your PC and open Dragon Player

(In reply to dagobertram from comment #2)
> (In reply to Mauro Carvalho Chehab from comment #1)
> > (In reply to dagobertram from comment #0)
> No. Unfortunately it does not work in either of them. Because of that, I
> filed two bug reports. :(

Do you have the needed libraries? For DVD to work, you usually need some libraries:a libdvdcss, libdvdnav, libdvdread. Without them, all players will fail.
Comment 6 dagobertram 2019-04-01 17:59:31 UTC
(In reply to Mauro Carvalho Chehab from comment #5)
> (In reply to Christoph Feck from comment #3)
> > Mauro, does Kaffeine not have DVD playing? The ticket for DragonPlayer is
> > bug 405299; this one was reported for Kaffeine.
> 
> It does, but step 1 of this bug says:
> 
> > 1. put a DVD in your PC and open Dragon Player
< 
> (In reply to dagobertram from comment #2)
> > (In reply to Mauro Carvalho Chehab from comment #1)
> > > (In reply to dagobertram from comment #0)
> > No. Unfortunately it does not work in either of them. Because of that, I
> > filed two bug reports. :(
> 
> Do you have the needed libraries? For DVD to work, you usually need some
> libraries:a libdvdcss, libdvdnav, libdvdread. Without them, all players will
> fail.

Yes, I do. SMPlayer, MPV and mplayer are working just fine (... as does VLC, but that one works differently, am I right?). 
As I said: I forgot to change the name in step 1. to Kaffeine, since that one has the same problem. Sorry. Nevertheless step 2. is only possible in Kaffeine. You can not press "4" in Dragon Player to play the DVD.
Comment 7 Mauro Carvalho Chehab 2019-05-03 18:52:30 UTC
(In reply to dagobertram from comment #6)
> (In reply to Mauro Carvalho Chehab from comment #5)
> > (In reply to Christoph Feck from comment #3)

> Yes, I do. SMPlayer, MPV and mplayer are working just fine (... as does VLC,
> but that one works differently, am I right?). 
> As I said: I forgot to change the name in step 1. to Kaffeine, since that
> one has the same problem. Sorry. Nevertheless step 2. is only possible in
> Kaffeine. You can not press "4" in Dragon Player to play the DVD.

Ok, so, let's see if I got it straight: you're reproducing a DVD with Kaffeine. The menu properly shows up, but you can't navigate?

On Kaffeine, we had to disable navigation via the mouse keys, due to an incompatibility issue between Qt, X11 and VLC.

See https://bugs.kde.org/show_bug.cgi?id=373814

As I explained there, in order to close the issue, I took a different approach to solve this. It seems that we won't have anytime soon a way to pass a mouse event to libVLC. So, instead, I added support for DVD menu navigation via the keyboard.

Now, when the DVB menu is opened, it will allow navigating though the menu via Up/Down/Left/Right keys. Selecting an item is done with <Enter> key.

Not ideal, but at least it provides a way to interact with it.

Could you please test it?
Comment 8 dagobertram 2019-05-09 15:40:47 UTC
(In reply to Mauro Carvalho Chehab from comment #7)
> Ok, so, let's see if I got it straight: you're reproducing a DVD with
> Kaffeine. The menu properly shows up, but you can't navigate?

Yes.

> On Kaffeine, we had to disable navigation via the mouse keys, due to an
> incompatibility issue between Qt, X11 and VLC.
> 
> See https://bugs.kde.org/show_bug.cgi?id=373814
> 
> As I explained there, in order to close the issue, I took a different
> approach to solve this. It seems that we won't have anytime soon a way to
> pass a mouse event to libVLC. So, instead, I added support for DVD menu
> navigation via the keyboard.
>
> Now, when the DVB menu is opened, it will allow navigating though the menu
> via Up/Down/Left/Right keys. Selecting an item is done with <Enter> key.
> 
> Not ideal, but at least it provides a way to interact with it.
> 
> Could you please test it?

It works, thank you! I think most people will not know what to do, if the mouse is not working in the menu. The easiest fix for them is to switch to another player. Is there a way to make this behaviour more obvious? An initial overlay might suffice: "Use the Arrow Keys to navigate and Enter to confirm.". What do you think?

Maybe now is the time for a feature request, because this is probably the wrong place, but:
Is there a way to show only forced subtitles on DVD's with multiple foreign languages like Game Of Thrones for example? -> There is no good DVD playback application with this feature apart from SMPlayer, GNOME Videos and Parole where only the first is working with KDE Plasma. But neither has good support for starting playback from within KDE Plasma. Even VLC does not support it.
Comment 9 Mauro Carvalho Chehab 2019-05-09 17:04:05 UTC
(In reply to dagobertram from comment #8)

> > Now, when the DVB menu is opened, it will allow navigating though the menu
> > via Up/Down/Left/Right keys. Selecting an item is done with <Enter> key.
> > 
> > Not ideal, but at least it provides a way to interact with it.
> > 
> > Could you please test it?
> 
> It works, thank you! I think most people will not know what to do, if the
> mouse is not working in the menu. The easiest fix for them is to switch to
> another player. Is there a way to make this behaviour more obvious? An
> initial overlay might suffice: "Use the Arrow Keys to navigate and Enter to
> confirm.". What do you think?

I actually added a notice to the OSD, when displaying the title. It should disappear after 2,5 seconds. Forcing the user to confirm doesn't sound a good idea to me.

> 
> Maybe now is the time for a feature request, because this is probably the
> wrong place, but:
> Is there a way to show only forced subtitles on DVD's with multiple foreign
> languages like Game Of Thrones for example? -> There is no good DVD playback
> application with this feature apart from SMPlayer, GNOME Videos and Parole
> where only the first is working with KDE Plasma. But neither has good
> support for starting playback from within KDE Plasma. Even VLC does not
> support it.

Maybe it is doable. I mean, Kaffeine receives the list of audio and subtitles when it starts playing. So, in thesis, it would be possible to add some logic that would try to use the preferred language. The hardest part would be to define an interface for the user to input what languages it prefers and if he prefers original audio or not. 

There is a problem, though: it will be just a hint, as language support is limited to some input sources and may either be written as free text or an ISO code. For Digital TV, Kaffeine uses the ISO code, parsed directly from the video stream, with is very reliable (if the operator fills it - some just write things like ORG and NAR, with are not really language codes), but for other sources like DVD, it will receive just a string from libVlc, parsed using some other logic. So, the same language will have different names, depending on the source and on the media. Having a logic that would recognize different patterns and also include language variants (like US and UK English) would likely require several tests with different medias and a lot of time to get it right.

So, I don't think it is worth implementing it (and I probably won't have anytime soon to code it). Anyway, if you want this feature so badly, feel free to implement it and submit us patches. As I said, the code changes wouldn't probably be hard. The major issue is to define a good interface for asking it to the user and to work and test an heuristics logic that will try to match the language with a string that won't be using ISO language codes.
Comment 10 Mauro Carvalho Chehab 2019-05-09 17:06:03 UTC
(In reply to dagobertram from comment #8)

> > Could you please test it?
> 
> It works, thank you! 

As it is working, I'm closing this bug. If you want the language hints feature and are willing to code it, please open a separate bug for us to track it.
Comment 11 dagobertram 2019-05-09 17:28:11 UTC
(In reply to Mauro Carvalho Chehab from comment #9)
> (In reply to dagobertram from comment #8)
> 
> > > Now, when the DVB menu is opened, it will allow navigating though the menu
> > > via Up/Down/Left/Right keys. Selecting an item is done with <Enter> key.
> > > 
> > > Not ideal, but at least it provides a way to interact with it.
> > > 
> > > Could you please test it?
> > 
> > It works, thank you! I think most people will not know what to do, if the
> > mouse is not working in the menu. The easiest fix for them is to switch to
> > another player. Is there a way to make this behaviour more obvious? An
> > initial overlay might suffice: "Use the Arrow Keys to navigate and Enter to
> > confirm.". What do you think?
> 
> I actually added a notice to the OSD, when displaying the title. It should
> disappear after 2,5 seconds. Forcing the user to confirm doesn't sound a
> good idea to me.
> 
> > 
> > Maybe now is the time for a feature request, because this is probably the
> > wrong place, but:
> > Is there a way to show only forced subtitles on DVD's with multiple foreign
> > languages like Game Of Thrones for example? -> There is no good DVD playback
> > application with this feature apart from SMPlayer, GNOME Videos and Parole
> > where only the first is working with KDE Plasma. But neither has good
> > support for starting playback from within KDE Plasma. Even VLC does not
> > support it.
> 
> Maybe it is doable. I mean, Kaffeine receives the list of audio and
> subtitles when it starts playing. So, in thesis, it would be possible to add
> some logic that would try to use the preferred language. The hardest part
> would be to define an interface for the user to input what languages it
> prefers and if he prefers original audio or not. 
> 
> There is a problem, though: it will be just a hint, as language support is
> limited to some input sources and may either be written as free text or an
> ISO code. For Digital TV, Kaffeine uses the ISO code, parsed directly from
> the video stream, with is very reliable (if the operator fills it - some
> just write things like ORG and NAR, with are not really language codes), but
> for other sources like DVD, it will receive just a string from libVlc,
> parsed using some other logic. So, the same language will have different
> names, depending on the source and on the media. Having a logic that would
> recognize different patterns and also include language variants (like US and
> UK English) would likely require several tests with different medias and a
> lot of time to get it right.
> 
> So, I don't think it is worth implementing it (and I probably won't have
> anytime soon to code it). Anyway, if you want this feature so badly, feel
> free to implement it and submit us patches. As I said, the code changes
> wouldn't probably be hard. The major issue is to define a good interface for
> asking it to the user and to work and test an heuristics logic that will try
> to match the language with a string that won't be using ISO language codes.

I think you got me wrong. What I meant was: If you watch a Movie in it's original language (let it be english) and there is just one dialogue in a different language (let it be Klingon -> Star Trek) - the viewer probably wants to understand what they are saying. So it would be nice, if one could only enable the useful subtitle parts (called "forced subtitles"). One may not want to enable the full subtitle and have it ruin the rest of the movie for just one scene of Klingon, don't you think?

Unfortunately I am not a programmer ... :(
Comment 12 Mauro Carvalho Chehab 2019-05-09 17:53:42 UTC
(In reply to dagobertram from comment #11)

> I think you got me wrong. What I meant was: If you watch a Movie in it's
> original language (let it be english) and there is just one dialogue in a
> different language (let it be Klingon -> Star Trek) - the viewer probably
> wants to understand what they are saying. So it would be nice, if one could
> only enable the useful subtitle parts (called "forced subtitles"). One may
> not want to enable the full subtitle and have it ruin the rest of the movie
> for just one scene of Klingon, don't you think?

Ah, now I understand what you meant. I didn't see yet any media with forced subtitles (as far as I'm aware of), except for those movies where the forced subtitle were actually added as an overlay directly at the video itself.

The question here is how to properly identify when those are present. for DVD we shurelly need support at libVlc - with currently only exposes a subtitle name. If it does a good work of using an uniquely identifier at the subtitle's name, then it is doable. Otherwise libVlc needs to be patched first to add some way for apps to enum such kind of subtitles - or expose a flag to allow identify them at the standard subtitles enumeration way.

Having that, enabling support for it shouldn't be hard.

> Unfortunately I am not a programmer ... :(

Good chance for you to learn something new :-D