Sebastian Dröge
8478aa7aed
video-frame: Take TFF flag from the video info if it was set in there
...
The caps and thus the video info have preference. If the field order is
set in there then it applies to all frames.
This works around issues where the tff field order is only set in the
caps but not additionally in the buffer flags.
2019-08-16 09:00:28 +00:00
Thibault Saunier
b63fc21d22
video: Safe guard info->finfo when mapping a frame
...
Not sure how that slept through but that case is possible and leads
to segfaults in any code path of the function right now.
https://bugzilla.gnome.org/show_bug.cgi?id=795436
2018-04-21 20:47:31 -03:00
Nicolas Dufresne
1852e7b88a
doc: Add missing map flag to gst_video_frame_map()
...
Add missing map flag, and also add unmap call.
2016-09-19 11:27:10 -04:00
Tim-Philipp Müller
9e311960cd
video: fix example code in gst_video_frame_map() docs
...
GST_VIDEO_FRAME_PLANE_PSTRIDE() does not exist.
https://bugzilla.gnome.org/show_bug.cgi?id=764414
2016-04-02 15:19:44 +01:00
Tim-Philipp Müller
c64dae3e1d
video: flesh out docs for gst_video_frame_map()
2016-02-25 17:46:31 +00:00
Tim-Philipp Müller
a62c7bd54c
Fix use of undeclared core debug category symbols
...
libgstreamer currently exports some debug category
symbols GST_CAT_*, but those are not declared in any
public headers.
Some plugins and libgstvideo just use GST_DEBUG_CATEGORY_EXTERN()
to declare and use those, but that's just not right at
all, and it won't work on Windows with MSVC. Instead look
up the categories via the API.
2016-02-20 11:31:43 +00:00
Sebastian Dröge
1fb85733f5
video-frame: Fix gst_video_frame_copy() for formats with pstride==0
...
v210, UYVP and IYU1 are complex formats for which pixel stride does not really
have a meaning. If we copy width*pstride bytes per line, it's not going to do
the right thing. As a fallback, copy stride bytes per line. This might copy
uninitialized bytes at the end of each line, but at least copies the frame.
https://bugzilla.gnome.org/show_bug.cgi?id=755392
2015-09-24 17:39:43 +02:00
Tim-Philipp Müller
5d456c7adc
video-frame: fix height/width assertions
...
As commit 274984e8
states:
When doing CROP META it is expected that the width and/or height
in the GstVideoMeta is bigger or equal to the caps negotiated size.
https://bugzilla.gnome.org/show_bug.cgi?id=741030
2015-03-18 20:40:42 +00:00
Nicolas Dufresne
274984e83b
video-frame: Relax width/height assertion
...
When doing CROP META it is exepcted that the width and/or height in the
GstVideoMeta is bigger or equal to the caps negotiated size.
2015-03-13 10:30:43 +00:00
Sebastian Dröge
afcc0b3c50
video-frame: Mapping a frame with inconsistent values between GstVideoMeta and GstVideoInfo is a bug
...
It will cause the frame to be initialized with inconsistent values that then
later can cause crashes or any other kind of interesting and hard to debug
bugs.
2014-11-28 10:27:28 +01:00
Sebastian Dröge
269f642c45
video-frame: Don't ref buffers twice when mapping
2014-09-16 01:07:18 +03:00
Sebastian Dröge
40a293d44d
video-frame: Add GST_VIDEO_FRAME_MAP_FLAG_NO_REF
...
This makes sure that the buffer is not reffed another time when
storing it in the GstVideoFrame, keeping it writable if it was
writable.
https://bugzilla.gnome.org/show_bug.cgi?id=736118
2014-09-12 14:39:16 +03:00
Sebastian Dröge
9398207101
videoframe: Initialise GstVideoFrame to zeroes if mapping fails
...
This should allow for more meaningful errors. Dereferencing NULL
is more useful information than dereferencing a random address
happened to be on the stack.
2014-04-16 19:53:46 +02:00
Nicolas Dufresne
f52fd7a68b
video: Don't use extra plane and componenent for tile format
...
Instead of using extra plane, we encode the number of tiles in x and y in the stride of
each planes (i.e. y_tiles << 16 | x_tiles) and introduce tile_mode, tile_width and
tile_height into GstVideoFormatInfo structure.
https://bugzilla.gnome.org/show_bug.cgi?id=707361
2014-01-13 10:47:03 -05:00
Nicolas Dufresne
c8597330a9
video-frame: scale vertical tiles based on subsampling
...
https://bugzilla.gnome.org/show_bug.cgi?id=707361
2014-01-13 10:46:45 -05:00
Nicolas Dufresne
53605e35f4
video-frame: fix tiled pixel stride
...
Pixel stride is per component, not per plane. We get the tile mode from
the pixelstride of the TILE component.
https://bugzilla.gnome.org/show_bug.cgi?id=707361
2014-01-13 10:46:37 -05:00
Wim Taymans
f3e989179b
video-format: fix off-by-one for tiled coordinates
...
https://bugzilla.gnome.org/show_bug.cgi?id=707361
2014-01-13 10:46:17 -05:00
Wim Taymans
980811c120
video-frame: fix copy of tiled formats
...
Add code to copy tiled planes.
https://bugzilla.gnome.org/show_bug.cgi?id=707361
2014-01-13 10:45:50 -05:00
Wim Taymans
f8e3a25415
video-frame: fix plane copy for index plane
...
Move the code to handle the index plane in the _copy_plane.
2013-12-25 10:54:55 +01:00
Wim Taymans
30a0cccbf6
video-frame: copy offsets from metadata
...
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=708606
2013-09-23 11:55:07 +02:00
Wim Taymans
052a1d0f1e
video: set interlaced flag correctly in frame
...
We only look at the interlaced buffer flag in mixed mode, in other modes we
always need to set the interlaced flag.
2013-03-25 09:59:45 +01:00
Sebastian Dröge
3f82e919dd
libs: Use foo/foo.h as single-include header consistently everywhere
...
https://bugzilla.gnome.org/show_bug.cgi?id=688785
2012-12-12 17:13:10 +00:00
Tim-Philipp Müller
5f59b4f7ee
Fix FSF address
...
https://bugzilla.gnome.org/show_bug.cgi?id=687520
2012-11-03 23:05:09 +00:00
Wim Taymans
211b8b6004
video-frame: only copy the visible region
...
Make sure to only copy the visible region instead of assuming that the complete
stride is visible (which is not the case when padding is used).
2012-08-20 16:17:27 +02:00
Arnaud Vrac
8ab19ba9ca
video-frame: fix invalid plane id on video frame mapping error
2012-07-26 01:52:25 +02:00
Wim Taymans
f9de2f499b
video-frame: use interlacing buffer flags
...
Also use the buffer flags to enhance the GstVideoInfo flags in the case where
there was metadata on the buffers.
2012-07-23 13:32:59 +02:00
Wim Taymans
4b56b731d2
video-frame: add interlace flag
...
Add an interlace flag so that we can see if a frame is interlaced or progressive
in the mixed interlace-mode.
2012-07-20 10:20:38 +02:00
Edward Hervey
2817bdadc9
libs: Remove "Since" markers and minor doc fixups
2012-07-13 12:11:06 +02:00
Wim Taymans
1ed29bdb90
video-frame: handle map errors
...
Error out when something failed
2012-06-26 11:12:00 +02:00
Wim Taymans
ecdfb96f17
video: move methods into separate files
...
Move different video functionalities into different files
2012-06-05 12:47:22 +02:00