Thijs Vermeir
96a7f9c8b1
mpegvideoparse: accelerate search for start code
...
As the startcode always starts with 0x000001 some iterations
can be skipped if values > 1 are detected.
~ 70% faster on HD video stream.
https://bugzilla.gnome.org/show_bug.cgi?id=632130
2010-10-14 18:52:27 +02:00
Mark Nauwelaerts
9f4339c059
ac3parse: properly parse e-ac3 frame header
...
Also add a few debug statements.
2010-10-14 16:53:01 +02:00
Mark Nauwelaerts
231d4d9bdc
qtmux: prevent infinite loop when adjusting framerate
...
Fixes #632070 .
2010-10-13 17:48:34 +02:00
Thiago Santos
461db47e87
geometrictransform: Adds rotate element
...
Adds a new rotate element to geometrictransform. It still
needs some work. But this is a good starting point.
Based on patch from Bert Douglas <bertd tplogic com>
2010-10-13 12:14:36 -03:00
Mark Nauwelaerts
697419b755
flacparse: tweak setting buffer metadata; avoid timestamp jitter
...
Fixes #631993 .
2010-10-13 11:01:13 +02:00
Mark Nauwelaerts
9b9d8a516b
aacparse: streamline src caps setting
...
In particular, also set src caps whenever changes in stream warrant doing so.
2010-10-12 18:19:49 +02:00
Sebastian Dröge
f576c3f128
flacparse: Don't drop the last frame if it is followed by garbage
...
See bug #631814 .
2010-10-12 10:31:41 +02:00
Mark Nauwelaerts
6e1d65d788
baseparse: perform bitrate handling and posting after newsegment sending
2010-10-11 17:50:21 +02:00
Mark Nauwelaerts
30feca6966
baseparse: immediately post subclass provided bitrate
2010-10-11 17:42:09 +02:00
Mark Nauwelaerts
11bdf1def1
flacparse: fix parsing with unknown framesizes
...
Fixes #631814 (mostly).
2010-10-11 17:13:27 +02:00
Sebastian Dröge
812075dc5d
flacparse: Simplify frame header parsing by using lookup tables
...
Based on a patch by Felipe Contreras.
See bug #631200 .
2010-10-07 23:38:26 +02:00
Sebastian Dröge
64407ca94b
flacparse: Don't parse the complete FLAC frames but only look for valid frame headers
...
Thanks to Felipe Contreras for the suggestion. This is partially
based on his patches and makes flacparse more than 3.5 times faster.
Looking for valid frame headers is unlikely to give false positives
because every frame header is at least 9 bytes long, contains a
14 bit sync code and a 8 bit checksum over the first 8 bytes.
Fixes bug #631200 .
2010-10-07 23:38:25 +02:00
Mark Nauwelaerts
1617616516
sdpdemux: workaround internal rtspsrc failing state change
...
Fixes #630046 .
2010-10-07 12:00:38 +02:00
Sebastian Dröge
77c05b5419
audioparse: Add support for setting the channel-positions
2010-10-07 10:34:48 +02:00
Sebastian Dröge
396501784c
flacparse: Really post tags only after the initial newsegment event
...
The first newsegment event will be send by the first call to
gst_base_parse_push_buffer() if necessary, posting the tags
before that is not a good idea. Instead do it from the
GstBaseParse::pre_push_buffer vfunc.
2010-10-06 18:32:51 +02:00
Sebastian Dröge
59720fd42a
chromahold: Fix hue calculation for red colors
...
Also make the calculation much more accurate...
2010-10-06 16:54:16 +02:00
Sebastian Dröge
10e0187df1
chromahold: Make everything greyscale if the target color is grey
2010-10-06 15:21:09 +02:00
Sebastian Dröge
fa2a4af5bb
chromahold: Add chromahold color effect
...
This effect converts all colors except a single one to
grey. The color is selected by an RGB triple and a
tolerance for the color matching in hue degree can be specified.
2010-10-06 11:57:12 +02:00
Mark Nauwelaerts
e0cb15cea0
sdpdemux: fix and reflow some exits
2010-10-05 17:21:22 +02:00
Mark Nauwelaerts
216887d599
sdpdemux: error out if no streams found in sdp message
2010-10-05 17:08:21 +02:00
Mark Nauwelaerts
6c96f8cf1e
sdpdemux: unbreak standard manager setup
2010-10-05 17:08:19 +02:00
Tim-Philipp Müller
716e430fd5
Revert "baseparse: add skip property"
...
This reverts commit b5a3d60363
.
Reverting this for now, since no one really seems to remember why this
property exists or what it could possibly be good for. It seems to have
been in the original mp3parse since the beginning of time and was back-
ported from there.
2010-10-05 11:17:52 +01:00
Sebastian Dröge
7e581aebe2
flacparse: Fix uninitialized variable compiler warnings
...
These warnings are wrong, the variables are only used if they were
initialized by the bit reader.
2010-10-04 10:41:52 +02:00
Felipe Contreras
b6f1e8aa68
flacparse: fix picture parsing
...
Signed-off-by: Felipe Contreras <felipe.contreras@gmail.com>
2010-10-04 08:09:57 +02:00
Sebastian Dröge
65f620af8e
flacparse: Push tags before the header buffers are pushed
2010-10-04 08:09:57 +02:00
Felipe Contreras
1a49b4de63
flacparse: trivial caps fix
...
Signed-off-by: Felipe Contreras <felipe.contreras@gmail.com>
2010-10-04 08:09:56 +02:00
Thiago Santos
4697cffbee
qtmux: Add G_PARAM_STATIC_STRINGS
...
Add G_PARAM_STATIC_STRINGS to qtmux properties
2010-10-03 23:47:29 -03:00
Sebastian Dröge
26b2c4a1b3
audioparser: Let the format string agree with the parameters to fix compiler warning
2010-10-03 23:50:29 +02:00
Sebastian Dröge
4903e140e2
ac3parse: Use unchecked versions of the bitreader get functions
...
We didn't check the return values anyway...
2010-10-03 15:42:17 +02:00
Stefan Kost
7ae63847a8
valve: no need to ref the object in _chain
...
Don't ref the pad in chain, like elsewhere
2010-10-02 18:27:14 +03:00
Arun Raghavan
2d699010e9
baseparse: Fix debug output
...
We lose the reference to the buffer after gst_pad_push(), so the debug
print should happen before.
https://bugzilla.gnome.org/show_bug.cgi?id=622276
2010-10-01 13:31:36 +02:00
Mark Nauwelaerts
ad1304dcf1
baseparse: support reverse playback
...
... in pull mode or upstream driven.
2010-10-01 12:15:52 +02:00
Mark Nauwelaerts
603d6ba183
baseparse: remove done TODOs and update documentation
2010-10-01 12:15:52 +02:00
Mark Nauwelaerts
fdff382686
baseparse: use determined seekability in answering SEEKING query
2010-10-01 12:15:52 +02:00
Mark Nauwelaerts
b5a3d60363
baseparse: add skip property
2010-10-01 12:15:52 +02:00
Mark Nauwelaerts
8d7720eb93
mpegaudioparse: initial version
...
... adequately equivalent to mp3parse, so lets boldly set it
to higher rank.
2010-10-01 12:15:51 +02:00
Mark Nauwelaerts
d7b31821ea
aacparse: set minimum frame size at _start
...
... rather than one time at _init.
2010-10-01 12:15:51 +02:00
Mark Nauwelaerts
36165d8d44
baseparse: use _set_frame_props to configure frame lead_in and lead_out
...
... provided a corresponding decoder with sufficient leading and following
frames to carry out full decoding for a particular segment.
2010-10-01 12:15:51 +02:00
Mark Nauwelaerts
13f85c8f11
baseparse: use _set_duration to configure duration update interval
...
... as it logically belongs there as one or the other; either subclass
can provide a duration, or an estimate must be made (reguarly updated).
2010-10-01 12:15:51 +02:00
Mark Nauwelaerts
eb9ba9e115
baseparse: localize use of provided fps information
2010-10-01 12:15:50 +02:00
Mark Nauwelaerts
def0aadb81
baseparse: seek table and accurate seek support
2010-10-01 12:15:50 +02:00
Mark Nauwelaerts
174d2d46fc
baseparse: proper and more extended segment and seek handling
...
That is, loop pause handling, segment seek support, newsegment for gaps, etc
2010-10-01 12:15:50 +02:00
Mark Nauwelaerts
ec195ab2e5
baseparse: add index support
2010-10-01 12:15:50 +02:00
Mark Nauwelaerts
80646f5555
baseparse: refactor state reset
2010-10-01 12:15:49 +02:00
Mark Nauwelaerts
ad95a79de3
baseparse: prevent indefinite resyncing
2010-10-01 12:15:49 +02:00
Mark Nauwelaerts
1c14fd0a31
baseparse: specific EOS handling if no output so far
2010-10-01 12:15:49 +02:00
Mark Nauwelaerts
a1c072e0aa
baseparse: adjust _set_frame_prop documentation and set default as claimed
2010-10-01 12:15:49 +02:00
Mark Nauwelaerts
cf159041a7
baseparse: fix bitrate copy-and-paste and update heuristic
2010-10-01 12:15:49 +02:00
Mark Nauwelaerts
80ba9a1a3e
baseparse: post duration message if average bitrates is updated
2010-10-01 12:15:48 +02:00
Mark Nauwelaerts
4dff7c81d6
baseparse: remove is_seekable vmethod and use a set_seek instead
...
Seekability, like duration, etc is unlikely to change (frequently), and
the default assumption covers most cases, so let subclass set when needed.
At the same time, allow subclass to indicate if it has seek-metadata (table)
available, and possibly have it provide an average bitrate.
2010-10-01 12:15:48 +02:00
Mark Nauwelaerts
c516bf8679
ac3parse: remove redundant default is_seekable
2010-10-01 12:15:48 +02:00
Mark Nauwelaerts
582b756bc1
baseparse: add another hook for subclass prior to pushing buffer
...
... and allow subclass to perform custom segment clipping, or to
emit tags or messages at this time.
2010-10-01 12:15:48 +02:00
Mark Nauwelaerts
ea7e051827
baseparse: 0 converts to 0 by default
2010-10-01 12:15:47 +02:00
Mark Nauwelaerts
2e7de32849
basepase: refactor conversion using helper function and export default convert
2010-10-01 12:15:47 +02:00
Mark Nauwelaerts
420121705d
baseparse: streamline query handling
2010-10-01 12:15:47 +02:00
Mark Nauwelaerts
a1f51f3d17
baseparse: cleanup struct and remove unused member
2010-10-01 12:15:47 +02:00
Mark Nauwelaerts
b0d62f4182
audioparsers: increase ranks to enable auto-plugging
...
Because we can, and should, have some shakedown testing before having
these make it into -good later on ...
2010-10-01 12:15:46 +02:00
Arun Raghavan
2978216db1
baseparse: Allow chaining of subclass event handlers
...
This allows the child class to chain its event handler with
GstBaseParse, so that subclasses don't have to duplicate all the default
event handling logic.
https://bugzilla.gnome.org/show_bug.cgi?id=622276
2010-10-01 12:15:46 +02:00
Olivier Crête
9246ed081e
valve: Make the drop variable into an atomic.
...
Using an atomic allows us to avoid locking the whole object all time time.
As suggested by Stefan Kost.
2010-09-30 16:26:19 -04:00
Olivier Crête
0af7cc8ba7
valve: Correctly set the DISCONT flag after dropping buffers
2010-09-30 16:22:04 -04:00
Olivier Crête
18ed4bafb9
valve: Remove superflous checking casts
2010-09-30 16:16:47 -04:00
Olivier Crête
5656523162
valve: Fix style, improve comments
...
Minor improvements to the comments and break a few overly long lines
2010-09-30 16:13:23 -04:00
Olivier Crête
51887b934f
rtpmux: Improve documentation
...
Add an example pipeline, and try to explain a bit more what it does.
2010-09-30 16:07:29 -04:00
Thiago Santos
5cb8164938
camerabin: Do not wrongly fail when starting a capture
...
If the elements are in NULL/READY and changing state to
PAUSED/PLAYING while a capture is started
camerabin might not set the active_bin properly causing the
capture start to fail.
This patch fixes it by checking the current and pending state
of the branches instead of only the current one
2010-09-29 18:42:27 -03:00
Sebastian Dröge
4e43e8bc67
frei0r: Use static caps instead of converting strings to caps all the time
2010-09-28 16:20:50 +02:00
Sebastian Dröge
498620d16c
frei0r: Fix crashes if plugins don't provide correct property information
...
The vertigo plugin for example claims to have 3 properties but
the 3rd property does nothing and has a NULL name.
Fixes bug #630783 .
Thanks to Martti Kühne for debugging this.
2010-09-28 16:16:31 +02:00
Stefan Kost
d0d4055732
valve: move default: parst in the switch statement to the end
...
Now sure if it matters, but the previous form looks weired.
2010-09-28 14:27:17 +03:00
Stefan Kost
5fa5e2d777
valve: move debug-category registration to type init
2010-09-28 14:23:40 +03:00
Stefan Kost
69ea2ec2ba
liveadder: move debug-category registration to type init
2010-09-28 14:23:40 +03:00
Stefan Kost
afa30fb8ea
liveadder: GST_BOILERPLATE already sets parent_class
2010-09-28 14:23:40 +03:00
Stefan Kost
7bd3e239a5
liveadder: use base_init for pad_templates and element_details
2010-09-28 14:23:40 +03:00
Stefan Kost
7e63d37f1c
liveadder: use G_PARAM_STATIC_STRINGS on properties
2010-09-28 14:23:40 +03:00
Stefan Kost
ccf35a80a0
valve: use G_PARAM_STATIC_STRINGS on properties
2010-09-28 14:23:40 +03:00
Stefan Kost
636ca1adde
valve: GST_BOILERPLATE already sets parent_class
2010-09-28 14:10:18 +03:00
Stefan Kost
3958f8371e
videomeassure: GST_BOILERPLATE already sets parent_class
2010-09-28 14:10:18 +03:00
Hu Gang
8f26b414fa
photography: extend photography iface
...
Add more color tone modes and add NoseReduction settings.
Fixes #616814 .
2010-09-28 11:37:47 +03:00
Sebastian Dröge
8dc7347d65
frei0r: Fix scanning of plugin subdirectories and support different vendors
...
The frei0r spec specifies, that plugins can be in subdirectories inside
the main plugin directories to introduce new namespaces called vendors.
2010-09-25 10:46:34 +02:00
Sebastian Dröge
bf74bcc1af
frei0r: Update frei0r interface specification to 1.2
2010-09-24 22:47:01 +02:00
Sebastian Dröge
addf308add
frei0r: Add support for the FREI0R_PATH environment variable
...
This was added in version 1.2 of the spec and replaces the default
list of directories.
2010-09-24 22:43:51 +02:00
Lasse Laukkanen
4ebdd9b5ac
fpsdisplaysink: initialize interval_ts and last_frames_* counters
...
Initialize interval_ts to first QOS event timestamp, otherwise the
fps statistics are printed always after one rendered frame.
Also, initialize last_frames_* counters, the values are bogus e.g. after
PLAYING-NULL-PLAYING state change.
2010-09-24 08:21:00 -03:00
Stefan Kost
a6b26cac65
rtpdtmfmux: remove unused variable
2010-09-24 13:30:30 +03:00
Stefan Kost
207aac1cec
rtpdtmfmux: remove unused signal boilerplate
2010-09-24 13:30:30 +03:00
Stefan Kost
1d11da647f
rtpmux: no need to ref pad in _chain()
2010-09-24 13:30:30 +03:00
Thiago Santos
b8afa0cc3c
camerabin: Adds new video-colorspace-flag to flags
...
Adds a new flag to allow a colorspace convertion before
the video encoder element.
Fixes #603063
2010-09-22 23:47:08 -03:00
Thiago Santos
0a7ae539ea
camerabin: Use link_full version for disabling hierarchy check
...
Disable hierarchy checks when linking because we are already
handling the element adding to bins and it should be done
correctly.
2010-09-22 23:47:08 -03:00
Thiago Santos
e893a8b82e
camerabin: Set queues to silent
...
We currently don't use queues' signals, so set them
to silent.
2010-09-22 23:47:08 -03:00
Wim Taymans
c905ec861e
pcapparse: fix weird caps code
...
Remove the weird (failing) code to figure out caps on the srcpad.
Add a caps property to decide what caps to put on the outgoing buffers.
Fix an event leak.
2010-09-22 16:43:21 +02:00
David Schleef
8e96a3393d
colorspace: quiet a GST_ERROR
2010-09-21 18:16:08 -07:00
Wim Taymans
528f6e0573
sdpdemux: add property to disable redirect
...
Add a property to avoid redirection to the rtsp-sdp:// url but instead embeds an
rtspsrc element inside sdpdemux as the session manager.
Based on patch by Marco Ballesio.
Fixes #630046
2010-09-21 19:15:27 +02:00
Sebastian Dröge
21d74bb58d
ttaparse: Don't post an error message on UNEXPECTED
...
Also don't use GST_FLOW_IS_FATAL()
2010-09-21 12:26:36 +02:00
Sebastian Dröge
d4782cbff8
sdpdemux: Don't use GST_FLOW_IS_SUCCESS()
2010-09-21 12:26:36 +02:00
Sebastian Dröge
793a3563fa
rawparse: Don't use GST_FLOW_IS_FATAL()
2010-09-21 12:26:36 +02:00
Sebastian Dröge
f6014febc0
nuvdemux: Don't use GST_FLOW_IS_FATAL()
...
And don't post an error message for WRONG_STATE or UNEXPECTED.
2010-09-21 12:26:35 +02:00
Sebastian Dröge
d95bb66074
nsf: Don't use GST_FLOW_IS_FATAL()
2010-09-21 12:26:35 +02:00
Sebastian Dröge
dd8ae4e027
mxfdemux: Don't use GST_FLOW_IS_FATAL()
2010-09-21 12:26:35 +02:00
Sebastian Dröge
f6713f9c3b
mvedemux: Add proper flow return aggregation
...
NOT_LINKED should only be returned if all streams returned NOT_LINKED.
2010-09-21 12:26:35 +02:00
Sebastian Dröge
f407d51ae8
mpegdemux: Don't use GST_FLOW_IS_FATAL()
...
And fix some minor issues related to its usage.
2010-09-21 12:26:35 +02:00
Sebastian Dröge
dab5cbb1c0
autoconvert: Don't use GST_FLOW_IS_FATAL()
2010-09-21 12:26:35 +02:00
Sebastian Dröge
2c6372f41a
baseparse: Don't use GST_FLOW_IS_FATAL()
...
Also don't post an error message for UNEXPECTED and do it
for NOT_LINKED.
2010-09-21 12:26:34 +02:00
Sebastian Dröge
b68a1e805d
asfparse: Don't use GST_FLOW_IS_FATAL()
...
Also don't push EOS downstream on WRONG_STATE, it will be dropped anyway.
2010-09-21 12:26:34 +02:00
Sebastian Dröge
f2affc667f
aiffparse: Don't use GST_FLOW_IS_FATAL()
2010-09-21 12:25:53 +02:00
Thiago Santos
30ff1ea346
camerabin: Mention photography interface in docs
...
Add a note to docs about getting the videosource and accessing
its photography interface (in case it has it)
Fixes #616923
2010-09-20 21:49:35 -03:00
Lasse Laukkanen
5767739431
camerabin: Adds missing variable initialization
...
Adds missing app_src_vid initialization
2010-09-20 21:22:55 -03:00
Teemu Katajisto
e6141120d8
camerabin: check state change to playing for imagebin and videobin
...
Properly check and handle error cases related to imagebin and
videobin state changes.
2010-09-20 21:21:58 -03:00
Thiago Santos
5355a3efd7
camerabin: Remove useless src template pad
...
camerabin imagebin doesn't need a src template pad.
2010-09-20 21:21:58 -03:00
Thiago Santos
9c3692cc4f
camerabin: Forward tag events to preview pipeline
...
Forward tag events from image pipeline to preview pipeline so
that preview elements can use capture tags information
2010-09-20 21:21:58 -03:00
Hoseok Chang
f0f8df1a30
camerabin: add "preview-source-filter" property
...
Adds 'preview-source-filter' for adding an element to proccess
the preview images before posting them to the bus.
2010-09-20 20:46:00 -03:00
Thiago Santos
44fa17b036
camerabin: Make block-after-capture resetting more consistent
...
Adds another boolean to help controlling viewfinder blocking,
making it possible for the applications to reset the viewfinder
blocking after capture was started but before the blocking
actually happens.
2010-09-20 18:26:48 -03:00
Thiago Santos
87d600b7a2
camerabin: Unblock the viewfinder when going to READY
...
Unblock the viewfinder when going to ready to avoid
blocking when setting camerabin to playing again and
attemping to capture. Keep the property as is.
2010-09-20 18:26:48 -03:00
Thiago Santos
ca11a51295
camerabin: add monitoring and support for photoiface zoom for video-source
...
Makes camerabin aware of changes in its videosource zoom property.
2010-09-20 18:26:48 -03:00
Thiago Santos
19981f2787
camerabin: Change zoom property from int to float
...
Updates zoom property for a more natural type and
makes it consistent with the photography API
2010-09-20 18:26:48 -03:00
Lasse Laukkanen
3e6a4edb15
camerabin: remove caching photography interface settings
...
Camerabin doesn't implement photography interface, so we
don't need caching the video source properties anymore.
2010-09-20 18:26:48 -03:00
Teemu Katajisto
3582a4a595
camerabin: remove photography interface implementation from camerabin
...
Remove notify signal proxy for video-source. Application can use
video-source directly from now on to get notified of property changes.
Add monitoring scene-mode property change to select lowest possible
framerate for video capture when night mode is selected.
Fixes #616923
2010-09-20 18:26:47 -03:00
David Schleef
f464ac4d5d
invtelecine: Fix name of 30p/60i pattern
2010-09-18 19:27:07 -07:00
David Schleef
8dfcc11bcb
interlace: Add allow-rff property. Fix timestamping
2010-09-18 15:05:26 -07:00
David Schleef
fd3d269b8d
interlace: merge telecine into normal operation
2010-09-18 14:58:04 -07:00
Robert Swain
351562936c
interlace: Add telecine support
2010-09-18 14:58:04 -07:00
Thiago Santos
8047346898
qtmux: Follow xmp serialization guidelines closer
...
qt and isom variants have different ways of serializing
xmp, follow these guidelines.
Those can be found in Adobe's xmp docs.
2010-09-15 22:07:05 -03:00
Tim-Philipp Müller
42ffb8a4f3
colorspace: add orc-dist files
...
Should fix build without orc or too old orc.
2010-09-15 21:48:20 +01:00
Tim-Philipp Müller
af7887f0df
checksumsink: fix up copyright in header file
2010-09-15 17:52:16 +01:00
David Schleef
5b6550dbd5
bayer2rgb: Add format=bggr/etc. to caps
2010-09-14 12:00:32 -07:00
David Schleef
742867566c
colorspace: Add conversion code
...
Work in progress. Colorspace handles most format conversion using
3-stage getline/matrix/putline process using an AYUV or ARGB
intermediate, with most functions handled by Orc. There is also
a table of single-pass conversions, all handled by Orc. The plan
is to add optional stages for various chroma upsampling/downsampling
algorithms, dithering, and float/int16 intermediates, and then have
Orc create multi-stage functions at runtime.
2010-09-14 12:00:29 -07:00
David Schleef
a25a81222d
colorspace: Revive element
...
Now based on Orc.
2010-09-14 11:32:19 -07:00
Thiago Santos
3a9734f3dc
jifmux: Reset tags when going to READY
...
Reset the tagsetter tags when going to READY state
2010-09-10 13:39:06 -03:00
Thiago Santos
2a0ae1ce1d
jpegformat: Fix element description
...
Use saner categories for jifmux/jpegparse elements
2010-09-10 13:39:06 -03:00
Thiago Santos
fb00b71496
camerabin: Set tags to more elements
...
Remove check for 'Muxer' category when setting tags
for tagsetters. Set them to all tagsetters in the
pipelines.
2010-09-10 13:39:06 -03:00
Mark Nauwelaerts
3daea4a085
sdpdemux: redirect SDP with an rtsp control URL
...
When we find an SDP with an rtsp:// url as the global control attribute or when
all streams have an rtsp:// control attribute, post an redirect message with an
rtsp-sdp:// url containing the SDP.
Fixes #628214
2010-09-10 18:37:45 +02:00
Thiago Santos
6fcbf593b8
geometrictransform: Fix build with debugging disabled
...
Add some ifdefs to prevent build failures due to unused
variables
2010-09-10 10:29:38 -03:00
Thiago Santos
768babf968
id3mux: Map GST_TAG_ALBUM_ARTIST
...
Map GST_TAG_ALBUM_ARTIST to TPE2 as it is done in
-base id3tag mappings.
2010-09-08 16:57:57 -03:00
Thiago Santos
69151f6850
jifmux: Make it more colorspace smart
...
This makes it able to recombine rgb images, making it possible
to add tags to rgb jpegs as well.
Uses a simple strategy to check what are the possible colorspaces
and avoid adding jfif to ones that aren't YUV/Gray.
2010-09-07 14:45:12 -03:00
Robert Swain
141f728169
interlace: Fix element details
2010-09-07 13:32:26 +02:00
Mark Nauwelaerts
a5eaa99297
baseparse: non-TIME seek event is simply not handled
2010-09-06 15:20:10 +02:00
Youness Alaoui
9823b9358e
dtmfsrc: Make the dtmfsrc accept events sent with gst_element_send_event
...
The doc says to use gst_element_send_event on the pipeline, but if
we are to call it on the element itself, it's a noop. This should make it
handle the event properly before delegating it to basesrc.
2010-09-06 13:45:44 +03:00
David Schleef
aa3fa6a542
interlace: Add documentation
2010-09-06 03:25:15 -07:00
Sebastian Dröge
6bc160a0dc
fpsdisplay: Use G_GUINT64_FORMAT instead of %llu
...
Fixes compiler warnings on 64 bit architectures.
2010-09-06 10:29:21 +02:00
Stefan Kost
bbfff812bf
inputselector: sync with copy in -base
...
Use _get_caps_reffed to avoid copies.
2010-09-06 11:03:07 +03:00
Stefan Kost
eca2e20945
outputselector: move the debug init to the boilerplate macro
2010-09-06 10:24:07 +03:00
Stefan Kost
b142b7a8c5
inputselector: use GST_BOILERPLATE macro
2010-09-06 10:24:07 +03:00
Stefan Kost
10776e474d
fpsdisplaysink: don't add a g_mainloop dependency
...
Just update the fps-message from the probe handler.
2010-09-06 10:24:06 +03:00
Stefan Kost
9a03a43696
fpsdisplaysink: small cleanup
...
Add one one example and lower the fon't size for the overlay.
2010-09-06 10:24:06 +03:00
Rob Clark
60c963f0ac
fpsdisplaysink: measure fps in terms of wall clock time
...
Measure fps in terms of system clock, rather than pipeline clock, to get
an accurate meaure of fps.
2010-09-06 10:24:06 +03:00
David Schleef
813a2235b5
checksumsink: Add new element
2010-09-05 22:50:06 -07:00
David Schleef
d759c92bb3
ssim: Add I420 support
2010-09-05 22:50:06 -07:00
David Schleef
5db2beeb49
interlace: Add more formats
2010-09-05 22:50:06 -07:00
Thiago Santos
9ae921f888
camerabin: Use jifmux instead of metadatamux
...
Use jifmux element to write exif/xmp tags instead of metadatamux
2010-09-05 09:15:56 -03:00
Thiago Santos
bcc59439bc
camerabin: Use new tags from -base
...
Replace private tags from metadata plugin with the new generic tags
from -base.
2010-09-05 09:15:56 -03:00
Thiago Santos
27333b0ef2
jifmux: Do not limit the size of the image on 16bits
...
Use guint instead of guint16 to represent the size of the encoded image,
this would make some recombined images lose most of their data and
show like a big black image with a small line of content on top.
Also adds a minor log message.
2010-09-05 09:15:55 -03:00
Thiago Santos
f664fd9c04
jifmux: Set output pad caps
...
Set output pad caps to guarantee caps on the buffers being
pushed downstream.
2010-09-05 09:15:55 -03:00
Thiago Santos
d49acb5588
jifmux: Detect EOI correctly
...
EOI are not always at the last 4 bytes. We need to search
the last 5 bytes to find the 0xFFD9 sequence as jpegenc seems
to round the buffer size to the next 4 multiple.
2010-09-05 09:15:55 -03:00
Thiago Santos
ba15ad9387
jifmux: Put APP0 first always
...
Fixes the order of the APP0/APP1 markers. APP0 should
be first.
2010-09-05 09:15:55 -03:00
David Schleef
7ce0ca6c89
interlace: new element
2010-09-04 11:22:26 -07:00
Andoni Morales Alastruey
4668330bdc
mpegtsmux: Initialize PES packet before getting the header size.
...
The PES header length is calculated before setting the dynamic flags, returning
a wrong value. Small frames that should be sent in a single TS packet are
spawned to a new packet because of that error. For audio streams where a single
frame can cope in one TS packet it introduces a huge overhead.
For a 100B packet, we prepare a TS packet with a payload of(100+9)B. Then, we
write the TS header using this value in tsmux_write_ts_header, and call
tsmux_stream_get_data(). The dynamic flags where not set yet and now
tsmux_stream_pes_header_length() returns 14B instead of 9B. The payload of the
TS packet is 114B, 5B more than what was calculated. 109B are sent in a first
packet and the remaining 5B are sent in another one.
Fixes bug #628548 .
2010-09-04 15:01:30 +02:00
Thibault Saunier
98e6f113f6
videoanalyse: Use correct element classification
...
This is no effect but an analyzer. Fixes bug #628527 .
2010-09-04 15:01:30 +02:00
Youness Alaoui
5cc57a82f0
rtpmux: Unlock the right mutex
...
The mutex locked is for the 'mux' object, but we unlock the
pad, which means that if the rtpmux gets a flush, then the
object lock will stay locked forever, causing it to freeze
the next time it tries to take it.
Fixes bug #627991
2010-08-30 15:15:50 +02:00
Mark Nauwelaerts
0ee6ce901d
qtmux: autodetect out-of-order input timestamps and determine DTS accordingly
...
Favour using input buffer timestamps for DTS, but fallback to using buffer
duration (accumulation) if input ts detected out-of-order.
Fixes #624212 .
2010-08-21 21:15:21 +02:00
Thiago Santos
407f615887
jifmux: Avoid recombining RGB jpegs
...
JFIF only allows YUV as colorspace, when we receive an RGB jpeg,
we should just push it forward without adding the JFIF marker.
Fixes #627413
2010-08-21 21:08:13 +02:00
Olivier Crête
db44c62acb
gaudieffects: Mark inline functions as static inline
...
Otherwise it fails to correctly link them in some cases.
https://bugzilla.gnome.org/show_bug.cgi?id=626670
2010-08-12 09:14:10 +01:00
Sebastian Dröge
5ad7ff9482
legacyresample: Link against $(LIBM) for rint() and friends
2010-08-11 11:52:44 +02:00
Sebastian Dröge
e71baf7f9d
invtelecine: Link against $(LIBM) for sqrt() and friends
2010-08-11 11:50:05 +02:00
Filippo Argiolas
fd4a629825
geometrictransform: add a "zoom" parameter to square filter
...
https://bugzilla.gnome.org/show_bug.cgi?id=625908
2010-08-09 19:25:54 +02:00
Filippo Argiolas
4cec7d10cd
geometrictransform: make square "width" and "height" customizable
...
https://bugzilla.gnome.org/show_bug.cgi?id=625908
2010-08-09 19:25:54 +02:00
Filippo Argiolas
2a9b456dab
geometrictransform: add a "mode" property to mirror filter
...
Add a "mode" enum property to mirror that defines how to split the frame
and with side reflect.
https://bugzilla.gnome.org/show_bug.cgi?id=625908
2010-08-09 19:25:54 +02:00
Filippo Argiolas
a72b2f5849
geometrictransform: add a "zoom" parameter to bulge filter
...
Rework bulge mapping function to give more predictable results.
Now the bulge is done dividing by a scale factor that smoothsteps from
"zoom" at the center to 1.0 at "radius".
https://bugzilla.gnome.org/show_bug.cgi?id=625908
2010-08-09 19:25:54 +02:00
Filippo Argiolas
58b76ac56c
geometrictransform: add an "intensity" parameter to stretch filter
...
https://bugzilla.gnome.org/show_bug.cgi?id=625908
2010-08-09 19:25:53 +02:00
Filippo Argiolas
7be30c3daf
geometrictransform: make tunnel "radius" customizable
...
https://bugzilla.gnome.org/show_bug.cgi?id=625908
2010-08-09 19:25:53 +02:00
Filippo Argiolas
1652a3ef57
geometrictransform: make bulge "radius" customizable
...
https://bugzilla.gnome.org/show_bug.cgi?id=625908
2010-08-09 19:25:53 +02:00
Filippo Argiolas
27134c6e38
geometrictransform: make stretch "radius" customizable
...
https://bugzilla.gnome.org/show_bug.cgi?id=625908
2010-08-09 19:25:53 +02:00
Sebastian Dröge
6050642add
frei0r: Only check the plugin filenames, not the directory names
2010-08-08 12:01:31 +02:00
Sebastian Dröge
1e3ec9e3bd
frei0r: Don't try to register/load the same frei0r plugin at different locations twice
...
This could happen because for example /usr/lib is linked
to /usr/lib64 and both are loaded. The frei0r specification
says that the plugin init function must only be called once
and for some plugin weird things (including crashes) are
happening.
Fixes bug #623710 .
2010-08-08 11:56:42 +02:00
Olivier Crête
3579c1164b
frei0r: Load plugins in /usr/{local/,}lib{32,64}/frei0r-1 too
...
Loads the plugins in more paths where they could be installed by
multilib distributions.
Fixes #623710
2010-08-06 03:19:16 +02:00
Filippo Argiolas
c921067208
geometrictransform: make ciclegt "radius" property relative
...
Make the "radius" property of CircleGeometricTransform relative.
This is more coherent with the way [x,y]-center properties are handled
and allow to set a radius without knowing the video size.
Radius is defined with respect to the circle circumscribed about the
video rectangle so that a point in the center has radius 0.0 and one in
a vertex has radius 1.0.
Note that this is not a regression from the previous absolute way of
defining the radius as a user who knows the video size can easily
calculate the relative radius and set that.
https://bugzilla.gnome.org/show_bug.cgi?id=625959
2010-08-04 20:09:09 -03:00
Tim-Philipp Müller
770194a8fc
id3mux: minor code clean-up
...
Add helper function to write text frames with just one string.
2010-08-04 23:56:04 +01:00
Jonathan Matthew
76311f2ef0
id3mux: add support for beats-per-minute tag
...
Write beats per minute into the TBPM frame, and add unit
test for id3mux, based on id3v2mux unit test.
https://bugzilla.gnome.org/show_bug.cgi?id=621523
2010-08-04 23:56:04 +01:00
Sebastian Dröge
09507edb8c
coloreffects: Minor cleanup
2010-08-04 10:11:11 +02:00
Sebastian Dröge
43db67f705
coloreffects: Improve property description a bit
2010-08-04 10:09:53 +02:00
Sebastian Dröge
3878dce20d
coloreffects: Don't use the fixed_caps func on the pads
...
coloreffects can renegotiate during playback without any problems.
2010-08-04 10:08:24 +02:00
Filippo Argiolas
74de641ca4
coloreffects: add ayuv support
...
Currently implemented switching from yuv to rgb, looking up rgb from the
table in the usual way, getting back to yuv. With luma lookup presets
(sepia, heat, xray) a color space conversion is saved directly looking
up rgb for a given Y and converting to yuv.
Probably this latter step can even be made faster precalculating a luma
to yuv table in an outer loop.
https://bugzilla.gnome.org/show_bug.cgi?id=625817
2010-08-04 10:05:35 +02:00
Filippo Argiolas
79c343bade
coloreffects: new plugin for lookup table color mapping
...
Implements a color lookup table filter with 4 presets:
- heat: fake heat camera effect
- sepia: sepia toning
- xray: invert + shade to blue
- xpro: cross process
https://bugzilla.gnome.org/show_bug.cgi?id=625817
2010-08-04 10:04:20 +02:00
Filippo Argiolas
0c0adffce7
geometrictransform: new filter "fisheye"
...
Ports gleffects "fisheye" filter to geometrictransform.
Fake fisheye lens filter. Somewhat empiric implementation because I
didn't find any good algorithm that does it with nice results.
https://bugzilla.gnome.org/show_bug.cgi?id=625722
2010-08-02 20:16:37 +02:00
Filippo Argiolas
9ee12f94de
geometrictransform: new filter "mirror"
...
Ports gleffects "mirror" filter to geometrictransform.
Simple yet effective mirror effect, splits the image into halves and
reflect the first into the second.
https://bugzilla.gnome.org/show_bug.cgi?id=625722
2010-08-02 20:15:06 +02:00
Filippo Argiolas
5c4915d917
geometrictransform: new filter "square"
...
Ports gleffects "square" filter to geometrictransform.
Maps a region around the center into a zoomed square and smoothly get
back to normal zoom. With faces it makes a funny "cube-face" effect.
https://bugzilla.gnome.org/show_bug.cgi?id=625722
2010-08-02 20:14:23 +02:00
Filippo Argiolas
a7fb7ae06c
geometrictransform: new filter "tunnel"
...
Ports gleffects "tunnel" filter to geometrictransform.
Do nothing in a circle around the center and zoom outside.
https://bugzilla.gnome.org/show_bug.cgi?id=625722
2010-08-02 20:12:44 +02:00
Filippo Argiolas
3ba3310b01
geometrictransform: new filter "bulge"
...
Ports gleffects "bulge" filter to geometrictransform.
Adds a protuberance around the center point.
https://bugzilla.gnome.org/show_bug.cgi?id=625722
2010-08-02 20:11:28 +02:00
Filippo Argiolas
2edd185a9a
geometrictransform: new filter "stretch"
...
Ports gleffects "stretch" filter to geometrictransform.
Shrinks the image around the center and gradually return to normal zoom
creating funny caricatures.
https://bugzilla.gnome.org/show_bug.cgi?id=625722
2010-08-02 20:09:26 +02:00
Jan Schmidt
2f1899cd31
gaudieffects: Add Gaussian Blur effect, and brief example.
2010-08-02 20:46:48 +10:00
Zaheer Abbas Merali
c7b195740e
mpegtsparse: actually work when we have small buffers coming in
...
available_fast is not what we want and it will never get to discover packet
size if 188 byte buffers are being picked up.
2010-07-29 10:38:58 +01:00
Tim-Philipp Müller
e12ca273db
ivfparse: fix up macros and function names to match guidelines
2010-07-28 18:42:05 +02:00
Tim-Philipp Müller
120d4a2955
gaudieffects: fix structure names to comply with the plugin moving guidelines
2010-07-28 18:42:05 +02:00
Marc-André Lureau
691901da51
qtmux: use caps bitrate at last chance
...
If we didn't get the stream's bitrate from one of the atoms,
try getting it from the caps as a last resort.
https://bugzilla.gnome.org/show_bug.cgi?id=625496
2010-07-28 12:23:21 -03:00
Marc-André Lureau
2e17f7cbf7
qtmux: btrt - max bitrate before average
...
According to iso base media file format, the max bitrate
is before the avg
https://bugzilla.gnome.org/show_bug.cgi?id=625496
2010-07-28 12:20:52 -03:00
Luis de Bethencourt
b870ff15b5
gaudieffects: Adds new plugin 'gaudieffects'
...
Adds the new 'gaudieffects' plugin, originally found
here: http://github.com/luisbg/gaudi_effects
Contains the following video effect elements: burn, chromium, dilate,
dodge, exclusion and solarize.
Thanks to Jan Schmidt for the reviewing and refactoring
2010-07-20 20:07:56 -03:00
Sebastian Dröge
7d4fcdc5cf
frei0r: Use correct order of directories to search for plugins
...
And don't fail if a plugin was already registered. Frei0r allows
plugins in directories with higher importance to override plugins
from directories with lower importance.
2010-07-11 10:47:37 +02:00
David Hoyt
3172e11121
aifmmux: use alternative way to check for inf
...
MSVC emits a divide-by-zero error when compiling aiffmux.c on line 205.
Fixes #623881 .
2010-07-09 17:44:56 +03:00
Víctor Manuel Jáquez Leal
1d57953496
jpegparse: fix exif frame size
...
Skip the correct number of bytes when reading exif
data
Fixes #623854
2010-07-08 14:27:45 -03:00
Thiago Santos
44e3d29ec4
camerabin: Fix viewfiner-sink property for bins
...
Correctly iterate viewfinder-sink children when
it is a bin.
Fixes #623802
2010-07-07 23:21:52 -03:00
Arun Raghavan
c28613d8db
qtmux: Write 'btrt' atom for H.264 media if possible
...
This writes out the optional 'btrt' atom (MPEG4BitrateBox) for H.264
media if either or both of average and maximum bitrate are available for
the stream.
https://bugzilla.gnome.org/show_bug.cgi?id=623678
2010-07-07 23:21:51 -03:00
Arun Raghavan
827e401e3a
qtmux: Write avg/max bitrate to ESDS if available
...
This collects the 'bitrate' and 'maximum-bitrate' tags on the
corresponding pad and uses these to populate these fields in the ESDS
where applicable.
https://bugzilla.gnome.org/show_bug.cgi?id=623678
2010-07-07 23:21:51 -03:00
Tim-Philipp Müller
8e2af9017e
asfmux: only use g_warning() when setting the old is-live property, not when reading it
...
Don't want warnings in e.g. gst-inspect.
2010-07-06 13:15:27 +01:00
Mark Nauwelaerts
3a1d0b7a0f
jpegparse: fix skipping extra 0xff markers
...
In particular, this makes the jpegparse unit test pass again.
Also add a debug statement.
Fixes #622690 .
2010-07-05 11:54:25 +02:00
Edward Hervey
e5ce188b1d
qtmux: Don't use bogus codec/format tags
...
https://bugzilla.gnome.org/show_bug.cgi?id=623365
2010-07-02 12:46:08 +02:00
Olivier Crête
d46275c37f
rtpmux: Add support for GstBufferList
...
Factor out most of the buffer handling and implement a chain_list
function. Also, the DTMF muxer has been modified to just have a
function to accept or reject a buffer instead of having to subclass
both chain and chain_list.
2010-07-02 00:15:49 -04:00
Olivier Crête
5d21b0815a
rtpmux: Don't leak invalid buffers
2010-07-02 00:15:49 -04:00
Olivier Crête
7950499805
videomaxrate: Add to docs
2010-07-02 00:06:44 -04:00
Olivier Crête
68aaa637b8
videomaxrate: Add fixates_caps
2010-07-02 00:06:44 -04:00
Olivier Crête
f027b95400
videomaxrate: Accept wider caps
2010-07-02 00:06:44 -04:00
Olivier Crête
b9601e2096
videomaxrate: Make period over which to average configurable
2010-07-02 00:06:44 -04:00
Olivier Crête
3449d16566
videomaxrate: Simplify transform_caps
2010-07-02 00:06:44 -04:00
Olivier Crête
ed74d385bc
videomaxrate: Use basetransform correctly
2010-07-02 00:06:44 -04:00
Olivier Crête
6aa71af0ec
videomaxrate: Make plugin actually work by using an average
2010-07-02 00:06:44 -04:00
Olivier Crête
599027fe24
videomaxrate: Import plugin
...
Import plugin from PsiMedia, based on my work
2010-07-02 00:06:44 -04:00
Thiago Santos
c470918903
fpsdisplaysink: signal-fps-measurements is writable
...
signal-fps-measurements is a readwrite property, not read-only.
Also adds some more debugging logs.
2010-07-01 17:13:25 -03:00
Sebastian Pölsterl
61a8856133
mpegtsparse: don't free PAT structure which may still be needed later
...
This is a problem if you tune to a channel which uses pid X and later tune to
another channel where X is used for another table (e.g. PMT).
The code that does that was actually already there but never used because the
pat structure was freed before. The commit that introduced those lines intended
to fix a memory leak, but we clean things up elsewhere.
Fixes #622725 .
2010-06-30 18:27:16 +01:00
Sebastian Dröge
5e8a24274f
legacyresample: Include _stdint.h for int16_t and friends
2010-06-27 19:22:39 +02:00
Tim-Philipp Müller
144d43bcef
assrender, ivfparse, jpegformat: fix compiler warnings with debugging disabled in core
2010-06-27 11:25:20 +01:00
Thiago Santos
be3a4b7978
qtmux: Write uint tags that don't have a complement
...
Write uint tags that have complements (e.g. track-number/
track-count) even when we only have one of them available
and set the other one to 0.
Fixes #622484
2010-06-25 20:19:20 -03:00
Thiago Santos
a267d287f5
asfmux: Warn if preroll value is too big
...
Post a warning when the preroll value is greater than
the streams duration
2010-06-24 20:22:16 -03:00
Thiago Santos
423418a51b
asfmux: Make metadata writable before setting it
...
Before copying metadata from one buffer to another, make sure
the destination is metadata-writable.
2010-06-24 18:33:39 -03:00
Thiago Santos
57b9ce71b4
fpsdisplaysink: Adds a signal to inform measurements to apps
...
Adds a signal for applications to receive the fps measurements made
instead of only printing them to the frame/stdout.
This signal is only emited if the signal-fps-measurements property
is set to TRUE
2010-06-24 13:53:08 -03:00
Thiago Santos
f78bf26951
fpsdisplaysink: Adds max-fps and min-fps property
...
Adds 2 properties for getting the maximum and minimum fps
values measured
2010-06-24 13:34:14 -03:00
Thiago Santos
dfec8f7fae
fpsdisplaysink: Use G_PARAM_STATIC_STRINGS in all properties
...
Add G_PARAM_STATIC_STRINGS to the properties that are
missing it
2010-06-24 13:34:14 -03:00
Thiago Santos
dc8f1dbb3e
fpsdisplaysink: Add fps-update-interval property
...
Use a property to set/get the fps update interval instead
of having a hardcoded value.
2010-06-24 13:34:13 -03:00
Mark Nauwelaerts
21a6347b39
h264parse: obtain correct upstream timestamp
...
... for optional downstream use.
2010-06-23 10:39:53 +02:00
Mark Nauwelaerts
4c7fd3c247
h264parse: add new h264 caps attribute alignment
...
See #606662 .
2010-06-22 12:39:59 +02:00
Edward Hervey
02cc3313b4
qtmux: Remove the pad from our internal list before calling collectpads
...
Previously we would end up with the collectpaddata structure already freed.
This would result in a bogus iteration of mux->sinkpads (all the
GstQTPad being freed) and it wouldn't be removed from that list.
Finally, due to it not being removed from that list, we would end up
calling a bogus gst_qt_mux_pad_reset on those structures => SEGFAULT
2010-06-21 19:42:50 +02:00
Thiago Santos
478ef90cf9
camerabin: Move debug category declaration to a separate file
...
Having GST_DEBUG_CATEGORY and GST_DEBUG_CATEGORY_EXTERN together
might lead to 'undefined symbol' problems. This commit moves
the _EXTERN to a separate new file.
2010-06-21 10:25:15 -03:00
Thijs Vermeir
1244738bc1
Revert "h264parse: add parsed field to src caps"
...
This reverts commit 54edae4f1f
.
See this bug for more information:
https://bugzilla.gnome.org/show_bug.cgi?id=606662
2010-06-21 11:13:20 +02:00
Austin Lund
2ed73a6ad0
mpegvideoparse: Remove redundant log message
2010-06-20 23:34:56 +10:00
Thijs Vermeir
54edae4f1f
h264parse: add parsed field to src caps
2010-06-20 10:59:56 +02:00
Thiago Santos
34836d6ea4
id3tag: Use gst_tag_list_peek_string_index
...
Replace _get_string_index with _peek_string_index to avoid
a string copy
2010-06-18 14:49:24 -03:00
Mark Nauwelaerts
33e78b12b4
h264parse: also handle 3-byte bytestream sync code
2010-06-18 18:42:47 +02:00
Thijs Vermeir
ba39867606
mpegdemux: improve debug output
2010-06-17 10:52:31 +02:00
Benjamin Otte
147e0682b4
pnmdec: Don't crash if no valid input was parsed yet
...
https://bugzilla.redhat.com/show_bug.cgi?id=603771
2010-06-16 10:31:19 +02:00
Austin Lund
0fba38f833
mpegvideoparse: Added debugging output for mpegpacketiser
2010-06-16 10:39:04 +10:00
Mark Nauwelaerts
112df6cc0e
baseparse: fix seek event ref handling
2010-06-15 15:42:26 +02:00
Mark Nauwelaerts
484af544bf
baseparse: prevent arithmetic overflows in pull mode buffer cache handling
2010-06-15 15:42:26 +02:00
Mark Nauwelaerts
07561dbfd1
baseparse: fix seek handling
...
Allow a few more seek event type combinations, and really use the result
of gst_segment_set_seek to perform the seek. Also add some debug.
2010-06-15 15:42:26 +02:00
Mark Nauwelaerts
a60af008d5
mpeg4videoparse: sprinkle some branch prediction
2010-06-15 11:30:45 +02:00
Mark Nauwelaerts
cd018e5440
mpeg4videoparse: handle FLUSH_STOP event
2010-06-15 11:30:41 +02:00
Mark Nauwelaerts
c2b649d692
mpeg4videoparse: add config-interval parameter to re-insert config in stream
...
Add a new config-interval property to instruct the parser to insert
config (VOSH, VOS, etc) at periodic intervals in the stream
(when a GOP or VOP-I is encountered).
Based on patch by <marc.leeman at gmail.com>
Fixes #621205 .
2010-06-15 11:30:39 +02:00
Jan Schmidt
2f9b765326
mpegvideoparse: Apply previous timestamp when there isn't any newer.
...
If the current incoming packet didn't carry a timestamp, but a
previous packet had one we didn't yet use, then apply that timestamp
to the next picture.
Fixes : #618336
2010-06-15 17:16:12 +10:00
Mark Nauwelaerts
7601bc306a
jpegparse: handle FLUSH_STOP sink event
2010-06-14 15:48:34 +02:00
Mark Nauwelaerts
e6cf05b114
jpegparse: optimize image parsing
...
Use adapter API for scanning and peeking to reduce buffer copying.
See #583047 .
2010-06-14 15:48:34 +02:00
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