Thiago Santos
213277cc02
waterripple: Adds new waterripple element to geometrictransofmr
...
Adds an water ripple distortion element to geometrictransform
2010-06-04 15:31:22 -03:00
Thiago Santos
ed7461b589
sphere: Adds new 'sphere' element to geometrictransform
...
Adds a new element to do 'sphere' effect into geometrictransform
plugin
2010-06-04 15:31:22 -03:00
Thiago Santos
a00614064b
geometrictransform: adds some properties to base class
...
Adds a property to select what to do with pixels that are mapped out of
edges: ignore, clamp or wrap.
2010-06-04 15:31:22 -03:00
Thiago Santos
179e234361
circle: Adds circle element to geometrictransform plugin
...
Adds the new 'circle' element to geometrictransform plugin
2010-06-04 15:31:21 -03:00
Thiago Santos
8eab2c8a30
kaleidoscope: Adds new element 'kaleidoscope'
...
Adds new kaleidoscope element to geometrictransform plugin
2010-06-04 15:31:21 -03:00
Thiago Santos
53d40802d2
gsttwirl: Adds new element twirl
...
Adds a new element to geometrictransform plugin: twirl
2010-06-04 15:31:21 -03:00
Thiago Santos
2f9a630a62
geometrictransform: Adds a intermediary baseclass circlegeometrictransform
...
Adds an intermediary baseclass named gstcirclegeometrictransform
to keep common properties code for filters that operate on
a circular area.
2010-06-04 15:31:20 -03:00
Thiago Santos
dcda4b606c
pinch: Some optimization using the prepare func
...
Small optimization by precalculating the center of the effect,
also use newly added _CAST macro.
2010-06-04 15:31:20 -03:00
Thiago Santos
8c5360a559
geometrictransform: Adds prepare function and cleanup
...
Adds a prepare function to make subclasses precalculate values
that will be used throughout the mapping functions.
Also adds a missing cleanup to fix a memleak
2010-06-04 15:31:19 -03:00
Thiago Santos
6560248be9
geometrictransform: Precalculate mapping array
...
Precalculate when setting caps the warping map to avoid
recalculating it every buffer
2010-06-04 15:31:19 -03:00
Thiago Santos
1250a7406d
geometrictransform: Accept any rgb or gray
...
Using gstvideo functions geometrictransform can handle
rgb or gray, put that on template caps
2010-06-04 15:31:19 -03:00
Thiago Santos
525aae23dc
geometrictransform: Rename some variables for clarity
...
Renames some variables and adds a minimum doc to the
mapping function for a little clarity.
Also uses gstvideo functions for the row and pixel strides
instead of hardcoded values
2010-06-04 15:31:18 -03:00
Thiago Santos
b7660b122c
geometrictransform: New plugin for geometric transforms
...
Adds a new plugin that has elements that perform geometric
transformations to images. By geometric transformations I mean
that the operations are functions that given the output pixel
position, get the pixel position in the input image. This pixel
is then copied from input to output.
The gstgeometrictransform baseclass makes it easy to write
such elements. It boils down to write the mapping function
and exposing properties
Already added the first of the elements, 'pinch'. It's a common
effect in image editors, like gimp (distort -> pinch)
2010-06-04 15:31:18 -03:00
David Schleef
fbbb708e9f
tools: flesh out element-maker templates
2010-06-03 23:57:46 -07:00
David Schleef
90a2cd5cc5
bayer2rgb: handle other bayer formats
2010-06-03 23:57:46 -07:00
David Schleef
2db6d968d8
rgb2bayer: handle multiple bayer formats
2010-06-03 23:57:46 -07:00
David Schleef
5c1eb82b8a
bayer: Add rgb2bayer element
...
Mostly for testing/completeness.
2010-06-03 23:57:45 -07:00
Tim-Philipp Müller
26e9df08b8
shm: fix debug messages
...
Misc. printf format fixes and missing arguments.
2010-06-03 20:51:57 +01:00
Olivier Crête
4556222718
shmsink: Make static function static
2010-06-03 15:27:43 -04:00
Olivier Crête
457b5d8ab7
shm: Use gst_element_class_set_details_simple
2010-06-03 15:27:43 -04:00
Olivier Crête
21686e3077
shm: Move to sys/ since it doesn't exist on windows
2010-06-03 15:27:43 -04:00
Olivier Crête
536e79befd
shmsrc: Fix indentation
2010-06-03 15:27:43 -04:00
Olivier Crête
f26d799676
shmsink: Print errors if fchmod fails
2010-06-03 15:27:43 -04:00
Olivier Crête
b9decbb056
shmpipe: Fix crash when sp_close_shm is called with self == NULL.
...
If sp_open_shm errors out trying to open a shm area, it would crash
when trying to free the area. The RETURN_ERROR macro calls
sp_shm_area_dec with self == NULL. sp_shm_area_dec calls
sp_shm_close, with self == NULL, which it then tries to access a
parameter of without checking. This patch checks to make sure
self != NULL before accessing that parameter.
2010-06-03 15:27:43 -04:00
Olivier Crête
e8b4310aa6
shmpipe: Update code standard
2010-06-03 15:27:43 -04:00
Olivier Crête
c60ef5e81f
shmsrc: Add socket path to error message
2010-06-03 15:27:43 -04:00
Olivier Crête
f366356fdf
shmpipe: Remove wrong test inversion
2010-06-03 15:27:42 -04:00
Olivier Crête
1d893f8157
shmpipe: Verify that accept succeeds
2010-06-03 15:27:42 -04:00
Olivier Crête
d2731d689d
shmpipe: Fix one byte overflow
2010-06-03 15:27:42 -04:00
Olivier Crête
2c02d0c0e4
shmsrc: Improve debug prints
2010-06-03 15:27:42 -04:00
Olivier Crête
5c7a160de5
shmsink: Get potentially modified after opening shmpipe
2010-06-03 15:27:42 -04:00
Olivier Crête
7e8eae9f2a
shm: Try alternate paths for the socket
2010-06-03 15:27:42 -04:00
Olivier Crête
73fa2f9b76
shmpipe: Don't pretend the path is random
2010-06-03 15:27:42 -04:00
Olivier Crête
7c2a445a72
shmpipe: Create shm area exclusively
2010-06-03 15:27:42 -04:00
Olivier Crête
807da2165a
shmalloc: Make it build in non-glib world
2010-06-03 15:27:42 -04:00
Olivier Crête
c8eb511a9d
shmsrc: Make the shmpipe life independant of the element states
2010-06-03 15:27:42 -04:00
Olivier Crête
8f8b50a88e
shmpipe: Simplify handling of random paths
2010-06-03 15:27:42 -04:00
Olivier Crête
23414310a6
shmpipe: Remove useless attrib
2010-06-03 15:27:42 -04:00
Olivier Crête
007a26ac08
shmpipe: Ref client shmarea when a buffer is received in it
2010-06-03 15:27:42 -04:00
Olivier Crête
68c9ed6e5c
shmpipe: Don't dec old shm area when new one is added
...
Its ref will be dropped when the "close" message arrives
2010-06-03 15:27:41 -04:00
Olivier Crête
4f4ba5981b
shmsrc: Lock uses of shmpipe
2010-06-03 15:27:41 -04:00
Olivier Crête
92dccdd170
shmsrc: Add is-live property
2010-06-03 15:27:41 -04:00
Olivier Crête
43de02d25a
shm: Print details on errors
2010-06-03 15:27:41 -04:00
Olivier Crête
f97d02375b
shm: Make valgrind happy
2010-06-03 15:27:41 -04:00
Olivier Crête
663a8eac54
shmsink: Don't block on EOS in non-blocking mode
2010-06-03 15:27:41 -04:00
Olivier Crête
c5797b06ca
shm: Block if required
2010-06-03 15:27:41 -04:00
Olivier Crête
67785f331a
shmsink: Port to ShmPipe
2010-06-03 15:27:41 -04:00
Olivier Crête
b6bc52f961
shmsrc: Port to ShmPipe
2010-06-03 15:27:41 -04:00
Olivier Crête
7e90514747
shm: Add shmpipe implementation
2010-06-03 15:27:41 -04:00
Olivier Crête
e87cd0a29a
shm: Add shm based sink and src
...
These two elements (shmsink and shmsrc) communicate buffers using POSIX
shared memory. They also communicate the caps. The source currently acts as
a live source and ignores the timestamps coming from the sink. It also does
not transfer the tags.
2010-06-03 15:27:41 -04:00