I have an SD video that ffmpeg reports correctly as Stream #0:0[0x100]: Video: mpeg2video (Main) ( / 0x0002), yuv420p(tv, top first), 720x480 [SAR 32:27 DAR 16:9], 29.97 fps, 29.97 tbr, 90k tbn, 59.94 tbc
The trouble is on the Roku Ultra 4800x this does not zoom to full screen it stays squished in the 4:3 window
The video plays fine on a Roku 3920x. I can provide screen shots if that would help
I am trying to play this via roVideoPlayer. Is some special processing requiried. I did try with DrawScaledRect() and I still can't get a full screen. I am reluctant to try that because as I wrote it works ok on another box.
If it is the new 2020 Roku ultra (and some newer Roku TVs), There is an issue with the graphic drivers that does not handle SD screens correctly in non Scenegraph channels. If you can, switch to using Scenegraph video node and see if that plays the content correctly
Yes it it is the new Ultra. Unfortunately I believe I need roScreen for 2DGraphics for the app I am working on since I render a lot of full screen bitmaps and I need sub second response which I believe is an issue with roSGScreen.
Since the video is SD resolution equivalent of ~ 640x 480 or 720x480, I am not sure if the video player is trying to create video surface that is the same size as the video content and as I mentioned, newer devices do not behave correctly with these resolutions.
Have you tried SetDestinationRect() or SetMaxVideoDecodeResolution()
I would still try setting up a SG video player and see if the video plays correctly there. If that works and you are not doing image overlay on the video, I would spin up the SG instance for the video then fall back to roscreen when the video finishes.
what is your use case that you don't think SG will be performant with you images?
Unfortunately I'm doing lots of OSD for comskip, live tv channel info and switching and program details.
I have tried many combinations of SetDestinationRect() and have moved it around the screen but I have never been able to figure out the negative numbers and width etc to zoom it full screen, There is also no API call that tells me what the Video res is so that I could do this for these files in particular. Typical letterbox SD is zoomed, this type is more like it is squeezed into 4:3 dimension
SetMaxVIdeoDecodeResolution() didn't change anything there may be a combination I am missing.
Actually it seems all SD is in a 4:3 window in the roScreen so I would need to see how to move and zoom the 4:3 window
The goal in my app would be to give an option to stretch letterboxed 4:3 to be full screen. I will see if that works in the other box.