Commit Graph

304 Commits

Author SHA1 Message Date
brunoherbelin
59db2cf57c Implementation of new type of source: Pattern generator (GUI, icons,
saving). A new class for gstreamer stream (Stream) is defined for
generic pipeline sources; to be integrated (inheritance) into
MediaPlayer.
2020-09-20 00:26:39 +02:00
brunoherbelin
b0e54c6ff5 Increased range for UI scaling 2020-09-16 22:04:30 +02:00
brunoherbelin
9e32e4f5b2 Improved user feedback on session loading 2020-09-16 08:34:53 +02:00
brunoherbelin
e03db22092 Fixed selection behavior: bounding box now correctly takes into account
transformations of the sources, and selects only those inside the
selection bounding box.
2020-09-14 23:04:59 +02:00
brunoherbelin
5ebf80b0cd Bugfix: do not add recent folder if user cancel dialog 2020-09-13 23:20:59 +02:00
brunoherbelin
fb2d43b022 Prevent smooth cursor during mouse multiple selection 2020-09-13 22:40:19 +02:00
brunoherbelin
67fa3c9ec8 Visual feedback on smooth cursor 2020-09-13 22:32:52 +02:00
brunoherbelin
5895e203ba Initial implementation of cursor smoothing 2020-09-13 22:02:49 +02:00
brunoherbelin
fa7257fe92 Compilation warnings 2020-09-13 17:44:40 +02:00
brunoherbelin
bcfbf184c6 modifiers for other views 2020-09-13 17:33:22 +02:00
brunoherbelin
32234c4d7c Starting implementation of overlay in GeometryView to inform on the
current action (Rotation, Scaling).
2020-09-08 23:45:36 +02:00
brunoherbelin
90715173f7 Cosmetics. Fixed orientation of mouse cursor for resize 2020-09-06 19:19:25 +02:00
brunoherbelin
cc3f824bfa Unified behavior in Geometry view: SHIFT for discrete transform (unit
translation, rotation, scaling) and ALT key for alternative transform
(central scaling, axis translation)
2020-09-03 00:07:57 +02:00
brunoherbelin
c8ac4b2d95 Added ALT keyboard modifier handling for alternative GUI actions 2020-08-29 13:09:11 +02:00
brunoherbelin
f90964bac8 Do not use first key frame in timeline. 2020-08-24 22:18:43 +02:00
brunoherbelin
e41868d405 Improved GUI context menu timeline 2020-08-24 12:17:18 +02:00
brunoherbelin
240f1fde0a Saving and loading of timeline, with fading and gaps. Applying fading to
MediaSource. Playing with timeline options to facilitate its use.
2020-08-24 00:23:03 +02:00
brunoherbelin
86fd5f21f3 Creation of a new widget to display and edit timeline: combined plot of
lines (for alpha) and histogram (for gaps).
2020-08-23 00:40:44 +02:00
brunoherbelin
0d934c3590 Fixed User seek request with timeline constraints (request go to
position instead of directly seek)
2020-08-22 14:20:00 +02:00
brunoherbelin
9f954d258f tiny bugfix timeline gaps 2020-08-21 23:03:36 +02:00
brunoherbelin
710514b478 Revert behavior of MediaPlayer position to normal and instead fixed the
GUI to match the [start end] range of timeline (instead of shifting
position in MediaPlayer). Fixed Loop mode for bi-directional and stop
modes to react according to Timeline gaps.
2020-08-21 00:58:20 +02:00
brunoherbelin
182f204d80 Working but dirty implementation of GUI for Timeline and gaps of
MediaPlayer.
2020-08-19 23:15:54 +02:00
brunoherbelin
857274c2f3 Re-implemented multi-threaded openning of file dialogs (with tinyfd)
using std::future for cleaner thread-safety.
2020-08-16 22:17:42 +02:00
brunoherbelin
44b9169cdc Changed MediaPlayer discovering process: using thread to perform
discovery (instead of async gstreamer callback).
2020-08-15 09:12:06 +02:00
brunoherbelin
a7ba118562 cleanup thread behavior for file dialog. Added keyboard shortcut
SHIFT+CTRL+O for re-openning current file: not public yet (to validate)
2020-08-12 22:52:25 +02:00
brunoherbelin
bb8dcf088e work in progress cleanum memory leak and crash :( 2020-08-11 00:11:22 +02:00
brunoherbelin
2863a1f3c9 improved text display of time with 3 modes depending on the needs. 2020-08-04 19:05:03 +02:00
brunoherbelin
6f844f722d Improved Media player timeline: adding time indication and enabling to
scroll in a zoomed-in timeline. Display current time in overlay on
frame.
2020-08-04 00:01:30 +02:00
brunoherbelin
66977453e1 Update About dialog to link to new github web page. 2020-08-02 11:41:38 +02:00
brunoherbelin
cc42e5581a Added (hidden) vimix config options in vimix about. 2020-07-30 23:28:28 +02:00
brunoherbelin
837eb2d569 New: implementation of fading slider in MixingView. Needed to implement
decoration Disk and to update picking visitor.
2020-07-29 17:06:08 +02:00
brunoherbelin
2eb59f2ffe Fixed mediaplayer loop on EOS for both rate directions. 2020-07-28 21:52:18 +02:00
brunoherbelin
fd30b742b8 Enable using smooth transition when closing/new session. 2020-07-28 19:08:59 +02:00
brunoherbelin
4023b6d32f bugfix: do not use global pointer to recorder 2020-07-28 12:36:40 +02:00
brunoherbelin
e7107ca6c0 Added Timeout to recorder in User Interface and Settings, and duration
query on Recorder.
2020-07-27 23:19:12 +02:00
brunoherbelin
c788187e3b Bugfix: display gstreamer plugins after filter 2020-07-27 16:21:10 +02:00
brunoherbelin
d9a93bb6c6 display Recorder information of actualy running recorder(s). 2020-07-27 16:16:52 +02:00
brunoherbelin
3bb3e66f55 Implementation of Recorder with dual PBO mechanism for best efficiency
and compatibility. Fixed user interface and avoid user creating multiple
recorders.
2020-07-27 15:56:24 +02:00
brunoherbelin
3f782736ac Fixed Recorder and Session to allow transfer of recorders when changing
session.
2020-07-27 11:45:15 +02:00
brunoherbelin
60880a1a8b First operational implementation of video recorder. 2020-07-26 23:54:29 +02:00
brunoherbelin
9fdc9e6c1a Early testing of video Recorder 2020-07-26 01:28:20 +02:00
brunoherbelin
ffc700c127 Buttons to navigate (< and >) in list of media in media player. 2020-07-24 19:54:36 +02:00
brunoherbelin
18a538a0e9 just a 'next video' button for media player. 2020-07-24 10:29:46 +02:00
brunoherbelin
533d372f9a Changed label and keyboard shortcuts for media player and output
preview.
2020-07-24 00:45:26 +02:00
brunoherbelin
978bbff9a7 Implementation of Recorder class. For now, only a capture to PNG is
available, but the mechanism is in place for video capture.
2020-07-23 23:50:32 +02:00
brunoherbelin
8e9439104c Entire rebuild of gstreamer sinkapp: using callbacks instead of signals
(more efficient) and always displaying the last read frame. Using frame
status to manage End-of-stream and pre-roll special cases.
2020-07-22 23:44:55 +02:00
brunoherbelin
cfa0fbc5b8 Recent files bugfix. 2020-07-21 22:07:17 +02:00
brunoherbelin
9cb53bc421 rename draw to Render (pedantic programming uniformity) 2020-07-20 20:16:25 +02:00
brunoherbelin
4f5e2a616c Bugfix: issues with vframe stack when seek and stop with setop at EOF. 2020-07-20 18:02:24 +02:00
brunoherbelin
6d1a6da807 Bugfix: quick drag (not triggering mouse press) also need to initiate
view.
2020-07-20 14:50:11 +02:00