Opened 6 years ago

Closed 6 years ago

#13641 closed Bug Report - General (Duplicate)

Regression: DVD menu playback broken in v31

Reported by: Matt Marjanovic Owned by: Mark Kendall
Priority: minor Milestone: 31.1
Component: MythTV - DVD Playback Version: v31-fixes
Severity: medium Keywords:
Cc: Ticket locked: no

Description

Playback of DVD menus has become broken in v31. This is a regression, as playback worked fine in earlier versions. This occurs with unencrypted .iso files, whether they are on the local disk of the frontend or served via StorageGroup by the backend. (I have not tested direct playback from a local optical drive.)

The systems of the brokenness vary by disk image and menu, but they include: frame skipping, stuttering, wrong speed, aborted playback, audio/video timing mismatch, inability to navigate menu options, and lockup of the frontend entirely (requiring a restart). For some disk images, menu playback is still a-ok.

Playback of movie streams themselves seems to be ok, *if* one manages to navigate to one.

I'm happy to help try to debug/fix this in any I can --- I just have no idea where to even start. (Access to our household video library is wedged by this.)

Attached is the version output, and the debug output from attempting to playback a no-longer-working image.

Attachments (10)

mythfrontend-version.txt (1.0 KB ) - added by Matt Marjanovic 6 years ago.
Output of mythfrontend --version
mythfrontend.20200702053101.2193544.log.gz (31.2 KB ) - added by Matt Marjanovic 6 years ago.
Output of mythfrontend --loglevel debug when playing back a DVD image with a main menu with issues.
mythfrontend.20200702161157.2196962.log (884.3 KB ) - added by Matt Marjanovic 6 years ago.
Output of mythfrontend -v playback when playing back a DVD image with a main menu with issues.
mythfrontend.20200702161508.2197139.log.gz (57.0 KB ) - added by Matt Marjanovic 6 years ago.
Output of mythfrontend --loglevel debug -v playback when playing back a DVD image with a main menu with issues.
disable-driver-deinterlace.log (505.3 KB ) - added by Matt Marjanovic 6 years ago.
Log with driver deinterlacing disabled:
disable-all-deinterlace.log (463.9 KB ) - added by Matt Marjanovic 6 years ago.
Log with all deinterlacing disabled.
standard-decoder.log (215.6 KB ) - added by Matt Marjanovic 6 years ago.
Log with VAAPI disabled.
vainfo.txt (1.0 KB ) - added by Matt Marjanovic 6 years ago.
Output of vainfo
vdpauinfo.txt (4.2 KB ) - added by Matt Marjanovic 6 years ago.
Output of vdpauinfo
i965-vaapi-with-original-config.log (837.7 KB ) - added by Matt Marjanovic 6 years ago.
Log with original frontend config, but with i965 VA driver

Change History (19)

by Matt Marjanovic, 6 years ago

Attachment: mythfrontend-version.txt added

Output of mythfrontend --version

by Matt Marjanovic, 6 years ago

Output of mythfrontend --loglevel debug when playing back a DVD image with a main menu with issues.

comment:1 by Mark Kendall, 6 years ago

Status: newinfoneeded_new

I can't open that log file for some reason - but regardless, you will be better off capturing a log with 'mythfrontend -v playback' to start with. Regards, Mark

by Matt Marjanovic, 6 years ago

Output of mythfrontend -v playback when playing back a DVD image with a main menu with issues.

by Matt Marjanovic, 6 years ago

Output of mythfrontend --loglevel debug -v playback when playing back a DVD image with a main menu with issues.

comment:2 by Matt Marjanovic, 6 years ago

I have attached two new log files. The shorter one is captured from mythfrontend -v playback, and the longer one from mythfrontend --loglevel debug -v playback.

I gzipped the longer one so that I could upload it. (Trac says the limit is 2MB, but it would not allow me to upload the original 1.2MB file.)

It appears that trac silently re-gzips gzipped files. If you download the .gz attachments, they need to be renamed to .gz.gz and then gunzipped twice in order to read them.

comment:3 by Mark Kendall, 6 years ago

Owner: set to Mark Kendall
Status: infoneeded_newassigned

OK - a couple of requests

  • can you plaese attach the output of vdpauinfo and vainfo
  • try disabling driver deinterlacing (vaapi)
  • try disabling deinterlacing entirely
  • try using software decode (i.e. disable VAAPI)

thanks, Mark

by Matt Marjanovic, 6 years ago

Log with driver deinterlacing disabled:

by Matt Marjanovic, 6 years ago

Attachment: disable-all-deinterlace.log added

Log with all deinterlacing disabled.

by Matt Marjanovic, 6 years ago

Attachment: standard-decoder.log added

Log with VAAPI disabled.

by Matt Marjanovic, 6 years ago

Attachment: vainfo.txt added

Output of vainfo

by Matt Marjanovic, 6 years ago

Attachment: vdpauinfo.txt added

Output of vdpauinfo

comment:4 by Matt Marjanovic, 6 years ago

