Per x Johansson
46bc1677a4
matroskamux: Fix constantly growing used uid list
...
Moves the used uid list to the class to avoid having it grow forever.
https://bugzilla.gnome.org/show_bug.cgi?id=723269
2014-01-30 11:59:28 -03:00
Reynaldo H. Verdejo Pinochet
cf0c780138
matroskaparse: better default caps when none set
...
Uses information gathered during EBML parsing to
forge a more suitable set of caps instead of blindly
assuming everything is video/x-matroska.
For consistency, stream type reset was added to
matroska-demux too.
https://bugzilla.gnome.org/show_bug.cgi?id=722311
2014-01-21 11:11:46 -03:00
Sebastian Dröge
809d105982
matroskademux: Don't skip all video frames until the first keyframe
...
Instead do it like all other demuxers and let parsers and decoders
handle that. The keyframe information inside the container might
be completely wrong like in the sample file of the bug report,
and if it is correct and we push no keyframes, then the parsers
and decoders will handle that properly anyway.
https://bugzilla.gnome.org/show_bug.cgi?id=682276
2014-01-15 22:49:58 +01:00
Tim-Philipp Müller
88ac735af3
matroskademux: don't leak TOC chapter list
2014-01-10 16:50:11 +00:00
Vincent Penquerc'h
f8158baa93
matroskamux: remove obsolete write-dummy-and-overwrite-on-eos code
...
The need for rewriting apparently is obsolete 0.10 leftover.
We now have caps for subtitles when we create the headers,
so we always write the correct data in the first place.
2014-01-10 08:54:04 +00:00
Vincent Penquerc'h
1c6ee3fba4
matroskamux: write subtitle codec ID and data at start when known
...
This avoids issues with writing dummy data first, then having
to come back and write correct data later. Doing so prevents
the muxed stream from being actually streamable.
https://bugzilla.gnome.org/show_bug.cgi?id=712134
2014-01-09 18:29:32 +00:00
Wim Taymans
7f8c4dceb4
Revert "matroskamux: Use the running time for container timestamps, not buffer timestamps"
...
This reverts commit b3aa8755fe
.
We are already using the running-time because they were placed on the
buffers with gst_collect_pads_clip_running_time(). Arguably it would be
better to not modify the incomming buffers but collectpads seems to want
to use absolute timestamps from the buffers for finding the best buffer
(this can be changed with a custom compare function..).
2014-01-08 11:32:54 +01:00
Sebastian Dröge
2cddf3a0a9
matroskamux: Error out if ADPCM caps don't contain the layout field
2014-01-08 09:57:48 +01:00
Nicola Murino
bbb5a2853e
matroskamux: Add support for g726 ADPCM
...
https://bugzilla.gnome.org/show_bug.cgi?id=720995
2014-01-08 09:57:48 +01:00
Sebastian Dröge
5506dc3076
matroskamux: Add HEVC / h265 support
2014-01-06 14:55:36 +01:00
Sebastian Dröge
77745289c4
matroskademux: Add HEVC / h265 support
2014-01-06 14:55:36 +01:00
Sebastian Dröge
a4a7dafc32
matroskamux: Add missing semicolon from last commit
2014-01-05 10:28:34 +01:00
Sebastian Dröge
b3aa8755fe
matroskamux: Use the running time for container timestamps, not buffer timestamps
...
Buffer timestamps have no real meaning here, and for selecting the next
buffer we already use the running time anyway.
2014-01-05 10:23:44 +01:00
Nicola Murino
5b1108dd5f
matroskamux: adpcm max block align is 8192
2013-12-24 10:00:16 +01:00
Sebastian Dröge
4baf8080f2
matroskamux: Use correct codec id for ADPCM/DVI
2013-12-23 15:46:48 +01:00
Sebastian Dröge
7cae8922cb
matroskademux: Check for the correct size of codec_data in the ACM case
2013-12-23 15:46:43 +01:00
Nicola Murino
00ea1cb003
matroskamux: basic adpcm support
...
https://bugzilla.gnome.org/show_bug.cgi?id=664339
2013-12-23 15:31:04 +01:00
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