In some corrupted files, we could end up with no actual streams
being exposed.
In those cases, make sure we properly propagate the failure all
the way to the loop function. This avoids ending up in cases where
we are neither EOS'd nor ERROR'd out from a pipeline point of view.
https://bugzilla.gnome.org/show_bug.cgi?id=774846
https://github.com/mesonbuild/meson
With contributions from:
Tim-Philipp Müller <tim@centricular.com>
Jussi Pakkanen <jpakkane@gmail.com> (original port)
Highlights of the features provided are:
* Faster builds on Linux (~40-50% faster)
* The ability to build with MSVC on Windows
* Generate Visual Studio project files
* Generate XCode project files
* Much faster builds on Windows (on-par with Linux)
* Seriously fast configure and building on embedded
... and many more. For more details see:
http://blog.nirbheek.in/2016/05/gstreamer-and-meson-new-hope.htmlhttp://blog.nirbheek.in/2016/07/building-and-developing-gstreamer-using.html
Building with Meson should work on both Linux and Windows, but may
need a few more tweaks on other operating systems.
_stdint.h is generated by Autotools and we don't really need it. All
supported platforms now ship with stdint.h. The only stickler was MSVC,
and since Visual Studio 2015 it also ships stdint.h now.
Fix seeking when demuxer is in INDEX state. This happens when we
reached the end of the stream. It should still be possible to do
a flushing seek and seek back to any other position though. Instead
the demuxer would just go straight to EOS again instead of going
back to processing packets again from the new position.
https://bugzilla.gnome.org/show_bug.cgi?id=749066
Support reverse playback for ASF format.
Parse packets and queue the payloads, then push
the payload buffer to decoder in reverse order.
Video buffers are pushed from KeyFrame to next
Keyframe.
https://bugzilla.gnome.org/show_bug.cgi?id=757341
We would always copy sizeof(sorted_position) bytes, which is
for 8 channels, but if we have less than 8 channels the
position array we copy from will only have allocated space
for channel channels, so we would read beyond the input
array in some cases.
When caps event is recieved and header is changed, reordering channel
and setting the default output format for audio are processed. These 2 of
code are same. Thus, It is better to make a new function for these common
code in terms of removing duplicated code, maintenance and expansion.
https://bugzilla.gnome.org/show_bug.cgi?id=753920
We don't want to unconditionally send an EOS event downstream, but might want
to send a SEGMENT_DONE message/event instead if a segment seek was done
before.
https://bugzilla.gnome.org/show_bug.cgi?id=755469
When discovering a particular asf file, caps structure doesn't have
codec_data, and this was not being checked before using the same,
resulting in assertion error
https://bugzilla.gnome.org/show_bug.cgi?id=752803
while adding stream, during error cases, only stream is
being freed. Adapter, pad, tags, subpackets, index are not being
freed resulting in memory leaks
https://bugzilla.gnome.org/show_bug.cgi?id=752404
Add parsing of stereoscopic metadata, and place into the caps to
the decoder.
Fix parsing of Advanced Mutual Exclustion objects.
https://bugzilla.gnome.org/show_bug.cgi?id=711190
Based on a patch by HyeJin Choi <meeshel78@hotmail.com>
We should give a chance to upstream to handle TIME seek events before trying
to handle it in asfdemux.
Fix a bug where fast backward seeks where discarded right away because they
were not supported by asfdemux.
https://bugzilla.gnome.org/show_bug.cgi?id=734471
For bytestream we don't want to expose it as codec_data but rather as
streamheader as it is not out-of-band data but data that should be
prepended to the beginning of the stream before the other buffers.
https://bugzilla.gnome.org/show_bug.cgi?id=735070
They are very confusing for people, and more often than not
also just not very accurate. Seeing 'last reviewed: 2005' in
your docs is not very confidence-inspiring. Let's just remove
those comments.
This is required to make encodebin consider the element. Yet it is not enough to
have it plugged it has a lower priority than most mp3encoders and no different
caps.
Relying on the gst_segment_do_seek results for getting the
seeking time should not be used if seek type is SET because the
do_seek function makes the 'cur` position of the seek normalized
on the segment range. This means that seeking beyond the end of the
file might not result in instant EOS as it will end up seeking to
the final ts of the file.
In asf seeking to the final timestamp can lead to seeking to the last
keyframe, meaning a few seconds of video will still be played, which should
not be the desired behavior when seeking beyong file limits.
Allows queries (and other code) to be answered when working in push-mode.
Running would only be set to TRUE accordingly when working in pull-mode
once it had read header/index.
Fixes#680185
First, the xing header frame is never added to the count,
we have to increment the count.
Secondly, there is a rounding error when calculating the
frame duration, as spf*GST_SECOND/rate is not an integer
(26122448.9) an it must be 26122449.
Change libgstasfdemux to libgstasf, and change libgstrealmedia to libgstrmdemux.
The typos led to generate the incorrect Android.mk files for the asfdemux
and realmedia plugin.
https://bugzilla.gnome.org/show_bug.cgi?id=686748
Video uses DTS as timestamps. Set the DTS on the buffers and leave the PTS
undefined to make the decoder do the right thing. We can then remove the code
that tries to guess the PTS from the DTS.