Prevent screen from turning white on fullscreen toggle (while video is stopped)

mc-lemons's icon

Hi all,

If I have my video paused/stopped, and then I toggle from fullscreen to a smaller window or from a smaller window to fullscreen, upon transition, the frame that was displayed before the toggle is gone and I am left with a blank screen. Is there some attribute that can be set to maybe "refresh" the screen after a toggle?

I am running video with this route:

jit.qt.movie > jit.gl.slab > jit.gl.videoplane > jit.window

I forgot to mention this is a M4L patch, I just never get many responses when posting in that section.

Thanks!
-Michael

MJ's icon

why dont you let it stay in full screen ?

mc-lemons's icon

Well, I was asking more in hypothetical way where I would need to toggle b/w fullscreen and a window at any point in a videos playback (at a moment when I had it stopped). In actuality, I do not need to be able to do this exactly. However, in my performance, I have another program running on my display that I need visible for like the first 30 seconds of loading a video. After that, I turn on the floating window on that display, and send it a fullscreen message, and upon turning fullscreen, the frame that was displaying previously, is no longer there and I have a blank screen. I was wondering if there is a way to prevent this from happening, by maybe some sort of refresh attribute that needs to be set, or is this just unavoidable?

dtr's icon

just send one bang to jit.qt.movie after toggling fullscreen

mc-lemons's icon

dtr,

Thanks for the reply. I tried sending a bang and I get nothing. I didn't mention this, but I have qmetro running at all times in my patch, so jit.qt.movie should always be receiving bangs.

I set up a number box to display the current frame and I noticed something interesting. Also, remember that the movie isn't playing when I toggle b/w fullscreen. But what I noticed is that after a toggle if i send a message "frame #" and I use any frame other than the current frame (that the number box is displaying), that frame will then be displayed. However, when I send the message "frame #", with the # = current frame, nothing changes, just left with a white screen.

So my work around is that when the jit.window receives a fullscreen on/off message, the patch checks if the movie is playing (because sometimes I do toggle when it is playing), and if not, it will send jit.qt.movie a "frame {current frame # + 1)" message immediately followed by a "frame {current frame #}" message, so that it is on the same frame it was right before it was toggled. Seems unnecessary that I have to do this, but it does work well.

I have it set up to do something similar when the device is loaded because my video doesn't display then either. (maybe due to the fact that I have jit.qt.movie with the attribute @autostart 0?)

Or maybe i screwed something up else up in my patch. Here it is if anybody is willing to take a look. Sorry that its not the most organized.

Max Patch
Copy patch and select New From Clipboard in Max.