New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add many more helper methods to player #104
Conversation
…player # Conflicts: # lib/flutter_vlc_player.dart
added getTime, getPlaybackSpeed and getVolume methods. edited media player opening status to notify that the target url is loading.
fix various bug added casting feature
I've tried to add IOS implementation of this changes, but it's not clear to me how to do that. Also, since I've add many parameters to vlc initialize method, I've change that method to support naming parameter structure, so it's not compatible with the prev version of this package. Maybe this PR (after IOS implementation) should be considered as a major revision. Thanks. |
Nice work @alr2413 |
Big thanks for fixing it 👍 |
Can you point on @alr2413 which part fixes the android black screen issue? So I can quickly check that on my end as well. THanks in advance |
The part of code that was in "onSurfaceTextureAvailable" method, was moved to a Runnable closure. |
@alr2413 how can I see swift part not ready? |
See What? As I mentioned "This PR Only implemented and tested on Android." |
Thanks for your work @alr2413! We hope that somebody can help with the iOS part to make it complete. Also do you mind resolving all of the conflicts? |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I will do iOS Part..
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks for your work @alr2413! We hope that somebody can help with the iOS part to make it complete. Also do you mind resolving all of the conflicts?
As I mentioned, some changes are based on vlc convention (like "audioTrack" instead of "sound"). That's why I proposed to use major revision for the next release.
hey @alr2413 do you wanna to add me as a contributor to your repo of this fork? I can help resolve conflicts and complete iOS part |
@alr2413 I've checked in emulator, and the rotation doesn't work for me with the example app in the repo. You also tested with the example app? |
What do you mean "the rotation doesn't work"? |
Well, |
@csongorkeller Please hold tight. Im actively working on helping out @alr2413. Im working on his code right now... |
android seems like working. Good job @alr2413. But I have an issue with disposing the player. If I want to change the video, I dispose the player with the method you've implemented, but for the new player, I got a black screen without any playing. Do you have any idea what I'm doing wrong? |
Getting close on fixing casting on iOS, will have a update for this PR hopefully by tonight |
[DRAFT] WIP - Cast devices ios
@topilski that is not on the latest commit. you appear to behind. |
@solid-software This code is ready for merge. I have reviewed it, tested it, developed on it. |
@mitchross @alr2413 @amadeu01 thank you for your work guys! |
fix minor issue in android capture method added event dispatcher to ios cast device add/remove updated example code
fix spacing issue in readme
Ping @solid-software, |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Great job @alr2413 @mitchross - I'm blown away with the changes you guys have made!
I've added couple small comments/suggestions - please take a look and let me know what you think.
I think 4.0 would be a game changer - thanks again for your work on this!
android/src/main/java/software/solid/fluttervlcplayer/FlutterVideoView.java
Outdated
Show resolved
Hide resolved
android/src/main/java/software/solid/fluttervlcplayer/FlutterVideoView.java
Outdated
Show resolved
Hide resolved
android/src/main/java/software/solid/fluttervlcplayer/FlutterVideoView.java
Outdated
Show resolved
Hide resolved
Updated method docs
@solid-software I've done that. |
@solid-software After this PR is merged there is a few more clean up tasks I'll do in follow up PRs to migrate the Android Plugin to V2 https://flutter.dev/docs/development/packages-and-plugins/plugin-api-migration |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM - thanks @alr2413 @mitchross !
@solid-software, @mitchross |
I think the major issues still are: [A] the "player state change", when the widget is rebuilt which could be from something as simple as orientation change or calling setstate.
Desired state: Video player paused. [B] Not adhering to App lifecycle. Any video player should be auto paused when the phone screen is turned off. This plugin would infact start playing the video even when the video was paused. Needless to say, a playing video would continue playing. [C] Player doesnt respond well to player's widget resizing dynamically. I have an app that supports PIP and when i send a running video to PIP, there's a second or two delay before the video starts re-rendering. All this while, the audio is playing fine. Although not majorly observed, this happens when orientation change too. It looks like we're still missing something in the native implementations as the official vlc player doesnt have these issues. PS: You can run into these issues even with the example code. |
@pharshdev i'll take care of A,B,C with the Android 2.0 Plugin update migration |
@pharshdev , @mitchross |
This PR Only implemented and tested on Android.
Features:
Also, the example app is updated to show some of these changes.