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

[Feature Request] Extend video information detection, add a tag category and automatic tagging #53

Open
TedlyTheTalker opened this issue Nov 6, 2020 · 2 comments
Assignees
Labels
enhancement New feature or request
Projects

Comments

@TedlyTheTalker
Copy link

I have files of all kinds of resolutions, framerates, extensions, and bitrates in stereo 3D, VR and typical 2D files. I may have some duplicates across types that I want to keep, and some low-resolution duplicates that I might opt to remove.

Some information regarding the video files are already detected. Ideally, this information can be used to generate tags for a new category. I think this information is sufficiently different than the current categories of Actors, Website, and Tags to warrant a new category of tags.

Captured information should minimally include the resolution, framerate, duration, and file size.
Other highly useful information: video bitrate, codec, container/extension, display aspect ratio
Interesting, less broadly useful information: encoder profile/quality information, color space

Ideally a user can adjust automatic tagging based on the detects. I might want 1280x720p and 1920x1080p files to be tagged as HD, whereas another use might want the 1280x720p file tagged as “HD” and the 1920x1080p file as “FHD.”

Most users probably only care about files that have a framerate above the normal 30FPS tagged as “HFR”, but others may want 23.976 and 24 FPS files tagged as “24p”, 30 FPS files tagged “30p”, etc.

Display aspect ratio can help indicate a VR file, as the video stream resolution isn’t generally atypical.

The other video stream and file characteristics are primarily useful for sorting, understanding the content from the scene page, and duplicate detection and distinction.

Manual tagging in this category can be useful to distinguish other types of information that isn’t necessarily a great fit in with the rest of the tags.

Being able to search and sort the Scene list with all of this information, in addition to sites, actors (actresses) and tags would be very powerful. Perhaps a checkbox to enable viewing the whole category (could be disabled by default) to the scene page would be ideal.

@TedlyTheTalker TedlyTheTalker changed the title Extend video information detection, add a tag category and automatic tagging [Feature Request] Extend video information detection, add a tag category and automatic tagging Nov 6, 2020
@cooperdk
Copy link
Owner

This is something that I've been thinking about too, it has to be thought thru carefully since all the strings that can be appended to the string must be carried over to the "garbage string remover" which runs when scanning TpDB for scenes.

YAPO already stores resolution, bitrate, duration, framerate, file size and codec in the current database. It uses ffprobe to find information about the video file, and this can be used to get information about encoder profile and colorspace (pix_fmt; not always reported though). This way, it is not impossible to get a report on low guality scenes that can then be marked as "better quality wanted".

Take a look at videos/ffmpeg_process.py line 406-441 in the develop branch.
YAPO uses a ffprobe JSON output to get the information within this function.
Here, it's even possible to get information about the used encoder, compatibility, encode date/time, audio channels, aspect ratio (which looks odd if it isn't a true ratio),

YAPO is not going to support automatic searching for pirated content, but that doesn't mean that you can't get a report about what scenes are wanted in better quality.

It's a good idea to let YAPO auto-tag movies with a certain resolution and framerate. In fact, it will already do that, but the "lazy" way, and only when scraping scene data internally (not with the TpDB scanner): If you create a tag named "720p" with the alias "HD", it will tag all scenes that have "720p" in the filename with that tag.
This is not ideal because that tag usually does not appear on legally downloaded titles.

I am going to start by collecting more scene information and figure out how to implement this as usable search parameters. I agree it should be possible to sort by fx "low qual files" or "files in SD or less".

@cooperdk cooperdk added this to Incoming changes in To-do list via automation Nov 16, 2020
@cooperdk cooperdk added the enhancement New feature or request label Nov 16, 2020
@cooperdk cooperdk moved this from Incoming changes to Medium priority in To-do list Nov 16, 2020
@cooperdk
Copy link
Owner

Currently, YAPO is able to add the size format to a video title/filename. I am going to implement further possibilities, and I will also include in the UI a line to display how many kilobytes/kilobits per second a video is encoded with (average).

Framerate is now rounded to nearest whole number so a 29.9 fps video is registered as 30fps. YAPO will fx be able to tag a video as "HSV" if it is at or above 50 fps.
I am going to enable settings to enable all these auto-tagging options later on, but in the video scene view, YAPO will still be able to display if a video is HS or VR (fx double width than height).

You're considering the additional of a category set based on technical data. This makes sense because some people are interested in this data.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
To-do list
  
Medium priority
Development

No branches or pull requests

2 participants