thunder-app / thunder

Thunder - An open-source cross-platform Lemmy client for iOS and Android built with Flutter
https://thunderapp.dev
GNU Affero General Public License v3.0
766 stars 66 forks source link

Set full screen video resolution to original #1382

Open wadamT opened 2 months ago

wadamT commented 2 months ago

Bug Description

When you play video in full screen, it is now cropped in to fill the screen, meaning some of top and bottom contents are lost like subtitles. full_screen

Expected Behaviour

Play videos at their normal resolution not cropped in.

Steps to Reproduce

  1. Play a video
  2. Go full screen
  3. See error

Additional Context

No response

App Version

v.0.4.0-3

Device

Samsung Galaxy J6

OS

Android 10

hjiangsu commented 2 months ago

Thanks for the report! Could you provide an example post that I can use to reproduce this issue? Thanks!

wadamT commented 2 months ago

The screenshot I attached is from this post. https://ani.social/post/3803794

micahmo commented 2 months ago

I can confirm this issue from my initial testing as well! The problem is that the video needs be constrained to the size of the screen, which, for a 16:9 video on a wider display, means you should see pillarboxing. Right now, videos are being extended so that sides of the video extend to the sides of the display, and information is lost at the top and bottom.

micahmo commented 2 months ago

Comment for devs: it looks like this is a known issue with this package.

https://github.com/sarbagyastha/youtube_player_flutter/issues/620 https://github.com/sarbagyastha/youtube_player_flutter/issues/621

There are a couple workarounds, so we might be able to use someone's fork or maintain ourselves.

hjiangsu commented 2 months ago

Just a thought: do we know if the same issue exists with the normal video player?

If this issue isn't present on the normal video player, perhaps we can migrate away from using the youtube video player package, and use something like https://pub.dev/packages/youtube_explode_dart to get the stream link, and play it with the normal video player.

micahmo commented 2 months ago

That's a good thought! Unfortunately I'm having a hard time finding a post with both a non-YouTube video that our player successfully plays! 😆 But if you can find one, I'll test it on Android.

wadamT commented 2 months ago

This post non-YT video plays for me.

https://ani.social/post/2992091

On May 31, 2024 3:35:17 AM UTC, Micah Morrison @.***> wrote:

That's a good thought! Unfortunately I'm having a hard time finding a post with both a non-YouTube video that our player successfully plays! 😆 But if you can find one, I'll test it on Android.

-- Reply to this email directly or view it on GitHub: https://github.com/thunder-app/thunder/issues/1382#issuecomment-2141173793 You are receiving this because you authored the thread.

Message ID: @.***>

micahmo commented 2 months ago

This post non-YT video plays for me. https://ani.social/post/2992091

Thank you!!

It looks like the standard video player does support pillarboxing in landscape mode, but there are some quirks.

Here's a video demonstrating these things.

https://github.com/thunder-app/thunder/assets/7417301/cf564a64-aae6-4b45-a701-d0a12886c60e

If we can get the behavior to be a little more consistent and predictable, then I agree we could reuse it for YouTube videos.