Commit graph

2996 commits

Author SHA1 Message Date
Sebastian Dröge
b1a12c3a2d mpegtsdemux: Don't use liboil functions
glibc memcpy() will be faster than liboil's/orc's for now anyway
and we can use orc's later, after orc has support for loop unrolling.
2010-06-14 14:48:02 +02:00
Sebastian Dröge
3a2f40e160 legacyresample: Don't include liboil headers, they're not used anyway 2010-06-14 14:47:47 +02:00
Mark Nauwelaerts
d6cab72552 h264parse: add option to insert SPS/PPS in stream
Add a new config-interval property to insert SPS and PPS at periodic intervals
in the stream (when an IDR is encountered).

Based on patch by <marc.leeman at gmail.com>

Fixes #620978.
2010-06-14 12:49:40 +02:00
Mark Nauwelaerts
3a1fad6099 h264parse: also collect SPS and PPS nalu in codec_data 2010-06-14 11:59:55 +02:00
Thiago Santos
00897e21a9 jpegformat: Add exif support
Adds exif writing support to jifmux.
Adds parsing support to jpegparse.

Fixes #614872
2010-06-09 17:29:32 -03:00
Thiago Santos
bc8f4adaa6 asfmux: Deprecate 'is-live' and add 'streamable' property
Following the similar change in flvmux, this commit adds
'streamable' property and deprecated 'is-live' for a better/less wrong
name.
2010-06-08 19:37:43 -03:00
Andoni Morales Alastruey
40209aa30f asfmux: don't set the 'seekable' flag if we are streaming
Fixes #618522
2010-06-08 14:50:35 -03:00
Andoni Morales Alastruey
2a94798136 asfmux: write preroll info in the header at initialization
This value doesn't need to be updated and is usefull in a streaming context

Fixes #618522
2010-06-08 14:50:22 -03:00
Andoni Morales Alastruey
0039494227 asfmux: put headers in streamheader for streaming
Fixes #618522
2010-06-08 14:49:30 -03:00
Marc-André Lureau
43f8e926e7 mpegtsmux: start pmt at 0x020 as suggested by Zaheer 2010-06-08 15:36:47 +02:00
Marc-André Lureau
d335a55b49 mpegtsmux: take all the pmt in the streamheaders 2010-06-08 15:36:29 +02:00
Thiago Santos
233b09f9b9 camerabin: Do not assert on set_property to NULL for elements
Check if the value is NULL before reffing them in set_property
for 'GstElement' properties
2010-06-08 09:14:01 -03:00
Thiago Santos
7806ba95b6 camerabin: Do not assert on null caps property
If camerabin receives a null caps as 'filter-caps' argument,
use the default value
2010-06-08 08:41:49 -03:00
Thiago Santos
4fa3e217e2 geometrictransform: Use _CAST macro
Replace default type casting macro with the faster direct _CAST macro
2010-06-07 22:56:17 -03:00
Thiago Santos
1c33b79c0c geometrictransform: Make properties controllable
Makes the element's properties controllable and threadsafe.

Fixes #620825
2010-06-07 22:55:24 -03:00
Olivier Crête
dd13e85ca1 dtmfdetect: Only works with rate=8000, fix in caps 2010-06-07 11:15:26 -04:00
Thiago Santos
72590ad056 camerabin: Fix crash in 'filename' property
Do not crash when filename property is set to NULL, use an
empty string instead.
2010-06-07 07:58:22 -03:00
Thiago Santos
017808ef8d marble: Adds 'marble' element to geometrictransform
Adds a new element that does a marbling effect to
geometrictransform plugin
2010-06-06 22:38:34 -03:00
Thiago Santos
a45a1d70dd geometrictransform: Use explicit formats from gstvideo
Use explicit format macros from gstvideo to avoid exposing
unsupported formats on template pads. Using the macros
also give us complete caps (width/height/framerate).

And add support for AYUV.

Fixes #620717
2010-06-06 14:35:44 -03:00
Thiago Santos
9f6cbc889b diffuse: Adds diffuse element to geometrictransform
Adds the 'diffuse' element to geometrictransform. It moves
the pixels of the image in random directions
2010-06-06 13:00:45 -03:00
Thiago Santos
e7d417f4fc geometrictransform: Make map precalculation optional
Adds a variable to be set to allow subclasses to enable
or disable precalculation of the pixels mapping
2010-06-06 13:00:44 -03:00
Sebastian Dröge
547f037ea4 rtmp: Move to ext and drop internal librtmp copy
We really don't want this in gst-plugins-bad because of
legal complexities around RTMP and possible problems
for distributions.

Add README that explains how to build librtmp to be suitable
for linking to the GStreamer plugin.
2010-06-05 18:02:39 +02:00
Bastien Nocera
b87668e143 rtmp: Add RTMP source plugin
https://bugzilla.gnome.org/show_bug.cgi?id=566604
2010-06-05 18:02:39 +02:00
Thiago Santos
581b63c678 geometrictransform: Set output buffer data to 0
Initialize output buffer data to 0 before doing the
transform.
2010-06-05 11:04:45 -03:00
Thiago Santos
964c71b7c6 geometrictransform: Descriptions and default values
Improve some properties and element descriptions and changes
some default properties values.
2010-06-05 10:58:00 -03:00
Thiago Santos
44d33ee1c8 geometrictransform: Remove trailing whitespace
Remove trailing whitespace from geometrictransform files
2010-06-04 15:53:20 -03:00
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
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