Commit graph

694 commits

Author SHA1 Message Date
Sebastian Dröge
fb14f66696 matroska-demux: Allow a bit more variation when detecting common framerates
Instead of +/- 1ns we allow 2ns now. Due to rounding errors there are
some Matroska files out there with 33.333331ms per frame for 30fps.
2013-11-26 11:17:42 +01:00
Sebastian Dröge
20ad174679 matroska-demux: Use gst_util_double_to_fraction() instead of GValue magic 2013-11-26 10:21:04 +01:00
Mark Nauwelaerts
643e6fdc36 matroskamux: correctly handle negative relative timestamps
... rather than scaling these as unsigned.

Fixes https://bugzilla.gnome.org/show_bug.cgi?id=712744

Based on patch by Krzysztof Kotlenga <pocek@users.sf.net>
2013-11-23 12:25:05 +01:00
Thibault Saunier
6ff7522ba2 matroskademux: Use GstVideoInfo helper to create caps for raw video
This way we do not miss mandatory fields in caps.
At the same time use the gst_pb_utils_get_codec_description helper to
get codec description.

https://bugzilla.gnome.org/show_bug.cgi?id=712328
2013-11-22 18:52:54 -03:00
Tim-Philipp Müller
d9c2914c90 g_memmove() is deprecated
Just use plain memmove(), g_memmove() is deprecated in
recent GLib versions.

https://bugzilla.gnome.org/show_bug.cgi?id=712811
2013-11-21 15:30:34 +00:00
Per x Johansson
b3e0b1dbca matroskademux: Avoid division by zero assert in gst_matroska_demux_search_pos
https://bugzilla.gnome.org/show_bug.cgi?id=711829
2013-11-11 11:30:54 +01:00
Sebastian Dröge
4a8082856a matroska-demux: Fix compiler warning
matroska-demux.c: In function 'gst_matroska_demux_add_stream':
matroska-demux.c:1379:7: error: format '%u' expects argument of type 'unsigned int', but argument 4 has type 'guint64' [-Werror=format=]
       "%03u", context->uid);
       ^
2013-10-30 22:13:06 +01:00
Reynaldo H. Verdejo Pinochet
38c5e5efdc matroska: Trivial grammar fix on debug msg 2013-10-06 10:02:09 -07:00
Reynaldo H. Verdejo Pinochet
1cb31eeacc matroskamux: Add context flag for WebM
WebM has a couple of specific requirements we need to handle.
Idea is to set this flag once and just rely on mux->is_webm
at run time instead of repeatedly figuring this out from
GST_MATROSKA_DOCTYPE_WEBM (which requires a strcmp()).
2013-10-06 09:54:28 -07:00
Reynaldo H. Verdejo Pinochet
edeed575ae matroska: Do not write SegmentUID for WebM mux
WebM spec states SegmentUID is Unsupported. Files produced
with gstreamer without this change will spit an error like
this when passed to mkvalidator:

ERR201: Invalid 'SegmentUID' for profile 'webm' in Info at 192
2013-10-06 08:12:50 -07:00
Matej Knopp
cf12017ef8 matroskademux: make dvd palette change event sticky
So they don't get lost.

https://bugzilla.gnome.org/show_bug.cgi?id=709454
2013-10-05 10:55:03 +01:00
Ognyan Tonchev
30f62a2eec matroskademux: Fix memory leak
https://bugzilla.gnome.org/show_bug.cgi?id=709266
2013-10-02 16:17:33 +02:00
Matej Knopp
40c0586c17 matroskademux: move the check for subtitle buffer being null terminated before validating UTF-8
https://bugzilla.gnome.org/show_bug.cgi?id=707933
2013-09-27 14:38:19 +02:00
Matej Knopp
a1a493dae4 matroskademux: update stream->pos when sending buffers so that gap events are not sent unnecessarily
https://bugzilla.gnome.org/show_bug.cgi?id=708505
2013-09-24 15:12:44 -07:00
Sebastian Dröge
d8841b4832 matroska-demux: Make sure that subtitle buffers are \0-terminated
https://bugzilla.gnome.org/show_bug.cgi?id=707933
2013-09-20 10:22:40 +02:00
Seán de Búrca
9d3dbd6581 matroskademux: Fix off-by-one in validation of UTF-8
https://bugzilla.gnome.org/show_bug.cgi?id=707933
2013-09-12 09:19:15 +02:00
Thiago Santos
193ce9110e matroskademux: Preserve seqnum when pushing seek upstream
After converting a seek from time to bytes, use the same seqnum
on the event that goes upstream
2013-09-10 17:57:49 -03:00
Matej Knopp
a5ceab82dd matroskademux: fix leaking buffer and caps
https://bugzilla.gnome.org/show_bug.cgi?id=707688
2013-09-07 15:50:36 +01:00
Wim Taymans
2a8566ddec matroska-mux: remove framerate restriction
Remove the framerate restriction on the caps.
2013-08-27 15:25:16 +02:00
Sebastian Dröge
9863e08839 matroskademux: Don't print warnings during flushing and stop as soon as possible
https://bugzilla.gnome.org//show_bug.cgi?id=705442
2013-08-08 11:53:15 +02:00
Sebastian Dröge
2e35b36aab gst: Don't swap start/stop for negative rates in the SEGMENT query 2013-07-29 12:12:41 +02:00
Sebastian Dröge
722ef42196 matroskademux: Implement SEGMENT query 2013-07-29 10:53:54 +02:00
Matej Knopp
7335b81c47 matroskademux: fix memory leak in check_subtitle_buffer
https://bugzilla.gnome.org/show_bug.cgi?id=704921
2013-07-26 17:11:31 +02:00
Thiago Santos
8bd12e12b3 matroskademux: fix seqnum handling for seeks
Use the same seqnum as the seek for flushes/segments that are
caused by the seek. Also do the same for segment events