I think I've accomplished what you asked for. The "VAAPI disabled" config seems to play back correctly; the other two cases appear the same as the original. (All this is being done on my laptop, but I originally experienced this DVD misbehavior on our keyboardless media-room frontend, which also has Intel CPU/Video inside. I can collect logs/etc from that, too, if it would help; it is just a bigger pain to do it.)

For the record, the four Video/Playback configurations involved here are:

* Original * (broken playback)
Decoder: VAAPI Acceleration
max cpus: 4
Deblocking: on
Renderer:  OpenGL Hardware
Deinterlacer/single:  medium
  - prefer OpenGL: on
  - prefer driver: on
Deinterlacer/double:  medium
  - prefer OpenGL: on
  - prefer driver: on

* Disable driver deinterlacing * (broken playback)
Decoder: VAAPI Acceleration
max cpus: 4
Deblocking: on
Renderer:  OpenGL Hardware
Deinterlacer/single:  medium
  - prefer OpenGL: on
  - prefer driver: off
Deinterlacer/double:  medium
  - prefer OpenGL: on
  - prefer driver: off

* Disable all deinterlacing * (broken playback)
Decoder: VAAPI Acceleration
max cpus: 4
Deblocking: on
Renderer:  OpenGL Hardware
Deinterlacer/single:  None
Deinterlacer/double:  None

* Software decode *  (seems to work)
Decoder: Standard
max cpus: 4
Deblocking: on
Renderer:  OpenGL YV12
Deinterlacer/single:  medium
  - prefer OpenGL: on
  - prefer driver: on
Deinterlacer/double:  medium
  - prefer OpenGL: on
  - prefer driver: on

Thanks for investigating this!

comment:5 by Mark Kendall, 6 years ago

Milestone: needs_triageunknown
Status: assignedaccepted

So I can't currently reproduce this - will need to cast a net for a few extra DVDs to try (haven't bought any new ones in years).

What is interesting about your setup is that it is using the intel iHD driver. Is this the default on your system or have you deliberately set that up?

Testing here, the iHD driver (from the intel-media-va-driver package) does not support VAAPI post processing (for deinterlacing) and has a few rendering oddities that I don't see with the i965 driver (from the i965-va-driver package).

Could you install (if not already) and compare playback between the 2 drivers on your system?

To force the correct driver you will need to use this for i965:-

LIBVA_DRIVER_NAME=i965 mythfrontend -v playback

or for iHD

LIBVA_DRIVER_NAME=iHD mythfrontend -v playback

by Matt Marjanovic, 6 years ago

Log with original frontend config, but with i965 VA driver

comment:6 by Matt Marjanovic, 6 years ago

What is interesting about your setup is that it is using the intel iHD driver. Is this the default on your system or have you deliberately set that up?

I had no idea two drivers even existed, so that must be the system default (debian bullseye/testing). Both drivers/packages are already installed, though, pulled in by va-driver-all which itself is recommended by libva2.

Could you install (if not already) and compare playback between the 2 drivers on your system?

I tried out i965 now: as far as the menu misbehavior goes, the i965 driver is behaving the same as iHD; log file attached.

So I can't currently reproduce this - will need to cast a net for a few extra DVDs to try (haven't bought any new ones in years).

You are welcome to try https://www.mir.com/truncated-groundhog.iso --- it is the first 282MB of the disk image, i.e., the menus and nothing else.

Testing here, the iHD driver (from the intel-media-va-driver package) does not support VAAPI post processing (for deinterlacing) and has a few rendering oddities that I don't see with the i965 driver (from the i965-va-driver package).

Hmm, what kinds of oddities? (Curious if it is anything I unconsciously experienced.)

comment:7 by Stuart Auchterlonie, 6 years ago

Milestone: unknown31.1

comment:8 by wesmorrison, 6 years ago

I have also had this problem since upgrading to 31 and am using Intel UHD graphics. Everything but DVD menus works fine.

The original description of "stuttering" is fine, but I'd phrase it this way after trying several DVDs.

If the menu has a static background, it displays a blank screen. If it has a video loop, the loop plays as if on "fast forward."

If the menu also has audio, it also plays as if on "fast forward," that glitchy digital fast-forward sound where it plays sub-second snippets of sound and skips forward. It stays synced with the video. It's not random frame skipping. It's very regular. "Fast-forward" is the best way I can describe it.

If the menu defaults to the main feature, you can press enter to get it, and it plays fine. Or if you know the menu you can press the correct arrow keys to select something else and that works too. The menu choices "flicker" when you navigate with the arrow keys. If the menu has a static background, that may display as a "flicker" too and then disappear again.

And often I can't escape out of it. I think the menu is there asking do I want to save position but it's invisible. I often have to killall mythfrontend.real and start it again.

Has anyone been able to reproduce this yet? Let me know if you need any logs or anything.

Last edited 6 years ago by wesmorrison (previous) (diff)

comment:9 by Mark Kendall, 6 years ago

Resolution: Duplicate
Status: acceptedclosed

Apologies - had not seen the updates to this ticket.

I've managed to reproduce the issue with the supplied .iso and I think a fix should be in fairly quickly.

Moving to new github issues ticket: https://github.com/MythTV/mythtv/issues/225

That ticket has analysis of the problem and updates will go there.

Note: See TracTickets for help on using tickets.