Commit graph

2071 commits

Author SHA1 Message Date
David Schleef
ef3712b427 Revert "video: Remove the extensive checkings from switch"
This reverts commit 500d14c35c.
2011-04-14 12:42:20 -07:00
Sreerenj Balachandran
500d14c35c video: Remove the extensive checkings from switch
The default case handles them already
2011-04-14 10:02:42 +02:00
Thiago Santos
e57473178b tag: xmp: Adds mapping for GST_TAG_CAPTURING_EXPOSURE_COMPENSATION
Adds mapping for GST_TAG_CAPTURING_EXPOSURE_COMPENSATION for xmp
library.

Includes unit tests.
2011-04-14 00:04:52 -03:00
Thiago Santos
dae1c37dfe tag: exif: Adds mapping for GST_TAG_CAPTURING_EXPOSURE_COMPENSATION
Adds mapping for GST_TAG_CAPTURING_EXPOSURE_COMPENSATION for exif
library.

Includes unit tests.
2011-04-14 00:04:52 -03:00
Thiago Santos
4d4aade47b tag: Adds GST_TAG_CAPTURING_EXPOSURE_COMPENSATION
Adds a new tag for indicating the used exposure compensation
level in EV used when capturing an image.

API: GST_TAG_CAPTURING_EXPOSURE_COMPENSATION
2011-04-14 00:04:52 -03:00
Tim-Philipp Müller
49cc1718a8 docs: fix typo in video format docs 2011-04-13 09:10:52 +01:00
Sreerenj Balachandran
fecd4a1154 rtsptranport: ensure valid int result when parsing ranges
Specifically, make sure that the return value of strtol is falling in
between the range of G_MININT and G_MAXINT.

Fixes #646952.
2011-04-12 12:30:08 +02:00
Bastien Nocera
3fa0119dc1 encoding-profile: fix unused-but-set-variable warnings with gcc 4.6
Top-level profiles don't have restrictions, only stream profiles,
so no need to serialise that here.

https://bugzilla.gnome.org/show_bug.cgi?id=646925
2011-04-12 10:05:53 +01:00
Wim Taymans
6e160bed3d Merge branch 'master' into 0.11
Conflicts:
	android/alsa.mk
	android/app.mk
	android/app_plugin.mk
	android/audio.mk
	android/audioconvert.mk
	android/decodebin.mk
	android/decodebin2.mk
	android/gdp.mk
	android/interfaces.mk
	android/netbuffer.mk
	android/pbutils.mk
	android/playbin.mk
	android/queue2.mk
	android/riff.mk
	android/rtp.mk
	android/rtsp.mk
	android/sdp.mk
	android/tag.mk
	android/tcp.mk
	android/typefindfunctions.mk
	android/video.mk
2011-04-11 11:37:51 +02:00
Tim-Philipp Müller
fe226e7a77 tag: fix typo in ID3 genres
psychadelic -> psychedelic. Spotted by Sébastien Wilmet.

https://bugzilla.gnome.org/show_bug.cgi?id=647399
2011-04-11 10:06:53 +01:00
Alessandro Decina
030f639a8e android: make it ready for androgenizer
Remove the android/ top dir
Fixe the Makefile.am to be androgenized

To build gstreamer for android we are now using androgenizer which generates the
needed Android.mk files.
Androgenizer can be found here:
http://git.collabora.co.uk/?p=user/derek/androgenizer.git
2011-04-11 07:23:21 +02:00
Sebastian Dröge
0a1d85c233 rtp: Unref events if the parent element disappeared or has no event handler implemented 2011-04-08 15:10:02 +02:00
Ole André Vadla Ravnås
f59b985698 rtp: fix pad callbacks so they handle when parent goes away
1) We need to lock and get a strong ref to the parent, if still there.
2) If it has gone away, we need to handle that gracefully.

This is necessary in order to safely modify a running pipeline. Has been
observed when a streaming thread is doing a buffer_alloc() while an
application thread sends an event on a pad further downstream, and from
within a pad probe (holding STREAM_LOCK) carries out the pipeline plumbing
while the streaming thread has its buffer_alloc() in progress.
2011-04-08 15:05:23 +02:00
Wim Taymans
3ea2bc3ab0 Merge branch 'master' into 0.11
Conflicts:
	gst-libs/gst/rtp/gstbasertpdepayload.c
