Luis de Bethencourt
40aa27b788
matroskamux: remove duplicate check
...
We want 1 or 2 streamheaders, the check if (bufarr->len != 1 &&
bufarr->len != 2) is enough. Not need to check if bufarr->len is <= 0 or
> 255.
2015-11-18 16:06:27 +00:00
Reynaldo H. Verdejo Pinochet
fd4d33b0fa
matroskamux: remove unnecessary NULL checks before g_free()
2015-11-15 01:43:08 -08:00
Reynaldo H. Verdejo Pinochet
edec775e26
matroska/read-common: remove unnecessary NULL checks before g_free()
2015-11-15 01:43:08 -08:00
Sebastian Dröge
ed20b9ab90
matroskademux: Use codecutils helpers for creating Opus caps
...
Also fix up codec data with values from the container.
https://bugzilla.gnome.org/show_bug.cgi?id=757152
2015-11-03 20:35:27 +02:00
Sebastian Dröge
2d98348abb
matroskademux: There is no multistream field for Opus anymore
...
https://bugzilla.gnome.org/show_bug.cgi?id=757152
2015-11-03 20:35:27 +02:00
Sebastian Dröge
c6f6092f2f
matroska/webmmux: Support Opus in webmmux and VP9 in matroskamux
...
https://bugzilla.gnome.org/show_bug.cgi?id=729950
2015-11-03 20:35:27 +02:00
Sebastian Dröge
d620ca4740
matroskademux: Parse and handle CodecDelay, SeekPreroll and DiscardPadding
...
https://bugzilla.gnome.org/show_bug.cgi?id=727305
2015-11-03 20:35:27 +02:00
Sebastian Dröge
52122f9206
matroskamux: Write CodecDelay, DiscardPadding and SeekPreroll for Opus
...
And also adjust timestamps and durations according to the codec delay, both
should include it for whatever reason.
https://bugzilla.gnome.org/show_bug.cgi?id=727305
2015-11-03 20:35:27 +02:00
Sebastian Dröge
b34574d829
matroskamux: Opus headers are not in-band
...
https://bugzilla.gnome.org/show_bug.cgi?id=727305
2015-11-03 20:35:27 +02:00
Nicola Murino
65d08e2154
matroskamux: don't drop JPEG frames that only have PTS but no DTS set
...
For the MS/VfW codec ids, we want to write DTS timestamps instead
of PTS because that's what everyone else seems to do (and it's also
how it is in AVI). So for those input formats we use the buffer DTS
instead of the PTS. However, if there's no DTS set but only the PTS
then just take the PTS instead of dropping the input buffer. This
is useful especially for I-frame only codecs like JPEG and huffyuv,
but should also be fine as fallback in general.
Fixes regression with input JPEG frames that only have PTS set on them.
https://bugzilla.gnome.org/show_bug.cgi?id=756967
2015-10-28 19:02:44 +00:00
Sebastian Dröge
cbf181f31b
matroskademux: Read buffer timestamp *after* actually setting it
...
https://bugzilla.gnome.org/show_bug.cgi?id=756809
2015-10-27 18:01:32 +02:00
Sebastian Dröge
ca9b6b55e6
matroskamux: Create a TIME segment when creating streamable output
...
Related to https://bugzilla.gnome.org/show_bug.cgi?id=754435 which
does the same for flvmux.
2015-10-11 11:37:51 +01:00
Sebastian Dröge
1cd4baa16a
matroskademux: Remove leftover assertion from 0.10
...
We now allocate memory via GstAllocator and as such can handle arbitrary
alignments, not only <= G_MEM_ALIGN.
https://bugzilla.gnome.org/show_bug.cgi?id=755708
2015-09-28 18:03:51 +02:00
Sebastian Dröge
7046852e7d
gst: Don't use deprecated gst_segment_to_position()
2015-09-26 00:12:46 +02:00
Jan Schmidt
e5d53ec7e4
matroska-mux: Don't output a warning on MONO multiview mode.
2015-09-22 00:46:01 +10:00
Thiago Santos
f9c7dc2797
matroskamux: drop HEADER flag from output buffers
...
Drop HEADER flag from output buffers if they are not indeed
headers.
Fixes resending of headers in tcp connection handling
https://bugzilla.gnome.org/show_bug.cgi?id=754768
2015-09-10 16:28:48 -03:00
Tim-Philipp Müller
99a6f8207f
matroskamux: fix matroskamux ! matroskademux
...
Don't carry over DISCONT flags from the input buffers to the
output buffer, or the demuxer might reset its state when it
receives the first data buffer just after parsing the simple
block header, and then expect sane data to follow.
Fixes matroskamux ! demux erroring out.
https://bugzilla.gnome.org/show_bug.cgi?id=754768
https://bugzilla.gnome.org/show_bug.cgi?id=657805
2015-09-10 16:05:53 +01:00
Jan Alexander Steffens (heftig)
3f8efd8af8
matroskademux: Align raw video frames to 32 bytes
...
Outputting unaligned video frames causes videoscale et al to
crash when attempting SIMD-accelerated conversion.
https://bugzilla.gnome.org/show_bug.cgi?id=736965
2015-08-31 14:35:59 +03:00
Vineeth TM
77c9e2cd4d
matroska: read: fix tag list memory leak
...
gst_toc_entry_merge_tags makes a new ref of the taglist, so it should
be unref'ed as soon as the tags are merged to the tocentry
https://bugzilla.gnome.org/show_bug.cgi?id=753904
2015-08-21 10:22:54 +03:00
Ravi Kiran K N
6eee26b24b
matroska: Remove unused variable
...
https://bugzilla.gnome.org/show_bug.cgi?id=753556
2015-08-13 14:11:12 +01:00
Tim-Philipp Müller
a95c761fde
matroskamux: fix outdated comment
...
The default behaviour was changed in the 0.10 -> 1.x
transition, but the comment was not updated.
2015-08-08 16:44:49 +01:00
Glen Diener
cd57697a2c
matroskademux: Preserve forward referenced track tags
...
https://bugzilla.gnome.org/show_bug.cgi?id=752850
2015-08-05 16:46:33 -04:00
Vineeth TM
72b86ae868
matroska: fix memory leak
...
After adding to tag list, key_val is not being free'd
resulting in memory leak
https://bugzilla.gnome.org/show_bug.cgi?id=752992
2015-07-29 09:14:31 +01:00
Dimitrios Christidis
744167056c
matroskademux: fix for subtitle buffers with NUL terminators
...
Commit 45892ec8
created a regression where g_utf8_validate() would fail
if the subtitle buffer had a NUL terminator as part of the data.
https://bugzilla.gnome.org/show_bug.cgi?id=752421
2015-07-21 14:25:12 +01:00
Tim-Philipp Müller
2e3a5ba227
Update mailing list address from sourceforge to freedesktop
2015-07-16 17:19:03 +01:00
Dimitrios Christidis
45892ec8be
matroskademux: fix trailing '*' displayed with some text subtitles
...
The subtitle buffer we push out should not include a NUL terminator
as part of the data, we just add such a terminator for safety, but
it should not be included in the buffer size.
A NUL terminator is not valid UTF-8, so checks will fail if it's
included in the size, and the NUL will be replaced by the fallback
character specified when converting, i.e. '*'.
https://bugzilla.gnome.org/show_bug.cgi?id=752421
2015-07-16 13:18:06 +01:00
Stefan Sauer
12930c2f8c
docs: fix "Symbol name not found at the start of the comment block"
...
Add symbols or change comment into a regular comment.
2015-07-07 17:12:02 +02:00
Luis de Bethencourt
063f553275
docs: decodebin2 -> decodebin
2015-06-25 10:57:29 +01:00
Jan Schmidt
e5db2673bd
matroska-demux: Use gst_video_multiview_guess_half_aspect()
...
Use the gst_video_multiview_guess_half_aspect() utility function
to set the half-aspect flag (or not) on stereoscopic frame-packed
videos.
2015-06-23 11:58:41 +10:00
Vineeth TM
9a1ed36b7a
matroska: remove useless check
...
No need to check for context availability while freeing. We are inside
inside a code block with a condition that dereferences context.
if (context->type == 0 ...
https://bugzilla.gnome.org/show_bug.cgi?id=751306
2015-06-22 12:26:23 +01:00
Vineeth T M
e97df1e097
lzo: fix memory leak
...
the opened file is not being closed during test, which will result
in memory leak.
https://bugzilla.gnome.org/show_bug.cgi?id=751306
2015-06-22 12:22:06 +01:00
Jan Schmidt
0c46c5c3e2
matroska-demux: Actually set detected 3D info into output caps.
...
Use the information read from the StereoMode info
to configure multiview-mode and multiview-flags in the
video caps.
2015-06-12 01:57:36 +10:00
Jan Schmidt
ec5bc9dccb
matroska: Implement basic stereoscopic video support
...
Implement support for the packed video formats WebM
uses, not all the values that Matroska might use.
In practice, it's really hard to find any samples in the
wild of any.
Supported in both the muxer and demuxer.
2015-06-11 12:11:42 +10:00
Luis de Bethencourt
6d06a74f7f
matroska: overwritten value assignment
...
curpos is set and immediately after, set again. Remove the redundant
assignment.
https://bugzilla.gnome.org/show_bug.cgi?id=749909
2015-05-27 16:56:15 +01:00
Luis de Bethencourt
06d1ae313d
matroska: remove unused property enum items
2015-04-30 15:43:09 +01:00
Guillaume Desmottes
7f4f4131df
matroskademux: fix seek event leak
...
gst_matroska_demux_handle_seek_event() doesn't consume the
event so we have to unref it.
https://bugzilla.gnome.org/show_bug.cgi?id=748584
2015-04-28 19:24:40 +01:00
Sebastian Dröge
9119fbd774
matroska-demux: Send pending tags when adding a new pad
...
We might've parsed those tags before already and tried to push them to
non-existing pads before. Now let's do it for real.
2015-04-28 15:42:49 +02:00
Luis de Bethencourt
9391622579
Rename property enums from ARG_ to PROP_
...
Property enum items should be named PROP_ for consistency and readability.
2015-04-27 11:22:11 +01:00
Tim-Philipp Müller
d753a3eeb1
Remove obsolete Android build cruft
...
This is not needed any longer.
2015-04-26 17:55:07 +01:00
Guillaume Desmottes
592cab1512
matroska: fix GValue leaks when parsing tags
...
gst_tag_list_add_value() doesn't consume the GValue we pass to it so there is
no point copying it.
https://bugzilla.gnome.org/show_bug.cgi?id=746810
2015-03-30 08:59:36 -03:00
Mark Nauwelaerts
593cfa086c
matroskademux: resurrect some flow return handling
...
https://bugzilla.gnome.org/show_bug.cgi?id=744572
2015-03-29 13:58:56 +02:00
Thiago Santos
d56b11af56
matroska: store stream tags and push as updated
...
New tags can be found on different parts of the file, so this patch
keeps the stream taglists around for the life cycle of the pad
and adds those new tags as found. Then a new tag is found, the
pad's is marked with a tags changed flag, making the element push
a new tag event on the next check. Before this, we were sending
only the newly found tags, as the element was losing its taglist
when pushing the event.
2015-03-28 11:20:39 -03:00
Ramiro Polla
7b2b619a8f
matroskademux: send global tags incrementally
...
Instead of sending only new tags once they are found, merge the taglist
and send them incrementally.
2015-03-28 10:24:57 -03:00
Ramiro Polla
af45021036
matroskaparse: send global tags
...
Global tags are already being read in matroskaparse, but they are not
currently being sent.
This patch makes global tags get sent incrementally whenever new ones
are found.
https://bugzilla.gnome.org/show_bug.cgi?id=746242
2015-03-28 10:24:57 -03:00
Nicola Murino
bb3d82ef04
matroskademux: for dts only stream set pts=dts for intra only formats
...
https://bugzilla.gnome.org/show_bug.cgi?id=745192
2015-03-15 14:28:36 +00:00
Ramiro Polla
0fad053497
matroskademux: fix sending of tags
...
* Fix critical when new tags are found after segment event has already
been sent.
* Send global tags before stream tags.
* Split sending of tags out of gst_matroska_demux_send_event() into its
own function.
https://bugzilla.gnome.org/show_bug.cgi?id=745973
2015-03-14 18:17:48 +00:00
Luis de Bethencourt
db3ade5bfb
matroska: error mode if can't push buffer
...
If gst_pad_push() fails, inform and return flow error.
2015-03-09 12:51:21 +00:00
Luis de Bethencourt
f494da89b4
matroska: unused value
...
Value set in ret will be overwritten just before exiting the function.
CID #1226469
2015-03-09 12:13:40 +00:00
Nicola Murino
c4e542de69
matroskamux: Remove duration accumulation logic
...
Duration accumulation can cause rounding errors and generate wrong
duration with different buffers that share the same timestamp.
https://bugzilla.gnome.org/show_bug.cgi?id=745192
2015-03-04 11:37:48 +01:00
Nicola Murino
f727762c1f
matroska: Add an helper method to get buffer timestamps
...
... and replace GST_BUFFER_TIMESTAMP that always return PTS with this method
that return PTS or DTS based on stream type.
https://bugzilla.gnome.org/show_bug.cgi?id=745192
2015-03-04 11:36:24 +01:00