Commit graph

3463 commits

Author SHA1 Message Date
Marc-André Lureau
78d2d8598d qtmux: add mvex/trex in header if fragmented
One "trex" is added per "trak". We don't support default values,
but the "trex" box is mandatory.
2010-11-19 19:21:36 +01:00
Marc-André Lureau
84d8b33d1a qtmux: add a couple of fourcc for fragmented mp4 2010-11-19 19:21:36 +01:00
Mark Nauwelaerts
7e4c96359f qtmux: avoid removing temp file when error occurred 2010-11-19 19:21:36 +01:00
Marc-André Lureau
401fb0a09b qtmux: truncate buffer file after each send 2010-11-19 19:21:36 +01:00
Marc-André Lureau
055a1a3b0a qtmux: remove temp file when reset/finalize 2010-11-19 19:21:36 +01:00
Arun Raghavan
8ca66f336e jpegformat: Push tags after setting srcpad caps
This patch defers emission of tag events till caps are set on the source
pad of jpegparse, so that these tags can be seen downstream.

https://bugzilla.gnome.org/show_bug.cgi?id=627211
2010-11-19 14:57:59 -03:00
Alessandro Decina
b005ed2197 mpegtsparse: fix compiler warning 2010-11-19 18:51:32 +01:00
Andoni Morales Alastruey
fb9234de78 mpegtsparse: fix thinko 2010-11-19 18:33:10 +01:00
Andoni Morales Alastruey
b11f737096 mpegtsparse: fix handling of TOT and TDT sections. Fixes #635281.
TDT and TOT sections, with PID=0x14, doesn't extend to several packets
and the section filter is not needed here and shouldn't be used at all
for these tables because the have a different structure.
For example, TDT tables were not parsed for odd hours because this bit
is the 'current_next_indicator' bit for the other sections, and the table
was discarded.
2010-11-19 18:11:50 +01:00
Andoni Morales Alastruey
2611b12970 mpegtsparse: don't calculate the CRC for TOT tables. Fixes #635281.
TOT tables, with table_id=0x73, don't have a CRC, so don't calcute it
2010-11-19 18:10:47 +01:00
Víctor Manuel Jáquez Leal
e5728ebcb1 jpegparse: add gst_jpeg_parse_skip_marker ()
https://bugzilla.gnome.org/show_bug.cgi?id=626618
2010-11-19 16:30:18 +02:00
Víctor Manuel Jáquez Leal
285c32e01f jpegparse: use byte reader accessors
https://bugzilla.gnome.org/show_bug.cgi?id=626618
2010-11-19 16:27:24 +02:00
Víctor Manuel Jáquez Leal
e11fdf67f0 jpegparse: inline gst_jpeg_parse_sof ()
No functional changes (hopefully).

https://bugzilla.gnome.org/show_bug.cgi?id=626618
2010-11-19 16:25:39 +02:00
Víctor Manuel Jáquez Leal
d0dc44db02 jpegparse: fix typo
https://bugzilla.gnome.org/show_bug.cgi?id=626618
2010-11-19 16:25:35 +02:00
Aleksey Lim
d66ef4dea8 camerabin: Do not use audio clock after stopping video capture
Adda provide clock function to camerabin to make it not
provide the audio clock of the record bin when no video
recording is happening

Fixes #613379
2010-11-18 10:58:06 -03:00
Mark Nauwelaerts
68dca2e704 baseparse: use correct offset when adding index entry
... bearing in mind that BUFFER_OFFSET is media specific and may not
reflect the basic offset after having been parsed.
2010-11-17 16:24:13 +01:00
Mark Nauwelaerts
9b6439a36c baseparse: enhancements for timestamp marked framed formats
That is, as such formats allow subclass to extract position from frame,
it is possible to extract duration (if not otherwise provided)
from (near) last frame, and a seek can fairly accurately target the required
position.

Fixes #631389.
2010-11-17 15:36:41 +01:00
Mark Nauwelaerts
08cab00b8b baseparse: refactor frame scanning peformed by _loop 2010-11-17 15:36:38 +01:00
Mark Nauwelaerts
587106f1cf baseparse: slightly optimize sending of pending newsegment events 2010-11-17 15:36:36 +01:00
Mark Nauwelaerts
f82f330537 baseparse: minor fixes and enhancements
Arrange for upstream as well as downstream flushing when seeking.
Also determine upstream size as well as seekability.  Adjust some comments
to reality and employ debug statement in proper order.
2010-11-17 15:36:23 +01:00
Mark Nauwelaerts
b65da8e775 aacparse: minor cleanups 2010-11-17 15:36:20 +01:00
Mark Nauwelaerts
0fdc68cd46 aacparse: fix regression in ADIF src caps setting 2010-11-17 15:36:18 +01:00
Mark Nauwelaerts
36cbbd94c6 flacparse: parse seektable
Fixes #631389 (partially).
2010-11-17 15:36:02 +01:00
Mark Nauwelaerts
551f9707fa flacparse: minor refactor and enable default baseparse segment clipping 2010-11-17 15:35:59 +01:00
Mark Nauwelaerts
896c4b71af mpegaudioparse: fix silly leak in _reset 2010-11-09 20:52:10 +01:00
Sebastian Dröge
9ac7950d2c colorspace: Update generated ORC sources 2010-11-05 10:57:22 +01:00
Thiago Santos
60a6eca2a1 camerabin: Adds 'idle' property
Adds 'idle', a read-only boolean property that tells applications
if there is any capturing/saving/encoding going on in camerabin. If
not, it is safe to set it to NULL and release resources without
losing data.
2010-11-04 22:48:02 -03:00
Lasse Laukkanen
bc1b09c1c4 camerabin: Add "ready-for-capture" property
Add "ready-for-capture" property to indicate if preparing a new
capture is possible.

