-
Notifications
You must be signed in to change notification settings - Fork 129
Feature/pype 754 review burnin filtering #103
Conversation
…rguments in validate_value_by_regexes
…g profile when more than one profile was filtered
…ch representation not per instance
"New representation tags: `{}`".format(new_repre["tags"]) | ||
) | ||
|
||
# # QUESTION Why the hell we were adding tags to families? |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Who knows why we did this?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
no idea to be honest. I"m afraid it might be rubish from the first implementation. Sheck if it's used anywhere and get rid of it.
) | ||
|
||
elif temp_data["without_handles"]: | ||
# QUESTION Shall we change this to use filter: |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This is not required, but it would be nice to have :)
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
If you have tested it and it worked for you then I am up for it. I would be better to have frame based workflow rather then seconds
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Tested, but not all cases. I'll rather create new issue for future PR.
ffmpeg_input_args.append("-y") | ||
|
||
if temp_data["without_handles"]: | ||
# NOTE used `-frames:v` instead of `-t` - should work the same way |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This change is not tested!!!
return audio_in_args, audio_filters, audio_out_args | ||
|
||
for audio in audio_inputs: | ||
# NOTE modified, always was expected "frameStartFtrack" which is |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Audio inputs always expected "frameStartFtrack" key in instance. I think it's not OK...
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
definitely not ok.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
this is just (frame_start - handle_start) as far as I know
# Need to merge audio if there are more than 1 input. | ||
if len(audio_inputs) > 1: | ||
audio_out_args.append("-filter_complex amerge") | ||
audio_out_args.append("-ac {}".format(len(audio_inputs))) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Is this ok? I've changed from "-ac 2"
to "-ac {}".format(len(audio_inputs))
by FFmpeg documentation https://ffmpeg.org/ffmpeg-all.html#Audio-Options
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Definitely good idea to have this procedural. Not that we are using somewhere more then to channels per input. Well is this actually reflecting 2 as channels or input of files? If the audio_inputs
is list of files that this is false value. It should be run trough ffprobe to check channels.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
audio_args
require more changes than this. I would like to make those changes in different PR since audio is not used right now, I don't know how it should work and it would take a long time to find out.
ffmpeg_audio_filters.extend(audio_filters) | ||
ffmpeg_output_args.extend(audio_out_args) | ||
|
||
# QUESTION what if audio is shoter than video? |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I'm not sure if -shortest
should be used here. I would expect to force video duration, maybe?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I"d say that audio should never dictate the video length. Not in our usage. However we can certainly have shorter audio and it doesn't always start at 0. For example if animator has to extend a shot in Maya, but doesn't get new extended audio, the result should match the Maya timeline exactly.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
FIXED: Found another approach to this with setting "-frames {video length}"
argument (hopefully works)
|
||
return filtered_outputs | ||
|
||
def legacy_process(self, instance): |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
'ExtractReview.legacy_process' is too complex (42)
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Some files could not be reviewed due to errors:
Traceback (most recent call last):
Traceback (most recent call last): File "/home/linters/.local/bin/flake8", line 11, in sys.exit(main()) File "/home/linters/.local/lib/python3.6/site-packages/flake8/main/cli.py", line 18, in main app.run(argv) File "/home/linters/.local/lib/python3.6/site-packages/flake8/main/application.py", line 393, in run self._run(argv) File "/home/linters/.local/lib/python3.6/site-packages/flake8/main/application.py", line 381, in _run self.run_checks() File "/home/linters/.local/lib/python3.6/site-packages/flake8/main/application.py", line 300, in run_checks self.file_checker_manager.run() File "/home/linters/.local/lib/python3.6/site-packages/flake8/checker.py", line 331, in run self.run_serial() File "/home/linters/.local/lib/python3.6/site-packages/flake8/checker.py", line 315, in run_serial checker.run_checks() File "/home/linters/.local/lib/python3.6/site-packages/flake8/checker.py", line 598, in run_checks self.run_ast_checks() File "/home/linters/.local/lib/python3.6/site-packages/flake8/checker.py", line 502, in run_ast_checks for (line_number, offset, text, check) in runner: File "/home/linters/.local/lib/python3.6/site-packages/flake8_django/checker.py", line 56, in run parser.visit(self.tree) File "/usr/lib/python3.6/ast.py", line 253, in visit return visitor(node) File "/usr/lib/python3.6/ast.py", line 261, in generic_visit self.visit(item) File "/home/linters/.local/lib/python3.6/site-packages/flake8_django/checker.py", line 39, in visit_ClassDef self.capture_issues_visitor('ClassDef', node) File "/home/linters/.local/lib/python3.6/site-packages/flake8_django/checker.py", line 33, in capture_issues_visitor self.generic_visit(node) File "/usr/lib/python3.6/ast.py", line 263, in generic_visit self.visit(value) File "/home/linters/.local/lib/python3.6/site-packages/flake8_django/checker.py", line 36, in visit_Call self.capture_issues_visitor('Call', node) File "/home/linters/.local/lib/python3.6/site-packages/flake8_django/checker.py", line 30, in capture_issues_visitor issues = checker.run(node) File "/home/linters/.local/lib/python3.6/site-packages/flake8_django/checkers/render.py", line 22, in run if isinstance(arg, ast.Call) and arg.func.id == 'locals': AttributeError: 'Attribute' object has no attribute 'id'
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Some files could not be reviewed due to errors:
Traceback (most recent call last):
Traceback (most recent call last): File "/home/linters/.local/bin/flake8", line 11, in sys.exit(main()) File "/home/linters/.local/lib/python3.6/site-packages/flake8/main/cli.py", line 18, in main app.run(argv) File "/home/linters/.local/lib/python3.6/site-packages/flake8/main/application.py", line 393, in run self._run(argv) File "/home/linters/.local/lib/python3.6/site-packages/flake8/main/application.py", line 381, in _run self.run_checks() File "/home/linters/.local/lib/python3.6/site-packages/flake8/main/application.py", line 300, in run_checks self.file_checker_manager.run() File "/home/linters/.local/lib/python3.6/site-packages/flake8/checker.py", line 331, in run self.run_serial() File "/home/linters/.local/lib/python3.6/site-packages/flake8/checker.py", line 315, in run_serial checker.run_checks() File "/home/linters/.local/lib/python3.6/site-packages/flake8/checker.py", line 598, in run_checks self.run_ast_checks() File "/home/linters/.local/lib/python3.6/site-packages/flake8/checker.py", line 502, in run_ast_checks for (line_number, offset, text, check) in runner: File "/home/linters/.local/lib/python3.6/site-packages/flake8_django/checker.py", line 56, in run parser.visit(self.tree) File "/usr/lib/python3.6/ast.py", line 253, in visit return visitor(node) File "/usr/lib/python3.6/ast.py", line 261, in generic_visit self.visit(item) File "/home/linters/.local/lib/python3.6/site-packages/flake8_django/checker.py", line 39, in visit_ClassDef self.capture_issues_visitor('ClassDef', node) File "/home/linters/.local/lib/python3.6/site-packages/flake8_django/checker.py", line 33, in capture_issues_visitor self.generic_visit(node) File "/usr/lib/python3.6/ast.py", line 263, in generic_visit self.visit(value) File "/home/linters/.local/lib/python3.6/site-packages/flake8_django/checker.py", line 36, in visit_Call self.capture_issues_visitor('Call', node) File "/home/linters/.local/lib/python3.6/site-packages/flake8_django/checker.py", line 30, in capture_issues_visitor issues = checker.run(node) File "/home/linters/.local/lib/python3.6/site-packages/flake8_django/checkers/render.py", line 22, in run if isinstance(arg, ast.Call) and arg.func.id == 'locals': AttributeError: 'Attribute' object has no attribute 'id'
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Some files could not be reviewed due to errors:
Traceback (most recent call last):
Traceback (most recent call last): File "/home/linters/.local/bin/flake8", line 11, in sys.exit(main()) File "/home/linters/.local/lib/python3.6/site-packages/flake8/main/cli.py", line 18, in main app.run(argv) File "/home/linters/.local/lib/python3.6/site-packages/flake8/main/application.py", line 393, in run self._run(argv) File "/home/linters/.local/lib/python3.6/site-packages/flake8/main/application.py", line 381, in _run self.run_checks() File "/home/linters/.local/lib/python3.6/site-packages/flake8/main/application.py", line 300, in run_checks self.file_checker_manager.run() File "/home/linters/.local/lib/python3.6/site-packages/flake8/checker.py", line 331, in run self.run_serial() File "/home/linters/.local/lib/python3.6/site-packages/flake8/checker.py", line 315, in run_serial checker.run_checks() File "/home/linters/.local/lib/python3.6/site-packages/flake8/checker.py", line 598, in run_checks self.run_ast_checks() File "/home/linters/.local/lib/python3.6/site-packages/flake8/checker.py", line 502, in run_ast_checks for (line_number, offset, text, check) in runner: File "/home/linters/.local/lib/python3.6/site-packages/flake8_django/checker.py", line 56, in run parser.visit(self.tree) File "/usr/lib/python3.6/ast.py", line 253, in visit return visitor(node) File "/usr/lib/python3.6/ast.py", line 261, in generic_visit self.visit(item) File "/home/linters/.local/lib/python3.6/site-packages/flake8_django/checker.py", line 39, in visit_ClassDef self.capture_issues_visitor('ClassDef', node) File "/home/linters/.local/lib/python3.6/site-packages/flake8_django/checker.py", line 33, in capture_issues_visitor self.generic_visit(node) File "/usr/lib/python3.6/ast.py", line 263, in generic_visit self.visit(value) File "/home/linters/.local/lib/python3.6/site-packages/flake8_django/checker.py", line 36, in visit_Call self.capture_issues_visitor('Call', node) File "/home/linters/.local/lib/python3.6/site-packages/flake8_django/checker.py", line 30, in capture_issues_visitor issues = checker.run(node) File "/home/linters/.local/lib/python3.6/site-packages/flake8_django/checkers/render.py", line 22, in run if isinstance(arg, ast.Call) and arg.func.id == 'locals': AttributeError: 'Attribute' object has no attribute 'id'
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Some files could not be reviewed due to errors:
Traceback (most recent call last):
Traceback (most recent call last): File "/home/linters/.local/bin/flake8", line 11, in sys.exit(main()) File "/home/linters/.local/lib/python3.6/site-packages/flake8/main/cli.py", line 18, in main app.run(argv) File "/home/linters/.local/lib/python3.6/site-packages/flake8/main/application.py", line 393, in run self._run(argv) File "/home/linters/.local/lib/python3.6/site-packages/flake8/main/application.py", line 381, in _run self.run_checks() File "/home/linters/.local/lib/python3.6/site-packages/flake8/main/application.py", line 300, in run_checks self.file_checker_manager.run() File "/home/linters/.local/lib/python3.6/site-packages/flake8/checker.py", line 331, in run self.run_serial() File "/home/linters/.local/lib/python3.6/site-packages/flake8/checker.py", line 315, in run_serial checker.run_checks() File "/home/linters/.local/lib/python3.6/site-packages/flake8/checker.py", line 598, in run_checks self.run_ast_checks() File "/home/linters/.local/lib/python3.6/site-packages/flake8/checker.py", line 502, in run_ast_checks for (line_number, offset, text, check) in runner: File "/home/linters/.local/lib/python3.6/site-packages/flake8_django/checker.py", line 56, in run parser.visit(self.tree) File "/usr/lib/python3.6/ast.py", line 253, in visit return visitor(node) File "/usr/lib/python3.6/ast.py", line 261, in generic_visit self.visit(item) File "/home/linters/.local/lib/python3.6/site-packages/flake8_django/checker.py", line 39, in visit_ClassDef self.capture_issues_visitor('ClassDef', node) File "/home/linters/.local/lib/python3.6/site-packages/flake8_django/checker.py", line 33, in capture_issues_visitor self.generic_visit(node) File "/usr/lib/python3.6/ast.py", line 263, in generic_visit self.visit(value) File "/home/linters/.local/lib/python3.6/site-packages/flake8_django/checker.py", line 36, in visit_Call self.capture_issues_visitor('Call', node) File "/home/linters/.local/lib/python3.6/site-packages/flake8_django/checker.py", line 30, in capture_issues_visitor issues = checker.run(node) File "/home/linters/.local/lib/python3.6/site-packages/flake8_django/checkers/render.py", line 22, in run if isinstance(arg, ast.Call) and arg.func.id == 'locals': AttributeError: 'Attribute' object has no attribute 'id'
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Some files could not be reviewed due to errors:
Traceback (most recent call last):
Traceback (most recent call last): File "/home/linters/.local/bin/flake8", line 11, in sys.exit(main()) File "/home/linters/.local/lib/python3.6/site-packages/flake8/main/cli.py", line 18, in main app.run(argv) File "/home/linters/.local/lib/python3.6/site-packages/flake8/main/application.py", line 393, in run self._run(argv) File "/home/linters/.local/lib/python3.6/site-packages/flake8/main/application.py", line 381, in _run self.run_checks() File "/home/linters/.local/lib/python3.6/site-packages/flake8/main/application.py", line 300, in run_checks self.file_checker_manager.run() File "/home/linters/.local/lib/python3.6/site-packages/flake8/checker.py", line 331, in run self.run_serial() File "/home/linters/.local/lib/python3.6/site-packages/flake8/checker.py", line 315, in run_serial checker.run_checks() File "/home/linters/.local/lib/python3.6/site-packages/flake8/checker.py", line 598, in run_checks self.run_ast_checks() File "/home/linters/.local/lib/python3.6/site-packages/flake8/checker.py", line 502, in run_ast_checks for (line_number, offset, text, check) in runner: File "/home/linters/.local/lib/python3.6/site-packages/flake8_django/checker.py", line 56, in run parser.visit(self.tree) File "/usr/lib/python3.6/ast.py", line 253, in visit return visitor(node) File "/usr/lib/python3.6/ast.py", line 261, in generic_visit self.visit(item) File "/home/linters/.local/lib/python3.6/site-packages/flake8_django/checker.py", line 39, in visit_ClassDef self.capture_issues_visitor('ClassDef', node) File "/home/linters/.local/lib/python3.6/site-packages/flake8_django/checker.py", line 33, in capture_issues_visitor self.generic_visit(node) File "/usr/lib/python3.6/ast.py", line 263, in generic_visit self.visit(value) File "/home/linters/.local/lib/python3.6/site-packages/flake8_django/checker.py", line 36, in visit_Call self.capture_issues_visitor('Call', node) File "/home/linters/.local/lib/python3.6/site-packages/flake8_django/checker.py", line 30, in capture_issues_visitor issues = checker.run(node) File "/home/linters/.local/lib/python3.6/site-packages/flake8_django/checkers/render.py", line 22, in run if isinstance(arg, ast.Call) and arg.func.id == 'locals': AttributeError: 'Attribute' object has no attribute 'id'
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Slate frame workflow was fixed
if resolution_ratio_test < delivery_ratio_test: | ||
scale_factor = float(to_width) / ( | ||
resolution_width * pixel_aspect) | ||
# QUESTION Should we use resolution from instance and not source's? |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
good question, I believe we have to check the source resolution. Perhpas the problem with mixed resolutions is coming from here
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Some files could not be reviewed due to errors:
Traceback (most recent call last):
Traceback (most recent call last): File "/home/linters/.local/bin/flake8", line 11, in sys.exit(main()) File "/home/linters/.local/lib/python3.6/site-packages/flake8/main/cli.py", line 18, in main app.run(argv) File "/home/linters/.local/lib/python3.6/site-packages/flake8/main/application.py", line 393, in run self._run(argv) File "/home/linters/.local/lib/python3.6/site-packages/flake8/main/application.py", line 381, in _run self.run_checks() File "/home/linters/.local/lib/python3.6/site-packages/flake8/main/application.py", line 300, in run_checks self.file_checker_manager.run() File "/home/linters/.local/lib/python3.6/site-packages/flake8/checker.py", line 331, in run self.run_serial() File "/home/linters/.local/lib/python3.6/site-packages/flake8/checker.py", line 315, in run_serial checker.run_checks() File "/home/linters/.local/lib/python3.6/site-packages/flake8/checker.py", line 598, in run_checks self.run_ast_checks() File "/home/linters/.local/lib/python3.6/site-packages/flake8/checker.py", line 502, in run_ast_checks for (line_number, offset, text, check) in runner: File "/home/linters/.local/lib/python3.6/site-packages/flake8_django/checker.py", line 56, in run parser.visit(self.tree) File "/usr/lib/python3.6/ast.py", line 253, in visit return visitor(node) File "/usr/lib/python3.6/ast.py", line 261, in generic_visit self.visit(item) File "/home/linters/.local/lib/python3.6/site-packages/flake8_django/checker.py", line 39, in visit_ClassDef self.capture_issues_visitor('ClassDef', node) File "/home/linters/.local/lib/python3.6/site-packages/flake8_django/checker.py", line 33, in capture_issues_visitor self.generic_visit(node) File "/usr/lib/python3.6/ast.py", line 263, in generic_visit self.visit(value) File "/home/linters/.local/lib/python3.6/site-packages/flake8_django/checker.py", line 36, in visit_Call self.capture_issues_visitor('Call', node) File "/home/linters/.local/lib/python3.6/site-packages/flake8_django/checker.py", line 30, in capture_issues_visitor issues = checker.run(node) File "/home/linters/.local/lib/python3.6/site-packages/flake8_django/checkers/render.py", line 22, in run if isinstance(arg, ast.Call) and arg.func.id == 'locals': AttributeError: 'Attribute' object has no attribute 'id'
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Some files could not be reviewed due to errors:
Traceback (most recent call last):
Traceback (most recent call last): File "/home/linters/.local/bin/flake8", line 11, in sys.exit(main()) File "/home/linters/.local/lib/python3.6/site-packages/flake8/main/cli.py", line 18, in main app.run(argv) File "/home/linters/.local/lib/python3.6/site-packages/flake8/main/application.py", line 393, in run self._run(argv) File "/home/linters/.local/lib/python3.6/site-packages/flake8/main/application.py", line 381, in _run self.run_checks() File "/home/linters/.local/lib/python3.6/site-packages/flake8/main/application.py", line 300, in run_checks self.file_checker_manager.run() File "/home/linters/.local/lib/python3.6/site-packages/flake8/checker.py", line 331, in run self.run_serial() File "/home/linters/.local/lib/python3.6/site-packages/flake8/checker.py", line 315, in run_serial checker.run_checks() File "/home/linters/.local/lib/python3.6/site-packages/flake8/checker.py", line 598, in run_checks self.run_ast_checks() File "/home/linters/.local/lib/python3.6/site-packages/flake8/checker.py", line 502, in run_ast_checks for (line_number, offset, text, check) in runner: File "/home/linters/.local/lib/python3.6/site-packages/flake8_django/checker.py", line 56, in run parser.visit(self.tree) File "/usr/lib/python3.6/ast.py", line 253, in visit return visitor(node) File "/usr/lib/python3.6/ast.py", line 261, in generic_visit self.visit(item) File "/home/linters/.local/lib/python3.6/site-packages/flake8_django/checker.py", line 39, in visit_ClassDef self.capture_issues_visitor('ClassDef', node) File "/home/linters/.local/lib/python3.6/site-packages/flake8_django/checker.py", line 33, in capture_issues_visitor self.generic_visit(node) File "/usr/lib/python3.6/ast.py", line 263, in generic_visit self.visit(value) File "/home/linters/.local/lib/python3.6/site-packages/flake8_django/checker.py", line 36, in visit_Call self.capture_issues_visitor('Call', node) File "/home/linters/.local/lib/python3.6/site-packages/flake8_django/checker.py", line 30, in capture_issues_visitor issues = checker.run(node) File "/home/linters/.local/lib/python3.6/site-packages/flake8_django/checkers/render.py", line 22, in run if isinstance(arg, ast.Call) and arg.func.id == 'locals': AttributeError: 'Attribute' object has no attribute 'id'
Extract review
["review", ["ftrack", "plate"]]
output definition will be used only if instance has "review" family or both "ftrack" and "plate" families.Extract review slates
Not tested yet
Extract Burnin
Notes
Legacy process methods were kept to not break production with already set presets. I've kept them untouched which may cause issues due to PEP, so please ignore PEP in
legacy_process
methods.Enhanced image sequence processing. Codec passing to burnin script should not be necessary now, but please test - worked for me but I don't know everything about proper codec settings.
Documentation MUST be done as soon as possible! (that's note for me)