SuRGeoNix / Flyleaf

Media Player .NET Library for WinUI 3/ WPF/WinForms (based on FFmpeg/DirectX)
GNU Lesser General Public License v3.0
687 stars 92 forks source link

About ShowFramePrev #445

Closed artmscn closed 3 months ago

artmscn commented 3 months ago

Dear sir, thank you for this great projet. I am currently using flyleaf and working with an instant video replay system on the program, when i click some button, it start 4 flyleafhosts and play 4 videos which cut from from cameras.

when i using showframenext, it works very well. but when i trying to use ShowFramePrev same time on each player.. it become a super delay.

i have researched all the issues about this.. but did not found any helpful solutions. maybe seekbackward works. but in my case i need a frame by frame backward.. so is that possible to buffer it or using some switch or function to accelate the ShowFramePrev? (tried zerocopy and duration.buffertime but seems not working)

Any suggestion will be appreciated. Thank you

SuRGeoNix commented 3 months ago

HI @artmscn, this is a combination of two issues:-

1) FFmpeg bugs with HEVC and other formats that will fail to seek backwards properly 2) Flyleaf's packet/frame queue that currently does not support backwards buffering

To resolve this will require a re-design of the core of flyleaf which is already included in v4 but I'm afraid it will not be resolved with v3

artmscn commented 3 months ago

ok Thank you very much sir!