2011-04-07 16:19:08 +02:00
Bastien Nocera
96463bb8df rtp: Remove unused variables
https://bugzilla.gnome.org/show_bug.cgi?id=646924
2011-04-07 10:16:39 +02:00
Sebastian Dröge
a29e55f9c4 video: Fix creation of grayscale caps
The endianness was not set correctly before.

Fixes bug #646923.
2011-04-07 10:06:53 +02:00
Wim Taymans
4007076b55 Merge branch 'master' into 0.11
Conflicts:
	ext/theora/gsttheoraenc.c
2011-04-06 16:33:56 +02:00
Pascal Buhler
1ad98b0d98 rtcpbuffer: Round to next 32bit word, not current 32bit word at end of SDES chunk 2011-04-05 15:27:03 +02:00
David Schleef
5f61df82da video: Fix YUV9 and YVU9 again 2011-04-04 16:01:20 -07:00
Tim-Philipp Müller
f728ee3978 tag: fix compiler warning on OSX
gstvorbistag.c: In function 'gst_tag_list_from_vorbiscomment_buffer':
gstvorbistag.c:371: warning: 'data' may be used uninitialized in this function
2011-04-04 23:41:16 +01:00
Haakon Sporsheim
834a5a478c tag: use gst/math-compat.h header.
https://bugzilla.gnome.org/show_bug.cgi?id=646744
2011-04-04 23:14:23 +01:00
Haakon Sporsheim
f7036eb260 tag: Remove constness to silence MS compiler.
https://bugzilla.gnome.org/show_bug.cgi?id=646744
2011-04-04 23:14:23 +01:00
Haakon Sporsheim
7b142178e4 tag: Explicit cast to GThreadFunc to silence MS compiler.
https://bugzilla.gnome.org/show_bug.cgi?id=646744
2011-04-04 23:14:20 +01:00
Wim Taymans
0f3fdf18e0 fix compilation after merge 2011-04-04 11:44:15 +02:00
Wim Taymans
da1c863711 Merge branch 'master' into 0.11
Conflicts:
	gst-libs/gst/tag/gstvorbistag.c
