Wim Taymans
d7c02f389f
videoscale: simplify nearest scaling
...
Round the accumulator to avoid later checks
Remove some bound checks that would never trigger
Fix odd width scaling
2013-09-10 16:24:56 +02:00
Wim Taymans
c8cbcb6f02
videoscale: pick nearest line in scaling
...
Use rounding to pick the nearest line instead of rounding down.
2013-09-10 16:24:55 +02:00
Loïc Minier
8492b956cd
playback: fix docs of convert-sample action signal
...
convert-sample returns a GstSample, not a GstBuffer.
https://bugzilla.gnome.org/show_bug.cgi?id=707660
2013-09-07 14:58:46 +01:00
Wim Taymans
9b4e2b4b36
videoconvert: disable fastpath for odd width on some formats
2013-09-06 12:45:36 +02:00
Wim Taymans
ede804041c
videotestsrc: flush pending lines on odd height
2013-09-05 17:46:03 +02:00
Wim Taymans
e97f6401de
videoconvert: add additional width/height constraints
...
Some of the fastpath function can only work with aligned widht/height
so make sure we check this as well when choosing a fastpath.
Add fastpath for I420/YV12 -> BGRx
2013-09-05 17:22:50 +02:00
Wim Taymans
ce2b40670a
videoconvert: don't convert too much with odd width
2013-09-05 16:26:33 +02:00
Wim Taymans
700afbf6fd
videoconvert: handle lines in one go
...
Handle odd heights in 1 go when no vertical subsampling is used.
2013-09-05 11:05:36 +02:00
Wim Taymans
ce2ad4ae4a
videoconvert: fix height round down
2013-09-05 11:04:03 +02:00
Wim Taymans
22da49a55c
videoconvert: also allocate temp lines in fastpath
...
Some of the fastpath functions need tmplines, so make sure we allocate some in
the fastpath too.
This avoids SEGFAULTs with odd heights.
See https://bugzilla.gnome.org/show_bug.cgi?id=663248
2013-09-04 17:36:29 +02:00
Wim Taymans
579be969e5
videoconvert: add more fastpaths
...
Also reuse the I420 code for YV12 because it can handle the swapped UV fields
just fine.
2013-09-04 15:10:50 +02:00
Alex Ashley
7240e2e38c
typefind: Added "dash" and "avc3" fourCC codes to qt_type_find.
...
This commit adds detection of the "dash" and "avc3" compatible brands
in qt_type_find.
Amendment 2 of ISO/IEC 14496-15 (AVC file format) is defining a new
structure for fragmented MP4 called "avc3". The principal difference
between AVC1 and AVC3 is the location of the codec initialisation
data (e.g. SPS, PPS). In AVC1 this data is placed in the initial MOOV
box (moov.trak.mdia.minf.stbl.stsd.avc1) but in AVC3 this data goes in
the first sample of every fragment (i.e. the first sample in each mdat
box). The principal reason for avc3 is to make it easier for client
implementations, because it removes the requirement to insert the
SPS+PPS in to the decoder pipeline every time there is a representation
change.
https://bugzilla.gnome.org/show_bug.cgi?id=702004
2013-09-04 13:33:59 +02:00
Wim Taymans
c731f1cba0
videoconvert: only chroma subsample when needed
2013-09-03 17:37:14 +02:00
Wim Taymans
10b3b88e9c
videoconvert: fix handling of chroma resample
...
Increase the number of temporary lines that we need, it is possible that the
up and downsampling offsets are out of phase and that we need to keep some
extra lines around. Also copy the unhandled output lines for the next round
instead of overwriting them.
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=706823
2013-09-03 15:42:44 +02:00
Wim Taymans
cfb7b51c08
videoconvert: improve debug
2013-09-03 15:41:56 +02:00
Tim-Philipp Müller
0715e73725
audioconvert: improve fixate_format function readability even more
...
Do the flags comparisons only once and re-use the result.
2013-08-23 19:47:57 +01:00
Tim-Philipp Müller
f317061b9c
audioconvert: simplify fixate_format function some more
...
If we have no output format yet, any format will do. The
!out_info condition existed in every path, so just split
it our for clarity. KISS.
2013-08-23 19:43:14 +01:00
Tim-Philipp Müller
7a481c13ae
audioconvert: make fixate function more readable
...
Use some variables to replace accessor macros to make code
a little bit mor readable.
2013-08-23 19:11:17 +01:00
Tim-Philipp Müller
f448977dbd
audioconvert: remove unnecessary deep nesting in fixate function
...
Makes it easier to read and removes two levels of indentation.
2013-08-23 18:53:48 +01:00
Sebastian Dröge
cebae4514a
audioconvert: If we have to lose precision, try to lose as less precision as possible
...
https://bugzilla.gnome.org/show_bug.cgi?id=706624
2013-08-23 18:52:50 +02:00
Sebastian Dröge
ec9b17479d
typefind: Add typefinder for video/x-pva
...
https://bugzilla.gnome.org/show_bug.cgi?id=158719
2013-08-22 14:23:43 +02:00
Carlos Rafael Giani
e8e8fa22f3
typefind: improved and extended typefinder for module music formats
...
introduced new caps: audio/x-mod, modtype : { xm, okt, mod, ptm, ... }
https://bugzilla.gnome.org/show_bug.cgi?id=706061
2013-08-19 10:32:26 +02:00
Sebastian Dröge
802d734a27
Revert "typefind: improved and extended typefinder for module music formats"
...
This reverts commit 4c79f35c7a
.
It causes some MP4 files to be detected as mod files.
2013-08-16 12:12:05 +02:00
Carlos Rafael Giani
4c79f35c7a
typefind: improved and extended typefinder for module music formats
...
introduced new caps: audio/x-mod, modtype : { xm, okt, mod, ptm, ... }
https://bugzilla.gnome.org/show_bug.cgi?id=706061
2013-08-16 09:34:48 +02:00
Jie Yang
5640ba17c8
typefind: ADTS/AAC, find more aac sync to select correctly
...
https://bugzilla.gnome.org/show_bug.cgi?id=691462
2013-08-15 13:26:38 +02:00
Sebastian Dröge
61c1d15ce7
playsink: Don't set sink to NULL if a new one is set while the old one is still in use
2013-08-14 15:43:53 +02:00
Tim-Philipp Müller
a2ebeb8357
gio: fix printf format compiler warning
2013-08-14 11:43:50 +01:00
Sreerenj Balachandran
81782144d9
typefind: Add typefind function for WebP image format
...
https://bugzilla.gnome.org/show_bug.cgi?id=705826
2013-08-12 14:41:00 +01:00
Jonathan Matthew
cc1de5ae94
gio: make better use of the cached buffer
...
When playing mp3 files from a smb server, we get 64k read requests
that mostly overlap. Without using the cache to partially satisfy
these, we send these requests straight to the server, resulting in
a lot more network traffic than necessary.
https://bugzilla.gnome.org/show_bug.cgi?id=705415
2013-08-12 15:24:31 +02:00
Sebastian Dröge
b22f046cbc
streamsynchronizer: Set proxy flags on the pads and use default event handler for simplicity
...
https://bugzilla.gnome.org//show_bug.cgi?id=705555
2013-08-12 13:02:15 +02:00
Thibault Saunier
4afdc04089
adder: Raw buffers DTS should always be CLOCK_TIME_NONE
2013-08-06 15:11:05 +02:00
Thibault Saunier
a174ff25bc
adder: set DTS and PTS, sync on DTS
2013-08-06 12:25:44 +02:00
Arnaud Vrac
a8df760c96
playbin: check for tags on the right combiner instance
...
The get-tags actions are not working in all cases, because the track
number is used to resolve the stream combiner instead of the stream
type.
https://bugzilla.gnome.org/show_bug.cgi?id=705369
2013-08-03 17:17:10 +01:00
Edward Hervey
258aca37dd
videotestsrc: Demote ERROR statement back to DEBUG
...
It crawled in with david's latest commit
2013-08-02 11:00:06 +02:00
David Schleef
0c4beda8f0
videotestsrc: Add pinwheel and spokes patterns
2013-07-31 11:37:33 -07:00
Matej Knopp
496dd67859
videorate: ignore GAP event
...
videorate automatically fills gaps with the previous frames.
https://bugzilla.gnome.org/show_bug.cgi?id=705048
2013-07-29 08:24:06 +02:00
Matej Knopp
470531d56e
audiorate: ignore GAP event
...
audiorate automatically fills gaps with silence.
https://bugzilla.gnome.org/show_bug.cgi?id=705048
2013-07-29 08:23:43 +02:00
Sebastian Dröge
b12cd5432a
multisocketsink: Fix handling of partial writes and WOULD_BLOCK errors
2013-07-28 13:52:28 +02:00
Sebastian Dröge
692fd81ac7
multifdsink: Update current time after every write
...
Each write will update the last_activity_time and otherwise we would
compare against a too old current time and immediately timeout because
current time is smaller than last activity time (overflow).
2013-07-28 13:23:41 +02:00
Sebastian Dröge
930bfe3cbc
multihandlesink: Update current time after every write
...
Each write will update the last_activity_time and otherwise we would
compare against a too old current time and immediately timeout because
current time is smaller than last activity time (overflow).
2013-07-28 13:22:17 +02:00
Edward Hervey
46ce07333b
videotestsrc: Initialize GstVideoInfo in ::start()
...
Otherwise we end up with bogus values and races
2013-07-26 16:14:05 +02:00
Edward Hervey
96efe720a1
videotestsrc: Don't error on not-negotiated
...
Base classes will handle re-negotiation if needed, but emitting an
error message will make applications stop.
2013-07-26 16:14:05 +02:00
Edward Hervey
9dd0e6cccc
ext/gst: Ensure default query/event handlers are used
...
And in some cases, just remove our implementation that does nothing
2013-07-26 16:08:35 +02:00
Tim-Philipp Müller
ef5c6d351f
typefinding: don't detect mp3 based on just a few bits
...
Remove dodgy code that detects mp3 with as little as
a valid frame sync at the beginning. This was only used
in some unit tests in -good where there were only a few
bytes after the id3 tag. We now require at least two
frame headers.
Fixes mis-dection of text files with UTF-16 LE BOM as mp3.
https://bugzilla.gnome.org/show_bug.cgi?id=681368
2013-07-25 13:20:11 +01:00
Sebastian Dröge
0bd0c925e3
playsink: Remove two unused variables
2013-07-23 13:42:40 +02:00
Sebastian Dröge
e4b1a58675
subtitleoverlay: Remove some more unneeded segment tracking
2013-07-23 13:41:55 +02:00
Sebastian Dröge
436ea03362
playsinkconvertbin: Remove obsolete segment tracking
...
This is now all handled automatically with sticky events.
2013-07-23 13:36:09 +02:00
Sebastian Dröge
f92da706fd
playbin: Ensure that everything in a GstSourceGroup gets the same group-id
...
Including streams from external subtitle files. If not everything implements
the group-ids playbin invents its own.
2013-07-23 12:42:50 +02:00
Sebastian Dröge
94fc577dd5
playsink: Fix handling of colorbalance element if the sink does not implement it
2013-07-23 12:35:46 +02:00
Sebastian Dröge
0947c7ab30
playsink: Improve segment handling in the custom flushing for subtitle stream switches
...
This code needs a lot more work to be improved for 1.0.
2013-07-23 11:13:19 +02:00