Tim-Philipp Müller
95b4de4ed7
typefinding: improve jpeg typefinder
...
Make jpeg typefinder check more than just the first two bytes
plus Exif or JFIF marker. This allows us to report MAXIMUM
probability in cases where there's no Exif or JFIF marker,
making typefinding stop early. Also extract width and height,
because we can.
2010-06-05 18:06:42 +01:00
Tim-Philipp Müller
14d14a9143
typefinding: fix AC-3 typefinding so that it actually checks for a second frame
...
Fix typo that made the AC-3 typefinder not actually check for a
second frame, but rather compare the sync point found to itself,
which resulted in the AC-3 typefinder reporting an overly optimistic
MAXIMUM or VERY_LIKELY probability when it found a possible frame
sync.
2010-06-05 17:24:31 +01:00
Wim Taymans
13f6829497
playbin2: improve screenshot code
...
Use appsrc and appsink in the screenshot code to make things nicer.
2010-06-05 12:27:12 +02:00
Wim Taymans
31ef191f01
playsink: add convert-frame action signal
...
Add a convert-frame action signal.
Fixes #620279
2010-06-05 11:09:41 +02:00
Wim Taymans
3cf75c34d3
playbin2: move marshaller to screenshot
...
Move the marshaller for the convert_frame signal to the screenshot file in
preparation for moving it to playsink.
See #620279
2010-06-05 11:09:41 +02:00
Wim Taymans
afcf3a3517
playbin2: move convert_frame to playsink
...
Move the convert_frame function to playsink and make it part of the API. This is
in preparation to add the convert_frame signal to playsink.
See #620279
2010-06-05 11:09:40 +02:00
Wim Taymans
823089cf68
playsink: add property to get the last frame
...
Add a property to get the last video frame.
See #620279
2010-06-05 11:09:40 +02:00
Edward Hervey
cbff745b49
decodebin2: Handle raw streams we don't want.
...
If a file contains raw streams (not requiring a decoder) that we do
not want (expose-all-streams == FALSE), we would previously consider
those of unknown-type (missing a decoder) ... whereas in fact it was just
because they don't need decoders.
This only applies if expose-all-streams is FALSE.
2010-06-04 19:30:14 +02:00
Edward Hervey
514a34b255
audiorate: Fix buffer offset_end when within tolerance.
...
This fixes issues if we then have downstream elements that operate
on offset/offset_end.
And add the expected timestamp in the debug logs
2010-05-26 08:51:09 +02:00
Sebastian Dröge
e3285fb53d
videotestsrc: Fixate interlaced, chroma-site and color-matrix fields if necessary
2010-05-22 10:05:40 +02:00
Sebastian Dröge
258e519b49
videorate: Use new string fixation function from core
2010-05-22 10:02:46 +02:00
Sebastian Dröge
b1a9af61c7
videorate: Fixate color-matrix and chroma-site fields if necessary
2010-05-22 09:53:22 +02:00
Sebastian Dröge
220a61f821
videorate: Fixate the interlaced field if necessary
...
Fixes bug #619310 .
2010-05-22 09:53:18 +02:00
Sebastian Dröge
760ae91ec3
typefindfunctions: Add IVF typefinder
2010-05-22 08:55:51 +02:00
Tim-Philipp Müller
33b5172822
videorate: pass object to logging functions, use GST_DEBUG_FUNCPTR
2010-05-21 18:16:07 +01:00
Philip Jägenstedt
3762cfd3d7
typefind: Detect WebM as video/webm
...
Refactor matroska_type_find into ebml_check_header and a new
matroska_type_find and webm_type_find.
2010-05-19 19:24:35 +02:00
Alessandro Decina
a9c6c978b6
playbin2: fix a typo introduced by 9d753824
.
...
video/x-raw-float => audio/x-raw-float. Fixes #619090 .
2010-05-19 16:17:19 +02:00
Sebastian Dröge
9d7538247f
playbin2: Don't put "raw" subtitle types in the raw caps for decodebin2
...
We handle them from the autoplug-continue signal, where the caps supported
by the subtitle sink or overlay are known already.
2010-05-18 08:45:52 +02:00
Sebastian Dröge
0c85f2c890
playsink: Don't fail if subtitles are used but only audio is available and no visualizations
...
Instead simply disable displaying of the subtitles for now, as was
intended by that part of code...
Fixes bug #610866 .
2010-05-14 17:17:33 +02:00
Sebastian Dröge
e5304c3040
playsink: Fix deadlock caused from an additional lock instead of unlock
...
Also improve debug output for the playsink lock.
2010-05-14 17:13:17 +02:00
Sebastian Dröge
a6a125e4ba
videoscale: Use passthrough mode if width and height are not changed
...
It doesn't matter if the PAR changes or not, processing of every pixel
is only necessary when the width or height changes.
2010-05-13 12:17:31 +02:00
Sebastian Dröge
b3808a57d4
videoscale: Try harder to keep the DAR if possible
...
Fixes bug #371108 .
2010-05-13 11:16:02 +02:00
Sebastian Dröge
9f677090d5
videoscale: Log PAR and DAR of input and output caps when setting caps
2010-05-13 11:16:01 +02:00
Sebastian Dröge
eb2166c97d
videoscale: Set input width/height if the output caps don't have any width or height
2010-05-13 11:16:01 +02:00
Andoni Morales
75a2e14e06
videoscale: Try to keep DAR when scaling
...
Fixes bug #371108 .
2010-05-13 11:16:01 +02:00
Sebastian Dröge
1990364816
videotestsrc: Fixate PAR to 1/1 if possible
2010-05-12 10:32:48 +02:00
Edward Hervey
37e975b8cc
ffmpegcolorspace : whooops
2010-05-07 19:49:57 +02:00
Edward Hervey
516c824687
ffmpegcolorspace: more minor cleanups
2010-05-07 19:21:13 +02:00
Edward Hervey
0d451ad9cb
ffmpegcolorspace: speedup caps transformation
...
* don't re-create our possible caps every single time, just use the
template caps.
* don't intersect the caps against the template, basetransform has already
done that for us.
62% speedup of _transform_caps() (instruction calls, measured with callgrind)
2010-05-07 17:38:46 +02:00
Edward Hervey
20d643ccda
uridecodebin: add the 'expose-all-streams' property from decodebin2
...
API: expose-all-streams
https://bugzilla.gnome.org/show_bug.cgi?id=617868
2010-05-07 17:38:45 +02:00
Edward Hervey
ac4188bd54
decodebin2: Add a property to not expose/decode all streams
...
API : expose-all-streams
If disabled:
* only the streams that CAN be decoded and match the final caps will have a
decoder plugged in and be exposed.
* the streams that COULD HAVE BEEN decoded but do not match the finals caps
will not have a decoder plugged in and will not be exposed.
If no decoder is available to decode a certain stream, then the missing element
message will still be emitted regardless of the value of the property.
https://bugzilla.gnome.org/show_bug.cgi?id=617868
2010-05-07 17:38:38 +02:00
Edward Hervey
e84b203de2
decodebin2: rename are_raw_caps to are_final_caps, correct comment
...
https://bugzilla.gnome.org/show_bug.cgi?id=617868
2010-05-07 17:18:37 +02:00
Stefan Kost
4965782c48
audioconvert: disambigue comment due to popular demand
...
Write "target depth" instead of "our depth" or previous ambigous "out depth".
2010-05-07 00:10:22 +03:00
Mark Nauwelaerts
85a8a09ce7
playsink: disconnect signals in some more cleanup cases
2010-05-06 15:41:52 +02:00
Stefan Kost
4967d4e3fd
videoscale: use can_intersect to avoid a caps copy
2010-05-06 09:17:33 +03:00
Stefan Kost
948d06e4b3
videorate: trucate own caps, instead of copying and using the first only
...
We got the caps from an intersect, it is our own, hence we can truncate it.
Besides gst-indent has chooses to line-up all caps in one line again :/.
2010-05-06 09:14:25 +03:00
Stefan Kost
34f8ab5751
decodebin: use can_intersect to avoid a caps copy
2010-05-06 09:12:32 +03:00
Stefan Kost
51739d562c
audioconvert: fix typo in comment
2010-05-06 08:22:36 +03:00
Wim Taymans
f99cb8b9bd
uridecodebin: add all qtdemux types to downloadable types
...
Add all the media types that qtdemux can handle to the list of downloadable
types.
2010-05-04 17:54:01 +02:00
Mark Nauwelaerts
db4ccd8610
playbin2: forward duration query duration during group switch if no cached duration
...
... such as during first group setup.
Fixes #616396 .
2010-04-30 13:36:59 +02:00
Stefan Kost
274f80c7a1
adder: only accept seek-types none and set
...
Previously we were also acting on cur and end, but treating them like none.
2010-04-30 09:24:14 +03:00
Stefan Kost
ab223520ed
adder: rework timestamping
...
Adder was using always incrementing timestamps. Seeking was done by setting the
position in the newsegment event. This was failing when doing segmented seeks
with rate<0.0, as offset (and thus timestamp) would go below 0.
Now we take both cur and end from the seek event. We construct newsegment events
depending including cur and end from the seek event. We set position to the
start of the segment. Timestamp is set to start or end of segment depending on
rate. Offset is recalculated.
2010-04-30 09:24:13 +03:00
Sebastian Dröge
eec0f7c876
playsink: Add support for deinterlacing
...
This is disabled by default and can be enabled with the
deinterlace flag.
Fixes bug #547603 .
2010-04-29 18:21:21 +02:00
Sebastian Dröge
a6be04a73a
playbin2: Add flag for enabling/disabling automatic deinterlacing
2010-04-29 18:21:21 +02:00
Sebastian Dröge
1a9c07e5ba
playbin: Use g_once_init_{enter,leave} instead of GOnce for enum/flag registration
2010-04-29 18:21:21 +02:00
Sebastian Dröge
bd64568bf4
ffmpegcolorspace: Use GST_BOILERPLATE and use GstVideoFilter as base class
...
This gives automatic QoS handling.
2010-04-29 18:21:21 +02:00
Sebastian Dröge
6c9ead7030
playsink: Correctly reconfigure the video chain when switching from a subtitle to a non-subtitle file
...
Fixes bug #616422 .
2010-04-29 18:21:21 +02:00
Sebastian Dröge
cc8a5bdcd3
playbin2: If a text sink is provided, let subtitle parsing be done by decodebin2 if required
...
This way subtitle sinks only get buffers in the format that they
understand, i.e. raw parsed text in most cases.
Fixes bug #614942 .
2010-04-29 18:21:21 +02:00
Sebastian Dröge
5cfd799076
playbin2: Set subtitle encoding on the decodebins again
2010-04-29 18:21:21 +02:00
Sebastian Dröge
838d76dc4b
videoscale: Some random cleanup
2010-04-29 18:21:21 +02:00