Commit graph

4024 commits

Author SHA1 Message Date
Mark Nauwelaerts
e8a6ad2546 asfdemux: use upstream segment and timestamps for some interpolation
This should particularly help in case of upstream live src, e.g. rtspsrc,
and especially so if it has to perform fallback to TCP.
2009-05-07 12:23:51 +02:00
Edward Hervey
71da4cc7ae rtpasfdepay: Add support for fragmented packet (L == 0).
This happens with rtp-over-udp.
2009-05-07 12:39:00 +02:00
Sebastian Dröge
50dd597ff1 lamemp3enc: Fixup the bitrate only for CBR
Additionally clarify some property descriptions.
2009-05-07 10:10:58 +02:00
Alessandro Decina
bfbddbed8b lame: fix format string in debug statement 2009-05-06 21:47:17 +02:00
Jan Schmidt
b18371c1ca mp3parse: Don't reject valid Xing tables of contents
Some Xing headers apparently start the TOC at byte 1 instead of 0. Don't
reject them because of it, just subtract the initial offset when reading
the table.
2009-05-06 15:37:44 +01:00
Jan Schmidt
85a88a0a64 mp3parse: Allow more bits to change in headers during resynch
Be more lenient about what we accept as changing bits in a header - basically,
only require that the mp3 sync marker is present, for the mpeg version,
layer and samplerate.

Fixes: #581464
2009-05-06 15:27:01 +01:00
Edward Hervey
88db06cb65 mad: Add duration of incoming/outgoing buffers in debug statements 2009-05-06 13:17:35 +02:00
Edward Hervey
c1953235fa mpegaudioparse: Remove useless checks for valid buffer duration.
The buffer duration is set to a valid value at the very top of
emit_frame(), we therefore don't need to check it later on.
2009-05-06 13:15:30 +02:00
Edward Hervey
21d2fffb13 mpegaudioparse: Fix stop condition for outputting buffers.
Some mp3 streams have an offset in timestamps, requiring us to push the
frame *AFTER* segment.stop in order for the decoder to be able to push
all data up to the segment.stop position.
2009-05-06 13:13:35 +02:00
Mark Nauwelaerts
8b2812ca2e asfdemux: 0-base timestamps consistently (whether or not streaming)
This also makes timestamps (more) consistent before and after a possible
seek, and moreover makes for reasonable position reporting in live stream
(whose payload timestamps should not be taken for granted).
2009-05-05 22:41:41 +02:00
Mark Nauwelaerts
0b28139203 asfdemux: report initial latency due to internal preroll queue 2009-05-05 22:41:39 +02:00
Mark Nauwelaerts
c2d092765a asfdemux: enhance debug statement and refactor some initialization 2009-05-05 22:41:37 +02:00
Mark Nauwelaerts
b8297952cf asfdemux: handle FIXME; activate pads after internal preroll also when streaming 2009-05-05 22:41:35 +02:00
Mark Nauwelaerts
44ebe58377 asfdemux: handle FIXME; normalize preroll 2009-05-05 22:41:33 +02:00
Mark Nauwelaerts
b6d4fb9e4f asfdemux: fixes for streaming mode
* Improve newsegment handling, e.g. upstream might live in TIME.
* Only send newsegment if we have needed info.
* Avoid reading past end of data section.
2009-05-05 22:41:30 +02:00
Mark Nauwelaerts
2bd14c7153 asfdemux: fixes/enhancements for streaming mode
* Do not rock the boat by reacting to FLUSH_START.
* Try to handle TIME seeking by seeking upstream in BYTES.
* Handle SEEKING query.
2009-05-05 22:41:26 +02:00
Tim-Philipp Müller
95ddda57e2 lame: fix compilation with LAME versions < 3.98
lame_set_VBR_quality(), which takes a floating point value for the
quality, has been added only in v3.98. Use lame_set_VBR_q(), which
takes quality as an integer, for older LAME versions.

Fixes #581341.
2009-05-05 16:38:19 +01:00
Tim-Philipp Müller
9d351ccb63 win32: update config.h to git
Until someone ports the new win32 config.h logic from the
other modules to -ugly.
2009-05-04 20:39:14 +01:00
Sebastian Dröge
afc6bfec14 Update docs 2009-05-04 12:53:06 +02:00
Sebastian Dröge
54d7c0d563 lamemp3enc: Add a note to the encoding-engine-quality property
that says, that this does not affect the bitrate at all.
2009-05-04 12:51:29 +02:00
Sebastian Dröge
3511ecbf5d lame: Implement preset interface 2009-05-04 12:48:43 +02:00
Sebastian Dröge
d7709085b9 twolame: Implement preset interface 2009-05-04 12:47:03 +02:00
Sebastian Dröge
1dcdac7629 lamemp3enc: Remove fast-vbr property and rename vbr-quality to quality 2009-05-04 11:18:15 +02:00
Sebastian Dröge
699f1707c3 lame/lamemp3enc: Fix memory leak on FLUSH_STOP 2009-05-04 11:18:15 +02:00
Sebastian Dröge
bd6eb05e95 lame: Deprecate the lame element 2009-05-04 11:18:15 +02:00
Sebastian Dröge
fb8e3c8c07 Update docs 2009-05-04 11:18:14 +02:00
Sebastian Dröge
78e2da1dfd lame: Update example pipelines with the new properties 2009-05-04 11:18:14 +02:00
Sebastian Dröge
389a6ea0ec lame: Add lamemp3enc element with much simplified interface
This deprecates the lame element and fixes bug #494528.
2009-05-04 11:18:14 +02:00
Edward Hervey
804f65e6db asfpacket: Fix pull-mode timestamping handling.
The problem that happens is the following:
* A packet with multiple payloads comes in
* Those payloads get handled one by one
* The first payload contains the first audio payload with timestamp A
* The second payload contains the first video (key)frame with timestamp V (where V < A)

