Sean DuBois
2f707370d4
flvmux: Add metadatacreator property
...
Allow users to set metadatacreator value in the meta packet
https://bugzilla.gnome.org/show_bug.cgi?id=774131
2016-11-10 13:11:05 +02:00
Nicolas Dufresne
ad9e9bedfb
flvmux: Assume PTS is DTS when PTS is missing
...
This fixes issue for encoders that only sets the DTS. We assume that
there was no re-ordering when that happens.
https://bugzilla.gnome.org/show_bug.cgi?id=762207
2016-10-24 11:54:30 -04:00
Thibault Saunier
150edef830
Use the new API to post flow ERROR messages on the bus
...
https://bugzilla.gnome.org/show_bug.cgi?id=770158
2016-08-26 19:23:26 -03:00
Nirbheek Chauhan
b09f478e80
Add support for Meson as alternative/parallel build system
...
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.html
http://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.
2016-08-20 11:21:12 +01:00
Jan Alexander Steffens (heftig)
b3cfbe575c
flvdemux: Push nominal bitrate tags
...
Add per-stream tag lists, which are used to send nominal
bitrate tags. When remuxing FLV => FLV, this now passes
through the upstream bitrate.
https://bugzilla.gnome.org/show_bug.cgi?id=768440
2016-07-07 10:21:21 +03:00
Jan Alexander Steffens (heftig)
ee44e60f7b
flvdemux: Refactor metadata tag handling
...
The FLV header cannot be trusted to indicate video or
audio presence, as the comments already mention. Don't
delay pushing tags waiting for streams that might never
appear.
Tags are now pushed immediately after they change:
- After parsing an onMetaData script object
- After negotiating caps on a pad
https://bugzilla.gnome.org/show_bug.cgi?id=768440
2016-07-07 10:21:21 +03:00
Sebastian Dröge
d6f597db20
flvdemux: Add comment about H263/MPEG4P2 being non-standard for FLV
...
They are however supported by ffmpeg and apparently used out there.
https://bugzilla.gnome.org/show_bug.cgi?id=768006
2016-06-27 09:20:35 +03:00
Vivia Nikolaidou
6ac02f8595
flvdemux: Add support for H263 and MPEG4 part2
...
https://bugzilla.gnome.org/show_bug.cgi?id=768006
2016-06-24 15:30:03 +03:00
Tim-Philipp Müller
51a0dc2df2
flvdemux: fix indentation
2016-06-10 13:51:39 +01:00
Tim-Philipp Müller
c51831a245
flvdemux: fix date parsing when there are trailing spaces
...
Fixes parsing of "Thu May 11 15:57:46 2006 ".
https://bugzilla.gnome.org/show_bug.cgi?id=767496
2016-06-10 13:51:39 +01:00
Seungha Yang
4e23d206b9
flvdemux: Fix unref assertion failure
...
Fix unref assertion failure
https://bugzilla.gnome.org/show_bug.cgi?id=767424
2016-06-08 22:01:11 -04:00
Thibault Saunier
dd9bfd03ec
flv: Handle the case where we do not get any CollectData in handle_buffer
...
https://bugzilla.gnome.org/show_bug.cgi?id=765320
2016-04-22 08:39:02 -03:00
Havard Graff
bcbb8fc1da
flvdemux: don't emit pad-added until caps are ready
...
In other words, gst_pad_get_current_caps should never return NULL
in a pad-added callback from the demuxer.
Added tests for the two special cases with AAC and H.264 where this
would happen every time.
https://bugzilla.gnome.org/show_bug.cgi?id=763780
2016-03-24 14:33:33 +02:00
Vineeth TM
1071309870
good: use new gst_element_class_add_static_pad_template()
...
https://bugzilla.gnome.org/show_bug.cgi?id=763076
2016-03-24 14:32:20 +02:00
Dave Craig
211c8492b3
gst: Don't assume that get_current_caps() returns non-NULL caps after has_current_caps()
...
Remove calls to gst_pad_has_current_caps() which then go on to call
gst_pad_get_current_caps() as the caps can go to NULL in between. Instead just
use gst_pad_get_current_caps() and check for NULL.
https://bugzilla.gnome.org/show_bug.cgi?id=759539
2016-02-23 18:11:42 +02:00
Tim-Philipp Müller
df341f41dc
flvmux, rtpvp9depay: fix indentation
2016-02-19 15:04:15 +00:00
Havard Graff
7787f439fc
flvmux: plug leak(s) in error-scenario
...
https://bugzilla.gnome.org/show_bug.cgi?id=762210
2016-02-19 14:59:09 +00:00
Havard Graff
1e09e5bfe9
flvdemux: fix eos event leak
...
https://bugzilla.gnome.org/show_bug.cgi?id=762209
2016-02-19 14:54:04 +00:00
Tim-Philipp Müller
ff422c112f
flvdemux: relax creation time parsing
...
Parse wrong timestamps like we used to write as well,
e.g. 10:9:42, and the hour might be without a leading
zero in any case.
2015-10-21 11:53:09 +01:00
Tim-Philipp Müller
31b61f3add
flvdemux: fix indentation
2015-10-21 11:45:35 +01:00
Tim-Philipp Müller
a6eb0e5489
flvdemux: extract both creation date and time
...
Before we only extracted the date part.
2015-10-21 11:45:14 +01:00
Tim-Philipp Müller
5413fd5f20
flvmux: fix writing of creation time
...
Don't write time as e.g. 11:9:42
2015-10-21 11:16:01 +01:00
Havard Graff
240b0ac9f6
flvdemux: output speex vorbiscomment as a GstTagList
...
This is what speexdec expects.
https://bugzilla.gnome.org/show_bug.cgi?id=755478
2015-10-11 11:12:27 +01:00
Havard Graff
b6f133ba17
flvmux: GST_BUFFER_OFFSETs should be GST_BUFFER_OFFSET_NONE
...
Or else flvdemux don't understand it
https://bugzilla.gnome.org/show_bug.cgi?id=754435
2015-10-11 11:10:20 +01:00
Havard Graff
cf3a2294da
flvmux: use time segment and copy timestamps when streamable
...
Add a basic test using speex data to verify timestamping.
https://bugzilla.gnome.org/show_bug.cgi?id=754435
2015-10-11 11:09:08 +01:00
Havard Graff
a937c59acd
flvdemux: speex is also always 16KHz
...
This is just a cosmetic change for the logs, since the right caps
for Speex is being set elsewhere.
https://bugzilla.gnome.org/show_bug.cgi?id=755479
2015-10-11 11:07:00 +01:00
George Chriss
1afb988256
flvmux: Make the element count in arrays not include end
...
One-line removal of tags_written++
This should fix rtmp output to crtmpserver, and hopefully
noone is expecting that the element count includes the end
element, as different bits of documentation say different
things about whether it should or not.
https://bugzilla.gnome.org/show_bug.cgi?id=661624
2015-09-05 23:45:37 +10:00
Jan Schmidt
db2967125b
flvmux: Store incoming bitrate tags and send in the metadata
...
Apparently the Microsoft Azure RTMP server requires that the
videodatarate and audiodatarate metadata be provided, so
set those, even if it's to 0. Use the actual input bitrate
tags if available.
2015-09-05 23:45:37 +10:00
Jan Alexander Steffens (heftig)
439f98ed9a
flvdemux: Handle seek flags properly
...
Allows for non-keyframe seeks.
https://bugzilla.gnome.org/show_bug.cgi?id=738570
2015-07-06 10:30:42 -04:00
Nicolas Dufresne
bbea34bb6e
flvmux: Insert AVC end of sequence
...
This FLV specific mark is needed to prevent Flow Player (most likely
all Flash base player) from going into buffering state when near EOS.
https://bugzilla.gnome.org/show_bug.cgi?id=751320
2015-06-22 17:24:16 -04:00
Vineeth TM
636d47d2d6
flvdemux: trivial cleanup
...
trivial patch to add proper ( while checking for if(G_UNLIKELY())
https://bugzilla.gnome.org/show_bug.cgi?id=751306
2015-06-22 11:13:32 +01:00
Nicolas Dufresne
212f39ee1d
flvmux: Fix DTS validity check
...
This check was up-side-down, causing a bad timestamp at start
and then all timestamp being delayed.
https://bugzilla.gnome.org/show_bug.cgi?id=751298
2015-06-21 19:23:22 -04:00
Nicolas Dufresne
717265ebfb
flmux: Make sure best_time is initialized
2015-06-12 17:45:23 -04:00
Nicolas Dufresne
2274ca7d07
flvmux: Add negative runtime DTS support
...
This is done by using new feature of the CollectPad clip function
which sets the DTS as a gint64 in the collected data. It also simplify
the code a bit.
https://bugzilla.gnome.org/show_bug.cgi?id=740575
2015-06-12 17:18:24 -04: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
Jan Schmidt
c0d4986c8d
flv: When passing seek event upstream, hold a ref.
...
In case upstream can't handle the seek, make sure we
keep a ref on the event to attempt to handle it ourselves.
2015-03-31 00:20:48 +11:00
Mark Nauwelaerts
33cc1b4854
flvdemux: resurrect some flow return handling
...
https://bugzilla.gnome.org/show_bug.cgi?id=744572
2015-03-29 13:58:56 +02:00
Sebastian Dröge
ac0141b6a0
flvdemux: Only set caps once if they don't change
...
Previously we were setting new caps with the same content for every H264 or
AAC codec_data we found in the stream, spamming everything and causing
renegotiations.
2015-03-24 16:18:53 +01:00
Sebastian Dröge
c9b42951fe
flvdemux: Don't create AAC/H264 caps without codec_data
...
Instead delay creating the caps until we read the codec_data from the stream,
or fail if we get normal data before the codec_data.
AAC raw caps and H264 avc caps always need codec_data, setting caps on the pad
without them is going to make negotiation fail most of the time. Even if we
later set new caps with the codec_data, that's usually going to be too late.
https://bugzilla.gnome.org/show_bug.cgi?id=746682
2015-03-24 16:15:04 +01:00
Sebastian Dröge
5e88b53212
flvdemux: Fix indention
2015-03-24 15:39:40 +01:00
Jan Alexander Steffens (heftig)
be8e3196a3
flvdemux: Don't repeatedly warn after no_more_pads (v2)
...
This can get rather spammy for such a high log level.
Only warn once per stream.
https://bugzilla.gnome.org/show_bug.cgi?id=746274
2015-03-16 12:01:43 +00:00
Jan Alexander Steffens (heftig)
ac8a272381
flvdemux: Introduce constant for no-more-pads threshold
...
https://bugzilla.gnome.org/show_bug.cgi?id=746274
2015-03-16 12:01:43 +00:00
Jan Alexander Steffens (heftig)
f2a1f74cec
flvdemux: Fix warning to contain 'video'
...
https://bugzilla.gnome.org/show_bug.cgi?id=746274
2015-03-16 12:01:43 +00:00
Jan Schmidt
2e00311fe1
flvdemux: Use gst_video_guess_framerate()
...
Use gst_video_guess_framerate() from libgstvideo to guess
sensible common framerates where possible from the
floating point fps in the stream.
2015-02-12 23:38:47 +11:00
Jan Alexander Steffens (heftig)
bf73d834b2
flvdemux: Restrict resyncing to TS regressions
...
The behavior of resyncing video and audio indepen-
dently can cause A/V desyncs. Lets restrict resyncs
to jumps backward for now.
https://bugzilla.gnome.org/show_bug.cgi?id=736397
2014-11-19 11:58:19 -05:00
Sanjay NM
ba4b9b22d0
flv: Removed unreachable break statements
...
https://bugzilla.gnome.org/show_bug.cgi?id=736884
2014-09-18 09:42:43 -04:00
Nicolas Dufresne
356defdfea
flvmux: Fallback to PTS if DTS is missing
...
Fixing a regression introduce when fixing:
https://bugzilla.gnome.org/show_bug.cgi?id=731352
2014-08-28 15:05:56 -04:00
Nicolas Dufresne
a7a3cb343a
flvmux: Correctly offset timestamp
...
The previous method would break AV sync in the case audio or video
didn't start at the same point in running time.
https://bugzilla.gnome.org/show_bug.cgi?id=731352
2014-08-27 21:09:57 -04:00
Nicolas Dufresne
aa5bd99127
flvmux: Save dts from buffer
...
We no longer set dts in muxed buffer. This would lead to encoding tags
with timestamp 0 instead of the timestamp of previous buffer.
https://bugzilla.gnome.org/show_bug.cgi?id=731352
2014-08-27 21:08:21 -04:00