Commit graph

1321 commits

Author SHA1 Message Date
Sebastian Dröge
3116198fc3 gio: Improve the error message if a stream is already closed before usage 2009-07-08 17:02:54 +02:00
Sebastian Dröge
6025412707 gio: Post a custom file-exists message on the bus if the file already exists
An application can handle this message, remove the file in question
and restart the pipeline again without showing an error.

This fixes bug #529300.
2009-07-08 16:55:41 +02:00
Sebastian Dröge
7228ba6acd gio: Use OPEN_READ instead of NOT_FOUND if a location is not mounted 2009-07-08 16:54:56 +02:00
Sebastian Dröge
a8896413a0 gio: Use OPEN_WRITE instead of OPEN_READ as error category in giosink 2009-07-08 16:50:56 +02:00
Sebastian Dröge
ce08823dc5 gio: Post a custom "not-mounted" message on the bus
This allows applications to mount the GFile if possible and restart
the pipeline instead of simply giving an error.
2009-07-08 15:52:35 +02:00
Sebastian Dröge
7e72ceb3f2 gio: Add vfunc for requesting the stream for the sinks too 2009-07-07 20:23:23 +02:00
Sebastian Dröge
7483a4834c gio: Some more random cleanup 2009-07-07 20:21:36 +02:00
Sebastian Dröge
b81f957bfc gio: Update my mail address and copyright 2009-07-07 20:20:58 +02:00
Sebastian Dröge
160b70e841 gio: General clean up and simplification
The GInputStreams are now requested by a vfunc from
the subclasses instead of relying that the subclass
sets it until it's needed.

This might also fix bug #587896.
2009-07-07 20:18:00 +02:00
Hans-Peter Nilsson
04e23f2d6a pango: Call tzset() before localtime_r()
POSIX and your local friendly ctime(3) manual entry says that localtime_r isn't
required to set the state variables that define the current timezone.  Indeed,
glibc (at least 2.9) doesn't do this for subsequent calls.  The effect is that
if the system timezone is changed for a running program between two calls to
gst_clock_overlay_render_time, it won't be noticed.  For glibc, changing the
timezone equals /etc/localtime being modified.

Fixes bug #587676.
2009-07-05 18:01:38 +02:00
David Schleef
8937c89551 build: remove spurious schroedinger reference 2009-07-01 17:33:14 -07: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
Tim-Philipp Müller
b20b375180 cdparanoia: run-time license is LGPL now that we require cdparanoia 0.10.2
cdparanoia has an LGPL v2.1 license since 0.10.1 and we now require 0.10.2.
Finally fixes #531035.
2009-06-19 22:21:03 +01:00
Tim-Philipp Müller
4e1086f93b cdparanoia: try to guess a good cache size if it's set to -1
Try to guess from the paranoia-mode setting whether playback or
ripping is wanted, and use a smaller cache size if we're likely
to be doing playback, to avoid a long startup delay. Since this
was the value used in older cdparanoia versions, it should be
fine in any case. See #586331.
2009-06-19 22:21:03 +01:00
Jonathan Matthew
9daee1f4a9 cdparanoia: expose cache size setting
This setting was added in cdparanoia 10.2.  The default value is good
for audio extraction, but lower values (previous versions of cdparanoia
used 150) are better for realtime playback.

Fixes #586331.
2009-06-19 22:21:03 +01:00
Tim-Philipp Müller
12134979a2 oggdemux: post/send tags with the container-format tag
For this to work properly, theoradec and vorbisdec need to put
tag events received from upstream into the pending_events list
so they get pushed out after any newsegment event, not before.
2009-06-14 22:13:41 +01:00
Wim Taymans
acdb88ec6f oggdemux: do reverse seeks more accurate
For reverse seeking with the accurate flag set, try to be more precise by
seeking a little bit after the requested position.
2009-06-12 13:44:26 +02:00
Tim-Philipp Müller
9ca2bf36de subparse, ogmparse: post tags with GST_TAG_SUBTITLE_CODEC
Make subtitle parsers post a taglist with codec tags, so the application
knows what kind of subtitle a subtitle stream is. Fixes #576552.
2009-06-11 22:32:28 +01:00
LRN
30103e736d Added libgstbase to schro's LIBADD
Fixes #585079
2009-06-07 22:01:50 +02:00
Tim-Philipp Müller
20fb58be19 vorbisdec: don't put invalid bitrate values into the taglist
Bitrates are stored as 32-bit signed integers in the vorbis
identification headers, but seem to be read incorrectly,
namely as unsigned 32-bit integers, into the vorbis structure
members which are of type long, which makes our check for
values <= 0 fail with files that put -1 in there for unset
values.
2009-06-03 20:42:39 +01:00
Alessandro Decina
bb1561644f theoraparse: fix assertions in make_granulepos when using the new theora granulepos mapping. Fixes #583903. 2009-05-26 23:32:48 +02:00
Wim Taymans
f0bb7874a7 oggdemux: fix boundary case for seeking.
When we have exactly 0 bytes left to search, make sure we stop instead of going
into an infinite loop.
2009-05-26 13:14:07 +02:00
David Schleef
27cb39b028 schro: Fix usage of adapter_masked_scan_uint32
Because *somebody* changed the API without telling me.
2009-05-22 21:27:58 -07:00
David Schleef
62002aead9 schro: Change package name to GST_PACKAGE_NAME 2009-05-22 21:25:06 -07:00
Wim Taymans
d1c73bd00f vorbisdec: detect and report errors better
Check the return values of a couple more libvorbis functions and post an error
when something is wrong instead of continuing and crashing.
2009-05-22 17:41:50 +02:00
Wim Taymans
ed36eafaba oggdemux: don't loop when at EOS
When we try to read the last page, don't try to read past the upper boundary, as
this might cause endless loops.

