-
Notifications
You must be signed in to change notification settings - Fork 9.7k
[video_player] Update texture on seekTo #2397
Conversation
|
@ened PTAL |
|
@cyanglaz do you have time for a quick review? This is a very simple change that would fix a bug present since the last flutter stable release. |
|
Can you please add more details on the nature of the change and the reasoning behind it to the PR description? |
|
Done. Hopefully it does make more sense now. |
|
I'm not sure I fully understand flutter/engine@6a90b7f does it mean we need to call cc @cbracken who landed flutter/engine#11524 and probably better understands this. |
|
CADisplayLink here: plugins/packages/video_player/video_player/ios/Classes/FLTVideoPlayerPlugin.m Lines 20 to 31 in f43e418
|
|
I see, thanks. |
|
I don't see an obvious way to test this, @collinjackson do you have any suggestion? |
|
@amirh can we release this without a test? I mean I'd really love to have one but I really don't know how as the simulator would not even show an image. |
|
We need some test, how about an XCTest that mocks the texture registry, invokes (we'll have to mock a few other objects to be able to deliver a mock texture registry, I may be missing something but it seems reasonably doable) |
|
@cbenhagen I recently set up a similar test (#2445) mentioned by @amirh above in the webview plugin. You can use it as a reference. |
|
I'm seeing that the ios version of video_player does not perform an update (and therefore a triggered build) on "seekTo()" when the video is paused. (but does update when playing) Android works for both paused videos and running videos. Is that bug caused by this issue? |
|
I really need this merged. The newest version of video_player still doesn't fix this issue. |
|
Hi @jpiabrantes I think some changes in the repo make this PR breaking. The |
|
Closing in favor of #2758 |
Description
Explicitly mark texture frame available on
seekTo. This is necessairy since flutter/engine@6a90b7f has changed the external texture data flow from a producer-consumer model. Now ios_external_texture_gl caches previous opengl texture, if no new frame are available, it does not execute thecopyPixelBuffermethod, just uses cached opengl texture to draw.Related Issues
Fixes flutter/flutter#43567
Checklist
Before you create this PR confirm that it meets all requirements listed below by checking the relevant checkboxes (
[x]). This will ensure a smooth and quick review process.///).flutter analyze) does not report any problems on my PR.Breaking Change
Does your PR require plugin users to manually update their apps to accommodate your change?