Commit Graph

288 Commits

Author SHA1 Message Date
a1578f08dc Metastrips: disallow making a metastrip with only one strip present. 2014-09-04 16:59:30 +02:00
2e436173aa Fix T41086: VSE separate images increases file size abnormally.
We were copying everything from the old sequence into each new ones... including the stripdata,
which for image sequences is an array with one item per image!

So bug was an exponential one, separating strips of a few tens of images was insensible, while
separating a strip of 1000 images would add above 250MB to file size (and RAM usage too)!
2014-07-21 22:55:06 +02:00
3b2f6dbf98 Sequencer: Add gaussian blur effect
Currently this gaussian blur implementation accumulates values in the
square kernel rather that doing X direction and then Y direction because
of the lack of using multiple-staged filters.

Once we can we'll implement a way to apply filter as multiple stages we
can optimize hell of a lot in here.

Another thing we can do is to use SSE2 instructions here.
2014-07-19 22:17:22 +06:00
ec97cb87f6 Fix issues when ungrouping meta changes the final sequencer render
Seems to be caused by the way how the most bottom strip in the stack
used to apply effect. Just rendering strip in this cases will not give
proper results.

Made it so effect is applying between empty imbuf and actual strip.
Seems to work by tests, but more intense testing is required.
2014-06-04 22:27:10 +06:00
d303556afb Code cleanup: remove file handling headers where they arent needed 2014-05-02 05:37:11 +10:00
4ca67869cc Code cleanup: remove unused includes
Opted to keep includes if they are used indirectly (even if removing is possible).
2014-05-01 04:47:51 +10:00
48446870a8 Code cleanup: remove redundant CTX calls 2014-04-30 08:11:47 +10:00
a8eb95c4e9 Fix T39597: Missing entries in VSE Preview menu
This adds some view ratios in the video sequencer menu, based (copied) on the UV/Image Editor. It also fixes the inverted ratio issue reported in the same task.

Reviewers: #video_sequencer, #user_interface, schlaile

Reviewed By: schlaile

CC: jta, dingto, sergey, schlaile

Differential Revision: https://developer.blender.org/D447
2014-04-27 22:59:30 +02:00
9ae0e585b0 View2d: API Cleanup for view<->region conversion
View2D had some inconsistencies making it error prone in some cases.

- Inconstant checking for NULL x/y args.
  Disallow NULL args for x/y destination pointers, instead add:
  - UI_view2d_region_to_view_x/y
  - UI_view2d_view_to_region_x/y

- '_no_clip' suffix wasn't always used for non-clipping conversion,
  switch it around and use a '_clip' suffix for all funcs that clip.

- UI_view2d_text_cache_add now clips before adding cache.

- '_clip' funcs return a bool to quickly check if its in the view.

- add conversion for rectangles, since this is a common task:
  - UI_view2d_view_to_region_rcti
  - UI_view2d_region_to_view_rctf
2014-04-21 16:59:40 +10:00
a15b3c4d11 Code cleanup: use bool 2014-04-11 11:33:29 +10:00
467596dd36 Fix T38860: Video preview in VSE shows a distorted and jagged appearance at scale 1:1
Issue was cauzed by the set zoom ratio optator which didn't really set pixel zoom to 1:1.
2014-04-01 16:41:48 +06:00
617557b08e Code cleanup: remove TRUE/FALSE & WITH_BOOL_COMPAT define 2014-04-01 15:22:28 +11:00
9767ff8916 Code cleanup: use true/false in sequencer functions 2014-03-20 15:46:38 +06:00
ed26edb532 Fix T38566: "Separate images" in VSE is not working any longer 2014-03-18 22:45:33 +06:00
4823bd1454 Fix crash when deleting strip used as mask in another strip modifier 2014-02-20 13:52:49 +06:00
b3afbcab8f ListBase API: add utility api funcs for clearing and checking empty 2014-02-08 06:24:05 +11:00
37026b12ec Code cleanup: use bool for static methods 2014-02-05 22:36:15 +11:00
d900f5be55 Code cleanup: use bools where possible 2014-02-03 19:35:44 +11:00
af93ebcb50 Code Cleanup: style and redundant casts 2014-01-16 19:15:53 +11:00
04e434cd81 Fix T37690: UI does not immediatelly reflect new length of effect strip 2013-12-04 20:47:23 +06:00
cedc90b607 Fix errors and inconsistencies in confirmation popup removal.
* Improve some clip editor messages
* Remove popup for metastrips, seems unnecessary
* Renamed some variables for consistency
* Avoid unnecessary call to CTX_DATA_COUNT

