nova-video-player / aos-AVP

NOVA opeN sOurce Video plAyer: main repository to build them all
Apache License 2.0
3.34k stars 198 forks source link

[FEAT]: Saving the current frame in the original resolution #1255

Open Korb opened 1 month ago

Korb commented 1 month ago

Description

I quite often take screenshots of the videos I watch. These frames complement my text entries, reviews, reviews of the films and TV series I watch, they serve for my publications and personal messages when I share interesting moments with subscribers or interlocutors, etc. Obviously, for this I use the built-in OS function for creating screenshots. There are several disadvantages to this:

  1. All screenshots are placed in one folder, regardless of what exactly was played and from what location.
  2. The names of these screenshots provide information only about the date and time the screenshot was taken.
  3. In general, these screenshots require cropping, since most often the aspect ratio of the screen and the video recording do not match.
  4. The resolution of these screenshots does not match the resolution of the original video. Any change to the original resolution distorts the image. Especially when you consider that, firstly, screenshots on my smartphone with Android 14 are saved in JPEG format with not the highest level of quality, and secondly, they will then have to be re-encoded to trim the black bars.

I propose

...to add to the player a function to save the current frame in the original resolution in PNG format with the name of the video-file + timestamp. And place this image in the folder with the video being played.

Additional information

No response

phhusson commented 1 month ago

That's an interesting usage, rather reasonable. But I doubt we'll have the time to implement it, and I think it can be rather annoying to develop on Android.

Still for reference, some questions:

Korb commented 1 month ago
  1. Smartphone. Or a tablet, if I ever get one.
  2. Exactly - only the content itself, without subtitles and player interface elements.
  3. Convert to 24-bit color.
  4. I will only use this function in pause mode. Therefore, whether it is a button in the upper-right part of the screen, or an item in the burger menu, or a three-finger press, it doesn’t matter to me.