Commit graph

153 commits

Author SHA1 Message Date
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
ff2bce7b26 flv: Tag timestamp are DTS not PTS
The tags in FLV are DTS. In audio cases, and for many video format this makes
no difference, but for AVC with B-Frames, PTS need to be computed from
composition timestamp CTS, with PTS = DTS + CTS.

https://bugzilla.gnome.org/show_bug.cgi?id=731352
2014-08-26 16:45:59 -04:00
Tim-Philipp Müller
6ee2665b7c flvdemux: fix indentation 2014-08-13 11:59:39 +01:00
Tim-Philipp Müller
9afeb9652b flvdemux: un-break duration querying
Commit 2b9493b5 broke this in two ways: a) we should only
pass duration queries in TIME format upstream (or at least
not those in DEFAULT or BYTE format), and b) we mustn't
overwrite the default value of 'res' from TRUE to FALSE
and not set it again later. This led to bogus durations
being reported for FLV playback from file, because TIME
queries would fail (as 'res' had been set to FALSE) and
parsers then do a BYTE query as fallback and try to
guesstimate something in return, which of course goes
horribly wrong since the BYTE size returned is for the
muxed file.
2014-08-13 11:59:39 +01:00
Tim-Philipp Müller
e9f2d63011 flvdemux: fix speex caps
Decoder complains about "notification: Invalid mode encountered.
The stream is corrupted" though, even if it works, so there's
probably something wrong with the generated codec headers.
2014-06-26 13:50:19 +01:00
Edward Hervey
f7fc8d74c9 flvdemux: Attempt upstream seek first
If we have an upstream element that can handle the seek (such as
rtmpsrc), try to do that first before attempting it ourself.
2014-06-09 10:04:38 +02:00
Edward Hervey
2b9493b5f0 flvdemux: Query duration upstream first
Upstream elements (like rtmpsrc) might be able to provide the duration
more accurately than flvdemux. Especially with index-less vod files
2014-06-05 09:38:29 +02:00
Jan Alexander Steffens (heftig)
303883752e flvdemux: set RESYNC buffer flag when bridging large PTS gaps
So downstream gets notified when this happens.

https://bugzilla.gnome.org/show_bug.cgi?id=725903
2014-06-04 10:28:47 -04:00
Thiago Santos
3b887887be flvdemux: Use GstFlowCombiner
Use the flow combiner to have the standard combination results and avoid
repeating the same code

https://bugzilla.gnome.org/show_bug.cgi?id=709224
2014-05-26 19:51:07 -03:00
Edward Hervey
6c4882996f flvdemux: Don't use WARNING for not-linked flow return
Pollutes debug logs for no reason. It's only an error if all pads
return not-linked
2014-05-12 13:46:01 +02:00
Edward Hervey
c09b14c931 flvdemux: Skip unknown tags in push-mode
We add a new mode (SKIP) in push-mode to skip tags that we don't known about

Partially fixes https://bugzilla.gnome.org/show_bug.cgi?id=670712
2014-05-12 13:45:06 +02:00
Tim-Philipp Müller
a5532b4510 flvdemux: don't leak stream_id string
https://bugzilla.gnome.org/show_bug.cgi?id=705142
2013-07-30 14:28:19 +01: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
d135373beb flvdemux: Implement SEGMENT query 2013-07-29 10:53:47 +02:00
Sebastian Dröge
1122698491 flvdemux: Add support for group-id in the stream-start event 2013-07-22 15:30:12 +02:00
Alban Browaeys
97015d3c93 flvdemux: Add flvversion 1 to the flash-video caps
This allows using avdec_flv which requires this field to be
present in the caps. FLV only supports flash-video version 1
right now.

https://bugzilla.gnome.org/show_bug.cgi?id=703076
2013-07-01 11:43:46 +02:00
Sebastian Dröge
ab275b62a8 flvdemux: Don't forward CAPS events from upstream
Just use the default pad event handler.

