Commit Graph

111 Commits

Author SHA1 Message Date
brunoherbelin
1cd36b6134 bugfix too much updating when set currentSource 2020-11-21 23:05:20 +01:00
brunoherbelin
8c9b753544 First operational version of AppearanceView. Cleanup of symbols for
sources and other bugfix.
2020-11-15 23:49:56 +01:00
brunoherbelin
196ce3df1b Cleanup of surface management in Sources (centralize texturesurface_ in
Source class, avoid mistakes in subclasses). Integration of sources in
AppearanceView (not functionnal yet).
2020-11-15 13:01:06 +01:00
brunoherbelin
15a0bab925 Creating view for APPEARANCE control 2020-11-13 22:35:32 +01:00
brunoherbelin
56dfbc737d Deep redesign of frame grabbers to prevent multiple frame captures
(slow) and optimize distribution of gabbed frames to multiple recording
and streaming pipelines (e.g. record H264 *and* share stream on the
network). New implementation of Loopback source for LINUX using
v4l2loopback (experimental).
2020-11-09 23:56:41 +01:00
brunoherbelin
34580ab5ea Fixup OSX system session file loading request 2020-11-03 17:56:18 +01:00
brunoherbelin
88d4e3d9d5 Added support for filename argument when running vimix (open session) 2020-11-01 23:59:24 +01:00
brunoherbelin
8ef79a6dbd Added frame buffer information display in session preview 2020-10-31 19:21:05 +01:00
brunoherbelin
01410a59cf Improved connection robustness and diconnection/connection behaviors
(added connection rejection to streamer).
2020-10-25 22:01:04 +01:00
brunoherbelin
7246dfa08e Work-in progress: connection manager now used in Streamer and
NetworkSource to identify possible connections, and exchange streaming
configuration.
2020-10-24 23:53:11 +02:00
brunoherbelin
43f444f07b Creation of the Connection Manager : this new mechanism continuously
checks for the presence of vimix programs in the network neibourhood.
The list of connections can then be used for indentifying streaming
requests and offers.
2020-10-23 01:02:28 +02:00
brunoherbelin
27239b7513 working on streaming and clients 2020-10-20 00:28:44 +02:00
brunoherbelin
3a34da9322 Renaming Recorder to FrameGrabber 2020-10-14 21:04:22 +02:00
brunoherbelin
b3ee400b1a Hack to prevent re-openning automatically a session file in case vimix
was not properly closed (to avoid crash at start that prevent vimix from
restarting after loading a faulty session file).
2020-10-13 23:42:33 +02:00
brunoherbelin
c674fa0897 Implementation of Copy, Cut & Paste of sources. Keeps description (xml)
of source in clipboard for pasting in another session or in the same
(then it clones existing sources).
2020-10-11 23:41:24 +02:00
brunoherbelin
34b508a8dd BugFix: PatternSource pattern type is unsigned and undefined when
created
2020-10-11 16:01:57 +02:00
brunoherbelin
8297c85220 Cosmetic improvement of Action manager and Log messages. 2020-10-11 12:05:38 +02:00
brunoherbelin
650017c8f3 BugFix: history manager undo and redo for delete and recreation of
source, delete multiple sources or clones, etc.
2020-10-11 00:37:04 +02:00
brunoherbelin
2c1eaff476 improvement in order of delete in selection (for better history of
delete)
2020-10-10 15:30:28 +02:00
brunoherbelin
233fc64c4e Increased size of unique identifier of objects: using uint64 instead of
int. Deep change in all concerned objects (Node, Source, Shader, etc.).
No behavior change, just more robust in duration.
2020-10-06 22:45:52 +02:00
brunoherbelin
616c6c8bdf First working implementation of ActionManager, but incomplete. 2020-10-04 22:52:23 +02:00
brunoherbelin
5421b5e926 Cleanup Session loading (prepare for session history) 2020-10-03 18:45:30 +02:00
brunoherbelin
d563ee14a9 Cleanup source id management, and improved session merging and source
renaming.
2020-10-03 17:54:34 +02:00
brunoherbelin
fac798df93 BugFix: prevent from creating twice a source with the same device:
create a clone of the original device source instead.
2020-10-01 23:44:14 +02:00
brunoherbelin
c777a3d153 work in progress: implementation of stash in MixingView 2020-09-30 12:01:40 +02:00
brunoherbelin
dcffb1cbaa Change 'error' message for canceled (not failed) loading of session 2020-09-27 23:57:47 +02:00
brunoherbelin
7109b94484 Cleanup DeviceSource and PatternSource (no feature change) 2020-09-25 21:20:24 +02:00
brunoherbelin
84caf2da9a Integrated preliminary implementation of Device class with monitoring of
v4l2 device connected to the machine using GstDeviceMonitor.
2020-09-23 23:29:45 +02:00
brunoherbelin
b7d54dfadf Creation of the base class StreamSource. It is intended to become the
base class for all gstreamer pipeline. DeviceSource and PatternSource
inherit from it. A generic stream source class is created for
development tests and hack.
2020-09-22 22:58:37 +02:00
brunoherbelin
9251aff19f Create Device Source and integration of Stream 2020-09-21 22:41:20 +02:00
brunoherbelin
519baf7a3b Unified GUI behavior for source creation. cleanup of history of recent
files after loading error.
2020-09-20 11:28:09 +02:00
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
23800b17b4 Fixed creation of empty session source. 2020-08-16 20:31:09 +02:00
brunoherbelin
f6588de023 Unified use of std::future for loading sessions in Mixer and
SessionSource.
2020-08-16 19:10:23 +02:00
brunoherbelin
c6d8c7189f Cleanup after all these changes in MediaPlayer and Mixer. 2020-08-16 16:16:05 +02:00
brunoherbelin
f3487d2074 Re-activating threaded loading of session. Seems stable now. 2020-08-15 22:41:24 +02:00
brunoherbelin
0e2af5b04f fighting the crash everywhere: random crash at random location. Changing
computer might be better idea than changing the code indefinitely...
2020-08-15 18:05:18 +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
5763a9e756 Thread safe loading and saving of session: use of std::future. 2020-08-14 22:28:36 +02:00
brunoherbelin
e73ebeab93 Disabling threaded session loading: crashing :( 2020-08-12 23:12:20 +02:00
brunoherbelin
3c5c6ef8ed Improve thread safety of Mixer (loading and importing sessions) 2020-08-12 22:46:58 +02:00
brunoherbelin
066b40723f Stabilized implementation of fading control, with change of view and
trigger of smooth transition. Bugfix with image processing shader
change.
2020-07-30 23:24:59 +02:00
brunoherbelin
4f17620cae Intregration of session fading with transition and session source
management.
2020-07-29 19:02:43 +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
fd30b742b8 Enable using smooth transition when closing/new session. 2020-07-28 19:08:59 +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
cec49a9a62 Cleanup MediaPlayer 2020-07-23 12:59:42 +02:00
brunoherbelin
d916bb5706 Fixed initialization of source and of SessionSource; sources are ready
after full initialization and in standly. A new button allows playing
the source (media or session) in the new source pannel.
2020-07-19 19:03:49 +02:00
brunoherbelin
7f3867521e Fixed mechanism to properly restore last session (verify validity of
last file saved, i.e not empty or unsaved session).
2020-07-09 13:13:52 +02:00
brunoherbelin
b5985847bf Almost done with implementation of Transition! Settings and UI side
pannel are operational. View is stable and animation with UpdateCallback
implemented.
2020-07-06 00:06:49 +02:00