See #582942
2009-05-19 12:45:59 +02:00
Michael Smith
94ca1b005e theoradec: for 4:2:2, use Y42B (planar) rather than a packed format. 2009-05-18 22:34:22 -07:00
David Schleef
0f1c5c1b68 schro: Move schro plugin from Schroedinger
Previous history is in Schroedinger.  Depends on, and is an example
of using, GstBaseVideo* base classes.

Code was reindented, and an #ifdef HAVE_ENCODER removed.
2009-05-15 16:18:59 -07:00
Sebastian Dröge
c3b28a9bff vorbisenc: Implement Preset interface 2009-05-15 16:27:41 +02:00
Sebastian Dröge
bcd0aee3f5 theoraenc: Implement Preset interface 2009-05-15 16:27:40 +02:00
Sebastian Dröge
2ea16837e7 oggmux: Implement Preset interface 2009-05-15 16:27:40 +02:00
Wim Taymans
117686abc5 visual: remove next_ts variable
We can remove the next_ts variable as we don't use it anymore.
2009-05-13 19:27:54 +02:00
Wim Taymans
6eb549ab92 visual: use new adapter timestamp code
Use the new adapter timestamp tracking code to make things easier and produce
vastly better output timestamps.
2009-05-13 19:24:15 +02:00
Christian Schaller
705e7750c5 Add ranks to the Oggmuxer, Vorbis encoder and Theora encoder 2009-05-12 12:17:55 +01:00
Wim Taymans
6cee823237 oggmux: small debug statement in DISCONT 2009-05-12 10:46:35 +02:00
Wim Taymans
7e43c10754 oggdemux: fix abuse of ogg API, handle broken oggs
When we feed the ogg sync layer, we need to feed it contiguous data even if the
sync layer did not consume all of it yet. This makes sure that it always finds
the next page even for more corrupted files. Use a different read_offset for
this purpose. since we now keep track of the sync layer, we don't have to reset
after finding a start of a page.

Add some more debug info for the error paths.

Only reset the sync layer when we perform a seek operation.

Avoid failure when the next chain has no bos pages but instead simply ignore it.

when we receive unknown page serial numbers mid stream, don't fail but post a
warning and hope that we get back on track later.

Fixes #579642
2009-05-12 10:44:17 +02:00
Sebastian Dröge
1d4ba53259 textrender: Correctly initialize the background for ARGB too 2009-05-12 09:03:24 +02:00
Sebastian Dröge
204c327b23 textrender: Use libgstvideo functions to create caps
Also check if downstream wants ARGB always when we get
new caps.
2009-05-12 09:03:23 +02:00
Sebastian Dröge
4f5502a896 textrender: Don't always use ARGB if downstream supports it but take it's preference 2009-05-12 09:03:23 +02:00
Kapil Agrawal
2ddf7c8e13 textrender: Add support for ARGB and alignment properties
Fixes bug #581571.
2009-05-12 09:03:23 +02:00
Sebastian Dröge
ce95857718 textrender: Add ; after GST_BOILERPLATE to fix indention 2009-05-12 09:03:23 +02:00
Michael Smith
21c52af2b3 theoradec: fix buffer overrun on 422 decode. 2009-05-10 18:08:13 -07:00
Michael Smith
c94a36bff4 theoradec: 444 support. 2009-05-10 18:08:13 -07:00
Michael Smith
62b571b93b theoradec: handle 422 images (as YUY2). 2009-05-10 18:08:13 -07:00
Michael Smith
a91b7f0857 theoradec: rearrange code in preparation for 422 and 444 support. 2009-05-10 18:08:12 -07:00
Zaheer Merali
1650272b84 vorbisenc, theoraenc: Ensure gp is computed consistently + clip to segment
With vorbisenc, compute the granulepos with running time and clip incoming
buffers to segment.
With theoraenc, drop out of segment buffers.
2009-05-06 13:19:34 +01:00
Jan Schmidt
d14c80b22e vorbisenc: Ensure output buffers fall within the segment
Add the start position of the first segment to the running time
used to generate buffer timestamps in vorbisenc. This avoids generating
buffers which fall outside the initial segment. The element segment
handling requires more extensive fixing, but this at least prevents
regressions. Fixes: #580020
2009-04-29 16:48:45 +01:00
Olivier Crete
c628641880 theoraenc: implement upstream keyframe force
Implement handling of upstream keyframe forcing.
Update the design documents too.
Fixes #578656
2009-04-14 18:21:45 +02:00
Olivier Crete
d0c3682627 theoraenc: factor out keyframe forcing
See #578656
2009-04-14 18:21:45 +02:00
Edward Hervey
219fe22293 theoradec: return GST_CLOCK_TIME_NONE for negative framecounts.
This fixes most seeking issues when used with gnonlin.
Fixes #543591
2009-04-04 15:47:17 +02:00