"ready-for-capture" changes before the 'image-done' signal, so
the application can be notified that it can do a new capture
even before the previous one has finished encoding/saving.
2010-11-04 21:41:07 -03:00
Sebastian Dröge
a1994b59f5 colorspace: Inverse -base version check logic to actually make sense 2010-11-04 14:19:09 +01:00
Olivier Crête
7ad651c3ff pcapparse: Add support for Linux Cooked Capture (SLL) frames 2010-11-03 18:50:51 -04:00
Olivier Crête
16ec12371a pcapparse: Fail on unknown version or linktype
The element only knows about major version 2 and only decodes linktype ethernet
2010-11-03 18:23:27 -04:00
Olivier Crête
ec16c22f54 pcapparse: Send error GstMessage if stream doesn't have the expected magic 2010-11-03 18:02:49 -04:00
Andoni Morales Alastruey
891e08f220 mpegtsparse: send TDT tables messages in a serialized event downstream
https://bugzilla.gnome.org/show_bug.cgi?id=633917
2010-11-03 04:48:00 +00:00
Sebastian Dröge
6723122127 colorspace: Add support for IYU1 2010-11-03 15:39:27 +01:00
Sebastian Dröge
dec9b54698 colorspace: First version of YUV9 and YVU9 implementation 2010-11-03 15:39:27 +01:00
Sebastian Dröge
eccb88afb0 colorspace: Use GST_CHECK_PLUGINS_BASE_VERSION() instead of other hacks 2010-11-03 15:39:27 +01:00
Thijs Vermeir
2271608c43 mpegvideoparse: fix timestamp generation
Use information from the gop header and picture
header to calculate the picture timestamp. (time_code
and temporal_reference) and adapt to upstream timestamps if
provided.

https://bugzilla.gnome.org/show_bug.cgi?id=632222
2010-11-03 11:12:38 +01:00
Tim-Philipp Müller
ff0a34ce3d colorspace: fix build with current git of gst-plugins-base
ifdef tests don't work so well if we define them in the code
above in case they aren't defined.
2010-11-02 17:01:01 +00:00
Sebastian Dröge
50fa9610b1 colorspace: Add support for 8 bit paletted RGB
This needs the 8 bit paletted support from -base
which will be committed after release. Without this
the 8 bit parts are disabled.
2010-11-02 16:07:07 +01:00
Thiago Santos
d96964e391 camerabin: Add missing change to previous commits
Forgot to add this change to the latest commits. This fixes the build.
2010-11-02 10:24:49 -03:00
Thiago Santos
7ae195788a camerabin: Fix leaks in the preview handling
Remember to unref the bus after adding the watch.
Remember to unref the element after getting it with
gst_bin_get_by_name.
2010-11-02 09:39:49 -03:00
Lasse Laukkanen
5a5fca2689 camerabin: Do not leak a caps
gst_caps_replace doesn't take ownership, but refs the caps. So we
unref the remaining caps.
2010-11-02 09:39:40 -03:00
Thiago Santos
618f32ad8d camerabin: Reset pre-night-mode stored fps when mode changes
When switching between video/still modes the pre-night-mode fps
should be reset to prevent it being used in the incorrect mode, causing
the videosource to fail configuring itself
2010-11-02 09:16:45 -03:00
Thiago Santos
6ee256d462 camerabin: Store app preferred capture parameters separately
Store width/height/fps for video captures in a separate variable
than the one that stores the currently used value.