With the previous code, the following would happen:
* the first payload gets processed, then passed to queue_for_stream
* queue_for_stream detects it's the first valid timestamp received and stores
  first_ts = A
* the second payload gets processed, then pass to queue_for_stream
* queue_for_stream detects the timestamp is lower than first_ts... and
  discards it... resulting in losing the first keyframe of the video stream

We've been having this issue for *ages*... it's just that nobody noticed it
that much with playbin. But with playbin2's aggresive multiqueue handling, this
will result in multiqueue not being able to preroll (because the video decoder will
be dropping a ton of buffers before (maybe) receiving the next keyframe).

Tested with over 200 asf files, and they all play the first frame correctly now,
even the most braindead ones.
2009-04-23 09:04:41 +02:00
Michael Smith
e7450c2df7 mp3parse: don't build seek table if we can't seek.
Fixes #573720 - unbounded memory usage increase when listening to mp3
stream for a long time.
2009-04-21 14:16:52 -07:00
Jan Schmidt
4927c124ff Automatic update of common submodule
From b3941ea to 6ab11d1
2009-04-21 22:13:32 +01:00
Edward Hervey
8dcbcd6645 mpegaudioparse: Remove dead assignment and duplicate code 2009-04-21 20:37:20 +02:00
Edward Hervey
29b34e049c rmdemux: Actually return the return value for the seek handling. 2009-04-21 20:37:19 +02:00
Edward Hervey
df349f9359 mpegstream: Remove dead assignments.
The duplicate assignment of update_time was weird... but it seems normal
that it's indeed the second statement which is the valid one.
2009-04-21 20:37:19 +02:00
Edward Hervey
d8ef47b5ea armnb: Remove unused variable, adapt debug message accordingly. 2009-04-21 20:17:19 +02:00
Edward Hervey
fe68ecd653 dvdsub/mpegstream: _class_init: Remove unused class variables 2009-04-21 20:15:56 +02:00
Edward Hervey
bb6697ba4c asfdemux: Initialize flow for a corner case.
This might be caused by entering the if() line 1214 and then not having
any activated_streams.. resulting in reaching line 1267 without having
any valid flow value.
2009-04-19 14:03:58 +02:00
Edward Hervey
8d2a30200b twolame: Remove unneeded variable, value assigned was never read. 2009-04-19 14:03:38 +02:00
Edward Hervey
3a523c2c79 mpeg2dec: Remove dead assignment. Value overwritten later on. 2009-04-19 14:03:19 +02:00
Edward Hervey
2ff7c811f8 mad: Remove dead assignment and variables given values which are never read. 2009-04-19 14:02:44 +02:00
Edward Hervey
3cc5090e96 lame: Remove unneeded variable, it's assigned a value never read. 2009-04-19 14:02:03 +02:00
Edward Hervey
c1cd90eb57 rmdemux: Remove dead assignment, value is being overwritten before being read. 2009-04-19 13:59:24 +02:00
Edward Hervey
2a892f5856 rmdemux: Remove unused accurate flag.
I couldn't see any reason why this was there in the first place.
2009-04-19 13:58:31 +02:00
Edward Hervey
2190ad3962 realmedia: Remove dead assignments. The results are never read. 2009-04-19 13:57:59 +02:00
Edward Hervey
0d32a3703d realmedia: Remove useless variables, only being used once (or not). 2009-04-19 13:57:10 +02:00
Edward Hervey
ac0e11e55c remove empty method implementations. 2009-04-19 13:55:24 +02:00
Josep Torra
9cd1fddf15 rtspwms: fix condition to detect extension commands for WMS
Reply with OK to the extension commands for WMS.
2009-04-18 08:12:08 +02:00
Josep Torra
8258daf87c realmedia: add special Real header to DESCRIBE message only for Real
servers

Add headers that are specific to real only if a real server had been
detected by the OPTIONS message.
2009-04-15 11:09:56 +02:00
David Hoyt
3743c83ace synaesthesia: fix compilation on windows
Fix compilation under MSVC due to references to headers
that are not available with the MS SDKs.
Fixes #578524
2009-04-14 19:16:46 +02:00
Wim Taymans
ef31993f34 rtspwms: reply to extension commands
Reply with OK to the extension commands for WMS.
2009-04-14 10:54:37 +02:00