Commit Graph

44 Commits

Author SHA1 Message Date
xant
681d84dc1e extending the Controller API
KbdController is now a singleton as well  and is able to propagate
keystrokes to multiple listeners

generalizing the ControllerListener API
(must still get rid of the 'frame()' method in favour of the more
generic 'call()' one)
2010-04-24 01:00:07 +02:00
Xant
2c96a60472 copyright is not valid with a nickname only 2009-09-12 09:27:29 +02:00
Xant
5e8199fdf3 copyright notice 2009-09-12 00:45:04 +02:00
Xant
e05b215f3e make it build again on osx 2009-09-11 23:32:14 +02:00
Xant
3326a82f2c Refactoring the osx project (WIP)
- Separating view logic from the real layer implementations
  (so layers can be created programmatically and associated to a
  view only if/when necessary)
- Separating the c++ glue classes from their related cocoa implementations
2009-09-11 22:14:25 +02:00
Xant
8cfc192759 aligning to last changes in the internal api 2009-08-30 22:44:00 +02:00
Xant
15d0ab2e19 initial separation of c++ glue-classes implementation from the related cocoa views 2009-08-30 10:36:47 +02:00
Xant
c6db3794f9 removed dead code 2009-08-29 18:58:26 +02:00
Xant
df92b2ad80 setting cocoa defaults at init() instead of doing that in the constructor 2009-08-29 18:41:09 +02:00
Xant
da707c0cd9 fixed CVScreen class definition to fit last changes in the api
removing duplicate implementation for CVScreenController
2009-08-29 11:59:27 +02:00
Jaromil
b409820950 Factory is now used also for Screens
Screen API changed a bit: now size args are taken from init(w,h)
screen implementations should provide an _init(w,h) as well
constructors are without arguments (as in the rest of freej)
2009-08-29 11:53:48 +02:00
Xant
c6de2738f8 implementing KbdController on OSX (WIP) 2009-08-29 11:05:53 +02:00
Xant
9f867ed63b Default resolution is now 352x288
It Can be changed through the preferences panel (WIP)
(started implementation for a screen-keyboard-listener
 to capture keystrokes acting like cocoa-based keyboard
 controller)
2009-08-22 15:36:53 +02:00
Xant
b93d008370 Introducing a preference panel (WIP)
Screen size can now be changed but running layers need to be
notified of the change
(a proper notification system starts to be highly desireable)
2009-08-20 19:19:39 +02:00
Xant
43e5a23167 fixed a huge memory leak + providing the correct timestamp to QTExporter::addImage 2009-08-19 22:05:40 +02:00
Xant
817342114b handling 'duration' of each frame in a proper way
but the exported movie still plays too fast
2009-08-18 23:16:10 +02:00
Xant
2bcdff9b9b moved quicktime export to a separate thread 2009-08-18 00:20:05 +02:00
Xant
297f4ffd57 first *working* implementation of the native QTKit screen exporter 2009-08-15 11:59:25 +02:00
Xant
6dad3f798f Introducing CVTextLayer and allow to reorder active layers (which are now listed in the main controller window).
NOTE: The GUI is going to be massively changed
2009-06-18 02:02:56 +02:00
Xant
5801f1fb34 Fixed a leak and aligned to recent changes in the core api 2009-06-13 19:48:03 +02:00
Xant
a23cd4a445 make fullscreen to work properly after last quicktime update 2009-06-11 14:31:23 +02:00
Xant
41bc9860da fixed various issues spotted while profiling and hunting for bugs and/or leaks in both the opengl and cocoa-related code 2009-06-10 14:26:41 +02:00
xant
657a3bed03 Started improving the FilterPanel<->CVLayer interaction.
- per-layer filter parameters are now restored correctly when moving the
  filterpanel between different layers
- Various fixes and improvements in CVF0rLayer as well.
- The FilterPanel now doesn't disappear when selecting a new filter.
- Introduced the preliminary logic necessary to access geometry layers
  created through javascript
