Sebastian Dröge
516597d5fa
mpegtspacketizer: Remove dead code and simplify if statement
...
CID 1204274
2014-04-22 12:56:54 +02:00
Vincent Penquerc'h
60d7e45cab
mxf: fix MP2 case
...
Testing mpegversion when mpegaudioversion was likely meant.
Similar tests in sys/androidmedia/gstamcaudiodec.c also test
mpegaudioversion with the same conditional code.
Coverity 206071
2014-04-21 13:23:46 +01:00
Vincent Penquerc'h
7659f3bec4
vc1parse: guard against dividing by zero
...
If framerate is unknown, we write the maximum framerate
allowed for this profile/level:
https://tools.ietf.org/html/draft-ietf-avt-rtp-vc1-06#section-6.1
http://wiki.multimedia.cx/index.php?title=VC-1#Setup_Data_.2F_Sequence_Layer
Coverity 1139694
2014-04-21 13:23:46 +01:00
Vincent Penquerc'h
d111287995
mxfmux: guard against dividing by 0
...
Use a placeholder value in that case, it's better than crashing.
Coverity 1139697
2014-04-21 13:23:46 +01:00
Vincent Penquerc'h
52981d5a4a
mxfdemux: guard against NULL non source components
...
This component is dereferenced, and later code checking for
NULL in particular cases implies it can be NULL. This likely
does not fix the coverity warning as it was seeing another
path setting component to NULL explicitely, but this was
spotted by looking at:
Coverity 1139736
Which is actually OK from what I can see since the actual
dereference of the explicit NULL pointer will not happen
if the condition that led to the NULL pointer assignment
is met, since the assignment and defeference have mutually
exclusive tests.
2014-04-21 09:24:00 +01:00
Vincent Penquerc'h
9815faea9b
rawparse: catch errors in caps manipulation
...
Coverity 1139622
2014-04-21 09:24:00 +01:00
Gwenole Beauchesne
abadffd4d8
ivfparse: detect and propagate resolution changes.
...
Detect resolution changes on key frames, and propagate the resulting
caps to the src pad. Only the uncompressed data chunk is decoded, so
avoid using the new VP8 bitstream parsing library for now.
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
2014-04-18 18:31:15 +02:00
Gwenole Beauchesne
3b308cba3c
ivfparse: avoid possible division-by-zero when calculating PTS.
...
Avoid possible division-by-zero while deriving the presentation timestamp
of the buffer. The base class will take care of any interpolation needs.
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
2014-04-18 18:31:15 +02:00
Gwenole Beauchesne
3d0ce67fcd
ivfparse: port to baseparse.
...
https://bugzilla.gnome.org/show_bug.cgi?id=710855
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
2014-04-18 18:31:15 +02:00
Edward Hervey
f062b78051
mpegtspacketizer: Improve ts_to_offset code
...
* Search in current pending values first. For CBR streams we can very
easily end up having just one initial observations and then nothing
else (since the bitrate doesn't change).
* Use one group whether we are in that group *OR* if there is only
one group.
* If the group to use isn't closed (points are being accumulated in the
PCROffsetCurrent), use the latest data available for calculation
* If in the unlikelyness that all of this *still* didn't produce more
than one data point, just return the initial offset
2014-04-18 16:23:43 +02:00
Edward Hervey
f96604099d
tsdemux: Fix scaling macros
...
While the calculation done in these macros will work with 64bit
integers, they will fail if working with 32bit integers.
Force the scaling up to solve that.
This amazingly didn't introduce major issues up to now, but resulted
in bogus values in debug logs.
2014-04-18 16:20:31 +02:00
Edward Hervey
da74a23c1d
mpegtsbase: Don't hard-flush the packetizer on discont buffers
...
Doing a hard flush on the packetizer will drop all observations, which
will eventually break push-based seeking (with BYTES segment) since
we won't know where to seek to anymore (new data would always be
considered as the beginning of the stream).
2014-04-18 16:18:01 +02:00
Edward Hervey
3d6265a9f5
mxfdemux: Fix copy/paste error
...
We want to check whether the rate is different. We check changes in
numerator *and* denominator.
CID #1139631
CID #1139642
2014-04-16 16:25:29 +02:00
Edward Hervey
be859d02a6
mxf: Handle fraction parsing failure
...
And properly cleanup/reset the segment before returning on errors
CID #206012
2014-04-16 16:19:47 +02:00
Edward Hervey
fa72b4c870
mxf: Remove useless check
...
a guint will always smaller or equal to the maximum value it can
contain
CID #206049
2014-04-16 16:12:02 +02:00
Vincent Penquerc'h
172c398127
mxf: avoid dereferencing NULL mapping data pointer
...
Also unref buffers on error, as it seems to be done in one, but
not all, error paths.
The NULL pointer part is Coverity 206112
https://bugzilla.gnome.org/show_bug.cgi?id=727889
2014-04-16 16:08:38 +02:00
Andoni Morales Alastruey
78acb90a80
jp2kdecimator: fix maybe-uninitialized compiler error
2014-04-11 12:29:17 +02:00
Edward Hervey
998e19896b
mpegtsmux: Remove unneeded unref
...
packet_buffer has already been cleared in all code paths leading
to this point.
CID #1199696
2014-04-11 11:34:26 +02:00
Santiago Carot-Nemesio
7d97a4b20b
liveadder: fix memory leak querying sink caps
...
https://bugzilla.gnome.org/show_bug.cgi?id=727894
2014-04-10 01:22:33 +01:00
Vincent Penquerc'h
931150cb91
Revert "tsmux: catch alloc failure"
...
Turns out glib aborts on allocation failure, so this is pointless.
We'll just ignore Coverity warnings on such constructs.
This reverts commit d347809a82
.
2014-04-09 16:01:43 +01:00
Vincent Penquerc'h
747542762e
asfmux: remove unnecessary test
...
We've been dereferencing that object like there's no tomorrow
in the code just before that.
Coverity 206369
2014-04-09 15:41:11 +01:00
Vincent Penquerc'h
c6a9c1d878
asfmux: remove stray gst_buffer_unmap on error path
...
A previous commit removed the map, and the unmap on the main
code path, but not the one on the error path.
Coverity 1139930
2014-04-09 15:39:33 +01:00
Vincent Penquerc'h
336767d779
autoconvert: remove dead code
...
Those events were previously taken from a cached events list,
which was removed during the port to 0.11, but this bit stayed.
Coverity 1139684
2014-04-09 15:28:05 +01:00
Vincent Penquerc'h
c3a2e0ad97
camerabin2: remove unneeded check
...
A message may not be NULL in the message handling function
(and nothing there sets it to NULL).
Coverity 1139848
2014-04-09 15:24:13 +01:00
Vincent Penquerc'h
75c09f8d03
compare: special case empty regions with 1 SSIM to avoid dividing by 0
...
Coverity 1139689, 1139688
2014-04-09 15:21:20 +01:00
Vincent Penquerc'h
93b1504945
inter: remove dead code
...
Coverity 1139666
2014-04-09 15:09:25 +01:00
Vincent Penquerc'h
c5cb2fbe96
liveadder: remove dead code
...
From the 0.11 port
Coverity 1139676
2014-04-09 15:03:45 +01:00
Vincent Penquerc'h
f255422ec2
mpegtsdemux: catch prev-not-found when inserting in the group list
...
While this probably should never happen if callers are well behaved,
this avoids a crash if it does. With a warning about it. Unsure if
it'd be better to not add at all, but it should not happen...
Coverity 1139713
2014-04-09 14:13:46 +01:00
Vincent Penquerc'h
d47727c032
mpegtsmux: guard against _dispose being called mutiple times
...
_dispose calls _reset, so we need to make sure _reset handles
already NULLed fields.
Coverity 1139843
2014-04-09 13:53:13 +01:00
Vincent Penquerc'h
d6dc066527
tsmux: prevent possible double free on error path
...
Spotted while looking at a Coverity issue in the area.
2014-04-09 13:44:59 +01:00
Vincent Penquerc'h
d347809a82
tsmux: catch alloc failure
...
While it will probably not trigger, it should silence a Coverity
warning about the fail code path testing for NULLness before
freeing, where the buffer was already dereferenced. It seems
safest to keep that test, in case future goto fail statements
happen to have a NULL buffer there.
Coverity 1139851
2014-04-09 13:44:45 +01:00
Vincent Penquerc'h
744c58d71b
speed: make duration query able to convert bytes to time
...
It was only querying in time, but then trying to use dead bytes
to time conversion code.
Coverity 1139677
2014-04-09 11:15:10 +01:00
Mohammed Sameer
0450e8f53f
camerabin: add any feature to viewfinderbin static pad template
...
https://bugzilla.gnome.org/show_bug.cgi?id=727857
2014-04-09 08:56:01 +02:00
Mohammed Sameer
b261374462
camerabin: report an error if we fail to link vfsrc and viewfinder queue
...
https://bugzilla.gnome.org/show_bug.cgi?id=727855
2014-04-09 08:54:07 +02:00
Tim-Philipp Müller
39dc1f0ebb
mxfdemux: guard against NULL material track
...
Just to be on the safe side.
2014-04-08 16:53:41 +01:00
Jan Schmidt
982104d764
dvbsuboverlay: Avoid infinite loops on short data
2014-04-09 01:10:21 +10:00
Tim-Philipp Müller
6e764e5b11
mxfdemux: implement simple KEY_UNIT seeking
...
If a KEY_UNIT seek was requested, adjust segment
start to position of the key frame.
2014-04-08 14:37:34 +01:00
Tim-Philipp Müller
4898a51afe
mxfdemux: fix seeking, send data starting from a key unit
...
Fixes multiple seeking issues. When doing ACCURATE or normal
non-KEYUNIT seeks, mxfdemux would just send data from the
edit unit that covered the seek position, whether that's
a keyframe or not. Decoders would only output things from
the next keyframe then, which means there's a gap between
the start of the segment and the first decoded data in
some cases. In combination with gst-editing-services this
might result in a frozen picture for the duration of that
gap at the beginning (if videorate fixes up the first
buffer's start timestamp to cover the entire gap), or
a black frame (if no videorate is used and videomixer
fills the gap). Also fixes A/V sync issue when requesting
a KEYUNIT seek.
2014-04-08 13:26:49 +01:00
Vincent Penquerc'h
ff11934bbf
festival: fix fd leak
...
Coverity 1139831
2014-04-08 12:20:40 +01:00
Edward Hervey
2b5d043654
speed: Clarify passthrough in switch statement
...
We do want the caps event to be forwarded downstream
CID #1139754
2014-04-08 11:26:38 +02:00
Edward Hervey
0ae5c15bf8
mpegtsmux: Initialize helper mpegts library
...
We now use that library, we need to initialize it so that debug
categories (amongst other things) get properly initialized
2014-04-08 07:47:15 +02:00
Vincent Penquerc'h
8e580ea6f1
mxf: fix stop date parsing using the wrong input
...
Coverity 1139645
2014-04-07 13:54:50 +01:00
Vincent Penquerc'h
f06e18595a
jp2kdecimator: fix copy/paste errors in expressions
...
Correct formulae found in ITU T.800, B.12.1.[345]
Coverity 1139649, 1139650, 1139651
2014-04-07 13:54:47 +01:00
Sebastian Dröge
22b6ec3b2f
mpegtsmux: Require parsed/framed input for most of the supported formats
...
https://bugzilla.gnome.org/show_bug.cgi?id=719519
2014-04-02 23:49:37 +02:00
Sebastian Dröge
7b2cfa6303
mpegtspacketizer: Fix typo in debug output
2014-03-29 10:33:45 +01:00
Sebastian Dröge
10ffa089a0
h264parse: Copy over DISCONT flag from input buffers
2014-03-29 10:33:45 +01:00
Sebastian Dröge
986c8782e4
tsdemux: Push next buffer after a discont with the DISCONT flag
2014-03-29 10:33:45 +01:00
Sebastian Dröge
264d7dbd89
tsdemux: Drain remaining data on disconts
2014-03-29 10:33:45 +01:00
Sebastian Dröge
d986d24d41
mpegtsbase: Flush if we receive a discont buffer
2014-03-29 10:33:45 +01:00
Sebastian Dröge
11bc356ce7
tsdemux: Don't dereference NULL if flushed before a program was selected
2014-03-29 10:33:45 +01:00
Sebastian Dröge
ba114b6b22
tsdemux: Ensure that all pending data is pushed even if the stream was not activated before
...
gst_ts_demux_push_pending_data() will check if it now can activate the
stream and add the pad, we don't have to check that ourselves.
Fixes playback of very short MPEG TS files.
2014-03-29 10:33:45 +01:00
Sebastian Dröge
0cecb44813
mpegtsbase: Fix pull mode scanning for PCR on small files
...
If a file does not contain 5 PCRs until it is EOS, or does not
contain more than 655360 bytes the PCR scanning algorithm just
aborted.
2014-03-29 10:33:45 +01:00
Jan Schmidt
d232881105
dvbsuboverlay: Clarify confusing debug message
...
The message is describing the number of bytes remaining for
parsing, not 'missing'.
2014-03-25 21:40:11 +11:00
Jan Schmidt
bfe2994101
tsdemux: Fix mpegts_packetizer_set_current_pcr_offset()
...
When adjusting the PCR offset of groups, adjust the correct group
entry from the list - not the current group repeatedly.
2014-03-25 21:40:11 +11:00
Jan Schmidt
a99164811c
dvbsuboverlay: Remove warning for 2-bit and 8-bit subpictures
...
Both 2-bit and 8-bit mode now seem fine, so remove the warning
messages about them
2014-03-25 21:40:11 +11:00
Jan Schmidt
0a19be4464
dvbsuboverlay: Fix 8-bit subpicture rendering.
...
Fix 2 small flaws handling 8-bit subpictures that makes
my one test file work.
2014-03-25 21:40:10 +11:00
Edward Hervey
7b15072714
dvbsuboverlay: Don't forward text gap events downstream
...
That gap is only for the subtitle stream and not for the video stream.
2014-03-18 15:18:38 +01:00
Matthieu Bouron
19724f6ece
dvbsuboverlay: handle video/x-raw(ANY) if downstream supports the GstVideoOverlayCompositionMeta API
...
https://bugzilla.gnome.org/show_bug.cgi?id=726463
2014-03-16 18:00:53 +01:00
Matthew Waters
4bdf5f336a
move gl elements to ext subdirectory
2014-03-16 11:23:16 +01:00
Matthew Waters
a8ce124628
[905/906] Add GL context sharing support for non-gstgl elements
2014-03-15 18:37:07 +01:00
Matthew Waters
ab963a755d
[898/906] glimagesink: add an other-context property
...
Allows applications to provide us with an OpenGL context with which
to share with.
2014-03-15 18:37:07 +01:00
Matthew Waters
687ac78290
[886/906] fixup a memory leak of the context in the GLTextureUploadMeta path
...
gst_structure_get returns a reference to the object and we asked
for another with gst_object_replace.
https://bugzilla.gnome.org/show_bug.cgi?id=724816
2014-03-15 18:37:06 +01:00
Matthew Waters
49307fefd6
[882/906] port glcolorscale to GLES2
2014-03-15 18:37:06 +01:00
Matthew Waters
af3a68db7d
[880/906] glimagesink: remove unused stored_buffer field
...
It has the potential to cause deadlocks.
2014-03-15 18:37:06 +01:00
Matthew Waters
75825b3626
[879/906] build: don't add X_CFLAGS to CFLAGS
...
It should already be included if needed inside GL_CFLAGS
2014-03-15 18:37:06 +01:00
Matthew Waters
0c1a77ca6c
[874/906] filter: implement draw_texture for GLES2
...
(taken from gleffects)
2014-03-15 18:37:06 +01:00
Matthew Waters
4386cc1c6b
[873/906] upload: use GstVideoInfo for choosing the format
2014-03-15 18:37:05 +01:00
Matthew Waters
f798d9c9b7
[855/906] upload: add support for GstVideoGLTextureUploadMeta
2014-03-15 18:37:04 +01:00
Matthew Waters
42701927f0
[854/906] use the allocation query to propogate GstGLContext
...
uses the GstVideoGLTextureUploadMeta api type for the query
2014-03-15 18:37:04 +01:00
Matthew Waters
636d307715
[853/906] display: remove _{set,get}_context
...
A GstGLDisplay doesn't need a GstGLContext and its use
was cause a reference cycle
2014-03-15 18:37:04 +01:00
Matthew Waters
79260ff8f9
[852/906] use GstContext for GstGLDisplay propogation
...
implements the hooks required in GstElement::set_context and the context query
2014-03-15 18:37:04 +01:00
Matthieu Bouron
f230ec14ba
[851/906] deinterlace: fix texture coordinates computation
...
Fixes a regression introduced by fffdcbdd3dde437e10cf6e1b5e40c6958d41e6c1
https://bugzilla.gnome.org/show_bug.cgi?id=720826
2014-03-15 18:37:04 +01:00
Matthew Waters
86c18b294a
[849/906] testsrc: use _context_get_gl_api
2014-03-15 18:37:04 +01:00
Matthew Waters
63ccd94d1a
[844/906] mixer: give access to the pads at render time
...
allows us to move the video frame mapping somewhere else
2014-03-15 18:37:04 +01:00
Wang Xin-yu (王昕宇)
665d58b322
[840/906] glvideomixer: Use correct coordinates after the switch from GL_TEXTURE_RECTANGLE to GL_TEXTURE_2D
...
https://bugzilla.gnome.org/show_bug.cgi?id=720177
2014-03-15 18:37:04 +01:00
Matthew Waters
b90d824626
[838/906] gl: Use GL_TEXTURE_2D instead of GL_TEXTURE_RECTANGLE
...
We create our textures (in Desktop GL) with GL_TEXTURE_RECTANGLE,
vaapi attempts to bind our texture to GL_TEXTURE_2D which throws a
GL_INVALID_OPERATION error and as thus, no video.
Also, by moving exclusively to GL_TEXTURE_2D and the npot extension
we also remove a difference between the Desktop GL and GLES2 code.
https://bugzilla.gnome.org/show_bug.cgi?id=712287
2014-03-15 18:37:03 +01:00
Julien Isorce
c775bf584b
[831/906] glimagesink: avoid to overload the drawer if already drawing
...
Especially if the application calls gst_video_overlay_expose a lot
2014-03-15 18:37:03 +01:00
Matthew Waters
7f3ad8f445
[830/906] glvideomixer: Add a new simple glvideomixer element
...
that simply uses glBlendFunc to blend each imput frame
https://bugzilla.gnome.org/show_bug.cgi?id=710714
2014-03-15 18:37:03 +01:00
Matthew Waters
2313cea524
[819/906] make gen_texture/del_texture threadsafe
...
Use stack allocated instead of static variables
Conflicts:
gst-libs/gst/gl/gstglutils.c
2014-03-15 18:37:02 +01:00
Matthew Waters
225d372847
[817/906] make the state change test pass
2014-03-15 18:37:02 +01:00
Matthew Waters
d10ccfb795
[815/906] fix some refcount errors
2014-03-15 18:37:02 +01:00
Matthew Waters
65b6872413
[813/906] unref the pool on shutdown
2014-03-15 18:37:02 +01:00
Matthew Waters
9b22b0e0ba
[812/906] move the GL vtable from GstGLDisplay to GstGLContext
...
Conflicts:
tests/check/libs/gstglcontext.c
2014-03-15 18:37:02 +01:00
Julien Isorce
6497947186
[804/906] rpi: call bcm_host_init in plugin_init
2014-03-15 18:37:01 +01:00
Julien Isorce
2d876dfb70
[800/906] glimagesink: avoid to draw texture while releasing stored buffer
...
Spoted by generic/cube example with ClientDrawCallback set to
returning TRUE (it means drawing as fast as possible)
2014-03-15 18:37:01 +01:00
Julien Isorce
940151bcd6
[799/906] glimagesink: fix asynchrone drawing
...
Simplify gst_glimage_sink_redisplay which is there
only to ask the window for a redraw.
Put a lock to make sure we are not realeasing
the stored buffer while still drawing the corresponding
texture
2014-03-15 18:37:01 +01:00
Matthew Waters
cf5e910d9b
[793/906] add a GstGLContext object that will be the basis of OpenGL contexts
...
At the moment it just sits in between GstGLDisplay and GstGLWindow
performing some of the stuff that GstGLWindow used to do.
2014-03-15 18:37:01 +01:00
Matthew Waters
b5d595f402
[792/906] build: use our own in tree headers before system ones
...
allows us to develop against the tree rather than what may be installed
2014-03-15 18:37:01 +01:00
Julien Isorce
44d82d6aad
[790/906] glimagesink: retrieve window only when clientDrawCallback return true
2014-03-15 18:37:01 +01:00
Tonu Jaansoo
e45dfb2f93
[787/906] gl: The GLSL rectangle resampler does not always work with int tex coords
...
Use floats instead.
2014-03-15 18:37:00 +01:00
Julien Isorce
2952b923aa
[784/906] gloverlay: add G_BEGIN/END declaration
2014-03-15 18:37:00 +01:00
Sebastian Dröge
337b342ff7
[783/906] glimagesink: Fix format string warning
2014-03-15 18:37:00 +01:00
Matthew Waters
f590a1ce23
[780/906] up/download: check return values
...
So we fail properly
2014-03-15 18:37:00 +01:00
Mathieu Duponchelle
b26c4dbe4e
[773/906] glfilters: Mark writable-only properties as readable as well
...
https://bugzilla.gnome.org/show_bug.cgi?id=704429
2014-03-15 18:37:00 +01:00
Mathieu Duponchelle
8adb0ea713
[772/906] glfilters: Mark them as Video filters in their classification
...
It makes it possible for applications like pitivi to
use them.
https://bugzilla.gnome.org/show_bug.cgi?id=704429
2014-03-15 18:36:59 +01:00
Sebastian Dröge
20cb4fb038
[771/906] gl: Some less long/ulong/gulong usage
2014-03-15 18:36:59 +01:00
Sebastian Dröge
abdcb4a51b
[768/906] gltestsrc: Fix usage of FBO API
2014-03-15 18:36:59 +01:00
Sebastian Dröge
d64c1aab28
[767/906] glimagesink: Remove GValue usage for fraction handling
2014-03-15 18:36:59 +01:00
Sebastian Dröge
f6f0c4ddad
[762/906] glimagesink: Fix some memory leaks and properly set up the buffer pool
2014-03-15 18:36:59 +01:00
Sebastian Dröge
2b6e54d416
[752/906] glwindow: Add destroy notifies for the data of the callbacks
...
And actually call the close callback when the window is closed.
2014-03-15 18:36:58 +01:00