Opened 5 years ago

Last modified 5 years ago

#6500 new defect

WME: Theora player issues

Reported by: misterhands Owned by: somaen
Priority: normal Component: Engine: Wintermute
Keywords: Cc:
Game: Wintermute


Latest Win64 nightly

I have noticed a couple problems with the theora player in the Rosemary intro.
Firstly it seems to be quite slow. When playing the intro video, my CPU utilization is maxed on one core.
In the original it's only half of that.
And in any video player like MPC it's only a couple percents when playing that same video.

Probably because of that slowness, in ScummVM in that intro video I get some sound stuttering/popping every 3-4 seconds.
And some graphical flickering (visible on the photos and text), also periodic.

Also the video looks different than the original, the text is less readable, less clear. But the video looks sharper. The original and dedicated video players seem to apply some processing like some blur or anti-aliasing, but not your implementation.

Ticket imported from: bugs/6500.

Attachments (2)

normal.png (329.7 KB) - added by misterhands 5 years ago.
flicker.png (262.6 KB) - added by misterhands 5 years ago.

Download all attachments as: .zip

Change History (8)

comment:1 Changed 5 years ago by somaen

I just added some fixes that should atleast cut the CPU load almost in half.

As for the blurriness, that MIGHT stem from the simple scaling algorithm that is currently applied to the video. (For fear that anything heavier will increase the CPU load).

Feel free to test again. (A minor detail: One of the hacks doesn't work when the FPS-counter is visible, so enabling it might actually reduce the FPS by a small amount).

If the issue persists, could you please state what you tested with (system specs), and which graphics backend (OpenGL or anything else?).

comment:2 Changed 5 years ago by misterhands

Thanks, CPU usage is noticeably better and not maxing a core anymore.
But FWIW it's still eating a bit more more CPU than the original.
That's on the default graphic backend (SDL is it?), with no filtering. FPS off.
OpenGL seems to be more CPU greedy and nearly maxes out one core.

No difference on the graphical flickering and sound glitches though.
So I guess they are not related to FVMs using too much CPU.
Do you get these too or is it just me ? (the original WME works fine for me).

My main desktop system has a i5 2500K @ default clocks (3.3Ghz if you don't count turbo mode), and 8 gigs of RAM. Win7 64 bits. That's about it, if you want to know something else, just ask.

comment:3 Changed 5 years ago by somaen

One thing though, this bug report has the same problem that the "some sound issues"-bug report has, namely that it isn't singular, but a set of different issues:

  • Large CPU usage (mostly fixed)
  • Differencies in output (scaling related, probably)
  • Flicker.

Now, I actually didn't notice the flicker the first time around, and I've resolved parts of this.

So, for future issues, please try to report separate issues as separate issues, it makes tracking them a bit easier.

comment:4 Changed 5 years ago by misterhands

Sorry about the mess, I usually try do that but in this case I initially thought it was mostly all the same CPU usage issue.

The flickering is still occurring for me.

You didn't comment on the sound popping/stuttering thing, can you replicate this?

comment:5 Changed 5 years ago by somaen

The sound popping/stuttering is probably related to the SDL-buffer issue
you mentioned in the sound issues bug report. I can't seem to remember
anything similar in my installation.

As for the flickering, could you describe it further?

Changed 5 years ago by misterhands

Attachment: normal.png added

comment:6 Changed 5 years ago by misterhands

I managed to take pics of this flickering thing.
Most of the time is spent looking like the "normal" pic, but roughly every 2-3 seconds, one frame that looks slightly different is displayed. See the "flicker" pic.
If you alternate between the 2 pics you'll see that flickering effect.

comment:7 Changed 5 years ago by somaen

Owner: set to somaen
Note: See TracTickets for help on using tickets.