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

QP file output #388

Open
tormento opened this issue Apr 10, 2024 · 4 comments
Open

QP file output #388

tormento opened this issue Apr 10, 2024 · 4 comments
Labels
Milestone

Comments

@tormento
Copy link

tormento commented Apr 10, 2024

x265 (and other software) accepts a .qp file to force a frame type to be applied to a certain frame.

An example is:

0 I -1
1640 I -1
3789 I -1
17191 I -1
31784 I -1
33927 I -1

to have proper scene change cuts.

Here you can find the syntax.

It can be derived by chapters but it's almost of no use when wanting a clean cut frame per each scene.

Would you mind to add that kind of output?

@Breakthrough
Copy link
Owner

Thanks, this falls under some of the other open issues to expand on output formats. I think we should add a new command like export-scenes that is dedicated for this purpose, so that the cuts can be saved in various formats. Updated #344 to include a link to this issue.

I would imagine the command to look something like export-scenes -o "cuts.qp" and have the format auto-detected from extension where possible, or explicitly specified with another flag. We could also allow specifying export-scenes several times to generate the output in different formats.

@tormento
Copy link
Author

Thanks, do you have any ETA?

@Breakthrough
Copy link
Owner

Breakthrough commented Apr 18, 2024

Unfortunately no ETA at this time, but in v0.6.3 you can now generate a list of cuts as frame numbers instead of timecodes with a config file. To do this, you can add the following to a config file:

[list-scenes]
cut-format = frames

And then use the list-scenes command to generate a CSV file, the first row will be the frames that you need to add I frames for. So the row would contain the following from your example:

1640,3789,17191,31784,33927

You might be able to wrangle that into a QP file with some bash magic or write a small Python script. If you're using the Python API, the detect function should already return the info you need.

@tormento
Copy link
Author

Excel can do magic tricks ;)

@Breakthrough Breakthrough added this to the v0.7 milestone Apr 20, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

2 participants