https://bugzilla.gnome.org/show_bug.cgi?id=701976
2013-06-11 12:27:19 +02: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
c203ce2dbe flvdemux: minor clean-up
Use GstByteWriter, because we can, and g_value_take_boxed.
2012-09-26 00:44:59 +01:00
Dmitriy Samonenko
7d4b6f655e flvdemux: fix speex audio decoding by creating fake stream header
https://bugzilla.gnome.org/show_bug.cgi?id=683622
2012-09-26 00:16:06 +01:00
Mark Nauwelaerts
f12ef67f56 ext, gst: only activate in pull mode if upstream is seekable 2012-09-11 17:44:51 +02:00
Mark Nauwelaerts
8d93246b93 gst: adjust comment style 2012-09-10 14:31:02 +02:00
Tim-Philipp Müller
4bb52bbadf docs: gst-launch -> gst-launch-1.0 and ffmpegcolorspace -> videoconvert 2012-08-27 21:20:30 +01:00
Sebastian Dröge
7b5925b5a4 gst: Add stream-id to stream-start events 2012-08-06 13:43:57 +02:00
Tim-Philipp Müller
c074bfd0b9 gst_tag_list_free -> gst_tag_list_unref 2012-08-04 16:10:16 +01:00
Sebastian Dröge
0827f54b93 tag: Update for taglist/tag event API changes 2012-07-28 00:19:51 +02:00
Mark Nauwelaerts
33091e2bf5 flvdemux: clear old segment event when requesting new one
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=680283
2012-07-23 12:50:21 +02:00
Edward Hervey
f063e40af7 demux: Push STREAM_START event when needed 2012-07-13 13:51:48 +02:00
Sebastian Dröge
aeafc3a093 gst: Implement segment-done event 2012-07-05 13:13:09 +02:00
Wim Taymans
30d3dfee36 update for task api change 2012-06-20 10:33:42 +02:00
Wim Taymans
b5df4f0e62 update for tag event change 2012-06-06 13:02:12 +02:00
Edward Hervey
5294edded2 flvdemux: Post error message if EOS before pads were created
Happens with some files with only headers
2012-05-29 16:59:06 +02:00
Edward Hervey
eb0cdfe20f flvdemux: Use unchecked variant of GstByteReader
We know there's at least 7 bytes (checked above)
2012-04-12 15:48:00 +02:00
Mark Nauwelaerts
ea397f60e4 Merge remote-tracking branch 'origin/0.10'
Conflicts:
	gst/flv/gstflvdemux.c
	gst/matroska/matroska-demux.c
2012-04-10 11:57:53 +02:00
Tim-Philipp Müller
e09ae5736d Use new gst_element_class_set_static_metadata() 2012-04-10 00:51:41 +01:00
Nicolas Dufresne
628816784f flvdemux: Fix threading issue in index handling 2012-04-06 09:15:13 +02:00
Sebastian Dröge
acca0e77f1 flvdemux: Don't use static variables to hold index associations
This not really threadsafe in any way.
2012-04-06 09:14:28 +02:00
Sebastian Dröge
aa2cd462da gst: Update for GST_PLUGIN_DEFINE() API changes 2012-04-05 17:36:38 +02:00
Wim Taymans
513d480fbf don't pass random pointers to pull_range 2012-03-16 21:47:21 +01:00
Wim Taymans
225e98d623 Merge branch 'master' into 0.11
Conflicts:
	ext/flac/gstflacenc.c
	ext/jack/gstjackaudioclient.c
	ext/jack/gstjackaudiosink.c
	ext/jack/gstjackaudiosrc.c
	ext/pulse/plugin.c
	ext/shout2/gstshout2.c
	gst/matroska/matroska-mux.c
	gst/rtp/gstrtph264pay.c
2012-02-10 16:23:14 +01:00
Wim Taymans
8eca20ead0 flv: use default pad query
We need to chain up unknown queries to the default query handler instead of
blindly forwarding them. In this case it caused the caps query to be forwarded
to the upstream typefind and return the wrong type for the audio/video pad.
2012-02-10 10:07:34 +01:00
Wim Taymans
9365f12d6e GST_FLOW_WRONG_STATE -> GST_FLOW_FLUSHING 2012-02-08 16:43:30 +01:00
Wim Taymans
6674b029e4 flv: fix caps 2012-02-06 15:52:36 +01:00
Vincent Penquerc'h
57a0eacc7b flvdemux: specify we only output raw AAC in template caps
https://bugzilla.gnome.org/show_bug.cgi?id=665394
2012-02-02 12:36:30 +00:00
Edward Hervey
03b9966bc0 flv: Fix unitialized variables
(or rather circumvent issues with naive compilers ...)
2012-01-25 16:58:12 +01:00
Wim Taymans
583d39dd8d update for new memory API 2012-01-25 12:30:28 +01:00
Wim Taymans
1584806634 port to new gthread API 2012-01-19 11:33:53 +01:00
Mark Nauwelaerts
e8c254f34d flvdemux: remove obsolete FIXME comments 2012-01-12 13:18:43 +01:00