Commit graph

2967 commits

Author SHA1 Message Date
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
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
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
Arun Raghavan
e5a37377ae mpegtsdemux: Some checks to avoid asserts
gst_mpeg_descriptor_find() expects the description field to be non-NULL.
This fixes a couple of calls where the value being passed is not
verified to be non-NULL first.

https://bugzilla.gnome.org/show_bug.cgi?id=620456
2010-06-03 20:11:29 +02:00
Tim-Philipp Müller
ca5893e804 rtpmux: fix missing debug log message argument 2010-06-03 10:43:20 +01:00
David Schleef
76f136375c invtelecine: add an assert to placate gcc-4.5 2010-06-02 22:07:31 -07:00
Olivier Crête
63c509b13e rtpdtmfmux: Add some debug messages 2010-06-02 20:47:08 -04:00
Olivier Crête
2a39f410c1 rtpdtmfmux: Remove stream-lock event handling 2010-06-02 20:47:08 -04:00
Olivier Crête
e884e70f8e rtpdtmfmux: Update doc for simplification 2010-06-02 20:47:08 -04:00
Olivier Crête
0528e09974 dtmf: Remove rtpdtmfmux stream-lock code 2010-06-02 20:47:08 -04:00
Olivier Crête
136d4688c0 rtpdtmfmux: Drop buffers on non-priority sinks when something is incoming on the priority sink 2010-06-02 20:47:08 -04:00
Olivier Crête
3f3f72889a rtpdtmfmux: Add priority sink pads 2010-06-02 20:47:08 -04:00
Olivier Crête
60b4c4ef4b rtpdtmfmux: Cleanup event function 2010-06-02 20:47:07 -04:00
Olivier Crête
68df62aa55 rtpmux: Aggregate incoming segments 2010-06-02 20:47:07 -04:00
Olivier Crête
e967023810 rtpdtmfmux: Update documentation 2010-06-02 20:47:07 -04:00
Olivier Crête
1c03b56146 rtpmux: Simplify request pad creation 2010-06-02 20:47:07 -04:00
David Schleef
d13b2b8287 Merge branch 'hacking' 2010-06-02 11:31:26 -07:00
David Schleef
6ceb310dc6 invtelecine: Add verify-field-flags property
When enabled, check that the video matches the field flags on the
incoming buffers.
2010-06-02 11:30:44 -07:00
David Schleef
88f4a6a0ed invtelecine: remove old code 2010-06-02 11:30:32 -07:00
David Schleef
c439a6bc36 invtelecine: Add 4:2:2 formats 2010-06-02 11:29:57 -07:00
David Schleef
750cdc912b invtelecine: Change format table
Add format name, phase table.
2010-06-02 11:29:05 -07:00
David Schleef
b213b03804 invtelecine: Add multiple pulldown formats 2010-06-02 11:26:41 -07:00
David Schleef
00174c8fa8 invtelecine: handle different frame sizes 2010-06-02 11:26:41 -07:00
Руслан Ижбулатов
a7fe2c391c ivfparse: Fix format string warning
Fixes #620324
2010-06-02 10:06:26 +02:00
Sebastian Dröge
1a95b29115 ivfparse: Send an initial NEWSEGMENT event 2010-06-01 11:19:46 +02:00
Sebastian Dröge
820c8f9ed1 ivfparse: Integrate into the build system 2010-06-01 11:19:46 +02:00
Sebastian Dröge
d1e3217be8 ivfparse: Add simple IVF parser
This only supports VP8 so far.
Fixes bug #619158.
2010-06-01 11:19:45 +02:00
Tim-Philipp Müller
cbd74ceff4 mpegvideoparse: change profile and level strings to something nicer-looking
This is more in line with what we do elsewhere, even if it doesn't
resemble the offical abbreviations exactly.

See #616078.
2010-05-28 12:50:01 +01:00
Mark Nauwelaerts
413716d1d9 h264parse: plug a few memory leaks
Fixes #619617.
2010-05-28 12:36:23 +01:00
Zaheer Abbas Merali
721643431e mpegvideoparse: fix crash if downstream is unliked
mpeg_packetizer_get_block() in some circumstances (here: if
downstream was unlinked) returns a block but does not set the
buffer causing mpegvideoparse_drain_avail() to cause invalid memory
access.

Fixes #619502.
2010-05-25 00:29:58 +01:00
Thiago Santos
c6e77c3d03 Removing remaining gstapp*
There are some remaining gstapp* living unlinked from the build scripts.
Remove them.
2010-05-24 20:03:21 -03:00
Sebastian Pölsterl
58b926b978 mpegtspacketizer: fix minor memory leak
Don't leak language code.

Fixes #619444.
2010-05-23 19:20:31 +01:00
David Schleef
c3d4977761 Split out GST_PLUGINS_BAD_CFLAGS from GST_CFLAGS
Move include directives for gst-libs into GST_PLUGINS_BAD_CFLAGS,
and fix all the Makefiles that use it.  This is so that all the
include directories are added in the proper order: first the
directories in srcdir/builddir, then gst-plugins-base dirs, then
gstreamer dirs.  If the order is wrong, installed headers may be
used instead of local headers and/or uninstalled headers from -base.
2010-05-19 18:24:02 -07:00
David Schleef
d1cfc50507 qtmux: Add VP8 2010-05-19 19:24:04 +02:00
Alessandro Decina
2441c79afa h264parse: fix wrong timestamps in some cases after seeking.
Reset ->last_outbuf_dts on flush-stop. Fixes #619064.
2010-05-19 11:18:28 +02:00
Zaheer Abbas Merali
5208d030b3 mpegtsdemux: fix memory corruption when parsing adaptation field 2010-05-17 16:26:03 +01:00
Sebastian Dröge
f09a8893c1 festival: Only close the connection if it's opened 2010-05-13 14:43:28 +02:00
Ivan Zderadicka
41bba48ccb festival: Don't open an infinite number of connections to the server and close connections
Fixes bug #618527.
2010-05-13 14:43:28 +02:00
Joshua M. Doe
59fddc9237 frei0r: Fix setting of boolean values
Setting boolean type parameters from gst-launch failed because of improper handling of type conversions.

