Commit graph

1715 commits

Author SHA1 Message Date
Branko Subasic
6518d283d5 Added buffer list support. 2009-06-29 11:59:47 +02:00
Branko Subasic
fb0fd53212 Added buffer list support. 2009-06-29 11:59:46 +02:00
Peter Kjellerstedt
8927dbc98b sdp: Include winsock2.h after defining WINVER.
Similar to bug #587080.
2009-06-29 09:36:27 +02:00
Peter Kjellerstedt
c398f2f376 rtsp: Moved a comment. 2009-06-29 09:31:40 +02:00
Stefan Kost
57a7d6f699 docs: add basic section docs for multichannel and relocate the ones for audio
Add section docs for multichannel, so that it has a short desc in the toc too.
Move the section docs in adio up, so that the follow the copyright like
elsewhere.
2009-06-27 23:25:09 +03:00
Руслан Ижбулатов
07c237ad19 Define WINVER before including any win headers
Fixes bug #587080.
2009-06-27 14:02:50 +02:00
René Stadler
41b7504e9c riff: prevent crash if rounded up tag size exceeds data size
When rounding up `tsize' exceeds the remaining buffer size, `size' underflows
and an invalid read past the buffer data follows.
2009-06-27 01:22:52 +03:00
Sebastian Dröge
939baee2bd basevideocodec: By default don't allow caps changes on the srcpad
This fixed playback of Dirac files with schrodec when upstream wants
a different width/height, basevideocodec accepts this and then
pushes buffers with new caps but content of the old caps.
In the best case this will just result in wrong unit size and a
failure in basestransform elements.
2009-06-26 15:20:09 +02:00
Tim-Philipp Müller
adff66fc83 pbutils: add description for multipart
So we get slightly nicer error messages when multipartdemux is missing.
2009-06-24 09:51:11 +01:00
Wim Taymans
85af9b82e8 basertppayload: add support for bufferlists
Based on patch from Ognyan Tonchev.

See #585559
2009-06-19 15:52:34 +02:00
Wim Taymans
f5c8055edf rtpbuffer: use new convenience functions
New core convenience functions makes the list getters and setters trivial.
Maybe even too trivial...
2009-06-19 15:33:04 +02:00
Wim Taymans
457d39075c rtp: cleanups, add _list_get_seq() too
Clean up the docs a little.
Add missing _list_get_seq method.
Add new symbols to the docs
2009-06-18 19:04:52 +02:00
Wim Taymans
e2ccc1ee39 rtp: cleanups
Add Since tags to docs
Move some code around
Add win32 symbols
2009-06-18 18:51:04 +02:00
Wim Taymans
66c388a0e0 rtp: add bufferlist support 2009-06-18 18:51:04 +02:00
Wim Taymans
f385081c92 rtp: pass data to macros instead of GstBuffer 2009-06-18 18:50:35 +02:00
Peter Kjellerstedt
4fd61fbaa4 rtsp: Made the parsing of the RTSP URL scheme more generic. 2009-06-17 18:34:57 +02:00
Peter Kjellerstedt
726a47f777 rtsp: Added gst_rtsp_watch_queue_data().
gst_rtsp_watch_queue_data() is similar to gst_rtsp_watch_queue_message()
but allows for queuing any data block for writing (much like
gst_rtsp_connection_write() vs. gst_rtsp_connection_send().)

API: gst_rtsp_watch_queue_data()
2009-06-17 18:34:33 +02:00
Peter Kjellerstedt
595f8b6d00 rtsp: Only extract the session ID from RTSP responses. 2009-06-17 18:02:18 +02:00
Peter Kjellerstedt
ddbeb44f14 rtsp: Added support for parsing IPv6 addresses in RTSP URLs. 2009-06-17 18:00:17 +02:00
Peter Kjellerstedt
95a606a0bb rtsp: Use getaddrinfo() to support both IPv4 and IPv6. 2009-06-17 17:59:47 +02:00
Peter Kjellerstedt
e1a4c8871a rtsp: Improved base64 decoding in fill_bytes().
The base64 decoding in fill_bytes() expected the size of the read data to
be evenly divisible by four (which is true for the base64 encoded data
itself). This did not, however, take whitespace (especially line breaks)
into account and would fail the decoding if any whitespace was present.
2009-06-17 17:53:54 +02:00
Wim Taymans
ffd90dda89 audiosrc: fix get_offset
When we need to jump to the most recently captured sample, jump to where the
next sample will be written instead of to some old data.

