Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2021-06-11Sequencer: Do not redraw during playback.Jeroen Bakker
When using large sequences including audio the drawing of the audio on top of the strip takes a lot of time. This effects the playback performance heavily. During the animation playback performance there was a solution for this by only drawing the playhead overlay. This was reverted for the sequence editor as it didn't update the color strips when they were animated. This patch checks if there are animated color strips if so the full screen is redrawn, otherwise only the playhead is redrawn. Reviewed By: ISS Differential Revision: https://developer.blender.org/D11580
2021-06-09Cleanup: replace 'else if' with 'else'Campbell Barton
2021-06-09Cleanup: remove redundant checks which have already been testedCampbell Barton
Note that these changes are limited simple cases as these kinds of changes could allow for errors when refactoring code when the known state is not so obvious.
2021-06-06VSE: Remove seq->tmp usage from transform codeRichard Antalik
This field was used for extend feature to get handle position of metastrip children. Since D9972 extend feature works only on meta strip itself, not it's children. So `SEQ_transform_get_left_handle_frame()` second argument is always false and can be removed. Another instance of `seq->tmp usage` is hack to distinguish strips to be shuffled, which is not covered by this patch. Reviewed By: campbellbarton Differential Revision: https://developer.blender.org/D10321
2021-06-02Cleanup: Fix build warningsRichard Antalik
2021-06-02VSE: Add strip-time intersection test functionRichard Antalik
Use SEQ_time_strip_intersects_frame function to test if strip intersects with frame. Note: There are cases where this function should not be used. For example splitting strips require at least 1 frame "inside" strip. Another example is drawing, where playhead technically doesn't intersect strip, but it is rendered, because current frame has "duration" or "thickness" of 1 frame. Reviewed By: sergey Differential Revision: https://developer.blender.org/D11320
2021-06-02Cleanup: Strip duplication codeRichard Antalik
Remove unused flag `SEQ_DUPE_ANIM` and code used by this flag. Remove flag `SEQ_DUPE_CONTEXT` and refactor code, to split operator logic from duplication code. Reduce indentation level in for loop. Reviewed By: sergey Differential Revision: https://developer.blender.org/D11318
2021-06-02VSE: Use own category for metadata panelRichard Antalik
Metadata panel was visible in each category. In other editors, this panel is usually placed in category with other source media properties. In sequencer, metadata is transfered over while compositing and relation to particular strip is lost, therefore separate category for metadata seems to be best option. Since Metadata panel is alone in this category, it will be open by default.
2021-05-31Fix T88569: UI VSE: Menu-based range change, doesn't update the Timeline ↵Philipp Oeser
scrollbar width Use the appropriate notifier, listeners were already doing the rest properly. Maniphest Tasks: T88569 Differential Revision: https://developer.blender.org/D11436
2021-05-28Merge branch 'blender-v2.93-release'Philipp Oeser
2021-05-28Fix T88635: VSE: Select Linked gives unpredictable resultsPhilipp Oeser
Caused by {rB66923031e6f2}. Code would process unselected sequences and skip selected, needs to be the other way around. Maniphest Tasks: T88635 Differential Revision: https://developer.blender.org/D11424
2021-05-25Merge branch 'blender-v2.93-release'Richard Antalik
2021-05-25Fix T88551: Crash accessing uninitialized tool settingsRichard Antalik
Tool settings for sequencer were not initialized, which caused crash when adding strips. There was fix for same issue in versioning rB0f81dafe6cec, but subversion was not bumped, so files with uninitialized tool settings may still exist. Add `SEQ_tool_settings_get()` accessor function that will initialize tool settings if they are missing. Change operator code to use `SEQ_tool_settings_fit_method_get()` function instead of accessing tool settings directly Reviewed By: campbellbarton Differential Revision: https://developer.blender.org/D11383
2021-05-23UI: Use title case for labelsAaron Carlisle
2021-05-21Cleanup: spellingRichard Antalik
2021-05-20VSE: Fix select strips at current frame featureRichard Antalik
This feature of `select_side_of_frame` was disabled by removing option from operator property enum but functional code was never removed. Add back option to use this feature. Feature was disabled due to keymap issue. Currently this feature doesn't have keymap assigned.
2021-05-19VSE: Refactor sorting functionsRichard Antalik
Recently `SEQ_sort()` function was split so functionality is provided on per-seqbase basis. After discussion about this split, it turned out, that per-seqbase operation is only that should be provided, because RNA API functions need to be able to access arbitrary seqbase Remove recently introduced function `seq_sort_seqbase` and change `SEQ_sort` function to operate on seqbase. Reviewed By: sergey Differential Revision: https://developer.blender.org/D11297
2021-05-19VSE: Better handling of effect strip splittingRichard Antalik
Splitting of effect strip alone wasn't handled properly. Previously this resulted in duplicating effect strip, and it was broken at least from 2.79. Change in rB8ec6b34b8eb2 was intended to allow splitting strips individually, so it can be used as RNA API function but also so it requires as little glue logic as possible. This is fixed by splitting all dependent strips at once in 2 separate ListBases for left and right strips. Strips can be finally moved into original `ListBase`. With this fix it is still possible to split strips individually with little glue logic. RNA API function could return list of split strips as well, currently at least one strip in chain will be provided so chain can be reconstructed on python side. Reviewed By: sergey Differential Revision: https://developer.blender.org/D10209
2021-05-19VSE: Move whole strip chain to metaRichard Antalik
Python API function Sequence.move_to_meta() did delete effect chain when strip with effects was moved. Use iterator API to query effect strips and move whole chain to meta. Reviewed By: sergey Differential Revision: https://developer.blender.org/D11206
2021-05-14Cleanup: spelling, rename metas to meta-strips / meta-ballsCampbell Barton
2021-05-12Merge branch 'blender-v2.93-release'Richard Antalik
2021-05-12VSE: Fix meta strip boundary can not be changedRichard Antalik
In e1f3996d740c, logic for changing metastrip start and end frame based on contained strips was removed. This was done intentionally and incorrect functionality wasn't noticed as drawing code reflected seemingly correct state. Original code was mostly correct, because meta strip doesn't store its internal start and end points. This code was restored with minor modifications so function `SEQ_time_update_sequence()` is fully self contained as it is used not only by transform operator. In addition, drawing glitches that happen when meta content is outside of meta boundaries were fixed. These glitches were not caused by e1f3996d740c. Reviewed By: sergey Differential Revision: https://developer.blender.org/D11215
2021-05-07Silence warningsDalai Felinto
2021-05-07Merge remote-tracking branch 'origin/blender-v2.93-release'Dalai Felinto
2021-05-07Cleanup: make format (clang-format)Dalai Felinto
2021-05-07Fix strict compiler warning in sequencer codeSergey Sharybin
2021-05-07VSE: New iterator designRichard Antalik
This iterator design provides means to create simple and flexible API to query and work with collection of strips. It should be used in cases when conditions require multiple stages of recursive iteration of all strips or similar complex scenarios. Quick API overview: Basic queries are standalone functions that return SeqCollection Use SEQ_collection_create() and SEQ_collection_free() to construct such query functions. Use these functions to get strips of known conditions, like selected strips, movie strips, muted strips and so on. Use SEQ_reference_query() when querying strips with relation to some reference strip. For example to get its effects, strips that have same type or use same input file and so on. These aren't standalone functions because often you need to query strips relative to each strip in collection. Use SEQ_collection_expand() to query strips relative to each strip in collection. These will be merged to original collection. Use SEQ_collection_merge() to merge 2 collections To iterate collection elements use macro SEQ_ITERATOR_FOREACH() This API is quite specific, but I think it is best suited for tasks that are usualy solved in sequencer codebase. Old sequencer iterator has been completely removed. SEQ_ALL_BEGIN and SEQ_ALL_END macros re-use new iterator design. As initial use for this iterator select_grouped_effect_link() function has been rewritten. It was not only broken, but also it used DNA fields to aid iterating strips. Reviewed By: sergey Differential Revision: https://developer.blender.org/D10337
2021-05-07Merge branch 'blender-v2.93-release'Richard Antalik
2021-05-07VSE: Fix freeing display buffer cache before useRichard Antalik
`IMB_display_buffer_release()` was called before `display_buffer` was used by drawing code. This should not be done as it may cause problems.
2021-05-06Cleanup: VSE: move functions from incorrect fileRichard Antalik
`SEQ_recursive_apply` and `SEQ_seqbase_recursive_apply` were incorrectly refactored into `iterator.c` file, but they aren't part and don't use sequencer iterator. Functions are moved to `utils.c` file.
2021-05-06Merge branch 'blender-v2.93-release'Richard Antalik
2021-05-06VSE: Fix wrong flag valueRichard Antalik
`SEQPROP_VIEW_TRANSFORM` value was set incorrectly. Introduced in 9576612d45dc
2021-05-05Merge branch 'blender-v2.93-release'Richard Antalik
2021-05-05VSE: Set view transform based on strip colorspaceRichard Antalik
In some cases, users start video editing work from General template, where Filmic view transform is chosen by default. Currently, this causes issue when working with sRGB footage, which are not properly decoded into linear working space and final render looks miscolored. When adding first strip, check it's colorspace and if it corresponds to colorspace for byte images, ensure that view transform is set to default value, which is Standard. Reviewed By: brecht Differential Revision: https://developer.blender.org/D11151
2021-04-23VSE: reset strip transform with "Set Render Size" operatorSybren A. Stüvel
Reset the active strip offset and scale, in the "Set Render Size" operator (`SEQUENCER_OT_rendersize`). This ensures that the active strip will actually fit the new render size, which is what the operator is intended to achieve.
2021-04-23Cleanup: VSE, reduce cognitive complexity of sequencer_rendersize_exec()Sybren A. Stüvel
Reduce the cognitive complexity of the `sequencer_rendersize_exec()` function by flipping some conditions and returning early. No functional changes.
2021-04-19Changes missed from 4402c2324b81efad8d09a016a7e6838395711158Campbell Barton
2021-04-19Cleanup: use 'wmOperator.ptr' in draw functionsCampbell Barton
Draw functions used RNA_pointer_create to create the pointer, however this already exists in the operator.
2021-04-19Fix creating operator properties without an owner_idCampbell Barton
Any dynamic enum access would not use the callback. Always set the owner_id to avoid this causing problems. Oversight in 919558854d624f5db40acfa9f5674ac8c94873b6
2021-03-31Cleanup: Fix warningsRichard Antalik
Introduced in b128ffd53970
2021-03-31Cleanup: Remove SEQ_CURRENT_BEGIN macroRichard Antalik
Use LISTBASE_FOREACH instead. SEQ_CURRENT_BEGIN did null checks, so now these must be explicit. Reviewed By: campbellbarton Differential Revision: https://developer.blender.org/D10823
2021-03-30VSE: Fix image adding inconsistencyRichard Antalik
When adding images with operator, image file path is split into filename and directory passed to load function in name and path fields of SeqLoadData struct. This is because when loading images directory and filenames are split. RNA API function passes whole path in path filed. Apart from loading API inconsistency, this causes initial image loading to fail, so strip resolution is not set. Also name field of SeqLoadData should be reserved for strip name. Let operator code concatenate and split filepath when needed so loading API can be consistent with RNA API and also between strip types. Reviewed By: sergey Differential Revision: https://developer.blender.org/D10818
2021-03-23Fix crash transforming sequencesCampbell Barton
Regression in 3d9ee83d88186248fb66823662a04d1a0429e1ae
2021-03-20Fix issues introduced strip loading refactoringRichard Antalik
- Adding effect strip resulted in strip with no name - Adding sound strip attempted to read `fit_method` RNA property, that did not exist, causing error messages in console These issues were introduced in bbb1936411a5.
2021-03-20Fix T86355: Added effect strip has wrong lengthRichard Antalik
SEQ_add_effect_strip used SeqLoadData.image.end_frame to set end frame. This was mistake introduced in last refactoring patch. Use effect data, not image data, when adding effect strips. Reviewed By: sergey Differential Revision: D10633
2021-03-20VSE: Preview images when moving strip handlesPeter Fog
Add option to override current frame whem transforming strip handles. Option can be found in View menu of VSE preview, or in timeline when using backdrop. Reviewed By: ISS Differential Revision: https://developer.blender.org/D10424
2021-03-17Fix issues with automatic proxy buildingRichard Antalik
After merging patches and resolving conflicts, typo prevented correct operation. This uncovered crash on NULL dereference as well.
2021-03-16VSE: Automatic proxy buildingRichard Antalik
Build proxies automatically when added to sequencer timeline and when switching preview size. This behavior can be disabled in user preferences. Reviewed By: sergey, fsiddi Differential Revision: https://developer.blender.org/D10363
2021-03-16VSE: Simplify proxy settingsRichard Antalik
- Remove Full Render size from VSE preview size. Use just 100% instead. - Add Use Proxies checkbox to control whether proxies are used globally - Move preview size to top so it is most prominent - Set default to 100% preview size and use proxies Reviewed By: sergey, fsiddi Differential Revision: https://developer.blender.org/D10362
2021-03-08Cleanup: use ofs instead of offs as an abbreviation for offsetCampbell Barton
Used for local structs/variables, since `ofs` is by far the most widely used abbreviation.