Fixes #676242
2013-07-25 15:24:31 -03:00
Sebastian Dröge
57dd1189d5 matroskademux: Add support for group-id in the stream-start event 2013-07-22 15:30:13 +02:00
Arnaud Vrac
6e26f1d067 mastrokademux: do not push discont buffers if they aren't discont
Unset the discont flag instead of posssibly pushing a buffer with
a flag that's still set.

https://bugzilla.gnome.org/show_bug.cgi?id=682110
2013-07-17 18:10:11 +01:00
Jonas Holmberg
beebe2b7af matroskademux: Unlock stream lock after use
Stream lock of sink pad was not unlocked after non-updating seek.
2013-07-09 11:25:14 +02:00
Sebastian Dröge
75b5a54f17 matroskademux: Add MPEG4 video profile/level to the caps 2013-07-01 11:01:13 +02:00
Sebastian Dröge
423bddac6a matroskademux: Add AAC profile/level to the caps
https://bugzilla.gnome.org/show_bug.cgi?id=703312
2013-07-01 11:01:13 +02:00
Sebastian Dröge
3c9aba91dc matroska: Add initial VP9 support 2013-06-21 18:22:13 +02:00
Bruno Gonzalez
e89a48616b matroskademux: Don't unlock stream lock without locking it first
https://bugzilla.gnome.org/show_bug.cgi?id=702167
2013-06-14 14:10:13 +02:00
Tim-Philipp Müller
213cd2777b matroskademux: mark subtitle streams as sparse in stream-start event
And also mark the streams that should be selected by default if
marked so in the headers.

https://bugzilla.gnome.org/show_bug.cgi?id=600648
2013-06-12 15:31:22 +01:00
Sebastian Dröge
e2b46a776f matroskademux: Send stream headers after the segment event
https://bugzilla.gnome.org/show_bug.cgi?id=700799
2013-06-11 13:54:53 +02:00
Sebastian Dröge
4fdbf88a65 matroskaparse: Make sure to send a segment event before dataflow 2013-05-14 13:52:18 +02:00
Ognyan Tonchev
0584d5c4c9 matroskademux: add stream-format=raw to aac caps
https://bugzilla.gnome.org/show_bug.cgi?id=699303
2013-05-01 15:47:15 +02:00
Sebastian Dröge
b0b0557c48 gst: Add better support for static plugins 2013-04-15 15:54:11 +02:00
Tim-Philipp Müller
078ff16abe matroskademux: fix some debug messages 2013-04-03 00:49:37 +01:00
Arnaud Vrac
00b46b4744 matroskademux: handle TrueHD audio codec id
https://bugzilla.gnome.org/show_bug.cgi?id=697113
2013-04-02 22:47:54 +01:00
David Schleef
53f8b05b08 Use %03u for format in gst_pad_create_stream_id_printf() 2013-03-25 18:57:08 -07:00
Sebastian Dröge
539126c097 matroska: Include config.h, it's needed for _stdint.h 2013-03-03 11:59:31 +01:00
Tim-Philipp Müller
8004ae0369 matroskamux: fix up example pipeline in docs 2013-02-23 18:50:52 +00:00
Tim-Philipp Müller
f4cb0c4315 matroskademux: skip empty tags
instead of trying to add tags with empty strings, which
causes criticals at runtime.

https://bugzilla.gnome.org/show_bug.cgi?id=690358
2012-12-17 22:55:12 +00:00
Alexey Fisher
7e47e3b92d matroskamux: set appropriate block header flag for VP8 invisible frames
Useful for debugging mostly.

https://bugzilla.gnome.org/show_bug.cgi?id=654259
2012-12-16 23:30:13 +00:00
Tim-Philipp Müller
672ab8fb5b webmux: fix linking with shout2send element
Shout2send only accepts webm format, not matroska, but due
to a bug in matroskamux, webmmux's source pad is also created
with the matroska source pad template as pad template, which
makes the link function think it can't link webmmux to shout2send.

Also add unit test.

https://bugzilla.gnome.org/show_bug.cgi?id=689336
2012-11-30 17:22:34 +00:00
Tim-Philipp Müller
230cf41cc9 Fix FSF address
https://bugzilla.gnome.org/show_bug.cgi?id=687520
2012-11-04 00:07:18 +00:00
Tim-Philipp Müller
ef0805ea14 matroskademux: put streamheaders on vorbis/speex/flac/theora caps to make remuxing work
https://bugzilla.gnome.org/show_bug.cgi?id=640589
2012-10-30 23:29:46 +00:00
Alexey Fisher
29cd24bc41 matroskademux: mark invisible VP8 frames with the DECODE_ONLY flag
https://bugzilla.gnome.org/show_bug.cgi?id=654259
2012-10-27 14:46:02 +01:00
Руслан Ижбулатов
78193dfe71 matroskademux: Support recursive SimpleTags
Fixes #682644
Depends on #682615
2012-10-26 10:16:42 +02:00
Руслан Ижбулатов
cd719bb808 matroskademux: Expand the tag mapping.
* Also expose unknown tags as key=value pairs.
* Arrange tag map in the same order tags are listed in Matroska spec, leaving
unmapped tags as comments.
* More specific TODOs.
* Remove duplicate DATE define.

Fixes #682615
Depends on #682524
2012-10-26 10:12:52 +02:00
Sebastian Dröge
6c635ce64f matroskademux: Fix uninitialized variable compiler warning 2012-10-26 10:09:39 +02:00