JackboxUtility / JackboxUtility

An app to download patches and launch Jackbox games
https://jackboxutility.com/
GNU General Public License v3.0
73 stars 16 forks source link

Video Preview doesn't load video anymore (Since 1.4.0 update, auto updated from 1.3.0) #406

Open Merthan opened 2 months ago

Merthan commented 2 months ago

Previously the video preview worked as expected, now it just shows a blue loading bar at the bottom and then switches to the next image

image

This occured after updating from 1.3.0 to 1.4.0, which happened automatically.

I also created my own Pull Request and worked on my own version, so it's possible that this issue isn't important and only occurs because of me having previously ran my own version. The version that has the bug isn't the one I worked on though (mine didn't get updated/run after 1.4.0 released)

So this being because of that seems unlikely, unless e.g. certain things stored globally like settings caused this problem

I'm running Windows 11, 64bit, default Server.

AkiraArtuhaxis commented 2 months ago

This is intentional. Because of library updates, unfortunately videos are now not supported in the app. They're expected to be hidden soon, so only the carrousel of images will appear.

Merthan commented 2 months ago

I don't understand what you mean, what's the issue with the library? If the video files/sources are still available, why not find some workaround?

Or is there another reason to remove the videos (permanently I assume)?

AkiraArtuhaxis commented 2 months ago

The library that's used for the Utility to play the videos was likely updated and is now causing the Utility to crash when used in a new build of the app. The cause for it is unknown.

Merthan commented 2 months ago

I see, so you only meant temporarily the videos will be hidden while a fix for the library/Mediakit? is found

AkiraArtuhaxis commented 2 months ago

That temporarily is likely forever if a cause is not found (since the dev probably won't be able to work for the app for too much). But well, you never know. That's why the videos are remaining in the servers themselves while going to be hidden in the app. You can try it by yourself using this build, which was the last build before the video library was removed: https://github.com/JackboxUtility/JackboxUtility/releases/tag/1.3.7%2B2-beta-1722116489

Merthan commented 2 months ago

Thanks, so in theory replacing the library with another one would be fine?

I'm not sure if I'll be able to work on this honestly (I'm not too experienced with Flutter either), but maybe share some details in case anyone else also sees this issue and can help.

I assume the only requirements for the replacement/fix are :

Can you provide more information on these

Merthan commented 2 months ago

Apart from that, whats the reason for not continuing using the old version of the Video library

Incompatibility with other updated library versions etc?

So any fix for the incompatibility would also directly fix the video issue?

AkiraArtuhaxis commented 2 months ago

Just a small correction. After the video is finished, the video should loop, not scroll to the second item. This is to mimic how it is in the Party Packs. The screenshots only exist because they were the only thing before the videos, and because now they're relevant due to the videos not working anymore. Also keep in mind that the video player has a scrollbar and that the video can be paused by either clicking the pause button or clicking the video itself. All of the videos, along with the rest of the data, come from each "Server" of the Utility. You can find the English server here: https://github.com/AkiraArtuhaxis/JackboxUtility-Server-en The videos themselves are located in "assets/game_images/GameName/GameName.mp4". Don't know anything about the classes thing since I'm not a programmer. And about your last comment, the only reason is beacuse the video library now makes the Utility crash when loading any video. There's not much to it. I don't know if it is due to incompatibility with other libraries or because the library itself is broken. @AlexisL61 can give you more details on the matter.

AlexisL61 commented 2 months ago

Apart from that, whats the reason for not continuing using the old version of the Video library

Incompatibility with other updated library versions etc?

So any fix for the incompatibility would also directly fix the video issue?

I started writing something about it here : https://alexisl.fr/the-jackbox-utilitys-state-or-why-you-should-think-twice-before-adding-a-library-2/ It's still WIP so you may find typo and sentences that need to be reformulated.

AlexisL61 commented 2 months ago

I will create another issue to hide the videos that can't be rendered anymore.

Actually what happened with the library in the latest version is that it made the app crashed when you reach the game list or the game info. It also only happens on release mode, not in debug. In case you find a workaround, feel free to create a pull request. I can help you on this but I will not be able to find a workaround myself as I don't have a windows computer with me right now.

Merthan commented 2 months ago

@AlexisL61

Based on what you said I think I have a solution, if there is no other problem or reason I don't know about.

Why not simply use older Visual Studio Build Tools or an older Visual Studio Version? I'm not an expert on this (never used Visual Studio), but by what I read it seems very possible.

The fix would then just be

  1. Find the last VS Version or build tools where the project came out fine
  2. Download that, maybe from here but not sure
  3. Undo the commits removing Mediakit, before that maybe create a build with the old build tools+last version with mediakit to quickly test (this you can also send to me if you can't test the build)

Considerations for the future:

Either way, I think if there is no problem with these steps this is probably the right way to go. Even if Flutter becomes incompatible that's a problem that can be handled in the future while in the meantime everyone still has access to the (in my view, very important) Videos.

In the meantime the Mediakit etc will probably also get updates, perhaps fixing all of the issues that you encountered with the DLLs etc.

So yeah, let me know what you think.

AlexisL61 commented 2 months ago

Sadly, I don't think it is possible as we are using Github actions to build the executables and I don't have the control to modify the already installed Visual Studio.

But, we can think the other way around :

Merthan commented 2 months ago

Sounds good for now, comment here if you face any issues

Whats the state on controller support #248 ? I can see if I can make any progress there. Was anything tried or do I just start looking for possible libraries and test them?

The gamepads library seems good, would have also been the one I would have gone for when looking quickly

AlexisL61 commented 2 months ago

I didn't start controller support for now, so it's all for you! If you need any help to add it or looking through the Jackbox Utility codebase, I am here!

Merthan commented 2 months ago

Alright looks more complex than I thought and won't have much time for a while, no promises but I wouldn't expect me to get something working before October :/

AlexisL61 commented 2 months ago

Alright looks more complex than I thought and won't have much time for a while, no promises but I wouldn't expect me to get something working before October :/

No problem, that's still really kind of you to help us on this project :)

AlexisL61 commented 2 months ago

The videos should now not be visible anymore on startup in the latest version