2011-04-04 11:31:33 +02:00
Trond Andersen
cec628a414 rtcpbuffer: fix invalid read in validation of padding in rtcp packet 2011-04-04 09:43:06 +02:00
Stian Johansen
0f8edca902 baseaudiosrc: Add src object lock around call to ringbuffer parse caps.
A race was observed between query() and setcaps() where the latter would
change the ringbuffer spec while the former was performing operations
based this data.
2011-04-04 09:35:58 +02:00
Havard Graff
63cfa2a50d baseaudiosrc: protect against ringbuffer disappearing while in a query
Observed a case where the src went to null-state during the query,
hence the spec pointer was no longer valid, and
gst_util_unit64_scale_int crashed (assertion `denom > 0´failed)

Add locking to make sure the ringbuffer can't disappear.
2011-04-04 09:33:33 +02:00
Havard Graff
588ac0ae6f baseaudiosink: don't allow aligning behind the read-segment
Given a large enough drift-tolerance, one could end up in a situation
where one would keep aligning the written buffers behind the current
read-segment position. The result for the reader would be complete
silence, possible preceded by very choppy audio.

By checking the available headroom, one can determine if there is
room to do alignment, or if one should resort to a resync instead to get
the pointers back on track.

Also refactor the alignment-logic out of the render function for cleaner
code.
2011-04-04 09:31:26 +02:00
David Schleef
629cac4cad video: Fix height calculation for YUV9/YVU9 2011-04-01 13:55:56 -07:00
Sebastian Dröge
35064fdc82 vorbistag: Write GST_TAG_IMAGE and GST_TAG_PREVIEW_IMAGE as METADATA_BLOCK_PICTURE
This is the official, standardized way of embedding images into
vorbiscomments now.
2011-04-01 12:54:53 +02:00
Sebastian Dröge
57ff12bb0d vorbistag: Add support for METADATA_BLOCK_PICTURE tags
This is the official, standardized way of embedding pictures
inside vorbiscomments now. Parsing code taken from flacparse
and slightly changed.

Fixes bug #635669.
2011-04-01 12:31:31 +02:00
Sebastian Dröge
a2532fc3f7 vorbistag: Use g_base64_decode_inplace()
Instead of using the GLib base64 decoding functions manually to
do inplace base64 decoding. This makes the code easier to understand.
2011-04-01 12:09:44 +02:00
Wim Taymans
d96a8c1aa7 Merge branch 'master' into 0.11 2011-03-31 17:53:12 +02:00
Wim Taymans
730b87271c bufferlist: fixes for new API 2011-03-31 17:47:43 +02:00
Mark Nauwelaerts
e73f293ee5 baseaudiosink: arrange for running clock when rendering eos
Commit ba2e500bd9 ensured to provide
a running clock when EOS had finished rendering.  However,
other measures are needed (and were in place before) to ensure a
running clock when EOS still needs rendering (i.e. waiting).

So, specifically, re-introduce eos_rendering removed in aforementioned commit,
this time as a public variable so subclasses can be aware of the situation.

Fixes (part of) #645961.

API: GstBaseAudioSink:eos_rendering
2011-03-31 13:18:53 +02:00
Tim-Philipp Müller
45b6bda76c libs: make sure gobject-introspection scanner calls gst_init()
Cherry-picked from 0.11, since it's the right thing to do (we
now silently rely on various _get_type() working without
gst_init() having been called).
2011-03-30 21:08:29 +01:00
Tim-Philipp Müller
a818fe7381 libs: replace 0.10 with @GST_MAJORMINOR@ in Makefile.am
For easier cherry-picking/merging later.
2011-03-30 20:57:32 +01:00
Wim Taymans
7ec584fe47 xmp: fix after merge conflict 2011-03-30 20:35:51 +02:00
Wim Taymans
adaf08f143 Merge branch 'master' into 0.11-fdo
Conflicts:
	gst-libs/gst/tag/gstxmptag.c
2011-03-30 20:23:54 +02:00
Wim Taymans
248ab2d064 Fix for latest API changes 2011-03-30 16:50:45 +02:00
Thiago Santos
34ba387d0b tagxmpwriter: Adds a new GstTagXmpWriter interface
The GstTagXmpWriter interface is to be implemented on elements that
provide xmp serialization. It allows users to select which
xmp schemas should be used on serialization.

API: GstTagXmpWriter

https://bugzilla.gnome.org/show_bug.cgi?id=645167
2011-03-29 17:11:30 -03:00
Thiago Santos
6cc96a67ec tag: xmp: Add function to list the available schemas
Adds a function to list the available schemas in our xmp lib

https://bugzilla.gnome.org/show_bug.cgi?id=645167
2011-03-29 17:11:30 -03:00
Wim Taymans
e1869fa267 Merge branch 'master' into 0.11-fdo 2011-03-28 20:13:59 +02:00
Wim Taymans
536e86e28f tests: fix more checks 2011-03-28 19:23:38 +02:00
Wim Taymans
e33b73f9df tests: fix RTP and RTCP unit tests 2011-03-28 18:42:09 +02:00
Wim Taymans
bf3126ef3d netbuffer: fix netbuffer add function 2011-03-28 17:58:46 +02:00
Wim Taymans
a9b2e095ff encodebin: fix new profile unref 2011-03-28 17:02:26 +02:00
Wim Taymans
e6dc4c189d tests: fix some unit tests 2011-03-28 16:54:30 +02:00
Wim Taymans
d10602fbde audiosink: improve comment 2011-03-28 10:25:38 +02:00
Wim Taymans
f379a5dacb plugins: more porting to new memory API 2011-03-27 18:30:24 +02:00
Wim Taymans
3d25a4b470 libs: port to new data API 2011-03-27 13:55:15 +02:00
Wim Taymans
41025681bc tags: port to new metadata and memory API 2011-03-25 19:52:30 +01:00
Thiago Santos
78e8b33c38 video: Getting component offsets without dimensions is fine if it is not YUV
This fixes a regression that an assertion would happen if
gst_video_get_component_offset would be called with width or
height as 0.

Calling it with 0 is fine if the format isn't yuv and this
was already being used in some other places of video.c
2011-03-23 12:21:55 -03:00
David Schleef
a08227505f video: Add gst_video_format_new_template_caps() 2011-03-22 12:11:49 -07:00
Fraxinas
0af549ace0 encoding-profile: Fix syntax in Example: Creating a profile
https://bugzilla.gnome.org/show_bug.cgi?id=645437
2011-03-22 10:49:03 +01:00
Thiago Santos
75897c716f tag: xmp: Add missing schema creation
tiff schema entries were being added to the previous
schema (xap) because a new one wasn't being created
for it.
2011-03-21 18:37:36 -03:00
Olivier Crête
103fb67d20 rtpbuffer: Off-by-one error when creating RTP header extensions with a two-byte header 2011-03-17 21:50:24 -04:00
Wim Taymans
95f7fd8edf Merge branch 'master' into 0.11-fdo 2011-03-15 11:11:56 +01:00
Tim-Philipp Müller
842911d241 libs: make sure gobject-introspection scanner calls gst_init()
Fixes introspection failures caused by type assertions/warnings.
Since we now moved from _get_type() functions to external GType
variables in a couple of places, we actually have to call gst_init()
to make sure these are set when we use GST_TYPE_FOO.
2011-03-09 12:17:14 +00:00
Tim-Philipp Müller
dfd056f54a libgstapp: fix backticks in gobject-introspection section of Makefile.am 2011-03-09 12:17:07 +00:00
Arun Raghavan
9ffb8859d7 discoverer: Don't wait for subtitle streams to preroll
Subtitle streams being parse can cause the pipeline to wait indefinitely
to PREROLL. This makes subtitle streams got to PAUSED even if no data is
available. This should not be a cause for concern as we don't expect to
get much data for subtitle streams other than language tags from the
container.

https://bugzilla.gnome.org/show_bug.cgi?id=632291
2011-03-08 23:02:18 +05:30
Wim Taymans
f246c0e97d meta: update for new API 2011-03-08 17:01:41 +00:00
Wim Taymans
8a786d10be baseaudiosink: use sink preroll lock 2011-03-04 17:25:46 +01:00
Wim Taymans
6aa22111a1 Merge branch 'master' into 0.11 2011-03-04 16:21:13 +01:00
Mark Nauwelaerts
ba2e500bd9 baseaudiosink: start ringbuffer upon going to PLAYING and already EOS
... otherwise we may end up without running clock in PLAYING.

Fixes #636886.
2011-03-04 14:10:30 +01:00
Wim Taymans
9ecff3c985 netbuffer: Implement NetAddress with metadata
Make a NetAddress metadata.
2011-02-28 12:59:40 +01:00
Wim Taymans
b967bf531b pbutils: use GObject as the base class
We can't subclass miniobject so use GObject as the base class,
2011-02-28 11:50:03 +01:00
Wim Taymans
65ba216b8c baseaudiosink: remove deprecated method 2011-02-28 11:50:03 +01:00
Wim Taymans
263bfae950 netbuffer: disable GstNetBuffer object
There are no more buffer subclasses and this should be implemented with
buffermetadata later.
2011-02-28 11:50:03 +01:00
Wim Taymans
4e4a0377d7 app: remove appbuffer
There are no more buffer subclasses and the application can use the regular API
to make buffers.
2011-02-28 11:50:03 +01:00
Wim Taymans
c6dd11981d Merge branch 'master' into 0.11
Conflicts:
	configure.ac
	gst-libs/gst/pbutils/Makefile.am
2011-02-28 11:47:44 +01:00
David Schleef
1265a42124 video: Add support for r210 2011-02-25 19:37:07 -08:00
Robert Swain
e0a658a664 gstvideo: Add GST_VIDEO_BUFFER_PROGRESSIVE flag
Maps to GST_BUFFER_FLAG_MEDIA4. The purpose is to explicitly indicate
whether a telecined buffer is progressive or not without having to make
assumptions based on previous buffers.
2011-02-25 15:29:56 +01:00
Arun Raghavan
8fc424bcbf discoverer: Chain dispose() up to parent class 2011-02-22 13:49:12 +01:00
Arun Raghavan
8d2b69384a discoverer: Keep a ref for the async timeout callback
This makes sure we maintain a ref on the discoverer object while the
async timeout callback is alive to prevent a potential crash if the
object is freed while the callback is pending.

https://bugzilla.gnome.org/show_bug.cgi?id=641706
2011-02-22 13:49:12 +01:00
Arun Raghavan
40c4fe8fbe discoverer: Use g_signal_connect_object instead of g_signal_connect
We want to make sure the discoverer object passed to the various
callbacks doesn't become invalid if a callback is pending and the object
is free'd in the mean time.

https://bugzilla.gnome.org/show_bug.cgi?id=641706
2011-02-22 13:49:12 +01:00
Teemu Katajisto
17fddc13d2 pbutils: encoding-target: fix error checking in target file loading
https://bugzilla.gnome.org/show_bug.cgi?id=642949
2011-02-22 11:44:11 +01:00
Benjamin Otte
2cc48b62fe sdp: Fix copy/paste error in inrospection part of Makefile 2011-02-21 18:01:04 +01:00
Benjamin Otte
11f7e808ac tag: Fix copy/paste error in inrospection part of Makefile 2011-02-21 18:00:36 +01:00
Benjamin Otte
6213f1f3b1 rtsp: Fix copy/paste error in inrospection part of Makefile 2011-02-21 18:00:02 +01:00
David Schleef
0ed72c2959 video: Add ARGB64 and AYUV64
16-bit per channel formats.
2011-02-20 12:04:02 -08:00
David Schleef
7a24e3ea4e video: Add gst_video_format_get_component_depth() 2011-02-20 12:04:02 -08:00
Stefan Kost
7e06d35250 discoverer: don't leak parent tags 2011-02-16 12:01:03 +02:00
Stefan Kost
c201ff3de3 discoverer: improve logging (and reindent)
Add more logging for the tag merging and use the _OBJECT flavour more.
2011-02-16 12:01:03 +02:00
Arun Raghavan
e9ff48376b discoverer: Use nominal bitrate if bitrate tag is unavailable
If the bitrate tag is unavailable, this falls back to the nominal
bitrate tag instead, if that is present.

https://bugzilla.gnome.org/show_bug.cgi?id=641860
2011-02-10 09:58:34 +02:00
Mark Nauwelaerts
b2389c2108 tagdemux: also push cached events downstream when operating in pull mode
Otherwise, having 2 tagdemux in a row followed by an element operating in
pull mode will make the second tagdemux implictly eat the first tagdemux'
tag event(s).

Fixes (part of) #641047.
2011-02-07 17:46:26 +01:00
Sreerenj Balachandran
c36a3e46f5 id3tag: map the ID3v2 TENC frame to GST_TAG_ENCODED_BY
https://bugzilla.gnome.org/show_bug.cgi?id=627268
2011-02-01 14:12:45 +00:00
Mark Nauwelaerts
505fa27159 xmptag: cast argument to isdigit to int
... as that is the specification and fixes compilation on Cygwin:

gstxmptaag.c: In function 'read_one_tag':
gstxmptag.c:1015: error: array subscript has type 'char'
2011-01-31 19:21:32 +01:00
Tim-Philipp Müller
33a5e3e06f appsink: add buffer fallback in case the application doesn't handle buffer lists
We shouldn't assume the application handles buffer lists, for
ease-of-use reasons and for backwards compatibility reasons.
2011-01-31 18:06:18 +00:00
Cai Yuanqing
71dec68cba appsink: send new-buffer-list signal
Send new-buffer-list signal when emit-signals is TRUE

https://bugzilla.gnome.org/show_bug.cgi?id=640607
2011-01-31 15:32:40 +01:00
Felipe Contreras
21d1e2ded0 baseaudiosink: trivial cleanups
It seems these stuff was neglected from commmit d8942e2.

Signed-off-by: Felipe Contreras <felipe.contreras@nokia.com>
2011-01-30 15:40:53 +02:00
Tim-Philipp Müller
e404beff5d pbutils: add description for degas images 2011-01-26 09:07:26 +00:00
Stefan Kost
682ca018c9 pbutils: add description for x-annodex 2011-01-25 18:03:58 +02:00
Thiago Santos
254088344c tag: xmp: Move static variable to local function
Variable was being written to and could cause crashes
if multiple elements were parsing xmp at the same time.

Moving it to local scope solves the problem.
2011-01-24 15:21:10 -03:00
Edward Hervey
7faf92511a riff: Add support for video/x-camstudio 2011-01-24 18:27:30 +01:00
Tim-Philipp Müller
97f84c1eee encoding-target: change keyfile header to 'GStreamer Encoding Target'
which is more in line with other files such as .desktop files.
2011-01-18 10:40:29 +00:00
Tim-Philipp Müller
d1bcdea7dc pbutils: don't assume LC_MESSAGES is always defined, also check for ENABLE_NLS
Should fix build with mingw32 build bot again.
2011-01-18 01:08:05 +00:00
Tim-Philipp Müller
cd758cdbd9 app: export gst_app_stream_type_get_type()
API: gst_app_stream_type_get_type()
API: GST_TYPE_APP_STREAM_TYPE

https://bugzilla.gnome.org/show_bug.cgi?id=639747
2011-01-18 00:10:29 +00:00
Tim-Philipp Müller
b311b833c1 app: make GstAppBuffer get_type() function thread-safe 2011-01-17 23:59:48 +00:00