Peter Kjellerstedt
fb3b761af5
rtsp: Added gst_rtsp_connection_set_http_mode().
...
With gst_rtsp_connection_set_http_mode() it is possible to tell the
connection whether to allow HTTP messages to be supported. By enabling HTTP
support the automatic HTTP tunnel support will also be disabled.
API: gst_rtsp_connection_set_http_mode()
2009-08-24 13:19:46 +02:00
Peter Kjellerstedt
d5b4b5d8af
rtsp: Allow gst_rtsp_connection_do_tunnel() to just setup decoding context.
...
If the second connection passed to gst_rtsp_connection_do_tunnel() is NULL
then just setup the base64 decoding context for the first connection.
2009-08-24 13:19:46 +02:00
Peter Kjellerstedt
01d98fdb5d
rtsp: Write as much as possible in gst_rtsp_source_dispatch().
...
Try to write as much as possible if there are multiple messages queued.
2009-08-24 13:19:45 +02:00
Peter Kjellerstedt
e5ec74c7a9
rtsp: Add error_full callback to GstRTSPWatchFuncs.
...
The error_full callback is similar to the error callback, but allows for
better error handling. For read errors a partial message is provided to
help an RTSP server generate a more correct error response, and for write
errors the write queue id of the failed message is returned.
2009-08-24 13:19:45 +02:00
Peter Kjellerstedt
ab8bea4555
rtsp: Made read_line() support LWS.
...
Rewrote read_line() to support LWS (Line White Space), the method used by
RTSP (and HTTP) to break long lines. Also added support for \r and \n as
line endings (in addition to the official \r\n).
2009-08-24 13:19:45 +02:00
Peter Kjellerstedt
607209f121
rtsp: Do not split headers which should not be split.
...
From RFC 2068 section 4.2: "Multiple message-header fields with the same
field-name may be present in a message if and only if the entire
field-value for that header field is defined as a comma-separated list
[i.e., #(values)]." This means that we should not split other headers which
may contain a comma, e.g., Range and Date.
2009-08-24 13:19:45 +02:00
Peter Kjellerstedt
08d3fe8561
rtsp: Parse WWW-Authenticate headers correctly.
...
Due to the odd syntax for WWW-Authenticate (and Proxy-Authenticate) which
allows commas both to separate between multiple challenges, and within the
challenges themself, we need to take some extra care to split these headers
correctly.
2009-08-24 13:19:45 +02:00
Peter Kjellerstedt
efc8901a39
rtsp: Improve parse_line().
...
Make parse_line() handle keys with multiple values on one line correctly.
2009-08-24 13:19:45 +02:00
Peter Kjellerstedt
db66ff4a62
rtsp: Rewrote setup_tunneling().
...
Rewrote setup_tunneling() to use normal GstRTSPMessages instead of hard
coded strings and duplicates of the message parsing code.
2009-08-24 13:19:45 +02:00
Peter Kjellerstedt
c18e2eec88
rtsp: Rewrote gen_tunnel_reply().
...
Rewrote gen_tunnel_reply() to generate a normal GstRTSPMessage rather
than a hard coded string.
2009-08-24 13:19:44 +02:00
Peter Kjellerstedt
e1b3393d6b
rtsp: Ignore the Content-Length for POST requests.
...
The Content-Length for POST requests with an x-sessioncookie header should
be ignored as the length is bogus and only there to fool proxies.
2009-08-24 13:19:44 +02:00
Peter Kjellerstedt
11c8b811f3
rtsp: Normalize lines (remove extra whitespace) before parsing.
2009-08-24 13:19:44 +02:00
Peter Kjellerstedt
5716cd102a
rtsp: Made parse_string() return a result.
...
This will catch parsing errors when a too long string is received.
2009-08-24 13:19:44 +02:00
Peter Kjellerstedt
fdd5a65632
rtsp: Improved parsing of messages.
...
Do not abort message parsing as soon as there is an error. Instead parse
as much as possible to allow a server to return as meaningful an error as
possible.
2009-08-24 13:19:44 +02:00
Peter Kjellerstedt
ca154010fe
rtsp: Added support for HTTP messages
2009-08-24 13:19:44 +02:00
Peter Kjellerstedt
dd7d0cfc45
rtsp: Added gst_rtsp_connection_create_from_fd().
...
API: gst_rtsp_connection_create_from_fd()
2009-08-24 13:19:44 +02:00
Peter Kjellerstedt
814eaa728a
rtsp: Add initial buffer support.
...
The initial buffer contains data for a connection which should be used
before starting to actually read anything from the socket.
2009-08-24 13:19:44 +02:00
Wim Taymans
2c08c76383
appsink: don't block in paused
...
When we are asked to unlock we should either leave the render function or call
the wait_preroll method to release the stream lock.
Fixes #592657
2009-08-24 13:16:39 +02:00
Peter Kjellerstedt
41f1d9a7d9
rtsp: Add support for the Authentication-Info header.
...
The Authentication-Info header is defined in RFC 2617 (Digest Access
Authentication).
2009-08-24 11:24:27 +02:00
Peter Kjellerstedt
3c4fa9274f
rtsp: Avoid duplicated headers.
...
Remove any existing Session and Date headers before adding new ones
when sending a request. This may happen if the user of this code reuses
a request (rtspsrc does this when resending after authorization fails).
2009-08-19 09:31:51 +02:00
Peter Kjellerstedt
3b888cfe2a
rtsp: Corrected the HTTP digest authorization computation.
...
Do not use sizeof() on an array passed as an argument to a function and
expect to get anything but the size of a pointer. As a result only the
first 4 (or 8) bytes of the response buffer were initialized to 0 in
auth_digest_compute_response() which caused it to return a string which
was not NUL-terminated...
2009-08-18 16:50:58 +02:00
Mark Nauwelaerts
87e6775844
riff: align API doc of gst_riff_parse_chunk with reality
2009-08-12 13:39:14 +02:00
Tim-Philipp Müller
cb19626c8c
rtspconnection: don't use GLib-2.18 function
...
g_checksum_reset() was added only in GLib 2.18, but we still require
only 2.16, so work around that if we only have 2.16. Fixes #591357 .
2009-08-10 20:18:24 +01:00
Sebastian Dröge
79ade6ad68
rtsp: Use GLib's GChecksum instead of our own MD5 implementation
2009-08-10 10:19:01 +02:00
Mart Raudsepp
689a4d4c10
navigation: Fix doc blurb typo for gst_navigation_send_key_event
2009-08-09 20:52:40 -04:00
Tim-Philipp Müller
0021e6b765
Revert inlines that cause compiler warnings and are not needed anyway
2009-08-08 17:51:10 +01:00
Edward Hervey
9329b8be72
gst-libs: Remove dead assignments and resulting unused variables.
2009-08-08 15:54:57 +02:00
Wim Taymans
090808a295
baseaudiosrc: change default slave method
...
Set the default slave method to the much better skew slaving algortihm.
2009-08-06 12:58:58 +02:00
John Millikin
cd31b2e298
tag: Add support for ALBUM_ARTIST tag in vorbiscomments and ID3v2 tags
...
Require latest core for this.
Fixes bug #590430 .
2009-08-06 06:43:38 +02:00
Sebastian Dröge
713f6ca8d5
cddabasesrc: Allow to specify the device name in the URI
...
The allowed URI scheme is now:
cdda://(device#)?track
Also allow every combination of uppercase and lowercase
characters for the protocol part.
Fixes bug #321532 .
2009-08-06 06:43:34 +02:00
Philip Jägenstedt
1b4220bd03
appsrc: Clarify documentation about caps and linkage
...
Fixes bug #589095 .
2009-08-06 06:43:34 +02:00
Olivier Crête
429d3555a2
audiofilter: Don't assert on slightly different caps
...
Plugins should not assert on incompatible caps, caps negotiation will
fail anyway.
2009-07-30 14:34:05 +01:00
Olivier Crête
4e88633de4
audiosink: Add stream-status messages
...
Fixes #587695
2009-07-20 12:54:37 +02:00
Olivier Crête
cc0da016f8
audiosrc: Add stream-status messages
...
See #587695
2009-07-20 12:54:37 +02:00
Tim-Philipp Müller
d53e754d42
typefinding: use subtitle/x-kate for Kate subtitle streams and application/x-kate for the rest
...
Differentiate subtitle streams and lyrics/cracktastic/complex streams via
the category string in the headers. This seems like a useful distinction
to make, and also seems more future-proof. See #525743 .
2009-07-13 23:00:04 +01:00
Stefan Kost
cae6a55ba3
navigation: simplify docs
...
Make short-desc short - its used in the toc. Strip uneeded markup.
2009-07-13 21:54:47 +03:00
Jan Schmidt
85de44aa01
navigation: Add some partial documentation
...
Add a general documentation blurb for the GstNavigation functionality.
Still lacks some example code and detail on how to implement it.
2009-07-13 17:55:55 +01:00
Tim-Philipp Müller
f6a508d963
pbutils: add description for Siren codec and make two descriptions non-translatable
2009-07-13 17:52:39 +01:00
Elliott Sales de Andrade
132fb5c050
riff: add siren to the RIFF parser
...
Add siren7 caps to the RIFF parser.
2009-07-13 18:22:55 +02:00
David Schleef
530cb7268b
basevideo: send basevideo back to remedial school
...
Move basevideo classes and schroedinger plugin to -bad.
2009-07-01 10:27:30 -07:00
Wim Taymans
6c28c3f139
netaddress: add constant for max len
2009-07-01 12:54:21 +02:00
Wim Taymans
8ef62de3f0
netbuffer: add gst_netaddress_to_string
...
Add function to serialize a net address to a string.
API: GstNetAddress::gst_netaddress_to_string()
2009-07-01 12:48:38 +02:00
Stefan Kost
0e967f1b14
multichannel: rewrite the new doc comment a bit
...
Its part of the audio lib.
2009-06-29 17:49:58 +03:00
Wim Taymans
8601862e27
ringbuffer: add vmethod to clear the ringbuffer
...
Add a vmethod so that subclasses can be notified when they should clear the data
in the ringbuffer.
2009-06-29 15:17:25 +02:00
Jan Schmidt
a9097080a3
riff-media: Fix the fourcc caps property for VC-1/WMVA
...
The caps property for carrying fourccs is 'format', not 'fourcc'
2009-06-29 14:01:33 +01:00
Wim Taymans
f5962f0a4f
rtsp: include in.h for FreeBSD compat
...
Fixes #586920
2009-06-29 12:20:52 +02:00
Wim Taymans
3928dbbb45
appsink: add docs and signals
...
Add docs for the new callback.
Add signals for the new buffer-list support.
2009-06-29 12:14:43 +02:00
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