Reviewed By: sergey, campbellbarton, aligorith

Differential Revision: http://developer.blender.org/D44
2013-11-29 17:49:01 +01:00
63caaa2b12 Code Cleanup: rename vars for detecting change to be more consistent
rename change/is_change/is_changed/modified -> changed
also use bools over int/short/char and once accidental float.
2013-11-26 06:39:14 +11:00
3ca4387bc8 UI: remove unnecessary confirmation popups
This makes a number of operators no longer ask for confirmation, rather it will
show an info message after performing the operation. Ref T37422 for decision. In
particular, these were changed:

* Delete objects, bones, keyframes, masks, mask curves, motion tracks, markers.
* Clear and delete keyframes in the 3D view.
* Align bone to parents.
* Separate bones from armature.
* Group/ungroup metastrips in sequencer.
* Copy/paste objects to/from buffer.

Reviewed By: brecht, dingto

Differential Revision: http://developer.blender.org/D35
2013-11-25 12:21:45 +01:00
beae4f498d code cleanup: spelling 2013-10-31 14:10:01 +00:00
b21b24573d lots of operator descriptions were incorrectly copy/pasted.
update some descriptions, others were removed and operators tagged as internal.

add a script to detect duplicate operator descriptions.
2013-09-30 05:50:41 +00:00
23626e0149 fix [#36444] view3d.viewnumpad operator should not animate
when running viewport operations with exec() rather then invoke(), perform the action immediately rather then using smoothview.
makes viewport operations usable from python scripts.
2013-09-16 04:04:44 +00:00
576161b186 fix [#36262] Paste strip with video or sound content from another file crashes Blender
existing code was very stupid.

- all ID pointers for clipboard strips are handled uniformly.
- clipboard stores a duplicate ID pointer which are restored on paste.
- restoring pointers...
-- use ID's that are still in the database (copy&paste within the same file).
-- fallback to name lookup.
-- fallback to loading them from the original filepath (movie-clip and sound only).

also fix bug pasting where initialing the sound wasn't done if there was no frame-offset.
2013-07-24 06:51:04 +00:00
ab8e2cb900 pasting strips in the sequencer didn't check if they overlap existing strips. 2013-07-24 05:01:22 +00:00
7db1d6556d code cleanup: add break statements in switch ()'s, (even at the last case). 2013-07-21 08:16:37 +00:00
925c5010e8 fix for checking char arrays against NULL, instead check their first character. also remove some dead code (return directly after return). 2013-07-16 11:42:07 +00:00
152e1bed45 fix [#36027] Close gap shifts clip leaves keyframes behind 2013-07-06 07:21:08 +00:00
9c73c91039 Sequencer
"Insert Gap" and "Remove Gap" tooltip fix - to denote this doesn't use selection.
The use of this tool is to insert or remove time for a timeline.
2013-03-27 18:31:18 +00:00
79b8d89027 Tiny fix for sequencer:
"View selected strip(s)" now includes the active strip (which can be deselected 
in cases). Less confusing this way, also because active strip is being drawn 
very visible.
2013-03-27 12:29:00 +00:00
879e4fd9be sequencer gaps
- remove unneeded checks (poll checks editor is non-null)
- use booleans
- rename operator SEQUENCER_OT_gap_remove, _gap_insert

also quiet shadow warning in rigidbody.c (shadowing 'loc')
2013-03-26 20:34:13 +00:00
22000aa2fc Wrong soft/hard limits used in r55600 2013-03-26 15:48:20 +00:00
e1db5a050d Sequencer usability:
Brought back old tools "Remove Gap(s)" and "Insert Gap".
It's actually one of the first tools I ever coded for it in 90ies, so useful!

* Remove Gap(s)

This checks if there's no strip at a given position, and slides all strips
together to the left, until the gap is closed.

- BackSpace key, remove gap at current frame (or first gap at right of frame)
- SHIFT+BackSpace, remove all gaps at or to right of current frame.

* Insert Gap

Shifts all strips to right of current frame with 10 frames. (Amount can be
set in Toolbar redo panel).
2013-03-26 15:00:56 +00:00
aaa8a13c49 code cleanup: use const events for modal and invoke operators. 2013-03-13 09:03:46 +00:00
ddddb7bab1 code cleanup: favor braces when blocks have mixed brace use. 2013-03-09 03:46:30 +00:00
c36f20a7d2 style cleanup 2013-03-08 04:00:06 +00:00
a0ede5be1d resolve build error in MSVC, was using a GNU C extension for ternary conditional. 2013-02-18 03:36:10 +00:00
42a81550f9 == Sequencer ==
Made my last fix a little bit faster and more elegant by not playing around 
with seq->tmp (only reseting it to NULL, like the old code).
2013-02-17 22:13:00 +00:00
aefa6261c3 == Sequencer ==
This fixes a bug in sequencer cut tool:

* if you cut two strips of the same name class (MVI_XXXX.MOV and MVI_XXXX.001) 
  the two new generated strips will end up with the same name.
  (easy test case: add a MOV file with it's accompanying audio track to the
  timeline and then cut both strips at once into two pieces)
  
* visible problem: your animation data will get messed up on the way, since
  the animation system doesn't know, which strip it should assign the
  animation.
  
Problem was caused by generating a new list of sequences within the 
cut_seq_list() function:

Since dupli_seq() can't see the members of the new list of sequences, it
won't be able to assign unique names in all cases.
2013-02-17 21:44:13 +00:00
48e9c158db fix [#34093] Metastrips don't behave correctly with alt+leftarrow 2013-02-03 12:19:14 +00:00
Dalai Felinto
236bc27484 Operators name "cleanup"
The operator names all show up in the Search button. As such is nicer if they
can all have the main words capitalized.

e.g. "Snap strips" should be "Snap Strips"
     "Copy to clipboard" should be "Copy to Clipboard"

This was done with a mix of bash tools, regex, and manual work because I'm too rushed into regex :)

+ fix bge stereo eye separation tooltip
2013-01-27 07:23:58 +00:00
0d678e71a8 Fix #33674: Meta strip could overlap with other strips when exiting edit mode
Not sure what's the best thing to do here, for now just added vertical shuffle
of meta strip if it overlaps with other strips when existing edit mode.
2013-01-05 08:03:16 +00:00
1a7638fa94 add id property clear function (matching the same python function for dicts/lists) 2013-01-02 23:10:14 +00:00
fe006c0426 don't draw the sequencer grease pencil panel when in the channel view or scopes.
also don't draw grease pencil over scopes.
2012-12-17 04:44:39 +00:00
e85935dddf Fix #33423: a few operators still allowed changing current frame during
animation render, like cursor set in the graph editor, disabled that now.
2012-12-06 05:48:51 +00:00
4b102e93fb fix [#33422] Change Path/Files problem - selected strip directory doesn't work 2012-12-06 02:38:39 +00:00
444d43f72c Fix #33293L VSE: strip - separate images [Y] dialog "image duration" missing 2012-11-26 14:15:41 +00:00