Fixes bug #618388.
2010-05-12 18:18:46 +02:00
Zaheer Abbas Merali
d2bd939899 mpegtsparse: parse TDT table in mpegts.
Some tables in MPEG-TS do not have a crc in the spec, so also mpegtsparse
is not calculating crc for sections with table_id 0x70 - 0x72 because they
do not have a CRC in the spec. See EN300468. Parse Time and Date table and
output bus message.
2010-05-12 13:00:16 +02:00
Tim-Philipp Müller
bb93d06ca0 Remove imagefreeze plugin/element.
It has been moved to gst-plugins-good.

See #613786.
2010-05-11 14:02:33 +01:00
Tim-Philipp Müller
ee063478ff Remove capssetter element
It has been moved to gst-plugins-good.

See #617739.
2010-05-11 13:08:41 +01:00
Stefan Kost
418a791868 jpegformat: make the intention of the elements more clear 2010-05-07 22:53:17 +03:00
Thiago Santos
20a8666388 Revert "jifmux: Merge xmp and tagsetter tags."
This reverts commit 4e5c412234.

jifmux shouldn't be able to handle jif and shouldn't expect
any xmp on its data. So, no need to handle them.
2010-05-07 14:00:03 -03:00
Thiago Santos
4e5c412234 jifmux: Merge xmp and tagsetter tags.
When the current file already has tags, they shouldn't be ignored,
parse them and merge with the tagsetter ones.
2010-05-07 12:42:23 -03:00
Thiago Santos
a9e4c64efa jifmux: Reject buffers without caps
jifmux expects whole jpeg pictures in buffers, so it should
reject buffers without caps.
2010-05-07 11:07:34 -03:00
Thiago Santos
72fdd708cf jifmux: Be safe and check bytewriter returns
Check GstByteWriter returns to know when recombining the image
failed and log a warning.
2010-05-07 10:59:22 -03:00
Thiago Santos
0d637e4f09 jifmux: Avoid adding 2 xmp packets
jifmux was only appending a new xmp packet to the stream,
it should replace if there is already one.
2010-05-07 10:13:54 -03:00
Sebastian Dröge
860d5e7efe capssetter: Some minor cleanup 2010-05-06 13:12:32 +02:00
Sebastian Dröge
1f6688b1a1 imagefreeze: Set fixed caps on the correct pad
This makes the sink getcaps function actually used instead of using
the fixed caps function for it.
2010-05-05 12:25:08 +02:00
Mark Nauwelaerts
d68a4c1dcc jpegparse: improve buffer scanning
Specifically, when scanning for entropy data segment length and needing
more data, do not rescan from start next time around, but resume at
last position.

See also #583047.
2010-04-30 19:53:57 +02:00
Руслан Ижбулатов
5f25780b02 Fix printf format strings for gcc 4.5
Done on Windows/MinGW.

Fixes #617146
2010-04-29 10:17:56 +02:00
Lasse Laukkanen
30ff3bc098 camerabin: add meaningful names for queue elements inside camerabin 2010-04-21 12:25:39 +03:00
Mark Nauwelaerts
00148e3736 mpeg4videoparse: also set short configuration data in codec_data
That is, header configuration may start at Video Object (startcode),
rather than at Visual Object Sequence, which is catered for and parsed,
so let's also take it as codec_data if no more available.

Fixes (remainder of) #572551.
2010-04-20 15:39:07 +02:00
Thiago Santos
c4aaab2d59 camerabin: Avoid crashing when setting zoom in NULL
Avoid setting zoom in NULL state because the source is not
set yet and this leads to a crash. It is set on READY > PAUSED
anyway.
2010-04-19 19:06:39 -03:00
Arun Raghavan
bf586d7966 mpegvideoparse: Export profile and level in caps
This exports profile and level in caps for MPEG 2 streams.

https://bugzilla.gnome.org/show_bug.cgi?id=616078
2010-04-18 12:50:26 +02:00
Sebastian Dröge
5a51dbd093 mpegdemux: Use GST_FLOW_CUSTOM_SUCCESS instead of some integer
Fixes compiler warning with gcc 4.5.
2010-04-16 19:43:59 +02:00
Sebastian Dröge
2908515bd4 Revert "mpegpsdemux: Workaround new gcc 4.5 compiler warning"
This reverts commit a331228ecc.
2010-04-16 19:42:00 +02:00
Sebastian Dröge
a331228ecc mpegpsdemux: Workaround new gcc 4.5 compiler warning
gcc 4.5 warns when comparing some integer with an enum value, in
the case of GstFlowReturn this is valid though. We should later
add GST_FLOW_CUSTOM_OK1, GST_FLOW_CUSTOM_OK2, etc. after new core
is released.
2010-04-15 21:26:45 +02:00
Sebastian Dröge
1f102af33d cdxaparse: Compare the correct variable to GST_SEEK_TYPE_SET 2010-04-15 20:50:58 +02:00