Skip to content
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

[video_player] Remaining issues #58

Open
2 of 5 tasks
swift-kim opened this issue Apr 3, 2021 · 10 comments
Open
2 of 5 tasks

[video_player] Remaining issues #58

swift-kim opened this issue Apr 3, 2021 · 10 comments
Labels
bug Something isn't working

Comments

@swift-kim
Copy link
Member

swift-kim commented Apr 3, 2021

The 1.0.0 version of video_player (#48) has been merged but there are still problems to be fixed.

  • A video cannot be played on a TV emulator (only white screen). (analysis)
  • An exception occurs when the playback speed is changed just before a video ends.
  • A video doesn't repeat (even if setLooping is set) after the playback speed is changed.
  • seekTo doesn't work properly if the playback speed is not 1.0
  • Too many frames are lost (error message FlutterMarkExternalTextureFrameAvailable(204) > OnFrameAvailable fail)
@swift-kim
Copy link
Member Author

Discussions are going on in the flutter repo (https://github.com/flutter/flutter/issues?q=is%3Aissue+drm+video) to switch the video_player plugin implementation to use platform views (rather than Texture) to allow playing DRM contents on Android/macOS. Does it have something to do with our upcoming video hole approach, or do we still need a "hole" for the hardware decoder even if we use a platform view?

@xuelian-bai
Copy link

I think platform view is still implemented by texture now, DRM content could be supported by video hole solution.

@swift-kim
Copy link
Member Author

I think platform view is still implemented by texture now.

Need to check, but as far as I understand the technologies are not something that overlap with each other.

DRM content could be supported by video hole solution.

I didn't mean we would have to support playing DRM contents on Tizen. I just wanted to know if the platform view approach could effectively replace the hole approach.

@xuelian-bai
Copy link

https://flutter.dev/docs/development/platform-integration/platform-views
it's android implementation:

  1. Virtual display

Virtual displays renders the android.view.View instance to a texture.

you can check code in PlatformViewsController.java & VirtualDisplayController.java

  1. Hybrid composition:

Prior to Android 10, Hybrid composition copies each Flutter frame out of the graphic memory into main memory, and then copies it back to a GPU texture. In Android 10 or above, the graphics memory is copied twice. As this copy happens per frame, the performance of the entire Flutter UI may be impacted.

I don't know where is the coresponding code, but it seems to be not a solution of good performance

@swift-kim swift-kim added the bug Something isn't working label Jul 3, 2021
@renanmgs
Copy link

  • A video cannot be played on a TV emulator (only white screen) (analysis)

Any news on this?

@swift-kim
Copy link
Member Author

@renanmgs As far as I know, no.

@xuelian-bai Will the plus_player-based video_player_tizen plugin support TV emulator?

@xuelian-bai
Copy link

@swift-kim we need some time to confirm this

@xiaowei-guan
Copy link
Contributor

@renanmgs As far as I know, no.

@xuelian-bai Will the plus_player-based video_player_tizen plugin support TV emulator?

I created a Tizen 6.5 TV emulator, and tested video player plugin which based on plus player.
Play remote mp4 file and DRM successful, but we found setPlaybackSpeed fail, we need check all API.

@ale-russ-kabbee
Copy link

Is there any new update on this issue. I'm still unable to play video in TV emulator. @xiaowei-guan , how did you make it work. Can you tell me the exact procedure you followed ?

@swift-kim
Copy link
Member Author

https://pub.dev/packages/video_player_videohole can be used with TV emulators.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
None yet
Development

No branches or pull requests

5 participants