Fixes #581460
2009-06-17 14:00:23 +02:00
Wim Taymans
57a13f28de audiosink: free the ringbuffer when going to NULL
Unparent and free the ringbuffer when going to NULL, like we do with the
audiosrc element. We can do this now because we correctly manage the time
jumping back to 0.
2009-06-17 13:18:18 +02:00
Wim Taymans
e4492c24ea audio: correctly handle short read/writes 2009-06-17 13:17:30 +02:00
René Stadler
2c5f455423 baseaudiosrc: add some extra logging for buffer timestamps 2009-06-17 12:36:50 +02:00
Sebastian Dröge
a64caea0bd videofilter: Add a default get_unit_size function
This returns the correct values for all formats that are handled by
GstVideoFormat and makes all the custom get_unit_size functions in
many elements unnecessary.
2009-06-16 19:38:17 +02:00
Wim Taymans
33837d420c rtsp: add Timestamp header field
fixes #585994
2009-06-16 18:57:20 +02:00
Tim-Philipp Müller
70089160f8 audiosink, audiosrc: do the class_ref()s in the right class_init functions
Spotted by Philip Jägenstedt. Hopefully fixes #585970 for real.
2009-06-16 14:14:26 +01:00
Tim-Philipp Müller
3767cb6005 audiosink,audiosrc: ref the audio ring buffer class and type in class_init
Hack around thread-safety issues in GObject and our racy _get_type()
functions (we could easily fix the _get_type() functions, but we still
need to hack around the GObject class races until we require a newer
GLib version, I think).
2009-06-15 15:39:09 +01:00
Wim Taymans
a5491ba218 audiosrc: return FALSE when receiving a SEEK event
When receiving a seek event, return FALSE as we don't implement seeking.
2009-06-15 12:57:39 +02:00
Peter Kjellerstedt
73dd8236ce rtsp: Use a more consistent naming of GstRTSPRec variables. 2009-06-15 09:28:34 +02:00
Peter Kjellerstedt
ff38999c8b rtsp: Call message_sent() callback for all sent messages.
Previously the messages_sent() callback was only called for messages
which had a CSeq, which excluded all data messages. Instead of using the
CSeq as ID, use a simple index counter.
2009-06-15 09:28:13 +02:00
Wim Taymans
a9c82f9472 ringbuffer: handle border cases in resampler 2009-06-11 19:13:28 +02:00
Wim Taymans
8bbf2e8a32 docs: fix typo 2009-06-11 12:39:19 +02:00
Wim Taymans
69b7fb3845 baseaudiosink: reset accum when dropping samples
When we are resampling and we drop samples because we paused, reset the accum
counter because it's now invalid.
2009-06-11 12:38:35 +02:00
Jan Schmidt
c1bc55a4f5 docs: Fix a couple of warnings from the docs build. 2009-06-11 11:16:15 +01:00
Tim-Philipp Müller
249d9b4aa1 Don't include config.h multiple times when build audio testchannel app.
Fixes build problem on win32 (#585075).
2009-06-10 21:37:29 +01:00
Wim Taymans
e01fab3ace rtsp: add some more docs 2009-06-09 22:00:53 +02:00
Peter Kjellerstedt
263c5b227b rtsp: Avoid a compiler warning. 2009-06-09 18:24:55 +02:00
Peter Kjellerstedt
dfc57e3f8a rtsp: Updated documentation for GstRTSPResult.
Moved GST_RTSP_ELAST to be last in the documentation to match the actual
enum values.
2009-06-09 18:23:28 +02:00
Peter Kjellerstedt
9c40eeeb4c rtsp: Plug a memory leak.
Free memory related to any partially read and/or written RTSP messages.
2009-06-09 16:28:20 +02:00
Wim Taymans
38e59ec75d baseaudiosink: no need to cause discont when clipping
Remove the discont-when-clipping hack now that basesink provides us with
correctly clipped samples when stepping.
2009-06-09 12:09:15 +02:00
Wim Taymans
cb4952fc2e audiosink: don't align when we clip
Don't align samples when they were clipped. Not entirely correct but better than
nothing for now.
2009-06-08 17:26:59 +02:00
Edward Hervey
ee3b251234 pbutils: Add description for hdv/aux-* formats. 2009-06-08 10:25:00 +02:00
Tim-Philipp Müller
5da78c8489 libgsttag: don't extract genres from empty ID3v1 tags
If we don't have any other info, don't try to interpret the
genre field. In particular we don't want to interpret a genre
of 0 as 'Blues' if no other fields are set and the entire tag
is just empty.
2009-06-06 12:04:12 +01:00
Peter Kjellerstedt
2dbd8702dd rtsp: Fixed a typo. 2009-06-05 14:06:17 +02:00
Peter Kjellerstedt
de18ad458f rtsp: Remove an unused variable. 2009-06-05 14:05:54 +02:00
Peter Kjellerstedt
b0a9848524 rtsp: Removed duplicate initialization of conn->writefd. 2009-06-05 13:59:14 +02:00
Peter Kjellerstedt
0167e3589d rtsp: Use #defined status codes. 2009-06-05 13:55:08 +02:00
Peter Kjellerstedt
c1a6644a18 rtsp: Correct gen_tunnel_reply().
Prevent gen_tunnel_reply() from generating an incomplete response
in case an error response code is given.
2009-06-05 13:53:29 +02:00
Wim Taymans
59d9833924 rtsp: add G_LIKELY because we can 2009-06-02 12:10:39 +02:00
Peter Kjellerstedt
d8e0b5a4da rtsp: Avoid compiler warnings with -Wextra. 2009-06-01 09:59:22 +02:00
Peter Kjellerstedt
848b834cb9 rtsp: Include gst/gstconfig.h to make sure GST_PADDING is defined. 2009-06-01 09:58:27 +02:00
Peter Kjellerstedt
e69c3a4f70 sdp: Remove an unused variable. 2009-06-01 09:43:04 +02:00
Wim Taymans
dcc42d5f92 netbuffer: also note the order of IP4 addresses
IP4 addresses are also stored in network byte order. Make a note of this in the
docs.
2009-05-27 11:08:37 +02:00
Tim-Philipp Müller
6292ff4ae0 Revert "rtspconnection: don't use GLib-2.16 API, we require only 2.14"
This reverts commit 418760cf74.

We now require GLib 2.16.
2009-05-26 18:21:31 +01:00
Wim Taymans
796f8e2f76 netbuffer: document that the port is network order
Document the fact that we store the port number in network order in
GstNetAddress and that the caller should byteswap appropriately.
2009-05-26 15:39:18 +02:00
Andy Wingo
c7ca6abe53 add can-activate-pull property to baseaudiosink
* gst-libs/gst/audio/gstbaseaudiosink.c: Add can-activate-pull property
  to baseaudiosink.
2009-05-26 13:17:44 +02:00
Bastien Nocera
9c508ba458 cddabasesrc: Remove copy of sha1 digest
Remove our copy of sha1 digest now that we depend on glib 2.16.
Fixes #536313
2009-05-26 11:11:03 +02:00
Tim-Philipp Müller
5fa9a8f4d0 video: don't expose internal gst_adapter_get_buffer() helper function
If it's really needed it should go into GstAdapter in core.
2009-05-25 00:19:25 +01:00
David Schleef
538c1cde31 basevideo: Fix memleak 2009-05-22 21:29:51 -07:00
David Schleef
35aae561e8 basevideo: Add preset interface to encoder 2009-05-22 17:34:56 -07:00
Wim Taymans
81170c4989 audiosink: improve debug message 2009-05-21 10:48:49 +02:00
Michael Smith
35a9de28f4 gstid3tag: Don't extract a track number unless present.
In ID3v1, a track number is present only if byte 125 is null AND
byte 126 is non-null. If the track number is not present, don't add
a track number tag with value 0.
2009-05-19 18:12:18 -07:00
Wim Taymans
243d366b34 videoutils: remove adapter methods
Remove adapter methods now that they are in core.
2009-05-20 00:48:40 +02:00
Wim Taymans
c68a361e31 audiosink: return the return value of wait_preroll
Return the value that _wait_preroll() returned instead of always WRONG_STATE.
2009-05-19 17:17:37 +02:00
David Schleef
17f3810f7b video: remove // comments 2009-05-15 16:21:15 -07:00
David Schleef
45cf881f39 video: Add Y444, v210, v216 formats 2009-05-15 16:18:59 -07:00
David Schleef
4ec34e83d5 video: Copy BaseVideo classes from Schroedinger 2009-05-15 16:18:58 -07:00
Tim-Philipp Müller
f2031e1313 pbutils: add descriptions for 3GP, JPEG 2000 and Motion JPEG 2000 2009-05-15 20:50:06 +01:00
Wim Taymans
b9723f6e1c audioclock: make our internal time monotonic
Make the internal time increase monotonically.
2009-05-13 21:38:56 +02:00
Sebastian Dröge
ab75db1653 propertyprobe: Fix typo in the docs 2009-05-12 15:53:07 +02:00
Wim Taymans
0a09632396 rtpdepay: add some more comments 2009-05-12 10:39:49 +02:00
Wim Taymans
d655120ee6 audioclock: make sure values are ever increasing 2009-05-12 10:39:41 +02:00
Sebastian Dröge
24dd91b1f0 interfaces: Seperate some more struct definitions from typedefs 2009-05-12 09:03:25 +02:00
Sebastian Dröge
e057414049 interfaces: Seperate some more struct definitions from typedefs 2009-05-12 09:03:25 +02:00
Sebastian Dröge
59aa1251d9 interfaces: API: Add gst_mixer_get_mixer_type()
This is a convenience function that returns the mixer_type
of the interface struct.
2009-05-12 09:03:24 +02:00
Sebastian Dröge
29b063b39b interfaces: Add docs for gst_color_balance_get_balance_type() 2009-05-12 09:03:24 +02:00
Sebastian Dröge
9fc4d195e1 vorbistag: Use text/uri-list as mimetype instead of ---> for URI lists 2009-05-12 09:03:22 +02:00
John Millikin
ef473dd0ae vorbistag: Store cover art in vorbiscomments
Fixes bug #513373.
2009-05-12 09:03:22 +02:00
Sebastian Dröge
e1875bf25f interfaces: API: Add gst_color_balance_get_balance_type()
This is a convenience function that returns the balance_type
of the interface struct.
2009-05-12 09:03:22 +02:00
Sebastian Dröge
b6c3567b41 interfaces: Separate struct definitions from typedefs 2009-05-12 09:03:22 +02:00
Tim-Philipp Müller
279b996d20 pbutils: add description for APE tag caps 2009-05-12 01:59:01 +01:00
Tim-Philipp Müller
3d33e2a873 tagdemux: cache events from upstream and re-send them once we have a source pad
Makes sure tags don't get dropped when we have multiple tag demuxers in a row.
Fixes #580318.
2009-05-12 01:15:21 +01:00
Michael Smith
8f6399f109 riff: support UYVY raw 4:2:2 in riff. 2009-05-11 14:04:16 -07:00
Andy Wingo
9f74ce745f Revert "add can-activate-pull property to baseaudiosink"
This reverts commit c4074a2ee4.
2009-04-29 11:18:42 +02:00
Andy Wingo
219a31fa3c Revert "[baseaudiosink] add docs for can-activate-pull"
This reverts commit 416ce16f26.
2009-04-29 11:18:33 +02:00
Andy Wingo
416ce16f26 [baseaudiosink] add docs for can-activate-pull
* gst-libs/gst/audio/gstbaseaudiosink.c: Add documentation for
  can-activate-pull.
2009-04-28 18:48:33 +02:00
Andy Wingo
c4074a2ee4 add can-activate-pull property to baseaudiosink
* gst-libs/gst/audio/gstbaseaudiosink.c: Add can-activate-pull property
  to baseaudiosink.
2009-04-28 18:28:50 +02:00
Tim-Philipp Müller
8efe6108c4 cddabasesrc: fix posting of discid tags after MERGE_MODE_REPLACE_ALL changes in core
Don't use REPLACE_ALL merge mode when that's not really what we want,
as now that REPLACE_ALL actually does what it's supposed to do in
core, we drop tags we wanted to keep, such as the various disc id
tags. Add unit test for this as well. Fixes #579463.
2009-04-19 18:15:28 +01:00
Tim-Philipp Müller
418760cf74 rtspconnection: don't use GLib-2.16 API, we require only 2.14
Fixes #579267.
2009-04-17 10:35:34 +01:00
Wim Taymans
32904de58f baseaudiosink: don't unparent the ringbuffer
when going to NULL, don't unparent the ringbuffer because we don't support going
back to 0 very well yet.
Fixes #579203
2009-04-17 11:03:32 +02:00
Olivier Crete
d927114ef8 RTCP: don't fail when retrieving invalid PT
We can't meaningfully assert on valid packet types so just return the type as it
is. Update the comments to reflect this.

Fixes #579192.
2009-04-17 10:53:10 +02:00
Wim Taymans
f83f57b648 app: add trivial cast macros
Add trivial cast macros for appsrc and appsink. Mark them as being since 0.10.23
and add the macros to the standard macros in the docs.

Fixes #579130
2009-04-16 12:14:43 +02:00
Sebastian Dröge
a6cf0c8f06 video: Fix typo in the docs 2009-04-15 15:35:59 +02:00
Sebastian Dröge
a1d8cfde9d video: Add support for YVYU YUV colorspace 2009-04-15 14:53:47 +02:00
Tim-Philipp Müller
75acca2835 docs: fix hyperlink and move fft attribution to the right place 2009-04-15 00:19:19 +01:00
Stefan Kost
ab24d9d65c log: use G_GUINT64_FORMAT instead of llu 2009-04-15 00:02:39 +03:00
Josep Torra
71ab187355 RTSP: add missing headers for WMS RTSP
Add missing headers related to Windows Media RTSP extension.
Fixes #578942
2009-04-14 18:31:52 +02:00
Tim-Philipp Müller
9f23b82b2c Give credit to Mark Borgerding (kissfft author)
and add myself to AUTHORS as well. Fixes #575638.
2009-04-14 17:11:19 +01:00
Johann Prieur
86edcadc43 RTCP: add beginnings of Feedback messages
Add the beginnings of parsing and constructing Feedback messages.
Fixes #577610.
2009-04-14 16:45:20 +02:00
Wim Taymans
dffd1bcc97 baseaudiosrc: adjust the internal timestamp
Adjust the internal timestamp before comparing it against the adjusted clock
time.
Fixes #578506
2009-04-14 13:16:14 +02:00
Wim Taymans
0c4c1410f9 baseaudiosink: use new clock time methods
Use the unadjusted internal clock times to calculate the internal/external
offset when calibrating the clock.

When going to NULL, unparent and free the ringbuffer, like we do in the source
element.
See #578506
2009-04-14 13:12:59 +02:00
Wim Taymans
4231d54823 audioclock: add methods for the internal offset
Add two methods for getting the unadjusted time of the clock and one for
adjusting an internal time. We will need these methods for correctly handling
the time after a gst_audio_clock_reset().

Add a debug category and some debug lines to the audio clock.

API: gst_audio_clock_get_time()
API: gst_audio_clock_adjust()
API: GST_AUDIO_CLOCK_CAST()
2009-04-14 13:08:52 +02:00
Wim Taymans
251f152c20 baseaudiosink: use the internal clock time
We can't assume that the internal clock time is the same as the function we
installed on our provided clock because somebody might have changed it.
2009-04-10 21:50:55 +02:00
Martin Samuelsson
ee03bf5379 appsink: make callbacks return GstFlowReturn
Make the new_buffer and new_preroll callbacks return a GstFlowReturn so that
errors can be reported properly.
Fixes #577827.
2009-04-09 23:46:17 +02:00
Wim Taymans
e6798c5cce ringbuffer: allow for custom commit functions
Allow subclasses to override the commit method.
2009-04-09 18:04:44 +02:00
Wim Taymans
cae2981f83 baseaudiosink: fix a small glitch after pause
After we pause the stream and interrupt the writeout to the ringbuffer, also adjust
the amount of output samples we consumed. We can't do this reliably with the
current API when we are doing trick modes but we can do the right thing for
normal playback.
2009-04-08 18:06:54 +02:00
Stefan Kost
ff9ee1dc5a audiofilter: don't leak pad-template
gst_element_class_add_pad_template() does not take ownership.
2009-04-07 22:39:07 +03:00
Edward Hervey
2555eeb737 navigation/v4l: Don't use g_return_val_if_fail for computed/used values. 2009-04-04 16:28:14 +02:00
Wim Taymans
88110ea67e rtsp: use fully qualified urls when using a proxy
Use a fully qualified url when specifying the url for tunneled requests through
a proxy.
See #573173
2009-04-02 22:28:55 +02:00
Jan Schmidt
033e654172 navigation: Extend the navigation interface
Add support for a set of standard commands that can be queried and executed to
support applications like DVD. Add query construction and parsing functions.
Add new messages that can be sent on the bus to provide notifications related
to commands, multiangle changes, and button highlight activity.
Add some helper functions to parse the existing GstNavigation events that
elements might receive.
Document it all and add unit tests.
2009-04-02 12:21:18 +01:00
Wim Taymans
eed784b372 rtsp: fix little typo in the comments 2009-04-01 09:03:35 +02:00
Tim-Philipp Müller
fc8c5cba15 rtspconnection: make gst_rtsp_watch_queue_message() thread-safe
People might queue messages from a thread other than the thread in which
the main context which this watch is attached is iterated from, so use
a GAsyncQueue instead of a GList, so g_list_append() doesn't trample
over list nodes just freed in the other thread. This just fixes issues
I've had with gst-rtsp-server. We might need more locking in various
places here.
2009-03-31 18:30:57 +01:00
Tim-Philipp Müller
dfe96ce618 rtsp: clear the entire builder structure
And use structure instead of variable with sizeof when
clearing the rtsp message structure, for clarity.
2009-03-31 18:30:48 +01:00
Tim-Philipp Müller
dd9f077177 docs: fix typo in gst_rtsp_message_unset() API docs 2009-03-31 18:30:48 +01:00
Wim Taymans
8b37dc3eb8 rtsp: add support for proxies
Add suport for proxy servers. Currently only used for tunneled HTTP
connections without authentication.
2009-03-31 19:00:00 +02:00
Wim Taymans
8be68f983c Revert "rtsp: reset whole message (was sizeof pointer instead of sizeof type)"
This reverts commit 79de0b8d67.
2009-03-31 18:57:08 +02:00
Stefan Kost
79de0b8d67 rtsp: reset whole message (was sizeof pointer instead of sizeof type) 2009-03-31 12:27:09 +03:00
Jan Schmidt
43788e4796 doc: Fix a typo in the GstMixer docs 2009-03-31 00:58:24 +01:00
Wim Taymans
0d3d3026d2 rtsp: start CSeq counting from 1 instead of 0
Start counting from 1 instead of 0 as this is what most other clients
seem to do.
2009-03-25 16:37:28 +01:00
Wim Taymans
1081ae59eb rtsp: add ETag and If-Match headers
Add new headers, we need them for RealMedia support.
2009-03-25 16:36:14 +01:00
Tim-Philipp Müller
0267e79778 audiosrc: improve 'Dropped n samples' warning message 2009-03-25 11:27:44 +00:00
Sebastian Dröge
108ead73c8 rtsp: Use GLib base64 functions and deprecate gst_rtsp_base64_encode
This also fixes another instance of CVE-2008-4316.
2009-03-17 22:53:44 +01:00
Wim Taymans
f4b7cbbf16 rtsp: fix resolving of hostnames
We were returning a pointer to a stack variable with the resolved hostname,
which doesn't work.
return a copy of the resolved ip address instead.
Fixes #575256.
2009-03-13 16:19:41 +01:00
Wim Taymans
91b2d71da0 appsrc: release lock in _eos flushing case
Release the mutex when we are flushing in gst_app_src_end_of_stream()
Fixes #574964.
2009-03-13 15:16:44 +01:00
Jan Schmidt
566583e871 vorbistag: Protect memory allocation calculation from overflow.
Patch by: Tomas Hoger <thoger@redhat.com> Fixes CVE-2009-0586
2009-03-12 15:02:07 +00:00
Wim Taymans
0e2157029e rtsp: fix parsing of the timeout parameter
--
2009-03-11 18:45:59 +01:00
Wim Taymans
b674584e97 rtsp: fix g_return condition
when parsing a data message, we require a data message.
2009-03-11 17:29:41 +01:00
Wim Taymans
18f612ffa9 rtsp: free the right string.
Free the key value before we remove the header item from the array. The item we
retrieved from the array is only valid until we remove it from the array.
2009-03-11 14:09:54 +01:00
Wim Taymans
16225d45be rtsp: keep track of amount of decoded bytes
Keep track of the actual amount of decoded bytes, which can be less than 3 when
we decode the last bits of a base64 message.
2009-03-11 14:09:54 +01:00
Wim Taymans
f964c0fc38 rtsp: only add ports when not using TCP
Only add the port numbers in the transport string when we are using udp or
multicast.
2009-03-09 13:53:41 +01:00
Wim Taymans
bc54a5f9a0 rtsp: use gstreamer dump mem
--
2009-03-09 13:53:15 +01:00
Wim Taymans
3a72044a22 rtsp: use glib base64 encoder
--
2009-03-09 13:51:48 +01:00
Edward Hervey
a3c88fb32b Riff: Add mapping for Fraps video codec.
Found through insanity testrun. Confirmed mapping in libavformat.
2009-03-09 10:03:13 +01:00
Edward Hervey
b870b61c00 riff: Add the 'DVR ' mapping for mpeg2video.
Found this in 3 files from the insanity suite and mapping is also present
in libavformat.
2009-03-09 09:08:00 +01:00
LRN
eb3ff95a3a rtsp: fix compilation on windows.
Remove unused variable when building for windows.
Fixes #574443.
2009-03-08 18:17:48 +01:00
Wim Taymans
d998f6097b riff: add theora mapping
Add theora mappings. See #574169.
2009-03-06 18:54:57 +01:00
Wim Taymans
2cc1a6808d rtsp: Add methods for getting the read/write fds
API:gst_rtsp_connection_get_readfd()
API:gst_rtsp_connection_get_writefd()
2009-03-06 18:54:57 +01:00
Julien Moutte
d45b27d92d Fix build on Mac OS X 2009-03-06 10:37:38 +01:00
Wim Taymans
f69a3d953a rtsp: fix parsing of 'now-' ranges.
--
2009-03-05 13:48:37 +01:00
Wim Taymans
bcaec3d907 rtsp: do some more cleanup in _close
Do som more cleanup in gst_rtsp_connection_close() so that it's back into the
unconnected state as it was allocated.
2009-03-04 16:24:01 +01:00
Wim Taymans
629f2dcee4 rtsp: fix the memory management of the url
Constify the url parameter in _create.
Make a copy of the url stored in the connection.
Free the url when the connection is freed.
2009-03-04 16:11:20 +01:00
Wim Taymans
b6d7a1dc03 RTSP: Add support for server tunneling
Save the tunnelid in the connection. Add a method to retrieve the tunnelid so
that a server can store and match the id against other tunnel requests.

Fix the URI in the tunnel requests so that they contain the absolute uri and the
query string if any instead of just the hostname.

Transparently base64 decode the input stream when tunneling.

Add method to set the connection ip address so that it can be included in the
tunnel response.

Add method to connect the two tunnel requests.

Add two callbacks for the async mode to notify a tunnel start and tunnel
complete event.

Add method to reset the watch after the connection has been tunneled.

Various little refactoring to make more stuff reusable.

API: RTSP::gst_rtsp_connection_set_ip()
API: RTSP::gst_rtsp_connection_get_tunnelid()
API: RTSP::gst_rtsp_connection_do_tunnel()
API: RTSP::gst_rtsp_watch_reset()
2009-03-04 12:21:29 +01:00
Wim Taymans
3b6e9fc870 rtsp: add new defines for tunneling
Add two more result codes for tunneling support.
2009-03-04 12:18:00 +01:00
Wim Taymans
9ea1240910 rtsp: remove , from last enum member
Remove , from last enum member to improve compatibility with other compilers.
2009-03-04 12:12:06 +01:00
Wim Taymans
9045d210b2 rtsp: remove debugging g_message
--
2009-03-02 16:13:33 +01:00
Wim Taymans
fbc4f2d4fe RTSP: add support for Quicktime tunneled RTSP
Add support for tunneling RTSP over HTTP.
Fix documentation some more.
See also #573173.

API: RTSP:gst_rtsp_connection_is_tunneled()
API: RTSP:gst_rtsp_connection_set_tunneled()
2009-03-02 16:03:49 +01:00
Wim Taymans
40db590e71 RTSP: parse rtsph uris as RTSP tunneled over HTTP
Add transport define for RTSP tunneled over HTTP.

Parse rtsph:// uris as tunneled HTTP over TCP.

API: GstRTSPLowerTrans::GST_RTSP_LOWER_TRANS_HTTP

See also #573173.
2009-03-02 15:48:56 +01:00
Wim Taymans
4664fe40bc rtsp: add _get_url method and separate sockets
Add gst_rtsp_connection_get_url() method.

Reserve space for 2 sockets, one for reading and one for writing. Use socket
pointers to select the read and write sockets. This should allow us to implement
tunneling over HTTP soon.

API: RTSP::gst_rtsp_connection_get_url()
2009-03-02 10:58:49 +01:00
Tim-Philipp Müller
0a835bc9a3 app: force automatic rebuild of gstapp-marshal.[ch] after previous change
The previous change to appsrc/appsink requires people to 'make clean'
to get the marshallers rebuilt (causing a build failure otherwise).
Change some lines in the .list file around to force a rebuild of
these files automatically.
2009-03-01 18:31:17 +00:00
LRN
e5d2d32bba rtspconnection: Use correct types for some functions on Win32
Fixes bug #573529.
2009-02-28 19:35:33 +01:00
Edward Hervey
ed013753c0 rtspconnection: Fix warning about using unitialized value. 2009-02-28 13:11:59 +01:00
Edward Hervey
6f73427aa6 riff: Add more codec mappings.
This comes mostly from a review of ffmpeg/libavformat/riff.c
2009-02-28 12:41:28 +01:00
Stefan Kost
4e4f922d7a rtsprange: don't leak the range in case of parsing error.
Free the gstRTSPTimeRange if we don't return it. Also simplify
gst_rtsp_range_free() as it is valid to pass NULL to g_free().
2009-02-26 18:01:05 +02:00
Wim Taymans
c4036dd701 app: add callbacks to appsrc, cleanups
Add a uri handler to appsink.
don't emit signals when we have installed callbacks on appsink.

Add callbacks to appsrc to replace the signals.
Add property to disable callbacks in appsrc, default to TRUE for backwards
compatibility but disable when callbacks are installed.

API: GstAppSrc::emit-signals
API: GstAppSrc::gst_app_src_set_emit_signals()
API: GstAppSrc::gst_app_src_get_emit_signals()
API: GstAppSrc::gst_app_src_set_callbacks()
2009-02-26 16:44:53 +01:00
Wim Taymans
661f2da6e0 Appsink: add padding for callbacks + docs
Add some padding to the callbacks structure just to be safe.

Remove the now invisible marshaller methods from the docs.

Fix a comment in the unit test.
2009-02-26 11:42:44 +01:00
Stefan Kost
58695d78f9 docs: fix newly added interlace constants and plug holes in video format docs 2009-02-26 10:09:59 +02:00
Stefan Kost
251e4d160a docs: don't put random stuff in tags.
Tags like Since: or Returns: can only be followed by more tags. gtk-doc has no
tag to append text again to the documentation body.
2009-02-26 10:09:59 +02:00
Tim-Philipp Müller
07d2dbfdfe app: add win32 .def file and only export functions we want exported
Add a .def file for win32 builds (and make check-exports).
Fix LDFLAGS in Makefile.am, so the usual export regexps are used (fixes #573165).
Make sure private marshaller functions aren't exported by prefixing them with __gst;
also rename gst_app_marshal_OBJECT__VOID to _BUFFER__VOID, make it static and add
a comment why we're not using glib-genmarshal for this one.
2009-02-25 19:50:00 +00:00
Peter Kjellerstedt
2fe8e4c1de Fixed a typo. 2009-02-25 16:25:33 +01:00
Peter Kjellerstedt
a038a8d46d rtsp, multifdsink: Unify the use of union gst_sockaddr. 2009-02-25 15:45:50 +01:00
Tim-Philipp Müller
3d88a5b985 riff: add fourcc for mpeg2-in-avi (as produced by mencoder)
Fixes: #565777
2009-02-25 11:13:01 +00:00
Edward Hervey
e57073b6f9 Riff: Add fourcc for mpeg1-in-avi (as produced by mencoder) 2009-02-25 08:05:58 +01:00
Garret D'Amore
b8af1223db mixer interface: Add flags to enhance mixer interfaces
This patch adds a few flags to the mixer and mixerctrl interface to
better support OSSv4 (and potentially other backends).

Patch By: Garret D'Amore <garrett.damore@sun.com>
Signed-Off-By: Jan Schmidt <jan.schmidt@sun.com>

API: GST_MIXER_FLAG_HAS_WHITELIST, GST_MIXER_FLAG_GROUPING,
API: GST_MIXER_TRACK_NO_RECORD, GST_MIXER_TRACK_NO_MUTE,
API: GST_MIXER_TRACK_WHITELIST
2009-02-24 17:23:58 +00:00
Jan Schmidt
94791df88d rtsp: Fix a strict aliasing warning
Fix strict aliasing warnings from casting a sockaddr_storage and
using it as a sockaddr_in6. Use a union instead.
2009-02-24 16:49:40 +00:00
Wim Taymans
bb5e2d3f56 Match WSAStartup and WSACleanup correctly
Don't randomly call WSAStartup and WSACleanup but instead call the startup when
we create a connection and cleanup when we free it again. Because the internal
datastructure is refcounted, this should not cause any refcounting leaks when
the connection is managed correctly.
Fixes #562794.
2009-02-24 12:11:00 +01:00
Wim Taymans
6e560ae5d8 Add method for handling server requests
Add a receive_request so that extensions can react to server requests.
2009-02-23 10:57:08 +01:00
Sebastian Dröge
d659e8353d tagdemux: Unref the actual buffer instead of the memory address of the buffer 2009-02-22 19:12:00 +01:00
Edward Hervey
5ce5433152 libs/video: Fix gst_video_format_new_caps* functions.
Only add a 'interlaced=True' property to caps *IF* it is interlaced, else
don't add anything.
2009-02-22 13:42:33 +01:00
Wim Taymans
15cd839f81 Improve key/value parsing
Improve header field parsing by keeping a ref to the key/value instead of
copying it into a local variable.
2009-02-20 17:26:40 +01:00
Wim Taymans
bb4310203a Add trailing \0 to message length
We always put a trailing 0 at the end of the message body. Reflect this fact in
the length of the message.
2009-02-20 12:35:53 +01:00
Wim Taymans
0ffd5e703a Don't parse headers for data messages
Don't try to parse the headers on a data message because they don't have
headers.
2009-02-20 09:52:16 +01:00
Edward Hervey
a490b3f2dd video: Fix 'Since' tags 2009-02-19 17:40:45 +01:00
Edward Hervey
c44b067817 video: Add flags for interlaced video along with convenience methods for interlaced caps.
These three flags allow all know combinations of interlaced formats. They should
only be used when the caps contain 'interlaced=True'.

Fixes #163577 (yes, it's a 4 year old bug).
2009-02-19 16:11:44 +01:00
Wim Taymans
f187ffddce Make RTSPConnection opaque and rename RTSPChannel
Make the RTSPConnection object opaque so that we can extend it in the future.

Rename GstRTSPChannel to GstRTSPWatch to avoid confusing with the RTSP channels.
2009-02-19 15:55:07 +01:00
Edward Hervey
02f9079d6b Add some more mappings for h264 in riff 2009-02-19 13:24:39 +01:00
Wim Taymans
e5d8551552 Add method to install callbacks on appsink
Based on pacth by Martin Samuelsson <martin dot samuelsson at axis dot com>
Fixes #571299.

Add gst_app_sink_set_callbacks() to install a set of callbacks. This is a more
performant alternative to connecting to the signals.

Add a unit test for appsink.

Clean up some of the appsink docs.

API: GstAppSink::gst_app_sink_set_callbacks()
2009-02-19 10:44:31 +01:00
Wim Taymans
a2f04c8f61 Add RTSP accept method
Add a method to accept a connection on a socket and create a GstRTSPConnection
for it.

API: gst_rtsp_connection_accept()
2009-02-18 18:46:35 +01:00
Wim Taymans
a6d75bd33c Add RTSP channel object for async io
Add a GstRTSPChannel object that wraps a GSource around the RTSP connection so
that the connection can be monitored from a maincontext. This allows us to
operate in ASYNC mode, which is handy when building a server.

Rework the old code to use the async code under the hood.

API: gst_rtsp_channel_new()
API: gst_rtsp_channel_unref()
API: gst_rtsp_channel_attach()
API: gst_rtsp_channel_queue_message()
2009-02-18 17:42:59 +01:00
Tim-Philipp Müller
a624df17c4 tagdemux: don't abort when downstream pulls a buffer of size 0
Pulling a 0-sized buffer is allowed, and we should handle this correctly instead of
aborting. Fixes #571009 (wma file with ID3v2 tag).
2009-02-12 09:18:20 +00:00
Tim-Philipp Müller
1fedfec220 riff: error out on nonsensical chunk sizes instead of aborting
When encountering a nonsensical chunk size such as (guint)-1, error out cleanly instead of
continuing and trying to g_memdup() 4GB of data that doesn't exist, which will either abort
in g_malloc() or crash.

Fixes #553295, crash with fuzzed AVI file.
2009-02-11 16:58:18 +00:00
Peter Kjellerstedt
430eea3016 gstrtspmessage: Minor documentation correction.
Corrected documentation about what needs to be freed after calling
gst_rtsp_message_new(), gst_rtsp_message_new_request(),
gst_rtsp_message_new_response() and gst_rtsp_message_new_data().
2009-02-10 17:37:06 +01:00
Wim Taymans
76112f9f04 RTSPRange: Add method to serialize ranges
Add gst_rtsp_range_to_string() to serialize a GstRTSPRange to a string that can
be used by a server.
API: GstRTSPRange::gst_rtsp_range_to_string()
2009-02-04 17:03:52 +01:00
Wim Taymans
4bb5722f1a GstRTSPUrl: Add some const to methods
Add const to the methods that do not modify the object.
2009-02-04 13:16:48 +01:00
Wim Taymans
ad1dea3122 Add more g_return_if_fail() calls
Check that we have a valid file descriptor before entering certain functions in
order to avoid undesirable situations.
Add some more debugging in the connect method.
2009-02-04 11:18:31 +01:00
Tim-Philipp Müller
95d6fb0501 pbutils: remove duplicate detail strings when calling the external codec installer
It doesn't make sense to ask installers for the same codec or element twice, so filter out duplicate requests before calling the external helper script and make the unit test check this works right. Fixes #567636.
2009-02-02 17:34:23 +00:00
Stefan Kost
486fe43cb9 Add a FIXME 0.11. Make the log message a bit more detailed and add comments. 2009-02-02 18:05:42 +02:00
Wim Taymans
35cec4c006 Fix string leak in rtspmessage
when we remove a header field from a message we must free the value associated
with the key to avoid a memory leak.
2009-02-02 10:09:07 +01:00
Stefan Kost
950d0c0a7d Link to the class, as we can't link to the members yet. 2009-01-31 18:44:32 +02:00
Wim Taymans
6f3511bfb6 fix some typos
Fix some typos in the doc string of the new
gst_rtsp_options_as_string() method.
2009-01-29 14:00:30 +01:00
Wim Taymans
484a025f6d Add new RTSP message method to set header
Add gst_rtsp_message_take_header() that takes ownership of the passed header
value. This allows us to avoid an allocations and memory copy in some
situations.
API: GstRTSPMessage::gst_rtsp_message_take_header()
2009-01-29 11:55:10 +01:00
Wim Taymans
e8bd8cab41 Add method to serialize RTSP options
Add gst_rtsp_options_as_text() method to serialize a set of RTSP options to a
string.
API: GstRTSP::gst_rtsp_options_as_text()
2009-01-28 11:48:01 +01:00
Jan Schmidt
63c9ede3d0 Extend and clean up git ignores 2009-01-23 23:16:11 +00:00
Wim Taymans
a7f2540f77 Add more codec ids for RIFF formats
Handle codec ID for various other AAC formats.
Sync the list of possible codec ids with that of ffmpeg.
Fixes #567255
2009-01-23 11:33:29 +01:00
Wim Taymans
26256b95c8 Reset queued_bytes counter when flushing
Set the amount of queued bytes in the internal queue back to 0 when we clear the
queue.
Fixes #567982
2009-01-23 11:11:31 +01:00
Wim Taymans
509f561ef3 Merge branch 'master' of ssh://git.freedesktop.org/git/gstreamer/gst-plugins-base 2009-01-22 13:12:02 +01:00
Sebastian Dröge
2e8f9921c9 Reduce the number of allocations for creating FFT contexts
Reduce the number of allocations from 2 to 1 for every FFT
context by allocating enough memory for the FFT context
and passing parts of it to the kissfft allocation functions.
2009-01-22 12:54:35 +01:00
Wim Taymans
9ce042e2a7 Avoid overflows in the padding checks by doing the check slightly
differently.
Add a unit test to check for correct behaviour.
2009-01-21 13:09:29 +01:00
Sebastian Dröge
4d3ff205be gst-libs/gst/fft/: Use correct struct alignment everywhere to prevent unaligned memory accesses, resulting in SIGBUS ...
Original commit message from CVS:
* gst-libs/gst/fft/_kiss_fft_guts_f32.h:
* gst-libs/gst/fft/_kiss_fft_guts_f64.h:
* gst-libs/gst/fft/_kiss_fft_guts_s16.h:
* gst-libs/gst/fft/_kiss_fft_guts_s32.h:
* gst-libs/gst/fft/kiss_fftr_f32.c: (kiss_fftr_f32_alloc):
* gst-libs/gst/fft/kiss_fftr_f64.c: (kiss_fftr_f64_alloc):
* gst-libs/gst/fft/kiss_fftr_s16.c: (kiss_fftr_s16_alloc):
* gst-libs/gst/fft/kiss_fftr_s32.c: (kiss_fftr_s32_alloc):
Use correct struct alignment everywhere to prevent unaligned
memory accesses, resulting in SIGBUS on sparc and probably others.
Fixes bug #500833.
2009-01-16 11:44:04 +00:00
Sebastian Dröge
98ea758763 gst-libs/gst/tag/gsttagdemux.c: Forward unknown events upstream to allow latency configuration.
Original commit message from CVS:
* gst-libs/gst/tag/gsttagdemux.c: (gst_tag_demux_srcpad_event):
Forward unknown events upstream to allow latency configuration.
Fixes bug #567960.
2009-01-16 11:40:02 +00:00
Jan Schmidt
80ac3b565e gst-libs/gst/app/gstappsink.c: Store the returned signal id in the right slot when registering the pull-buffer signal.
Original commit message from CVS:
* gst-libs/gst/app/gstappsink.c:
Store the returned signal id in the right slot when
registering the pull-buffer signal.
Fixes #567168
Spotted by: Thomas Vander Stichele  <thomas at apestaart dot org>
2009-01-09 23:13:17 +00:00
Tim-Philipp Müller
d629c9fc17 gst-libs/gst/interfaces/mixer.c: Small docs addition to clarify that one really mustn't free the constant GList retur...
Original commit message from CVS:
* gst-libs/gst/interfaces/mixer.c:
Small docs addition to clarify that one really mustn't free
the constant GList returned (#566812).
2009-01-09 17:17:50 +00:00
Wim Taymans
1f6297f051 Add GType for GstRTSPUrl and expose a copy function because we can.
Original commit message from CVS:
* docs/libs/gst-plugins-base-libs-sections.txt:
* gst-libs/gst/rtsp/gstrtspurl.c: (register_rtsp_url_type),
(gst_rtsp_url_get_type), (gst_rtsp_url_copy):
* gst-libs/gst/rtsp/gstrtspurl.h:
* win32/common/libgstrtsp.def:
Add GType for GstRTSPUrl and expose a copy function because we can.
API: gst_rtsp_url_copy()
Fixes #567027.
2009-01-08 17:18:24 +00:00
Sebastian Dröge
ba03cb6080 gst-libs/gst/cdda/gstcddabasesrc.*: Make the GType of GstCDDABaseSrcMode public for bindings.
Original commit message from CVS:
* gst-libs/gst/cdda/gstcddabasesrc.c:
* gst-libs/gst/cdda/gstcddabasesrc.h:
Make the GType of GstCDDABaseSrcMode public for bindings.
Fixes bug #566837.
2009-01-07 10:50:15 +00:00
José Alburquerque
7431789249 gst-libs/gst/audio/gstaudioclock.*: Make gst_audio_clock_new use const gchar* to ease the wrapping of
Original commit message from CVS:
Patch by: José Alburquerque <jaalburqu svn gnome org>
* gst-libs/gst/audio/gstaudioclock.c: (gst_audio_clock_new):
* gst-libs/gst/audio/gstaudioclock.h:
Make gst_audio_clock_new use const gchar* to ease the wrapping of
C++ bindings. Fixes #566723.
2009-01-06 17:30:31 +00:00
Tim-Philipp Müller
ada70bb159 gst-libs/gst/app/: Make debug categories static. Use _element_class_set_details_simple().
Original commit message from CVS:
* gst-libs/gst/app/gstappsink.c:
* gst-libs/gst/app/gstappsink.h:
* gst-libs/gst/app/gstappsrc.c:
* gst-libs/gst/app/gstappsrc.h:
Make debug categories static. Use _element_class_set_details_simple().
2009-01-06 11:10:29 +00:00
Tim-Philipp Müller
d2b82026c8 gst-libs/gst/app/: Move private data into a private instance struct. Add padding to instance and class structures exp...
Original commit message from CVS:
* gst-libs/gst/app/gstappsink.c: (_GstAppSinkPrivate),
(gst_app_sink_class_init), (gst_app_sink_init),
(gst_app_sink_dispose), (gst_app_sink_finalize),
(gst_app_sink_unlock_start), (gst_app_sink_unlock_stop),
(gst_app_sink_flush_unlocked), (gst_app_sink_start),
(gst_app_sink_stop), (gst_app_sink_event), (gst_app_sink_preroll),
(gst_app_sink_render), (gst_app_sink_getcaps),
(gst_app_sink_set_caps), (gst_app_sink_get_caps),
(gst_app_sink_is_eos), (gst_app_sink_set_emit_signals),
(gst_app_sink_get_emit_signals), (gst_app_sink_set_max_buffers),
(gst_app_sink_get_max_buffers), (gst_app_sink_set_drop),
(gst_app_sink_get_drop), (gst_app_sink_pull_preroll),
(gst_app_sink_pull_buffer)::
* gst-libs/gst/app/gstappsink.h: (GstAppSinkPrivate), (_GstAppSink)::
* gst-libs/gst/app/gstappsrc.c: (_GstAppSrcPrivate),
(gst_app_src_class_init), (gst_app_src_init),
(gst_app_src_flush_queued), (gst_app_src_dispose),
(gst_app_src_finalize), (gst_app_src_set_property),
(gst_app_src_get_property), (gst_app_src_unlock),
(gst_app_src_unlock_stop), (gst_app_src_start), (gst_app_src_stop),
(gst_app_src_is_seekable), (gst_app_src_check_get_range),
(gst_app_src_query), (gst_app_src_do_seek), (gst_app_src_create),
(gst_app_src_set_caps), (gst_app_src_get_caps),
(gst_app_src_set_size), (gst_app_src_get_size),
(gst_app_src_set_stream_type), (gst_app_src_get_stream_type),
(gst_app_src_set_max_bytes), (gst_app_src_get_max_bytes),
(gst_app_src_set_latencies), (gst_app_src_set_latency),
(gst_app_src_get_latency), (gst_app_src_push_buffer_full),
(gst_app_src_push_buffer_action), (gst_app_src_end_of_stream)::
* gst-libs/gst/app/gstappsrc.h: (GstAppSrcPrivate)::
Move private data into a private instance struct. Add padding to
instance and class structures exposed in public headers. Add
Since markers to the gtk-doc blurbs (#566750).
2009-01-06 10:56:45 +00:00
Jan Schmidt
1b2dc5f3a8 gst-libs/gst/video/: Fix up build flags and include statement for the new generated enumtypes files, to fix dist.
Original commit message from CVS:
* gst-libs/gst/video/Makefile.am:
* gst-libs/gst/video/video.h:
Fix up build flags and include statement for the new generated
enumtypes files, to fix dist.
2009-01-06 10:16:16 +00:00
Jan Schmidt
08393941a8 Move AppSrc/AppSink from gst-plugins-bad. Fixes #564421
Original commit message from CVS:
* configure.ac:
* docs/libs/Makefile.am:
* docs/libs/gst-plugins-base-libs-docs.sgml:
* docs/libs/gst-plugins-base-libs-sections.txt:
* docs/plugins/Makefile.am:
* docs/plugins/gst-plugins-base-plugins-docs.sgml:
* docs/plugins/gst-plugins-base-plugins-sections.txt:
* docs/plugins/gst-plugins-base-plugins.args:
* docs/plugins/gst-plugins-base-plugins.hierarchy:
* docs/plugins/gst-plugins-base-plugins.interfaces:
* docs/plugins/gst-plugins-base-plugins.prerequisites:
* docs/plugins/gst-plugins-base-plugins.signals:
* docs/plugins/inspect/plugin-app.xml:
* gst-libs/gst/Makefile.am:
* gst-libs/gst/app/gstappsink.c:
* gst-libs/gst/app/gstappsrc.c:
* tests/examples/Makefile.am:
* tests/examples/app/Makefile.am:
Move AppSrc/AppSink from gst-plugins-bad. Fixes #564421
2009-01-05 23:04:57 +00:00
Wim Taymans
0a4c1bc64c gst-libs/gst/audio/gstbaseaudiosink.c: Avoid holding the OBJECT_LOCK when calling ringbuffer functions that take the ...
Original commit message from CVS:
* gst-libs/gst/audio/gstbaseaudiosink.c:
(gst_base_audio_sink_change_state):
Avoid holding the OBJECT_LOCK when calling ringbuffer functions that
take the ringbuffer lock because rinbuffer lock > OBJECT_LOCK. We can do
this because the async_play method is deprecated and usually not called
anymore.
2009-01-05 17:13:13 +00:00
Edward Hervey
70a35897fb gst-libs/gst/tag/gsttagdemux.*: Add GType for GstTagDemuxResult enum.
Original commit message from CVS:
* gst-libs/gst/tag/gsttagdemux.c: (gst_tag_demux_result_get_type):
* gst-libs/gst/tag/gsttagdemux.h:
Add GType for GstTagDemuxResult enum.
2008-12-31 13:31:55 +00:00
Edward Hervey
98ad43fcdd gst-libs/gst/video/: Add glib-mkenum for GstVideoFormat enum GTYPE auto-generation.
Original commit message from CVS:
* gst-libs/gst/video/Makefile.am:
* gst-libs/gst/video/video.h:
Add glib-mkenum for GstVideoFormat enum GTYPE auto-generation.
This will help bindings to use it.
2008-12-31 13:01:30 +00:00
Edward Hervey
e2fcc71650 Switch glib-mkenum for gst-libs/gst/audio from multichannel- to audio- in order to wrap all enums declarations of tha...
Original commit message from CVS:
* gst-libs/gst/audio/Makefile.am:
* gst-libs/gst/audio/audio.c:
* gst-libs/gst/audio/multichannel.h:
* gst-libs/gst/audio/testchannels.c:
* win32/MANIFEST:
* win32/common/audio-enumtypes.c:
(gst_audio_channel_position_get_type),
(gst_ring_buffer_state_get_type),
(gst_ring_buffer_seg_state_get_type),
(gst_buffer_format_type_get_type), (gst_buffer_format_get_type):
* win32/common/audio-enumtypes.h:
* win32/common/multichannel-enumtypes.c:
* win32/common/multichannel-enumtypes.h:
* win32/vs6/grammar.dsp:
* win32/vs6/libgstaudio.dsp:
* win32/vs7/libgstaudio.vcproj:
* win32/vs8/libgstaudio.vcproj:
Switch glib-mkenum for gst-libs/gst/audio from multichannel- to
audio- in order to wrap all enums declarations of that library.
This modification should not matter since that header file is not a
public header (it will be included by public headers).
Modify win32 crap^Wfiles accordingly.
2008-12-31 11:20:26 +00:00
Edward Hervey
20adaa1328 gst-libs/gst/audio/: Complete Sebastien's commit from the 13th by exporting the _slave_method_get_type() methods.
Original commit message from CVS:
* gst-libs/gst/audio/gstbaseaudiosrc.h:
* gst-libs/gst/audio/gstbaseaudiosink.h:
Complete Sebastien's commit from the 13th by exporting the
_slave_method_get_type() methods.
2008-12-30 17:55:07 +00:00
Wim Taymans
0ab6c0fbc0 gst-libs/gst/app/gstappsrc.*: Add properties and methods to configure and retrieve the min and max latencies.
Original commit message from CVS:
* gst-libs/gst/app/gstappsrc.c: (gst_app_src_class_init),
(gst_app_src_init), (gst_app_src_set_property),
(gst_app_src_get_property), (gst_app_src_query),
(gst_app_src_set_latencies), (gst_app_src_set_latency),
(gst_app_src_get_latency), (gst_app_src_push_buffer_full):
* gst-libs/gst/app/gstappsrc.h:
Add properties and methods to configure and retrieve the min and max
latencies.
2008-12-29 16:45:20 +00:00
Wim Taymans
a579eba73d gst-libs/gst/audio/gstbaseaudiosink.c: Pause the write thread before deactivating and releasing the ringbuffer to avo...
Original commit message from CVS:
* gst-libs/gst/audio/gstbaseaudiosink.c:
(gst_base_audio_sink_setcaps):
Pause the write thread before deactivating and releasing the ringbuffer
to avoid a deadlock when we do gapless playback with different sample
rates in playbin2.  Fixes #564929.
2008-12-20 12:45:03 +00:00
Sebastian Dröge
4ed1f5d6fd gst-libs/gst/audio/gstbaseaudiosrc.c: Make GstAudioSrcSlaveMethod get_type() function non-static as it's public now.
Original commit message from CVS:
* gst-libs/gst/audio/gstbaseaudiosrc.c:
Make GstAudioSrcSlaveMethod get_type() function non-static
as it's public now.
* win32/common/libgstaudio.def:
* win32/common/libgstnetbuffer.def:
Add some missing functions to the list of exported symbols.
2008-12-19 13:03:00 +00:00
Andrew Feren
a628077e96 gst-libs/gst/netbuffer/gstnetbuffer.*: Make gst_netaddress_get_ip4_address fail for v6 addresses.
Original commit message from CVS:
Patch by: Andrew Feren <acferen at yahoo dot com>
* gst-libs/gst/netbuffer/gstnetbuffer.c:
(gst_netaddress_get_ip4_address), (gst_netaddress_get_ip6_address),
(gst_netaddress_get_address_bytes),
(gst_netaddress_set_address_bytes):
* gst-libs/gst/netbuffer/gstnetbuffer.h:
Make gst_netaddress_get_ip4_address fail for v6 addresses.
Make gst_netaddress_get_ip6_address either fail or return the v4
address as a transitional v6 address.
Add two convenience functions:
API: gst_netaddress_get_address_bytes()
API: gst_netaddress_set_address_bytes()
Fixes #564896.
2008-12-18 12:37:33 +00:00
Wim Taymans
8567ee2149 Add appsrc and appsink documentation.
Original commit message from CVS:
* docs/plugins/Makefile.am:
* docs/plugins/gst-plugins-bad-plugins-docs.sgml:
* docs/plugins/gst-plugins-bad-plugins-sections.txt:
* gst-libs/gst/app/gstappsink.c:
* gst-libs/gst/app/gstappsrc.c: (gst_app_src_class_init):
Add appsrc and appsink documentation.
2008-12-17 13:51:46 +00:00
Wim Taymans
24685b5df0 examples/app/: Fix example to unref after emiting the push-buffer action.
Original commit message from CVS:
* examples/app/appsrc-ra.c: (feed_data):
* examples/app/appsrc-seekable.c: (feed_data):
* examples/app/appsrc-stream.c: (read_data):
* examples/app/appsrc-stream2.c: (feed_data):
Fix example to unref after emiting the push-buffer action.
* gst-libs/gst/app/gstappsrc.c: (gst_app_src_class_init),
(gst_app_src_push_buffer_full), (gst_app_src_push_buffer),
(gst_app_src_push_buffer_action):
Don't take the ref on the buffer in push-buffer action because it's too
awkward for bindings. Fixes #564482.
2008-12-15 12:02:26 +00:00
Sebastian Dröge
04d9ff9a24 gst-libs/gst/audio/: API: Add GST_TYPE_BASE_AUDIO_(SRC|SINK)_SLAVE_METHOD to the public API. This is needed for the C...
Original commit message from CVS:
* gst-libs/gst/audio/gstbaseaudiosink.c:
(gst_base_audio_sink_slave_method_get_type),
(gst_base_audio_sink_class_init):
* gst-libs/gst/audio/gstbaseaudiosink.h:
* gst-libs/gst/audio/gstbaseaudiosrc.c:
(gst_base_audio_src_slave_method_get_type),
(gst_base_audio_src_class_init):
* gst-libs/gst/audio/gstbaseaudiosrc.h:
API: Add GST_TYPE_BASE_AUDIO_(SRC|SINK)_SLAVE_METHOD to the
public API. This is needed for the C++ bindings to be able
to use this base classes. Fixes bug #564200, #564206.
2008-12-13 06:57:09 +00:00
Edward Hervey
c5ae184910 gst-libs/gst/cdda/gstcddabasesrc.c: Remove erroneous gst_buffer_ref().
Original commit message from CVS:
* gst-libs/gst/cdda/gstcddabasesrc.c:
(gst_cdda_base_src_handle_event):
Remove erroneous gst_buffer_ref().
* tests/check/libs/rtp.c: (GST_START_TEST):
Don't forget to unref the buffer once you're done with it.
2008-12-12 19:41:28 +00:00
Edward Hervey
c4295a07b9 gst-libs/gst/riff/riff-media.c: Add mapping for VP6 in avi/riff.
Original commit message from CVS:
* gst-libs/gst/riff/riff-media.c: (gst_riff_create_video_caps),
(gst_riff_create_video_template_caps):
Add mapping for VP6 in avi/riff.
2008-12-12 07:15:22 +00:00
Luis Menina
a4493595a6 gst/: Include glib.h instead of a specific GLib header. Including single
Original commit message from CVS:
Patch by: Luis Menina <liberforce at freeside dot fr>
* gst-libs/gst/floatcast/floatcast.h:
* gst/typefind/gsttypefindfunctions.c:
Include glib.h instead of a specific GLib header. Including single
GLib headers is deprecated. Fixes bug #563904.
2008-12-10 08:19:13 +00:00
Julien Moutte
b7f763b23f gst-libs/gst/riff/riff-media.c: Support higher max audio rates for some formats (WAV, Vorbis, LPCM).
Original commit message from CVS:
2008-12-09  Julien Moutte  <julien@fluendo.com>

* gst-libs/gst/riff/riff-media.c: (gst_riff_create_audio_caps):
Support higher max audio rates for some formats (WAV, Vorbis, LPCM).
2008-12-09 18:30:10 +00:00
Stefan Kost
b3cc87185a gst-libs/gst/riff/riff-read.c: Fix handling of odd chunks in riff metadata.
Original commit message from CVS:
* gst-libs/gst/riff/riff-read.c:
Fix handling of odd chunks in riff metadata.
2008-12-09 17:21:37 +00:00
Olivier Crete
3c9df39c15 gst-libs/gst/rtp/gstrtcpbuffer.*: Implement gst_rtcp_packet_remove(). Fixes #563174.
Original commit message from CVS:
Patch by: Olivier Crete  <tester at tester ca>
* gst-libs/gst/rtp/gstrtcpbuffer.c: (gst_rtcp_packet_remove):
* gst-libs/gst/rtp/gstrtcpbuffer.h:
Implement gst_rtcp_packet_remove(). Fixes #563174.
* tests/check/libs/rtp.c: (GST_START_TEST), (rtp_suite):
Add unit test for some RTCP functions.
2008-12-08 12:08:32 +00:00
이문형
933186aaa1 gst-libs/gst/app/gstappsrc.c: Don't forget to release the lock again if we bail out because some pad is flushing or w...
Original commit message from CVS:
Patch by: 이문형 <iwings at gmail dot com>
* gst-libs/gst/app/gstappsrc.c: (gst_app_src_push_buffer):
Don't forget to release the lock again if we bail out because some
pad is flushing or we've reached EOS, otherwise things will lock up
next time _push_buffer() is called (#562802).
2008-12-01 19:36:35 +00:00
Wim Taymans
af354dbef3 gst-libs/gst/audio/gstbaseaudiosrc.c: Avoid nasty int overflows after about 12 hours and 25 minutes when these code p...
Original commit message from CVS:
* gst-libs/gst/audio/gstbaseaudiosrc.c:
(gst_base_audio_src_get_offset), (gst_base_audio_src_create):
Avoid nasty int overflows after about 12 hours and 25 minutes when these
code paths are triggered.
A free beer to Håvard Graff for finding this!
2008-11-27 16:47:41 +00:00
이문형
d80a5c9dbc gst-libs/gst/rtsp/gstrtspconnection.c: A successful gst_poll_wait() doesn't always mean successful connect() on
Original commit message from CVS:
Patch by: 이문형 <iwings at gmail dot com>
* gst-libs/gst/rtsp/gstrtspconnection.c:
(gst_rtsp_connection_connect):
A successful gst_poll_wait() doesn't always mean successful connect() on
Windows.  We should check errors by calling gst_poll_fd_has_error().
See #561924.
2008-11-27 11:16:44 +00:00
Wim Taymans
b2004e3d05 gst-libs/gst/rtp/gstrtcpbuffer.c: Fix typo in the docs.
Original commit message from CVS:
* gst-libs/gst/rtp/gstrtcpbuffer.c:
Fix typo in the docs.
2008-11-25 15:33:30 +00:00
Wim Taymans
6983c1c85b gst-libs/gst/audio/gstbaseaudiosink.c: Really fix audiosink drain handling by keeping track of the running_time of th...
Original commit message from CVS:
* gst-libs/gst/audio/gstbaseaudiosink.c:
(gst_base_audio_sink_drain), (gst_base_audio_sink_event),
(gst_base_audio_sink_sync_latency), (gst_base_audio_sink_render),
(gst_base_audio_sink_change_state):
Really fix audiosink drain handling by keeping track of the running_time
of the last sample.
2008-11-25 10:32:49 +00:00
Stefan Kost
a8264f66c7 gst-libs/gst/audio/gstbaseaudiosink.c: Time is already in running_time. Remove base_time handling. Fixes audiosinks n...
Original commit message from CVS:
* gst-libs/gst/audio/gstbaseaudiosink.c:
Time is already in running_time. Remove base_time handling. Fixes
audiosinks not draining and thus chopping some audio in the end.
2008-11-24 20:11:52 +00:00
Stefan Kost
7f937c99d4 gst-libs/gst/audio/gstbaseaudiosink.c: Add one log message to check for audio_drained. Sync one log message with the ...
Original commit message from CVS:
* gst-libs/gst/audio/gstbaseaudiosink.c:
Add one log message to check for audio_drained. Sync one log message
with the condition. Send EOS after draining audio in pull mode.
2008-11-24 12:56:54 +00:00
Michael Smith
77c3f8bb7f gst-libs/gst/rtsp/gstrtspdefs.c: Fix win32 build. Oops.
Original commit message from CVS:
* gst-libs/gst/rtsp/gstrtspdefs.c:
Fix win32 build. Oops.
2008-11-20 22:06:05 +00:00
Michael Smith
4f04294e45 gst-libs/gst/rtsp/gstrtspdefs.c: Use WSAGetLastError() rather than errno/h_errno on win32.
Original commit message from CVS:
* gst-libs/gst/rtsp/gstrtspdefs.c:
Use WSAGetLastError() rather than errno/h_errno on win32.
2008-11-20 21:40:49 +00:00
Michael Smith
eabff64640 gst-libs/gst/riff/riff-media.c: Support WMA Lossless properly.
Original commit message from CVS:
* gst-libs/gst/riff/riff-media.c:
Support WMA Lossless properly.
2008-11-20 21:20:27 +00:00
Jan Schmidt
66ba67723e gst-libs/gst/interfaces/propertyprobe.c: Fix random type causing a docs warning.
Original commit message from CVS:
* gst-libs/gst/interfaces/propertyprobe.c:
Fix random type causing a docs warning.
2008-11-14 21:39:09 +00:00
Wim Taymans
9c32e1f152 gst-libs/gst/rtp/gstrtpbuffer.c: Avoid expensive type checks we already did as part of the _validate() function that ...
Original commit message from CVS:
* gst-libs/gst/rtp/gstrtpbuffer.c: (gst_rtp_buffer_validate_data),
(gst_rtp_buffer_set_packet_len), (gst_rtp_buffer_get_packet_len),
(gst_rtp_buffer_get_header_len), (gst_rtp_buffer_get_version),
(gst_rtp_buffer_set_version), (gst_rtp_buffer_get_padding),
(gst_rtp_buffer_set_padding), (gst_rtp_buffer_pad_to),
(gst_rtp_buffer_get_extension), (gst_rtp_buffer_set_extension),
(gst_rtp_buffer_get_extension_data),
(gst_rtp_buffer_set_extension_data), (gst_rtp_buffer_get_ssrc),
(gst_rtp_buffer_set_ssrc), (gst_rtp_buffer_get_csrc_count),
(gst_rtp_buffer_get_csrc), (gst_rtp_buffer_set_csrc),
(gst_rtp_buffer_get_marker), (gst_rtp_buffer_set_marker),
(gst_rtp_buffer_get_payload_type),
(gst_rtp_buffer_set_payload_type), (gst_rtp_buffer_get_seq),
(gst_rtp_buffer_set_seq), (gst_rtp_buffer_get_timestamp),
(gst_rtp_buffer_set_timestamp),
(gst_rtp_buffer_get_payload_subbuffer),
(gst_rtp_buffer_get_payload_len), (gst_rtp_buffer_get_payload):
Avoid expensive type checks we already did as part of the
_validate() function that should be called first.
2008-11-13 15:37:40 +00:00
Wim Taymans
c98d4a5031 gst-libs/gst/rtp/gstbasertpdepayload.c: Fix some cases where a newsegment event was not sent.
Original commit message from CVS:
* gst-libs/gst/rtp/gstbasertpdepayload.c: (create_segment_event),
(gst_base_rtp_depayload_push_full),
(gst_base_rtp_depayload_set_gst_timestamp):
Fix some cases where a newsegment event was not sent.
2008-11-11 16:40:50 +00:00
Edward Hervey
dfa2705aa0 gst/: Wim, you're a bad boy. You don't want people to contact you or what?
Original commit message from CVS:
* gst-libs/gst/app/gstappsink.c:
* gst-libs/gst/app/gstappsrc.c:
* gst/h264parse/gsth264parse.c:
Wim, you're a bad boy. You don't want people to contact you or what?
2008-11-10 14:53:45 +00:00
Wim Taymans
e701e64005 gst-libs/gst/audio/gstbaseaudiosink.c: Use gst_base_sink_do_preroll() to wait for PLAYING and before waiting for the ...
Original commit message from CVS:
* gst-libs/gst/audio/gstbaseaudiosink.c:
(gst_base_audio_sink_sync_latency), (gst_base_audio_sink_render),
(gst_base_audio_sink_callback):
Use gst_base_sink_do_preroll() to wait for PLAYING and before waiting
for the latency to expire, fixes #559567.
2008-11-10 14:22:09 +00:00
Wim Taymans
67b54151fe gst-libs/gst/app/gstappsrc.*: Add is-live property.
Original commit message from CVS:
* gst-libs/gst/app/gstappsrc.c: (gst_app_src_class_init),
(gst_app_src_init), (gst_app_src_set_property),
(gst_app_src_get_property), (gst_app_src_push_buffer):
* gst-libs/gst/app/gstappsrc.h:
Add is-live property.
Add some more docs.
2008-11-07 17:35:46 +00:00
Wim Taymans
7ae1871c75 gst-libs/gst/riff/riff-media.c: Fix case where we don't have a range for the rates or channels as is the case with tr...
Original commit message from CVS:
* gst-libs/gst/riff/riff-media.c: (gst_riff_create_audio_caps):
Fix case where we don't have a range for the rates or channels as is the
case with truespeech.
2008-11-06 12:14:51 +00:00
Stefan Kost
b9d45d9434 Don't install static libs for plugins. Fixes #550851 for -bad.
Original commit message from CVS:
* ext/alsaspdif/Makefile.am:
* ext/amrwb/Makefile.am:
* ext/apexsink/Makefile.am:
* ext/arts/Makefile.am:
* ext/artsd/Makefile.am:
* ext/audiofile/Makefile.am:
* ext/audioresample/Makefile.am:
* ext/bz2/Makefile.am:
* ext/cdaudio/Makefile.am:
* ext/celt/Makefile.am:
* ext/dc1394/Makefile.am:
* ext/dirac/Makefile.am:
* ext/directfb/Makefile.am:
* ext/divx/Makefile.am:
* ext/dts/Makefile.am:
* ext/faac/Makefile.am:
* ext/faad/Makefile.am:
* ext/gsm/Makefile.am:
* ext/hermes/Makefile.am:
* ext/ivorbis/Makefile.am:
* ext/jack/Makefile.am:
* ext/jp2k/Makefile.am:
* ext/ladspa/Makefile.am:
* ext/lcs/Makefile.am:
* ext/libfame/Makefile.am:
* ext/libmms/Makefile.am:
* ext/metadata/Makefile.am:
* ext/mpeg2enc/Makefile.am:
* ext/mplex/Makefile.am:
* ext/musepack/Makefile.am:
* ext/musicbrainz/Makefile.am:
* ext/mythtv/Makefile.am:
* ext/nas/Makefile.am:
* ext/neon/Makefile.am:
* ext/ofa/Makefile.am:
* ext/polyp/Makefile.am:
* ext/resindvd/Makefile.am:
* ext/sdl/Makefile.am:
* ext/shout/Makefile.am:
* ext/snapshot/Makefile.am:
* ext/sndfile/Makefile.am:
* ext/soundtouch/Makefile.am:
* ext/spc/Makefile.am:
* ext/swfdec/Makefile.am:
* ext/tarkin/Makefile.am:
* ext/theora/Makefile.am:
* ext/timidity/Makefile.am:
* ext/twolame/Makefile.am:
* ext/x264/Makefile.am:
* ext/xine/Makefile.am:
* ext/xvid/Makefile.am:
* gst-libs/gst/app/Makefile.am:
* gst-libs/gst/dshow/Makefile.am:
* gst/aiffparse/Makefile.am:
* gst/app/Makefile.am:
* gst/audiobuffer/Makefile.am:
* gst/bayer/Makefile.am:
* gst/cdxaparse/Makefile.am:
* gst/chart/Makefile.am:
* gst/colorspace/Makefile.am:
* gst/dccp/Makefile.am:
* gst/deinterlace/Makefile.am:
* gst/deinterlace2/Makefile.am:
* gst/dvdspu/Makefile.am:
* gst/festival/Makefile.am:
* gst/filter/Makefile.am:
* gst/flacparse/Makefile.am:
* gst/flv/Makefile.am:
* gst/games/Makefile.am:
* gst/h264parse/Makefile.am:
* gst/librfb/Makefile.am:
* gst/mixmatrix/Makefile.am:
* gst/modplug/Makefile.am:
* gst/mpeg1sys/Makefile.am:
* gst/mpeg4videoparse/Makefile.am:
* gst/mpegdemux/Makefile.am:
* gst/mpegtsmux/Makefile.am:
* gst/mpegvideoparse/Makefile.am:
* gst/mve/Makefile.am:
* gst/nsf/Makefile.am:
* gst/nuvdemux/Makefile.am:
* gst/overlay/Makefile.am:
* gst/passthrough/Makefile.am:
* gst/pcapparse/Makefile.am:
* gst/playondemand/Makefile.am:
* gst/rawparse/Makefile.am:
* gst/real/Makefile.am:
* gst/rtjpeg/Makefile.am:
* gst/rtpmanager/Makefile.am:
* gst/scaletempo/Makefile.am:
* gst/sdp/Makefile.am:
* gst/selector/Makefile.am:
* gst/smooth/Makefile.am:
* gst/smoothwave/Makefile.am:
* gst/speed/Makefile.am:
* gst/speexresample/Makefile.am:
* gst/stereo/Makefile.am:
* gst/subenc/Makefile.am:
* gst/tta/Makefile.am:
* gst/vbidec/Makefile.am:
* gst/videodrop/Makefile.am:
* gst/videosignal/Makefile.am:
* gst/virtualdub/Makefile.am:
* gst/vmnc/Makefile.am:
* gst/y4m/Makefile.am:
* sys/acmenc/Makefile.am:
* sys/cdrom/Makefile.am:
* sys/dshowdecwrapper/Makefile.am:
* sys/dshowsrcwrapper/Makefile.am:
* sys/dvb/Makefile.am:
* sys/dxr3/Makefile.am:
* sys/fbdev/Makefile.am:
* sys/oss4/Makefile.am:
* sys/qcam/Makefile.am:
* sys/qtwrapper/Makefile.am:
* sys/vcd/Makefile.am:
* sys/wininet/Makefile.am:
* win32/common/config.h:
Don't install static libs for plugins. Fixes #550851 for -bad.
2008-11-04 12:42:18 +00:00
Damien Lespiau
81724500ec gst-libs/gst/rtsp/gstrtspconnection.c: Make the next call to poll not depend on previous calls to poll with or withou...
Original commit message from CVS:
Patch by: Damien Lespiau  <damien.lespiau gmail com>
* gst-libs/gst/rtsp/gstrtspconnection.c:
(gst_rtsp_connection_write):
Make the next call to poll not depend on previous calls to poll with or
without reading from the active descriptor. Fixes #544293.
2008-11-03 10:49:24 +00:00
Nick Haddad
7413c8ee97 gst-libs/gst/riff/: Add support for other fourcc codes that are commonly used for 'uncompressed RGB', including 'RGB ...
Original commit message from CVS:
Patch by: Nick Haddad <nick at haddads dot net>
* gst-libs/gst/riff/riff-ids.h:
* gst-libs/gst/riff/riff-media.c: (gst_riff_create_video_caps):
Add support for other fourcc codes that are commonly used for
'uncompressed RGB', including 'RGB ', 'RAW ', and 0.
Fixes #558553.
2008-10-31 09:49:57 +00:00
Wim Taymans
1f724549e4 gst-libs/gst/app/gstappsink.c: Fix the docs.
Original commit message from CVS:
* gst-libs/gst/app/gstappsink.c: (gst_app_sink_class_init):
Fix the docs.
2008-10-29 17:02:55 +00:00
Sebastian Dröge
4d7ebf29d9 Move float endianness conversion macros to core. Second part of bug ##555196.
Original commit message from CVS:
* docs/libs/gst-plugins-base-libs-sections.txt:
* gst-libs/gst/floatcast/floatcast.h:
Move float endianness conversion macros to core. Second part of
bug ##555196.
2008-10-23 07:11:23 +00:00
Sebastian Dröge
4177ce6727 gst-libs/gst/tag/tags.c: Remove useless buffer size assignment. It already has this value.
Original commit message from CVS:
* gst-libs/gst/tag/tags.c: (gst_tag_image_data_to_image_buffer):
Remove useless buffer size assignment. It already has this value.
2008-10-22 12:01:32 +00:00
Wim Taymans
6eed8ca285 gst-libs/gst/audio/gstaudiosink.c: Implement a separate activate functions to start monitoring the segments or, in pu...
Original commit message from CVS:
* gst-libs/gst/audio/gstaudiosink.c:
(gst_audioringbuffer_class_init), (gst_audioringbuffer_acquire),
(gst_audioringbuffer_activate), (gst_audioringbuffer_release),
(gst_audioringbuffer_stop):
Implement a separate activate functions to start monitoring the segments
or, in pull mode, pulling in data.
* gst-libs/gst/audio/gstbaseaudiosink.c:
(gst_base_audio_sink_init), (gst_base_audio_sink_dispose),
(gst_base_audio_sink_query_pad), (gst_base_audio_sink_query),
(gst_base_audio_sink_setcaps), (gst_base_audio_sink_callback),
(gst_base_audio_sink_activate_pull),
(gst_base_audio_sink_async_play),
(gst_base_audio_sink_change_state):
Implement pad and element convert query function.
Activate the ringbuffer.
Use the segment last_stop value as the offset to pull.
Use new basesink _do_preroll() method to preroll in the pulling thread.
Take appropriate locking in the pulling thread.
* gst-libs/gst/audio/gstringbuffer.h:
Update some docs.
2008-10-20 15:35:37 +00:00
Wim Taymans
a6b78893c0 Add methods to more accuratly control the pulling thread of a ringbuffer.
Original commit message from CVS:
* docs/libs/gst-plugins-base-libs-sections.txt:
* gst-libs/gst/audio/gstringbuffer.c: (gst_ring_buffer_convert),
(gst_ring_buffer_activate), (gst_ring_buffer_is_active):
* gst-libs/gst/audio/gstringbuffer.h:
Add methods to more accuratly control the pulling thread of a
ringbuffer.
Add format conversion helper code to the ringbuffer.
API: GstRingBuffer:gst_ring_buffer_activate()
API: GstRingBuffer:gst_ring_buffer_is_active()
API: GstRingBuffer:gst_ring_buffer_convert()
2008-10-17 13:19:05 +00:00
Wim Taymans
927999603a gst-libs/gst/audio/gstaudiosink.c: Signal thread startup earlier so that we can immediatly go into pull mode when we ...
Original commit message from CVS:
* gst-libs/gst/audio/gstaudiosink.c: (audioringbuffer_thread_func),
(gst_audioringbuffer_acquire), (gst_audioringbuffer_release),
(gst_audioringbuffer_stop):
Signal thread startup earlier so that we can immediatly go into pull
mode when we have to and block on preroll.
2008-10-16 15:44:37 +00:00
Wim Taymans
7bd29abb9d gst-libs/gst/audio/gstringbuffer.c: In pull mode we want the callback to prepull a buffer we can preroll on even when...
Original commit message from CVS:
* gst-libs/gst/audio/gstringbuffer.c:
(gst_ring_buffer_prepare_read):
In pull mode we want the callback to prepull a buffer we can preroll on
even when we are not yet playing.
2008-10-16 15:38:50 +00:00
Edward Hervey
2d1806931d gst-libs/gst/riff/riff-media.c: Add mappping for the KMVC (Karl Morton's Video) Codec.
Original commit message from CVS:
* gst-libs/gst/riff/riff-media.c: (gst_riff_create_video_caps),
(gst_riff_create_video_template_caps):
Add mappping for the KMVC (Karl Morton's Video) Codec.
2008-10-15 15:28:41 +00:00
Wim Taymans
4ae82906ab gst-libs/gst/rtp/gstbasertpdepayload.*: Add some more G_LIKELY
Original commit message from CVS:
* gst-libs/gst/rtp/gstbasertpdepayload.c:
(gst_base_rtp_depayload_setcaps), (gst_base_rtp_depayload_chain),
(gst_base_rtp_depayload_set_gst_timestamp),
(gst_base_rtp_depayload_change_state):
* gst-libs/gst/rtp/gstbasertpdepayload.h:
Add some more G_LIKELY
Fail when the setcaps function was not called.
* gst-libs/gst/rtp/gstbasertppayload.c:
(gst_basertppayload_set_outcaps):
Propagate return value of setcaps.
2008-10-13 09:16:59 +00:00
Sebastian Dröge
796fdbdf17 gst-libs/gst/tag/tags.c: Don't drop the last byte of image tags if they're not an URI list.
Original commit message from CVS:
* gst-libs/gst/tag/tags.c: (gst_tag_image_data_to_image_buffer):
Don't drop the last byte of image tags if they're not an URI list.
Fixes bug #556066.
2008-10-13 08:15:13 +00:00
Edward Hervey
57b0f5bef6 gst-libs/gst/audio/gstbaseaudiosrc.c: Fix debug statements (space between '%' and actual format).
Original commit message from CVS:
* gst-libs/gst/audio/gstbaseaudiosrc.c:
(gst_base_audio_src_create):
Fix debug statements (space between '%' and actual format).
2008-10-08 15:30:33 +00:00
Jan Gerber
76b6a56acb gst-libs/gst/riff/riff-media.c: Add FFV1 fourcc to support playback of FFMPEG lossless video in AVI. Fixes bug #555319.
Original commit message from CVS:
Patch by: Jan Gerber <j at oil21 dot org>
* gst-libs/gst/riff/riff-media.c: (gst_riff_create_video_caps),
(gst_riff_create_video_template_caps):
Add FFV1 fourcc to support playback of FFMPEG lossless video
in AVI. Fixes bug #555319.
2008-10-08 09:22:26 +00:00
Håvard Graff
11086cf6f8 gst-libs/gst/audio/gstbaseaudiosrc.c: Implement skew clock slaving. Fixes #552559.
Original commit message from CVS:
Patch by: Håvard Graff <havard dot graff at tandberg dot com>
* gst-libs/gst/audio/gstbaseaudiosrc.c:
(gst_base_audio_src_create):
Implement skew clock slaving. Fixes #552559.
2008-10-08 09:12:36 +00:00
Wim Taymans
dd01a1e56a gst-libs/gst/audio/: Fix include of config.h
Original commit message from CVS:
* gst-libs/gst/audio/multichannel.c:
* gst-libs/gst/audio/testchannels.c:
Fix include of config.h
2008-10-08 09:10:23 +00:00
Tero Saarni
2f96504ff9 gst-libs/gst/sdp/gstsdpmessage.c: Fix parsing of the c= field containing multicast addresses.
Original commit message from CVS:
Based on Patch by: Tero Saarni <tero dot saarni at gmail dot com>
* gst-libs/gst/sdp/gstsdpmessage.c: (gst_sdp_parse_line),
(print_media), (gst_sdp_message_dump):
Fix parsing of the c= field containing multicast addresses.
Fixes #552199.
Add the connection info to the session or streams.
Fix parsing of the bandwidth.
Add debugging for the connections and bandwidths for a media.
Add debugging for the bandwidth of the session.
2008-10-06 16:36:20 +00:00
Wim Taymans
a2eb053641 gst-libs/gst/rtp/gstbasertppayload.c: Configure the next seqnum and timestamp in the state change so that they can be...
Original commit message from CVS:
* gst-libs/gst/rtp/gstbasertppayload.c:
(gst_basertppayload_change_state):
Configure the next seqnum and timestamp in the state change so that they
can be queried soon after.
2008-10-06 16:31:27 +00:00
Wim Taymans
b86ef2dcf2 gst-libs/gst/rtp/gstbasertpdepayload.c: Improve debugging of the rtptime.
Original commit message from CVS:
* gst-libs/gst/rtp/gstbasertpdepayload.c:
(gst_base_rtp_depayload_chain):
Improve debugging of the rtptime.
2008-10-06 16:29:33 +00:00
Wim Taymans
c9566ebd68 gst-libs/gst/rtsp/gstrtspmessage.c: Fix the g_return_val_if_fail() statements.
Original commit message from CVS:
* gst-libs/gst/rtsp/gstrtspmessage.c:
(gst_rtsp_message_parse_request),
(gst_rtsp_message_parse_response):
Fix the g_return_val_if_fail() statements.
2008-09-23 17:48:14 +00:00
Michael Smith
46ce5c3737 gst-libs/gst/tag/gsttagdemux.c: Fail to activate if there's insufficient data in the file to be usable, preventing an...
Original commit message from CVS:
* gst-libs/gst/tag/gsttagdemux.c:
Fail to activate if there's insufficient data in the file to be usable,
preventing an assertion fail later. Fixes #552960
2008-09-22 17:44:14 +00:00
Tim-Philipp Müller
029f05635d gst/: Recognise Kate subtitle streams (#550582).
Original commit message from CVS:
* gst-libs/gst/pbutils/descriptions.c:
* gst/typefind/gsttypefindfunctions.c:
Recognise Kate subtitle streams (#550582).
2008-09-15 15:11:18 +00:00
Tim-Philipp Müller
b579580991 gst-libs/gst/audio/audio.h: Remove trailing comma from enum list, which causes problems with -pendantic (#550729).
Original commit message from CVS:
* gst-libs/gst/audio/audio.h: (GST_AUDIO_FIELD_SIGNED):
Remove trailing comma from enum list, which causes problems
with -pendantic (#550729).
2008-09-13 11:04:02 +00:00
Tim-Philipp Müller
f5a176bb6c gst-libs/gst/interfaces/propertyprobe.c: More sanity checks for our second-favourite interface.
Original commit message from CVS:
* gst-libs/gst/interfaces/propertyprobe.c:
(gst_property_probe_get_properties),
(gst_property_probe_get_property),
(gst_property_probe_probe_property),
(gst_property_probe_probe_property_name),
(gst_property_probe_needs_probe),
(gst_property_probe_needs_probe_name),
(gst_property_probe_get_values),
(gst_property_probe_get_values_name),
(gst_property_probe_probe_and_get_values),
(gst_property_probe_probe_and_get_values_name):
More sanity checks for our second-favourite interface.
2008-09-05 19:04:47 +00:00
Stefan Kost
aa7b4f5ac7 gst-libs/gst/interfaces/propertyprobe.c: Check for NULL pointer, in the hope that this fixes #532864.
Original commit message from CVS:
* gst-libs/gst/interfaces/propertyprobe.c:
Check for NULL pointer, in the hope that this fixes #532864.
2008-09-05 14:12:01 +00:00
Wim Taymans
265a494de5 gst-libs/gst/audio/gstaudiosrc.c: Disable a code path that is now called but causes a deadlock for some reason and is...
Original commit message from CVS:
* gst-libs/gst/audio/gstaudiosrc.c: (gst_audioringbuffer_stop):
Disable a code path that is now called but causes a deadlock for some
reason and is unneeded.
2008-09-04 16:25:06 +00:00
Edward Hervey
21952ab09a gst-libs/gst/riff/riff-media.c: Use a decent caps for TrueSpeech instead of a ffmpeg-specific one.
Original commit message from CVS:
* gst-libs/gst/riff/riff-media.c: (gst_riff_create_audio_caps):
Use a decent caps for TrueSpeech instead of a ffmpeg-specific one.
This will also be fixed for upcoming gst-ffmpeg release so that once
this release of -base is out, it will work with the latest gst-ffmpeg
release.
2008-09-03 14:00:06 +00:00
Edward Hervey
3a0b6ebcfb gst-libs/gst/riff/riff-media.c: Add Truespeech mapping for RIFF formats (AVI/WAV).
Original commit message from CVS:
* gst-libs/gst/riff/riff-media.c: (gst_riff_create_audio_caps),
(gst_riff_create_audio_template_caps):
Add Truespeech mapping for RIFF formats (AVI/WAV).
Fixes #550656
2008-09-03 13:27:20 +00:00
Stefan Kost
54acaa5706 Use new geo location tags from core. Fixes #481169
Original commit message from CVS:
* gst-libs/gst/tag/gstvorbistag.c:
* tests/check/libs/tag.c:
Use new geo location tags from core. Fixes #481169
2008-09-02 06:37:04 +00:00
Wim Taymans
da76d5e7cb gst-libs/gst/audio/gstaudiosink.c: Since we now call stop, we trigger this code path that causes a deadlock is appare...
Original commit message from CVS:
* gst-libs/gst/audio/gstaudiosink.c: (gst_audioringbuffer_stop):
Since we now call stop, we trigger this code path that causes a deadlock
is apparently not needed.
2008-08-26 17:24:31 +00:00
Wim Taymans
440432612b gst-libs/gst/audio/gstringbuffer.c: Also allow the case where the ringbuffer was paused when we try to stop it so tha...
Original commit message from CVS:
* gst-libs/gst/audio/gstringbuffer.c: (gst_ring_buffer_start),
(gst_ring_buffer_stop):
Also allow the case where the ringbuffer was paused when we try to stop
it so that the basesrc stop function is still called.
2008-08-26 15:45:36 +00:00
Sebastian Dröge
12bccedb68 gst-libs/gst/pbutils/missing-plugins.c: When cleaning up the caps fields also remove "depth" for the same reason we r...
Original commit message from CVS:
* gst-libs/gst/pbutils/missing-plugins.c: (copy_and_clean_caps):
When cleaning up the caps fields also remove "depth" for the same
reason we remove "width".
2008-08-15 07:24:38 +00:00
Tim-Philipp Müller
87384c993d gst-libs/gst/pbutils/descriptions.c: Add Lead H.264 here as well.
Original commit message from CVS:
* gst-libs/gst/pbutils/descriptions.c: (format_info_get_desc):
Add Lead H.264 here as well.
2008-08-14 17:14:53 +00:00
Julien Moutte
33690da61a gst-libs/gst/riff/riff-media.c: Add Lead H.264 variant.
Original commit message from CVS:
2008-08-14  Julien Moutte  <julien@fluendo.com>

* gst-libs/gst/riff/riff-media.c: (gst_riff_create_video_caps),
(gst_riff_create_video_template_caps): Add Lead H.264 variant.
2008-08-14 15:17:31 +00:00
Wim Taymans
510a5befc1 gst-libs/gst/audio/gstbaseaudiosrc.c: When not slaved to another clock also subtract the base_time from our internal ...
Original commit message from CVS:
* gst-libs/gst/audio/gstbaseaudiosrc.c:
(gst_base_audio_src_create):
When not slaved to another clock also subtract the base_time from our
internal clock time to get the running time.
2008-08-13 09:17:38 +00:00
Stefan Kost
c5ad1c7228 gst-libs/gst/interfaces/propertyprobe.h: Remove double "interface" from doc-string.
Original commit message from CVS:
* gst-libs/gst/interfaces/propertyprobe.h:
Remove double "interface" from doc-string.
* gst-libs/gst/interfaces/xoverlay.h:
Document interface.
* gst-libs/gst/riff/riff.c:
Add basic doc blobs.
2008-08-12 06:31:49 +00:00
Stefan Kost
5d2049cdb3 gst-libs/gst/audio/Makefile.am: Don't try to build that example anymore.
Original commit message from CVS:
* gst-libs/gst/audio/Makefile.am:
Don't try to build that example anymore.
2008-08-11 15:05:35 +00:00
Stefan Kost
3511b2772b gst-libs/gst/audio/: Move audiofiltertemplate to gst-template.
Original commit message from CVS:
* gst-libs/gst/audio/.cvsignore:
* gst-libs/gst/audio/Makefile.am:
* gst-libs/gst/audio/gstaudiofiltertemplate.c:
* gst-libs/gst/audio/make_filter:
Move audiofiltertemplate to gst-template.
2008-08-11 14:51:58 +00:00
Stefan Kost
01554ac056 More docs and shuffling. What can we do with the hundreds of #defines.
Original commit message from CVS:
* docs/libs/gst-plugins-base-libs-sections.txt:
* gst-libs/gst/audio/gstaudiosrc.h:
More docs and shuffling. What can we do with the hundreds of #defines.
2008-08-11 09:20:33 +00:00
Stefan Kost
f73aa5b817 gst-libs/gst/: Reducing number of dundocumented symbols.
Original commit message from CVS:
* gst-libs/gst/audio/audio.h:
* gst-libs/gst/audio/gstaudiofilter.h:
* gst-libs/gst/audio/gstringbuffer.h:
* gst-libs/gst/interfaces/propertyprobe.h:
* gst-libs/gst/tag/gsttagdemux.h:
Reducing number of dundocumented symbols.
2008-08-11 08:34:56 +00:00
Stefan Kost
26ad0ba982 gst-libs/gst/audio/audio.c: Fix doc comment syntax.
Original commit message from CVS:
* gst-libs/gst/audio/audio.c:
Fix doc comment syntax.
* gst-libs/gst/interfaces/propertyprobe.c:
Add more doc-comments and a FIXME: for the signal.
2008-08-11 07:16:30 +00:00
Frederic Crozat
89be246154 Make sure gettext returns translations in UTF-8 encoding rather than in the current locale encoding (#546822).
Original commit message from CVS:
Patch by: Frederic Crozat <fcrozat@mandriva.org>
* ext/alsa/gstalsaplugin.c: (plugin_init):
* ext/cdparanoia/gstcdparanoiasrc.c: (plugin_init):
* ext/gnomevfs/gstgnomevfs.c: (plugin_init):
* ext/ogg/gstoggdemux.c: (gst_ogg_demux_plugin_init):
* gst-libs/gst/audio/gstbaseaudiosrc.c: (_do_init):
* gst-libs/gst/pbutils/pbutils.c: (gst_pb_utils_init):
* gst-libs/gst/tag/tags.c: (gst_tag_register_tags_internal):
* gst/playback/gstdecodebin.c: (plugin_init):
* gst/playback/gstdecodebin2.c: (gst_decode_bin_plugin_init):
* gst/playback/gstplayback.c: (plugin_init):
* gst/playback/gstqueue2.c: (plugin_init):
* gst/playback/gsturidecodebin.c: (gst_uri_decode_bin_plugin_init):
* sys/v4l/gstv4l.c: (plugin_init):
Make sure gettext returns translations in UTF-8 encoding rather
than in the current locale encoding (#546822).
2008-08-07 15:58:58 +00:00
Stefan Kost
cac199ce36 gst-libs/gst/pbutils/descriptions.c: Add audio/x-qdm for qtdemux.
Original commit message from CVS:
* gst-libs/gst/pbutils/descriptions.c:
Add audio/x-qdm for qtdemux.
2008-08-06 13:12:07 +00:00
Stefan Kost
f7a085edaa Bump requirement to latest core and use new tag for riff formats.
Original commit message from CVS:
* configure.ac:
* gst-libs/gst/riff/riff-read.c:
Bump requirement to latest core and use new tag for riff formats.
Needed for #520694.
2008-08-01 11:55:07 +00:00
Stefan Kost
4f37ce04f6 gst-libs/gst/riff/riff-ids.h: Adding acid chunk for tempo and loop information.
Original commit message from CVS:
* gst-libs/gst/riff/riff-ids.h:
Adding acid chunk for tempo and loop information.
2008-07-30 09:02:31 +00:00
Damien Lespiau
d76e33616c gst-libs/gst/sdp/gstsdpmessage.c: Use GST_STR_NULL to avoid crashes with libcs that don't like NULL strings in printf...
Original commit message from CVS:
Patch by: Damien Lespiau  <damien.lespiau gmail com>
* gst-libs/gst/sdp/gstsdpmessage.c: (print_media):
Use GST_STR_NULL to avoid crashes with libcs that don't
like NULL strings in printf args (such as the win32 one).
Fixes #544306.
2008-07-23 13:17:31 +00:00
David Schleef
47eafd3466 gst-libs/gst/video/video.c: Revert ABI change.
Original commit message from CVS:
* gst-libs/gst/video/video.c: Revert ABI change.
2008-07-15 22:43:16 +00:00
Sebastian Dröge
dd7d36320e gst-libs/gst/riff/riff-media.c: Make it impossible to have NULL caps at the point where we set framerate and other th...
Original commit message from CVS:
* gst-libs/gst/riff/riff-media.c: (gst_riff_create_video_caps):
Make it impossible to have NULL caps at the point where we set
framerate and other things. Also don't return immediately for "3ivd"
video and let framerate, etc be set. Might fix bug #542508.
2008-07-15 13:05:04 +00:00
Mark Nauwelaerts
d6d5f88174 gst-libs/gst/video/video.c: Video format can also be conveniently determined from (many) non-fixed caps.
Original commit message from CVS:
* gst-libs/gst/video/video.c: (gst_video_format_parse_caps):
Video format can also be conveniently determined from (many)
non-fixed caps.
2008-07-14 17:06:26 +00:00
Damien Lespiau
c3e1de9033 gst-libs/gst/sdp/gstsdpmessage.c: Makes libgstsdp compile with mingw32 by defining the right WINVER so that getaddrin...
Original commit message from CVS:
Patch by: Damien Lespiau <damien dot lespiau at gmail dot com>
* gst-libs/gst/sdp/gstsdpmessage.c:
Makes libgstsdp compile with mingw32 by defining the right WINVER so
that getaddrinfo() can be used. Fixes #541358.
2008-07-03 09:12:49 +00:00
Sebastian Dröge
1aca2efee8 gst-libs/gst/riff/: Add support for ADPCM IMA DK3 and DK4 variant in RIFF containers.
Original commit message from CVS:
* gst-libs/gst/riff/riff-ids.h:
* gst-libs/gst/riff/riff-media.c: (gst_riff_create_audio_caps),
(gst_riff_create_audio_template_caps):
Add support for ADPCM IMA DK3 and DK4 variant in RIFF containers.
Fixes bug #540351.
2008-06-30 09:20:59 +00:00
Sam Morris
752cf09704 gst-libs/gst/interfaces/mixertrack.c: API: Add "index" property to GstMixerTrack to differantiate between multiple mi...
Original commit message from CVS:
Patch by: Sam Morris <sam at robots dot org to uk>
* gst-libs/gst/interfaces/mixertrack.c:
(gst_mixer_track_class_init), (gst_mixer_track_get_property),
(gst_mixer_track_set_property):
API: Add "index" property to GstMixerTrack to differantiate between
multiple mixer tracks with the same label.
* ext/alsa/gstalsamixeroptions.c: (gst_alsa_mixer_options_new):
* ext/alsa/gstalsamixertrack.c: (gst_alsa_mixer_track_new):
Set the "index" property of GstMixerTrack to the index given by ALSA.
Fixes bug #528299.
2008-06-26 06:03:38 +00:00
Wim Taymans
d2f328f55b gst-libs/gst/audio/gstbaseaudiosink.c: Report latency even if we are not live instead of hiding it.
Original commit message from CVS:
* gst-libs/gst/audio/gstbaseaudiosink.c:
(gst_base_audio_sink_query), (gst_base_audio_sink_skew_slaving),
(gst_base_audio_sink_render):
Report latency even if we are not live instead of hiding it.
Take ts-offset and render-delay of the basesink into account when
scheduling samples.
Rework the clipping code so that we can take the various offsets into
account and still do correct clipping.
2008-06-20 09:09:37 +00:00
Sebastian Dröge
31f3f65d53 gst-libs/gst/tag/tags.c: Don't increase the size of non-string image buffers by one as this might in theory confuse d...
Original commit message from CVS:
* gst-libs/gst/tag/tags.c: (gst_tag_image_data_to_image_buffer):
Don't increase the size of non-string image buffers by one as this
might in theory confuse decoders. Still increase it by one for string
image buffers to append '\0'.
2008-06-20 08:47:14 +00:00
Andy Wingo
7ba9110637 gst-libs/gst/app/gstappsrc.c (gst_app_src_set_max_bytes)
Original commit message from CVS:
2008-06-16  Andy Wingo  <wingo@pobox.com>

* gst-libs/gst/app/gstappsrc.c (gst_app_src_set_max_bytes)
(gst_app_src_get_max_bytes, gst_app_src_push_buffer): Use
G_GUINT64_FORMAT. Avoid overflow in get_max_bytes().
2008-06-16 14:11:36 +00:00
Stefan Kost
4ad8ad3db5 docs/plugins/: docs/plugins/inspect/plugin-mythtv.xml
Original commit message from CVS:
* docs/plugins/Makefile.am:
* docs/plugins/gst-plugins-bad-plugins-docs.sgml:
* docs/plugins/gst-plugins-bad-plugins-sections.txt:
* docs/plugins/gst-plugins-bad-plugins.args:
* docs/plugins/gst-plugins-bad-plugins.hierarchy:
* docs/plugins/gst-plugins-bad-plugins.interfaces:
* docs/plugins/gst-plugins-bad-plugins.prerequisites:
* docs/plugins/gst-plugins-bad-plugins.signals:
* docs/plugins/inspect/plugin-alsaspdif.xml:
* docs/plugins/inspect/plugin-amrwb.xml:
* docs/plugins/inspect/plugin-app.xml:
* docs/plugins/inspect/plugin-bayer.xml:
* docs/plugins/inspect/plugin-bz2.xml:
* docs/plugins/inspect/plugin-cdaudio.xml:
* docs/plugins/inspect/plugin-cdxaparse.xml:
* docs/plugins/inspect/plugin-dtsdec.xml:
* docs/plugins/inspect/plugin-dvb.xml:
* docs/plugins/inspect/plugin-dvdspu.xml:
* docs/plugins/inspect/plugin-faac.xml:
* docs/plugins/inspect/plugin-faad.xml:
* docs/plugins/inspect/plugin-fbdevsink.xml:
* docs/plugins/inspect/plugin-festival.xml:
* docs/plugins/inspect/plugin-filter.xml:
* docs/plugins/inspect/plugin-flvdemux.xml:
* docs/plugins/inspect/plugin-freeze.xml:
* docs/plugins/inspect/plugin-gsm.xml:
* docs/plugins/inspect/plugin-gstinterlace.xml:
* docs/plugins/inspect/plugin-gstrtpmanager.xml:
* docs/plugins/inspect/plugin-h264parse.xml:
* docs/plugins/inspect/plugin-interleave.xml:
* docs/plugins/inspect/plugin-jack.xml:
* docs/plugins/inspect/plugin-ladspa.xml:
* docs/plugins/inspect/plugin-metadata.xml:
* docs/plugins/inspect/plugin-mms.xml:
* docs/plugins/inspect/plugin-modplug.xml:
* docs/plugins/inspect/plugin-mpeg2enc.xml:
* docs/plugins/inspect/plugin-mpeg4videoparse.xml:
* docs/plugins/inspect/plugin-mpegtsparse.xml:
* docs/plugins/inspect/plugin-mpegvideoparse.xml:
* docs/plugins/inspect/plugin-musepack.xml:
* docs/plugins/inspect/plugin-musicbrainz.xml:
* docs/plugins/inspect/plugin-mve.xml:
* docs/plugins/inspect/plugin-mythtv.xml
* docs/plugins/inspect/plugin-nas.xml:
* docs/plugins/inspect/plugin-neon.xml:
* docs/plugins/inspect/plugin-nsfdec.xml:
* docs/plugins/inspect/plugin-nuvdemux.xml:
* docs/plugins/inspect/plugin-oss4.xml
* docs/plugins/inspect/plugin-rawparse.xml:
* docs/plugins/inspect/plugin-real.xml:
* docs/plugins/inspect/plugin-replaygain.xml:
* docs/plugins/inspect/plugin-rfbsrc.xml:
* docs/plugins/inspect/plugin-sdl.xml:
* docs/plugins/inspect/plugin-sdp.xml:
* docs/plugins/inspect/plugin-selector.xml:
* docs/plugins/inspect/plugin-sndfile.xml:
* docs/plugins/inspect/plugin-soundtouch.xml:
* docs/plugins/inspect/plugin-spcdec.xml:
* docs/plugins/inspect/plugin-speed.xml:
* docs/plugins/inspect/plugin-speexresample.xml:
* docs/plugins/inspect/plugin-stereo.xml:
* docs/plugins/inspect/plugin-subenc.xml
* docs/plugins/inspect/plugin-timidity.xml:
* docs/plugins/inspect/plugin-tta.xml:
* docs/plugins/inspect/plugin-vcdsrc.xml:
* docs/plugins/inspect/plugin-videosignal.xml:
* docs/plugins/inspect/plugin-vmnc.xml:
* docs/plugins/inspect/plugin-wildmidi.xml:
* docs/plugins/inspect/plugin-x264.xml:
* docs/plugins/inspect/plugin-xvid.xml:
* docs/plugins/inspect/plugin-y4menc.xml:
* ext/amrwb/gstamrwbdec.c:
* ext/amrwb/gstamrwbenc.c:
* ext/amrwb/gstamrwbparse.c:
* ext/dc1394/gstdc1394.c:
* ext/directfb/dfbvideosink.c:
* ext/ivorbis/vorbisdec.c:
* ext/jack/gstjackaudiosink.c:
* ext/mpeg2enc/gstmpeg2enc.cc:
* ext/mplex/gstmplex.cc:
* ext/musicbrainz/gsttrm.c:
* ext/mythtv/gstmythtvsrc.c:
* ext/theora/theoradec.c:
* ext/timidity/gsttimidity.c:
* ext/timidity/gstwildmidi.c:
* gst-libs/gst/app/gstappsink.c:
* gst/deinterlace/gstdeinterlace.c:
* gst/dvdspu/gstdvdspu.c:
* gst/festival/gstfestival.c:
* gst/freeze/gstfreeze.c:
* gst/interleave/deinterleave.c:
* gst/interleave/interleave.c:
* gst/modplug/gstmodplug.cc:
* gst/nuvdemux/gstnuvdemux.c:
Add missing elements to docs. Fix doc-markup: use convinience syntax
for examples (produces valid docbook), add several refsec2 when we
have several titles. Fix some types.
2008-06-13 11:59:21 +00:00
Wim Taymans
c30d479783 examples/app/: Add beefed up example app from bug #413418. It now also uses appsink instead of fakesink for more ulti...
Original commit message from CVS:
* examples/app/.cvsignore:
* examples/app/Makefile.am:
* examples/app/appsink-src.c: (on_new_buffer_from_source),
(on_source_message), (on_sink_message), (main):
Add beefed up example app from bug #413418. It now also uses appsink
instead of fakesink for more ultimate coolness.
* gst-libs/gst/app/gstappsrc.c: (gst_app_src_class_init),
(gst_app_src_init), (gst_app_src_set_property),
(gst_app_src_get_property), (gst_app_src_unlock),
(gst_app_src_unlock_stop), (gst_app_src_create),
(gst_app_src_set_max_bytes), (gst_app_src_push_buffer),
(gst_app_src_end_of_stream):
* gst-libs/gst/app/gstappsrc.h:
Add block property to allow push based implementation to block when we
fill up the appsrc queues.
Emit the enough-data signal while releasing our lock.
2008-06-12 15:47:03 +00:00
Stefan Kost
e54b324d7d Do not use short_description in section docs for elements. We extract them from element details and there will be war...
Original commit message from CVS:
* ext/dc1394/gstdc1394.c:
* ext/ivorbis/vorbisdec.c:
* ext/jack/gstjackaudiosink.c:
* ext/metadata/gstmetadatademux.c:
* ext/mythtv/gstmythtvsrc.c:
* ext/theora/theoradec.c:
* gst-libs/gst/app/gstappsink.c:
* gst/bayer/gstbayer2rgb.c:
* gst/deinterlace/gstdeinterlace.c:
* gst/rawparse/gstaudioparse.c:
* gst/rawparse/gstvideoparse.c:
* gst/rtpmanager/gstrtpbin.c:
* gst/rtpmanager/gstrtpclient.c:
* gst/rtpmanager/gstrtpjitterbuffer.c:
* gst/rtpmanager/gstrtpptdemux.c:
* gst/rtpmanager/gstrtpsession.c:
* gst/rtpmanager/gstrtpssrcdemux.c:
* gst/selector/gstinputselector.c:
* gst/selector/gstoutputselector.c:
* gst/videosignal/gstvideoanalyse.c:
* gst/videosignal/gstvideodetect.c:
* gst/videosignal/gstvideomark.c:
* sys/oss4/oss4-mixer.c:
* sys/oss4/oss4-sink.c:
* sys/oss4/oss4-source.c:
Do not use short_description in section docs for elements. We extract
them from element details and there will be warnings if they differ.
Also fixing up the ChangeLog order.
2008-06-12 14:49:15 +00:00
David Schleef
526b2e63a2 gst-libs/gst/rtsp/gstrtspconnection.c: Fix build on win32.
Original commit message from CVS:
* gst-libs/gst/rtsp/gstrtspconnection.c:
Fix build on win32.
Patch By: David Schleef <ds@schleef.org>
Fixes: #536874
2008-06-11 20:13:00 +00:00
Wim Taymans
593d4b1af3 examples/app/: Added 3 more example application for using appsrc in random-access mode, pull-mode streaming and pull ...
Original commit message from CVS:
* examples/app/Makefile.am:
* examples/app/appsrc-ra.c: (feed_data), (seek_data),
(found_source), (bus_message), (main):
* examples/app/appsrc-seekable.c: (feed_data), (seek_data),
(found_source), (bus_message), (main):
* examples/app/appsrc-stream2.c: (feed_data), (found_source),
(bus_message), (main):
Added 3 more example application for using appsrc in random-access mode,
pull-mode streaming and pull mode seekable.
* gst-libs/gst/app/gstappsrc.c: (gst_app_src_class_init),
(gst_app_src_start), (gst_app_src_do_get_size),
(gst_app_src_create):
* gst-libs/gst/app/gstappsrc.h:
Make stream-type property writable.
Unset flushing when starting so that we reuse appsrc.
Inform basesrc about the configured size.
Emit seek-data signal when we are going to a different offset in
random-access mode.
2008-06-06 16:50:51 +00:00
Wim Taymans
20d64607d4 examples/app/: Added an example on how to use appsrc in playbin in streaming mode from an mmapped file.
Original commit message from CVS:
* examples/app/.cvsignore:
* examples/app/Makefile.am:
* examples/app/appsrc-stream.c: (read_data), (start_feed),
(stop_feed), (found_source), (bus_message), (main):
Added an example on how to use appsrc in playbin in streaming mode from
an mmapped file.
* examples/app/appsrc_ex.c: (main):
Set pipeline to NULL to free queued buffers.
* gst-libs/gst/app/gstapp-marshal.list:
* gst-libs/gst/app/gstappsrc.c: (stream_type_get_type), (_do_init),
(gst_app_src_class_init), (gst_app_src_init),
(gst_app_src_flush_queued), (gst_app_src_dispose),
(gst_app_src_set_property), (gst_app_src_get_property),
(gst_app_src_unlock), (gst_app_src_unlock_stop),
(gst_app_src_start), (gst_app_src_stop), (gst_app_src_is_seekable),
(gst_app_src_check_get_range), (gst_app_src_do_seek),
(gst_app_src_create), (gst_app_src_set_stream_type),
(gst_app_src_get_stream_type), (gst_app_src_set_max_bytes),
(gst_app_src_get_max_bytes), (gst_app_src_push_buffer),
(gst_app_src_end_of_stream), (gst_app_src_uri_get_type),
(gst_app_src_uri_get_protocols), (gst_app_src_uri_get_uri),
(gst_app_src_uri_set_uri), (gst_app_src_uri_handler_init):
* gst-libs/gst/app/gstappsrc.h:
Measure max queue size in bytes instead.
Add support for 3 modes of operation, streaming, seekable and
random-access, making basesrc handle the scheduling modes for each.
Add appsrc:// uri handler so that automatic plugging can be done from
playbin2 or uridecodebin, for example.
Added support for custom segment formats.
Add support for push and pull based operations from the application.
Expand the methods so that errors can be detected.
Flush the queued buffers on seeks and when shutting down.
Add signals to inform the app that a seek must happen.
2008-06-05 16:38:50 +00:00
Peter Kjellerstedt
26cd5ea1c8 gst-libs/gst/rtsp/gstrtspconnection.*: Add a couple of missing argument guards.
Original commit message from CVS:
* gst-libs/gst/rtsp/gstrtspconnection.c:
(gst_rtsp_connection_set_auth), (gst_rtsp_connection_set_auth_param),
(gst_rtsp_connection_clear_auth_params),
(gst_rtsp_connection_set_qos_dscp), (gst_rtsp_connection_get_ip):
* gst-libs/gst/rtsp/gstrtspconnection.h:
Add a couple of missing argument guards.
Add a way of setting the DSCP for an RTSP connection.
Add an accessor method for the ip member of GstRTSPConnection as all
members are supposed to be private.
2008-06-04 11:53:53 +00:00
Tim-Philipp Müller
44e087f8c9 gst-libs/gst/interfaces/mixertrack.h: Document mixer track flags.
Original commit message from CVS:
* gst-libs/gst/interfaces/mixertrack.h:
Document mixer track flags.
2008-06-04 10:18:42 +00:00
John Millikin
f934d1c233 gst-libs/gst/tag/gstvorbistag.c: Retrieve COVERART tags from vorbis comments (#512333)
Original commit message from CVS:
Based on patch by: John Millikin <jmillikin gmail com>
* gst-libs/gst/tag/gstvorbistag.c: (tag_matches), (gst_vorbis_tag_add),
(gst_vorbis_tag_add_coverart):
Retrieve COVERART tags from vorbis comments (#512333)
2008-06-03 20:01:58 +00:00
Tim-Philipp Müller
8b491df810 gst-libs/gst/tag/: Don't forget to add new enum value here too (should probably use glib-mkenums here...).
Original commit message from CVS:
* gst-libs/gst/tag/tag.h:
* gst-libs/gst/tag/tags.c: (register_tag_image_type_enum):
Don't forget to add new enum value here too (should probably use
glib-mkenums here...).
2008-06-03 19:44:48 +00:00
Tim-Philipp Müller
cd9bb9a674 gst-libs/gst/tag/: API: add gst_tag_image_data_to_image_buffer()
Original commit message from CVS:
* gst-libs/gst/tag/gstid3tag.c: (gst_tag_list_add_id3_image):
* gst-libs/gst/tag/tag.h: (GST_TAG_IMAGE_TYPE_NONE),
* gst-libs/gst/tag/tags.c: (register_tag_image_type_enum),
(gst_tag_image_type_get_type), (gst_tag_image_type_is_valid),
(gst_tag_image_data_to_image_buffer):
Add two utility functions to avoid code duplication (#512333):
API: add gst_tag_image_data_to_image_buffer()
API: add gst_tag_list_add_id3_image()
2008-06-03 19:29:06 +00:00
Sebastian Dröge
0de81029c8 API: Make gst_audio_check_channel_positions() public.
Original commit message from CVS:
* docs/libs/gst-plugins-base-libs-sections.txt:
* gst-libs/gst/audio/multichannel.c:
(gst_audio_check_channel_positions):
* gst-libs/gst/audio/multichannel.h:
API: Make gst_audio_check_channel_positions() public.
* tests/check/libs/audio.c: (GST_START_TEST):
Add some simple checks for gst_audio_check_channel_positions().
2008-06-03 08:48:32 +00:00
Mark Nauwelaerts
9fa61c528d gst-libs/gst/audio/gstbaseaudiosrc.c: Add a gtk-doc chunk for the new properties to have a Since: indication.
Original commit message from CVS:
* gst-libs/gst/audio/gstbaseaudiosrc.c:
(gst_base_audio_src_class_init):
Add a gtk-doc chunk for the new properties to have a Since: indication.
2008-05-31 19:57:57 +00:00
Mark Nauwelaerts
c660bbd6dd gst-libs/gst/audio/gstbaseaudiosrc.c: Provide readable actual-buffer-time and actual-latency-time properties that ref...
Original commit message from CVS:
* gst-libs/gst/audio/gstbaseaudiosrc.c:
(gst_base_audio_src_class_init), (gst_base_audio_src_dispose),
(gst_base_audio_src_get_property), (gst_base_audio_src_setcaps),
(gst_base_audio_src_change_state):
Provide readable actual-buffer-time and actual-latency-time properties
that reflect the configured ringbuffer values. Fixes #524724.
2008-05-31 18:10:47 +00:00
Wim Taymans
11309247f3 gst-libs/gst/rtp/gstbasertppayload.c: Simply converting the running time into an RTP timestamp by scaling it based on...
Original commit message from CVS:
* gst-libs/gst/rtp/gstbasertppayload.c: (gst_basertppayload_push),
(gst_basertppayload_change_state):
Simply converting the running time into an RTP timestamp by scaling it
based on the clock-rate is good enough for making an RTP timestamp. This
has the added benefit that we can later on expose a property with the
RTP timestamp of running time 0, as is needed for RTSP servers to
generate the response of the PLAY request.
2008-05-30 15:29:20 +00:00
Sebastian Dröge
45ef6b5e13 gst-libs/gst/audio/multichannel.c: Allow rear center together with rear left/right and other previously conflicting c...
Original commit message from CVS:
* gst-libs/gst/audio/multichannel.c:
(gst_audio_check_channel_positions),
(gst_audio_set_structure_channel_positions_list),
(gst_audio_fixate_channel_positions):
Allow rear center together with rear left/right and other previously
conflicting channel positions. The reason why they weren't allowed
was the channel mixing implementation in audioconvert.
Also take this into account when fixing channel layouts.
Allow setting channel positions for 1/2 channels when using
gst_audio_set_structure_channel_position().
* gst/audioconvert/gstchannelmix.c:
(gst_channel_mix_fill_compatible), (gst_channel_mix_detect_pos),
(gst_channel_mix_fill_one_other), (gst_channel_mix_fill_others),
(gst_channel_mix_fill_special), (gst_channel_mix_fill_matrix):
Major rewrite of the channel mixing.
We now allow previously	conflicting channel positions to appear
together (rear center and rear left/right for example).
Fixes bug #533817.
Rework the way channels are mixed together to take more possible
channel positions into account, properly mix from/to side channels
and don't assume that either center, left&right or nothing of a
specific position is available anymore.
* tests/check/elements/audioconvert.c: (GST_START_TEST):
Adjust unit tests with non-standard 1/2 channel layouts to the more
correct new behaviour.
Add a unit test for 5.1->Stereo downmixing.
2008-05-29 11:34:09 +00:00
Wim Taymans
2855fb48ad gst-libs/gst/cdda/gstcddabasesrc.c: Fix EOS condition and track addition check, the track.end sector is included in t...
Original commit message from CVS:
* gst-libs/gst/cdda/gstcddabasesrc.c:
(gst_cdda_base_src_add_track), (gst_cdda_base_src_create):
Fix EOS condition and track addition check, the track.end sector is
included in the track. Fixes #533265.
2008-05-28 15:48:33 +00:00
Wim Taymans
35e4b75b86 gst-libs/gst/audio/gstaudioclock.*: Add method to inform the clock that the time starts from 0 again. We use this inf...
Original commit message from CVS:
* gst-libs/gst/audio/gstaudioclock.c: (gst_audio_clock_init),
(gst_audio_clock_reset), (gst_audio_clock_get_internal_time):
* gst-libs/gst/audio/gstaudioclock.h:
Add method to inform the clock that the time starts from 0 again. We use
this info to calculate a clock offset so that the time we report in
internal_time is monotonically increasing, as required by the clock base
class. Fixes #521761.
API: GstAudioClock::gst_audio_clock_reset()
* gst-libs/gst/audio/gstbaseaudiosink.c:
(gst_base_audio_sink_skew_slaving),
(gst_base_audio_sink_change_state):
* gst-libs/gst/audio/gstbaseaudiosrc.c:
(gst_base_audio_src_create), (gst_base_audio_src_change_state):
Reset reported time when we (re)create the ringbuffer.
2008-05-27 16:20:17 +00:00
Wim Taymans
13d7048f69 gst-libs/gst/riff/riff-media.c: Add support for DVCPRO.
Original commit message from CVS:
* gst-libs/gst/riff/riff-media.c: (gst_riff_create_video_caps),
(gst_riff_create_video_template_caps):
Add support for DVCPRO.
2008-05-26 17:18:52 +00:00
Wim Taymans
79a725148d gst-libs/gst/rtp/gstbasertpdepayload.c: Check sequence numbers, mark input buffers with a discont flag for the subcla...
Original commit message from CVS:
* gst-libs/gst/rtp/gstbasertpdepayload.c:
(gst_base_rtp_depayload_chain),
(gst_base_rtp_depayload_handle_sink_event),
(gst_base_rtp_depayload_push_full),
(gst_base_rtp_depayload_change_state):
Check sequence numbers, mark input buffers with a discont flag for the
subclass when we detected a gap, drop duplicate buffers. We do this
because one can use the element without a jitterbuffer in front and we
don't want to feed the subclasses invalid or reordered data.
Do an error when the subclass did not provide a process function instead
of crashing.
Some other small cleanups.
2008-05-23 14:14:28 +00:00
Felipe Contreras
b5f896dad6 gst-libs/gst/rtsp/Makefile.am: Distribute, don't install md5.h
Original commit message from CVS:
* gst-libs/gst/rtsp/Makefile.am:
Distribute, don't install md5.h
2008-05-21 17:01:16 +00:00
Stefan Kost
eda6d89b8c gst-libs/gst/riff/riff-media.c: Fix wrong method name in docs. Fix calculation of strf fields for broken mulaw/alaw.
Original commit message from CVS:
* gst-libs/gst/riff/riff-media.c:
Fix wrong method name in docs. Fix calculation of strf fields for
broken mulaw/alaw.
* gst-libs/gst/riff/riff-read.c:
Whitespace fix and removing double ';'.
2008-05-21 14:35:41 +00:00
Sebastian Dröge
d03bbd1e3e gst-libs/gst/audio/multichannel.c: Allow non-standard 2 channel layouts.
Original commit message from CVS:
* gst-libs/gst/audio/multichannel.c:
(gst_audio_check_channel_positions):
Allow non-standard 2 channel layouts.
* tests/check/elements/audioconvert.c: (GST_START_TEST):
Add some tests for converting and remapping non-standard 1 and 2
channel layouts.
2008-05-21 07:39:56 +00:00
Sebastian Dröge
3ee2676c2e gst-libs/gst/rtsp/gstrtsptransport.h: Make the GstRTSPTransport struct members public as there are no setters/getters...
Original commit message from CVS:
* gst-libs/gst/rtsp/gstrtsptransport.h:
Make the GstRTSPTransport struct members public as there are no
setters/getters and it's supposed to be changed directly.
Fixes bug #533087.
2008-05-21 06:39:20 +00:00
Wim Taymans
f36d9d6b08 gst-libs/gst/audio/gstbaseaudiosink.c: We can only use our optimal calibration if we prerolled before the latency exp...
Original commit message from CVS:
* gst-libs/gst/audio/gstbaseaudiosink.c:
(gst_base_audio_sink_sync_latency):
We can only use our optimal calibration if we prerolled before the
latency expired.
2008-05-20 16:26:53 +00:00
Wim Taymans
d8dc371c0d ext/gnomevfs/gstgnomevfssrc.*: Set the ICY caps on the srcpad from where they get picked up by the base class now and...
Original commit message from CVS:
* ext/gnomevfs/gstgnomevfssrc.c: (gst_gnome_vfs_src_init),
(gst_gnome_vfs_src_finalize),
(gst_gnome_vfs_src_received_headers_callback),
(gst_gnome_vfs_src_create), (gst_gnome_vfs_src_stop):
* ext/gnomevfs/gstgnomevfssrc.h:
Set the ICY caps on the srcpad from where they get picked up by the base
class now and set on the outgoing buffers.
* gst-libs/gst/audio/gstbaseaudiosrc.c:
(gst_base_audio_src_create):
* sys/v4l/v4lsrc_calls.c: (gst_v4lsrc_buffer_new):
BaseSrc now sets the caps on outgoing buffers automatically.
2008-05-20 11:13:27 +00:00
Wim Taymans
95d162fb71 gst-libs/gst/audio/gstbaseaudiosink.c: Change the way in which the ringbuffer is started when dealing with a slaved c...
Original commit message from CVS:
* gst-libs/gst/audio/gstbaseaudiosink.c:
(gst_base_audio_sink_resample_slaving),
(gst_base_audio_sink_skew_slaving),
(gst_base_audio_sink_sync_latency), (gst_base_audio_sink_render),
(gst_base_audio_sink_async_play),
(gst_base_audio_sink_change_state):
Change the way in which the ringbuffer is started when dealing with a
slaved clock and latency. We now sync to the clock until we reach
upstream latency before starting the ringbuffer. This has the effect
that we can accurately align the master and slave clocks and let the
rate correction code take care of the initial drift or rounding errors
instead of leaving them uncorrected with the old approach.
2008-05-20 11:09:06 +00:00
Wim Taymans
86ab51207b gst-libs/gst/rtp/gstbasertpdepayload.c: Validate the RTP packet before further processing it. It's just too dangerous...
Original commit message from CVS:
* gst-libs/gst/rtp/gstbasertpdepayload.c:
(gst_base_rtp_depayload_chain):
Validate the RTP packet before further processing it. It's just too
dangerous to accept random packets and people are not forced to use a
jitterbuffer or session manager to filter out the bad packets.
* gst-libs/gst/rtp/gstrtpbuffer.c:
(gst_rtp_buffer_set_extension_data),
(gst_rtp_buffer_get_payload_subbuffer):
Small cleanups.
When setting extension data in a buffer that is too small, we fail and
we should not set the extension bit.
Change GST_WARNINGS into g_warning because they really are
programming errors.
* tests/check/libs/rtp.c: (GST_START_TEST):
Catch the g_warnings now in the unit tests and that fact that failing to
set extension data left the extension bit untouched.
2008-05-14 20:28:02 +00:00
Bernard B
d06df554a9 gst-libs/gst/rtp/gstrtpbuffer.c: Fix seqnum compare function for bordercase values and fix the docs again. Fixes #533...
Original commit message from CVS:
Patch by: Bernard B <b-gnome at largestprime dot net>
* gst-libs/gst/rtp/gstrtpbuffer.c: (gst_rtp_buffer_compare_seqnum):
Fix seqnum compare function for bordercase values and fix the docs
again. Fixes #533075.
* tests/check/libs/rtp.c: (GST_START_TEST), (rtp_suite):
Add a testcase for seqnum compare function.
2008-05-14 13:43:12 +00:00
Wim Taymans
0c9b13988c gst-libs/gst/audio/gstbaseaudiosink.c: Revert previous patch that attempted to more accurately calculate the initial ...
Original commit message from CVS:
* gst-libs/gst/audio/gstbaseaudiosink.c:
(gst_base_audio_sink_render), (gst_base_audio_sink_async_play):
Revert previous patch that attempted to more accurately calculate the
initial offset between master and slave clock. The best thing we can do
in general is take the time of both clocks as the diff since we don't
know when the actual preroll happened.
2008-05-12 08:45:11 +00:00
Tim-Philipp Müller
1482332184 gst-libs/gst/pbutils/install-plugins.c: Fix docs: type and missing word.
Original commit message from CVS:
* gst-libs/gst/pbutils/install-plugins.c:
Fix docs: type and missing word.
2008-05-11 19:52:59 +00:00
Jan Schmidt
f11cf32c3f Document the GstTuner and GstColorBalance interfaces, and some other random API functions that needed it. 70% symbol ...
Original commit message from CVS:
* docs/libs/gst-plugins-base-libs-sections.txt:
* gst-libs/gst/interfaces/colorbalance.c:
* gst-libs/gst/interfaces/colorbalance.h:
* gst-libs/gst/interfaces/colorbalancechannel.c:
* gst-libs/gst/interfaces/colorbalancechannel.h:
* gst-libs/gst/interfaces/tuner.c:
* gst-libs/gst/interfaces/tunerchannel.c:
* gst-libs/gst/interfaces/tunerchannel.h:
* gst-libs/gst/interfaces/tunernorm.c:
* gst-libs/gst/interfaces/tunernorm.h:
* gst-libs/gst/video/video.c:
* gst-libs/gst/video/video.h:
Document the GstTuner and GstColorBalance interfaces, and some
other random API functions that needed it. 70% symbol coverage, woo.
2008-05-09 21:42:26 +00:00
Wim Taymans
fc523e047c gst-libs/gst/audio/gstaudiosink.c: Choose to allocate one less segment but require one additional segment as latency.
Original commit message from CVS:
* gst-libs/gst/audio/gstaudiosink.c: (gst_audioringbuffer_acquire):
Choose to allocate one less segment but require one additional segment
as latency.
* gst-libs/gst/audio/gstaudiosrc.c: (gst_audioringbuffer_acquire):
No need to increment the number of segments in the source.
* gst-libs/gst/audio/gstbaseaudiosink.c:
(gst_base_audio_sink_get_time), (clock_convert_external),
(gst_base_audio_sink_resample_slaving),
(gst_base_audio_sink_skew_slaving),
(gst_base_audio_sink_none_slaving), (gst_base_audio_sink_render),
(gst_base_audio_sink_async_play):
Remove adding latency when returning the internal time while subtracting
it again when we use the value a little later.
When calculating the end timestamp, we are making a rounding error
with the current algorithm. Ensure that we don't accumulate these
rounding errors when aligning samples by not resampling at all if we
don't need to. Fixes #419351.
Make the initial calibration of the clock slaving a little more
predictable and accurate. Also handle the case where we don't do
clock slaving.
2008-05-09 16:38:10 +00:00
Wouter Cloetens
a8a2b9c717 gst-libs/gst/rtsp/: Add Digest authorization support for RTSP connections. See #532065.
Original commit message from CVS:
Patch by: Wouter Cloetens <zombie at e2big dot org>
* gst-libs/gst/rtsp/Makefile.am:
* gst-libs/gst/rtsp/gstrtspconnection.c:
(gst_rtsp_connection_create), (md5_digest_to_hex_string),
(auth_digest_compute_hex_urp), (auth_digest_compute_response),
(add_auth_header), (gst_rtsp_connection_free),
(gst_rtsp_connection_set_auth), (str_case_hash), (str_case_equal),
(gst_rtsp_connection_set_auth_param),
(gst_rtsp_connection_clear_auth_params):
* gst-libs/gst/rtsp/gstrtspconnection.h:
Add Digest authorization support for RTSP connections. See #532065.
* gst-libs/gst/rtsp/md5.c:
* gst-libs/gst/rtsp/md5.h:
Yeap, another md5 implementation until we can depend on a glib that has
support for it.
2008-05-08 14:46:27 +00:00
Wim Taymans
09f7dee84d gst-libs/gst/audio/gstbaseaudiosink.c: Report the latency with the new seglatency parameter.
Original commit message from CVS:
* gst-libs/gst/audio/gstbaseaudiosink.c:
(gst_base_audio_sink_query):
Report the latency with the new seglatency parameter.
* gst-libs/gst/audio/gstringbuffer.c:
(gst_ring_buffer_debug_spec_buff), (gst_ring_buffer_parse_caps),
(gst_ring_buffer_acquire):
* gst-libs/gst/audio/gstringbuffer.h:
Add new field to the ringbufferspec to specify the expected latency
between the underlying device read/write pointer, this is needed
when writing sinks that sit a little closer to the hardware.
Add some more docs for other fields.
2008-05-07 15:47:03 +00:00
Wim Taymans
8c3b00be4d gst-libs/gst/app/: Add marshal.list, make it compile and add to cvsignore.
Original commit message from CVS:
* gst-libs/gst/app/.cvsignore:
* gst-libs/gst/app/Makefile.am:
* gst-libs/gst/app/gstapp-marshal.list:
Add marshal.list, make it compile and add to cvsignore.
* gst-libs/gst/app/gstappsink.c: (gst_app_sink_dispose),
(gst_app_sink_stop):
Small cleanups.
* gst-libs/gst/app/gstappsrc.c: (gst_app_src_class_init),
(gst_app_src_init), (gst_app_src_set_property),
(gst_app_src_get_property), (gst_app_src_unlock),
(gst_app_src_unlock_stop), (gst_app_src_start), (gst_app_src_stop),
(gst_app_src_create), (gst_app_src_set_caps),
(gst_app_src_get_caps), (gst_app_src_set_size),
(gst_app_src_get_size), (gst_app_src_set_seekable),
(gst_app_src_get_seekable), (gst_app_src_set_max_buffers),
(gst_app_src_get_max_buffers), (gst_app_src_push_buffer),
(gst_app_src_end_of_stream):
* gst-libs/gst/app/gstappsrc.h:
Beat appsrc in shape, add signals and actions.
Add some docs.
Add properties for caps, size, seekability and max-buffers.
Fix unlock/stop code.
2008-05-07 10:38:23 +00:00
Wim Taymans
1275eda108 gst-libs/gst/app/gstappsink.*: Start some docs.
Original commit message from CVS:
* gst-libs/gst/app/gstappsink.c: (gst_app_sink_class_init),
(gst_app_sink_init), (gst_app_sink_set_property),
(gst_app_sink_get_property), (gst_app_sink_unlock_start),
(gst_app_sink_unlock_stop), (gst_app_sink_flush_unlocked),
(gst_app_sink_start), (gst_app_sink_stop), (gst_app_sink_event),
(gst_app_sink_preroll), (gst_app_sink_render),
(gst_app_sink_set_caps), (gst_app_sink_set_drop),
(gst_app_sink_get_drop):
* gst-libs/gst/app/gstappsink.h:
Start some docs.
Add property to drop buffers when the queue is filled
Fix unlocking and flushing when the queues are filled.
2008-05-05 10:27:45 +00:00
Edward Hervey
b98072f957 gst-libs/gst/pbutils/descriptions.c: It's SorensOn and not SorensEn.
Original commit message from CVS:
* gst-libs/gst/pbutils/descriptions.c: (formats):
It's SorensOn and not SorensEn.
2008-05-05 07:41:03 +00:00
Tim-Philipp Müller
6451cbf5b7 gst-libs/gst/pbutils/descriptions.c: Fix description of video/x-flash-video.
Original commit message from CVS:
* gst-libs/gst/pbutils/descriptions.c: (formats):
Fix description of video/x-flash-video.
2008-05-04 15:23:36 +00:00
Sebastian Dröge
83f0729394 Remove some unused code.
Original commit message from CVS:
* gst-libs/gst/audio/gstaudiosink.c: (audioringbuffer_thread_func):
* gst-libs/gst/audio/gstaudiosrc.c: (audioringbuffer_thread_func):
* gst/tcp/gsttcp.c: (gst_tcp_socket_write):
* sys/v4l/v4lsrc_calls.c: (gst_v4lsrc_get_fps_list):
Remove some unused code.
* gst/audioconvert/gstaudioquantize.c:
(gst_audio_quantize_free_noise_shaping):
Don't return before freeing the noise shaping history.
2008-05-04 15:02:20 +00:00
Wim Taymans
c6389eec57 gst-libs/gst/rtp/gstbasertppayload.c: Rename the setcaps/getcaps function internally to make it clear that they are c...
Original commit message from CVS:
* gst-libs/gst/rtp/gstbasertppayload.c: (gst_basertppayload_init),
(gst_basertppayload_sink_setcaps),
(gst_basertppayload_sink_getcaps):
Rename the setcaps/getcaps function internally to make it clear that
they are called for the sink pad.
2008-05-02 12:13:08 +00:00
Wim Taymans
f0f6476aff gst-libs/gst/rtp/gstbasertpdepayload.*: Catch packet-lost events from the jitterbuffer and convert them into a vmetho...
Original commit message from CVS:
* gst-libs/gst/rtp/gstbasertpdepayload.c:
(gst_base_rtp_depayload_class_init),
(gst_base_rtp_depayload_handle_sink_event), (create_segment_event),
(gst_base_rtp_depayload_packet_lost),
(gst_base_rtp_depayload_set_gst_timestamp):
* gst-libs/gst/rtp/gstbasertpdepayload.h:
Catch packet-lost events from the jitterbuffer and convert them into a
vmethod call (lost-packet) so that depayloaders can do something smart.
Also add a default packet-lost function that sends out a segment update
to the decoders.
2008-05-02 12:11:07 +00:00
Wim Taymans
7916e386ca gst-libs/gst/audio/gstbaseaudiosink.h: Clarify some docs.
Original commit message from CVS:
* gst-libs/gst/audio/gstbaseaudiosink.h:
Clarify some docs.
* gst-libs/gst/audio/gstbaseaudiosrc.c: (slave_method_get_type),
(gst_base_audio_src_class_init), (gst_base_audio_src_init),
(gst_base_audio_src_set_slave_method),
(gst_base_audio_src_get_slave_method),
(gst_base_audio_src_set_property),
(gst_base_audio_src_get_property), (gst_base_audio_src_create):
* gst-libs/gst/audio/gstbaseaudiosrc.h:
Add property and methods for selecting the clock slave method in the
source, like in the sink.
We only implement "none" and "re-timestamp" for now.
API: gst_base_audio_src_set_slave_method()
API: gst_base_audio_src_get_slave_method()
2008-04-28 08:51:38 +00:00
Wim Taymans
0c5d01b59f gst-libs/gst/app/gstappsink.*: Add more docs.
Original commit message from CVS:
* gst-libs/gst/app/gstappsink.c: (gst_app_sink_class_init),
(gst_app_sink_init), (gst_app_sink_set_property),
(gst_app_sink_get_property), (gst_app_sink_event),
(gst_app_sink_preroll), (gst_app_sink_render),
(gst_app_sink_set_emit_signals), (gst_app_sink_get_emit_signals),
(gst_app_sink_set_max_buffers), (gst_app_sink_get_max_buffers),
(gst_app_sink_pull_buffer):
* gst-libs/gst/app/gstappsink.h:
Add more docs.
Add signals for when preroll and render buffers are available.
Add property to control signal emission.
Add property to control the max queue size.
2008-04-25 18:18:47 +00:00
Wim Taymans
5b8afead80 gst-libs/gst/rtp/gstrtpbuffer.c: Fix the docs about the seqnum compare function, it returns a difference.
Original commit message from CVS:
* gst-libs/gst/rtp/gstrtpbuffer.c:
Fix the docs about the seqnum compare function, it returns a difference.
2008-04-25 07:37:09 +00:00
Sebastian Dröge
b8d03daeab gst-libs/gst/rtp/gstrtppayloads.c: Use g_ascii_strcasecmp() instead of the deprecated g_strcasecmp().
Original commit message from CVS:
* gst-libs/gst/rtp/gstrtppayloads.c:
(gst_rtp_payload_info_for_name):
Use g_ascii_strcasecmp() instead of the deprecated g_strcasecmp().
2008-04-19 16:33:24 +00:00
Sebastian Dröge
66bbadadd0 gst-libs/gst/audio/gstringbuffer.c: Use g_atomic_int_set() instead of gst_atomic_int_set().
Original commit message from CVS:
* gst-libs/gst/audio/gstringbuffer.c: (gst_ring_buffer_may_start):
Use g_atomic_int_set() instead of gst_atomic_int_set().
2008-04-17 07:33:46 +00:00
Tim-Philipp Müller
96a3780816 gst-libs/gst/video/video.c: Add guards to these functions to ensure sane input values.
Original commit message from CVS:
* gst-libs/gst/video/video.c: (gst_video_format_new_caps),
(gst_video_format_to_fourcc), (gst_video_format_get_row_stride),
(gst_video_format_get_pixel_stride),
(gst_video_format_get_component_width),
(gst_video_format_get_component_height),
(gst_video_format_get_component_offset), (gst_video_format_get_size),
(gst_video_format_convert):
Add guards to these functions to ensure sane input values.
* tests/check/libs/video.c:
Fix unit test not to create caps with width=0 and height=0.
2008-04-11 17:13:52 +00:00
Tim-Philipp Müller
7a29d716bd gst/: Work around missing bits of thread-safety on older GLibs some more to avoid assertions when starting up multipl...
Original commit message from CVS:
* gst-libs/gst/audio/gstbaseaudiosink.c:
(gst_base_audio_sink_class_init):
* gst-libs/gst/audio/gstbaseaudiosrc.c:
(gst_base_audio_src_class_init):
* gst/playback/gstplayback.c: (plugin_init):
* gst/volume/gstvolume.c: (plugin_init):
Work around missing bits of thread-safety on older GLibs some
more to avoid assertions when starting up multiple playbin
objects concurrently (see #512382).
2008-04-06 20:16:27 +00:00