This prevents the user preferences to be lost when resetting
the currently used dimensions for night mode, for example
2010-11-02 09:16:44 -03:00
Thiago Santos
73a909c0e3 camerabin: cleanup used caps when going to NULL
Resets used caps so that camerabin doesn't try to use them
when restarting, where elements/properties might have changed
and the old caps be incompatible
2010-11-02 09:16:44 -03:00
Teemu Katajisto
ca16d951ba camerabin: fix priority for idle_add function
Adds a higher priority to the idle_add function for when
the image bin finished the image capture. This reduces the
delay for the application to be notified about this.
2010-11-02 09:16:44 -03:00
Stefan Kost
dad82be640 inputselector: log times in human readable form 2010-11-01 23:05:42 +02:00
Stefan Kost
380fd56938 inputselector: move reoccuring logs to LOG and remove a double info
Less debug spew in DEBUG category. No need to log pad again if we use
GST_LOG_OBJECT(pad,...).
2010-11-01 22:47:21 +02:00
Tim-Philipp Müller
c627604ea9 cog, colorspace: update orc backup functions for latest changes
Should fix build on systems without the latest orc.
2010-11-01 15:54:18 +00:00
Sebastian Dröge
e8186a45a1 colorspace: Add support for RGB15 and BGR15 2010-10-31 23:46:27 +01:00
Sebastian Dröge
a2eb43fade colorspace: Add support for RGB16 and BGR16 2010-10-31 23:44:20 +01:00
Sebastian Dröge
3c8e0286dc colorspace: Add support for Y16 2010-10-31 23:25:57 +01:00
Sebastian Dröge
52f3e1351a colorspace: Fix Y800 ORC getline implementation 2010-10-31 23:25:40 +01:00
Sebastian Dröge
d29423fd76 colorspace: Add support for A420 2010-10-31 23:08:39 +01:00
Sebastian Dröge
cd135c24e4 colorspace: Add support for Y41B 2010-10-31 23:00:07 +01:00
Sebastian Dröge
eb2a295316 colorspace: Add support for SDTV/HDTV YUV conversions 2010-10-31 22:47:35 +01:00
Sebastian Dröge
c1027a72fe colorspace: Add comment for the A420 getline/putline table row 2010-10-31 22:21:35 +01:00
Sebastian Dröge
d8027b4e67 colorspace: Add const to the source arrays and the getline/putline table 2010-10-31 20:40:09 +01:00
Sebastian Dröge
58949450b5 colorspace: Make fast-path transform table const 2010-10-31 19:42:30 +01:00
Sebastian Dröge
e49aa545d0 colorspace: Only do the I420->YUY2 conversion once per scanline in the fast path 2010-10-31 19:40:01 +01:00
Mark Nauwelaerts
ba35b17b98 baseparse: use only upstream duration if it provides one 2010-10-29 14:11:47 +02:00
Mark Nauwelaerts
61cf6f2ffa baseparse: reflow update_bitrate code
... which makes local variables represent real state better, and avoids
triggering unneeded updates/actions.
2010-10-29 14:11:44 +02:00
Mark Nauwelaerts
841e09e234 baseparse: add some debug statements 2010-10-29 14:11:42 +02:00
Sebastian Dröge
4c48e791b3 gaudieffects: Include gstcontroller header and add the required CFLAGS 2010-10-28 18:52:07 +02:00
Luis de Bethencourt
cadfe13839 gaudieffects: made filter parameters dynamic and controllable 2010-10-28 18:52:07 +02:00
Sebastian Pölsterl
13431420eb mpegtsparse: Add tag event emission. Fixes #627253 2010-10-28 11:45:46 +01:00
Thiago Santos
0999fdb82a camerabin: Check the source scene mode when creating it
As camerabin only gets notified of the changes from the
video source element, it should query the initial value
once the source is created so it initializes itself
correctly.
2010-10-21 16:43:45 -03:00
Tim-Philipp Müller
05cec96949 dcaparse: init variable to make osx build bot happy
gstdcaparse.c: In function 'gst_dca_parse_check_valid_frame':
gstdcaparse.c:246: warning: 'best_sync' may be used uninitialized in this function
2010-10-19 23:25:54 +01:00
Tim-Philipp Müller
d5a008b9ee audioparsers: add very basic dts/dca parser
Still some issues, e.g. with seekable queries in totem, but also
processing already-chunked input (created with matroskademux ! gdppay).
2010-10-19 18:00:14 +01:00
Stefan Kost
90e90fd368 videoanalyse: fix copy'n'paste off by one for param spec flags change 2010-10-19 16:25:00 +03:00
Stefan Kost
0c22e1b954 various (gst): add missing G_PARAM_STATIC_STRINGS flags
Canonicalize property names as needed.
2010-10-19 15:47:17 +03:00
Stefan Kost
92634ff92a various: wrap property registration and add a single fixme for long desc. 2010-10-19 15:36:18 +03:00
Stefan Kost
8ab60bd7cd pnmenc: remove stray " in doc comment 2010-10-19 15:08:06 +03:00
Stefan Kost
1b23f7719a dtmfsrc: remove DEBUG_FUNCPTR from gobject vmethods 2010-10-19 13:46:57 +03:00
Thiago Santos
744a1d1542 camerabin: Remove unused entry
Remove camerabin unused enum entry
2010-10-14 14:09:39 -03:00
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