2009-06-07 23:58:56 +02:00
xant
b770c31065 perl-layer translate filter (and related controls in the FilterPanel) 2009-06-04 14:07:29 +02:00
xant
61e18ca3e0 - implemented various optimizations in all our custom views 2009-06-04 00:26:38 +02:00
xant
43b936ad44 cleaning and consolidating the cocoa-based implementations 2009-05-25 10:30:21 +02:00
xant
7a590fcca7 gui-related fixes and enhancements.
- correct framerate calculation
- switching to a default screensize of 512x384 instead of 400x300
- reorganizing gui controls
- introduced icons for both the capture and generator layers
- saving/restoring per-layer state of both filter and image parameters
- FilterPanel now updates correctly with layer-specific parameters
- better initialization of the videocapture device in CVGrabber
- (something else I don't remember right now)
2009-05-24 02:27:28 +02:00
xant
c3561ee131 First attempt to use GenF0rLayers on osx.
They actually works fine apart that you don't have any control
on generators' layers yet. (You can create them but you can't
either change parameters or delete those layers yet)
2009-05-22 18:16:44 +02:00
xant
9ad56e99ec bugfix in CVScreen.
get_surface() was leaking memory.
2009-05-22 12:05:04 +02:00
xant
8f7c3a8fef using a preallocated CVPixelBuffer instead of self-managed buffer 2009-05-21 16:30:57 +02:00
xant
a20853a56a - report the correct bytesize in video_encoder
- osx-only fixes and tests
2009-05-21 16:28:00 +02:00
xant
2cf0a828c5 cleanings 2009-05-18 22:47:29 +02:00
xant
9b41193ab0 massive refactory of the cocoa-related layers is in progress 2009-05-18 02:31:44 +02:00
xant
7f1d13fe9a freezing a working version of the osx code before starting a massive refactory of the gui-related part 2009-05-16 02:54:23 +02:00
xant
e26707a812 allow to dynamically add/remove Cocoa-managed layers 2009-03-07 16:54:07 +01:00
xant
df140ec070 Allow to disable preview on each inputlayer to save cpu cycles if
running on slower systems (rendering the preview someway wastes
both cpu and gpu and can be 'undesired' if doing intensive video-mixing
using filters and such)
2009-03-07 15:30:20 +01:00
xant
69bad94c29 Optimizations and Cleanings. 2009-03-07 12:39:20 +01:00
xant
a17a5fd29d now filters which need to set an inputCenter are properly supported 2009-03-05 02:27:54 +01:00
xant
c983f92943 finished support for dynamic FilterParams 2009-03-05 01:47:00 +01:00
xant
848553359b - create a valid bundle (redistributing/readdressing all needed shared
libraries)
- various cleanings (start giving a more consistent name to
  CoreVideo-related classes
2009-03-04 03:05:29 +01:00
xant
aae64f40cd fullscreen support + allow to select a different blendmode on each
videoinput
started cleaning-up code for this preliminary implementation
TODO updated ( but thera are so many things still missing :-{ )
2009-03-03 23:18:52 +01:00
xant
afeecd415a - EffectsPanel is now dynamically created for each videoinput's instance
- Better lock management within cocoa objects
- CVScreen is now able to blit foreign frames (coming from not-cocoa
  layers)
- support for loading/execution of javascript sripts is back
2009-03-01 22:50:40 +01:00
xant
5b75feb3c9 cleaning up before continuing adding features 2009-03-01 22:44:15 +01:00
xant
05acf2d04d Finally things are starting to work properly!! :)
- implemented a native Cocoa-OpenGL screen
- introduced CVLayer to be used as "binding class"
  within all native-cocoa layers
- runloop is now ruled by the Screen which will call
  Context::cafudda() only when the DisplayLink asks for
  a new videoframe to render
- both CVideoFile and CVideoGrabber are now working properly
  (effects are not available yet on the CVideoGrabber layer
  but I'm going to extend filtering functionalities to
  the videograbber asap)
2009-02-24 23:07:36 +01:00