Wim Taymans
ddce68a5c2
video: More video helper library improvements
...
Make a new GstVideoFormatinfo structure that contains the specific information
related to a format such as the number of planes, components, subsampling,
pixel stride etc. The result is that we are now able to introduce the concept of
components again in the API.
Use tables to specify the formats and its properties.
Use macros to get information about the video format description.
Move code to set strides, offsets and size into one function.
Remove methods that are not handled with the structures.
Add methods to retrieve pointers and strides to the components in the video.
2011-07-04 16:01:14 +02:00
Wim Taymans
1d9deae5be
video: add video copy function
...
Add a function to copy a video frame, taking care of source and destination
strides.
2011-06-22 15:25:35 +02:00
Wim Taymans
6d9e76f2de
video: remove intermediate Plane structure
...
Remove the GstVideoPlane structure and move the fields directly into the
GstVideoInfo structure. This makes things a little easier to read and also makes
it more likely that we can pass the stride array to external libraries.
2011-06-20 11:25:58 +02:00
Wim Taymans
20d8d3050c
video: use metadata to set up strides
...
Use the GstMetaVideo when we can to map the buffers and set up the strides.
2011-06-17 16:47:25 +02:00
Wim Taymans
42abb6672e
video: Add GstVideoFrame helper structure
...
The videoframe structure can be used to easily parse the contents of video
buffers.
2011-06-17 15:41:31 +02:00
Wim Taymans
6a254de438
video: port to new API
...
Add support for palette again.
Rewrite setup code for videoconvert using the new video methods.
2011-06-17 15:39:50 +02:00
Wim Taymans
1aa7ad7dae
video: rework part 2
...
Update docs.
Add method to get number of components.
Implement method to calculate defaults from format and dimensions.
Improve caps parsing.
Implement GstVideoInfo to caps conversion.
2011-06-17 15:37:38 +02:00
Wim Taymans
a7ae8d41aa
video: rework part 1
...
Add GstVideoFlags similar to the flags on the metadata. The idea is to replace
the metadata flags with the GstVideoFlags.
Move VideoPlane to video.h, it contains the information for a plane.
Add GstVideoInfo structure that holds the current configuration of a video
format.
Add methods to parse caps into GstVideoInfo.
2011-06-17 15:33:12 +02:00
Wim Taymans
3b9477e173
video: add methods to parse X11 visuals
...
Add method to convert X11 visual description to GstVideoFormat
2011-06-16 12:52:13 +02:00
Wim Taymans
42fa1010cb
video: update video caps
2011-06-16 12:52:13 +02:00
Wim Taymans
a87c021237
Merge branch 'master' into 0.11
...
Conflicts:
gst-libs/gst/video/convertframe.c
2011-05-24 09:47:15 +02:00
Stefan Kost
ce1369a7e5
docs: add missing parameter docs
2011-05-24 00:12:26 +03:00
Stefan Kost
b91b12b639
whitespace: trim trailing whitespace
2011-05-23 13:53:06 +03:00
Stefan Kost
6e12954c68
video.c: use a break and a final warning instead of early returns
...
Use breaks for case branches instead of return 0. We don't expect these to
happen anyway. Thus have a warning before the final return to make it easier to
see when things go out of sync.
2011-05-23 13:50:59 +03:00
Stefan Kost
40273cf2d3
video.c: use g_assert_not_reached() for logical error here.
...
This will help to detect them closer to the source if they ever happen.
2011-05-23 13:50:09 +03:00
Wim Taymans
489eed9bb8
Merge branch 'master' into 0.11
2011-05-19 11:31:53 +02:00
Robert Swain
ad2010d379
gstvideo: Add gst_video_get_size_from_caps function
...
gst_video_get_size_from_caps () allows easy calculation of the raw video
buffer size from some fixed video caps.
API: gst_video_get_size_from_caps()
2011-05-18 14:13:46 +02:00
Wim Taymans
ec57868488
-base: don't use buffer caps
...
Port to newest 0.11 core API, remove GST_PAD_CAPS and GST_BUFFER_CAPS.
2011-05-09 13:05:12 +02:00
David Schleef
ef3712b427
Revert "video: Remove the extensive checkings from switch"
...
This reverts commit 500d14c35c
.
2011-04-14 12:42:20 -07:00
Sreerenj Balachandran
500d14c35c
video: Remove the extensive checkings from switch
...
The default case handles them already
2011-04-14 10:02:42 +02:00
Sebastian Dröge
a29e55f9c4
video: Fix creation of grayscale caps
...
The endianness was not set correctly before.
Fixes bug #646923 .
2011-04-07 10:06:53 +02:00
David Schleef
5f61df82da
video: Fix YUV9 and YVU9 again
2011-04-04 16:01:20 -07:00
David Schleef
629cac4cad
video: Fix height calculation for YUV9/YVU9
2011-04-01 13:55:56 -07:00
Thiago Santos
78e8b33c38
video: Getting component offsets without dimensions is fine if it is not YUV
...
This fixes a regression that an assertion would happen if
gst_video_get_component_offset would be called with width or
height as 0.
Calling it with 0 is fine if the format isn't yuv and this
was already being used in some other places of video.c
2011-03-23 12:21:55 -03:00
David Schleef
a08227505f
video: Add gst_video_format_new_template_caps()
2011-03-22 12:11:49 -07:00
David Schleef
1265a42124
video: Add support for r210
2011-02-25 19:37:07 -08:00
David Schleef
0ed72c2959
video: Add ARGB64 and AYUV64
...
16-bit per channel formats.
2011-02-20 12:04:02 -08:00
David Schleef
7a24e3ea4e
video: Add gst_video_format_get_component_depth()
2011-02-20 12:04:02 -08:00
Edward Hervey
6ce0d6e78b
video: Fix uninitialized variables
...
reported by macosx gcc
2011-01-05 12:02:02 +01:00
Tim-Philipp Müller
8604fac13f
video: add missing break statement for the GST_VIDEO_FORMAT_RGB8_PALETTED case
2010-12-03 00:02:26 +00:00
Sebastian Dröge
8b60aa8e01
video: Add YUV9, YVU9 and IYU1 video formats
...
API: GST_VIDEO_FORMAT_YUV9: planar 4:1:0 YUV
API: GST_VIDEO_FORMAT_YVU9: planar 4:1:0 YUV (chroma planes swapped)
API: GST_VIDEO_FORMAT_IYU1: packed 4:1:1 YUV (Cr-Y0-Y1-Cb-Y2-Y3)
2010-12-02 19:04:29 +01:00
Sebastian Dröge
ea7446e5b5
video: Add 8-bit paletted RGB
...
API: Add GST_VIDEO_FORMAT_RGB8_PALETTED
API: Add GST_VIDEO_CAPS_RGB8_PALETTED
API: Add gst_video_parse_caps_palette()
2010-12-02 19:04:29 +01:00
Sebastian Dröge
a13720fc55
video: Return correct component width/height for A420
2010-12-02 19:04:27 +01:00
Sebastian Dröge
b3192de682
video: Fix stupid copy&paste error in last commit
2010-10-15 11:26:50 +02:00
Sebastian Dröge
8741707430
video: API: Add A420 video format
...
This is planar 4:2:0 YUV plus non-subsampled alpha plane.
2010-10-15 11:12:34 +02:00
David Schleef
1a75dede56
video: Add UYVP, 10-bit 4:2:2
2010-09-14 12:33:21 -07:00
Sebastian Dröge
c30ad57e86
video: Fix component width for NV12/NV21
...
Both have width/2 as component width for the chroma planes.
2010-08-24 10:03:04 +02:00
Edward Hervey
3879c57b01
video: Fix unitialized variable.
...
yay macosx compilers :(
2010-06-14 14:13:16 +02:00
Martin Bisson
b8f330dea6
video.{c,h}: Fix an endianness bug fix.
...
This commit makes sure the endianness is ok for RGB/BGR 15/16 formats.
2010-06-12 13:51:27 +02:00
Martin Bisson
f5a690f860
video.{c,h}: Add support for RGB and BGR with 15 and 16 bits.
2010-06-12 13:51:27 +02:00
Sebastian Dröge
80cc85d218
video: Return TRUE in gst_video_format_is_gray() for Y800 and Y16
2010-06-08 11:01:44 +02:00
Martin Bisson
b0d15133d7
video: Add support for Y800 and Y16
...
Fixes bug #620441 .
2010-06-07 08:17:55 +02:00
Sebastian Dröge
30b67cda5d
video: Use simple fraction multiplication functions instead of going through GValues
2010-05-13 11:16:02 +02:00
Sebastian Dröge
25c1a331be
video: API: Add GST_VIDEO_FORMAT_v308 for packed 4:4:4 YUV
2010-04-29 18:21:21 +02:00
Sebastian Dröge
fab97aec53
video: Fix parsing of 8-bit grayscale caps
2010-04-07 17:25:23 +02:00
Sebastian Dröge
1e3a66f539
video: Add support for 8-bit and 16-bit grayscale formats
2010-04-07 17:06:36 +02:00
David Schleef
5379fbcd1a
video: add gst_video_parse_caps_chroma_site()
2010-03-15 01:31:20 -07:00
Tim-Philipp Müller
62ef200ca9
docs: fix Returns: for gst_video_parse_caps_color_matrix()
2010-03-10 01:07:09 +00:00
David Schleef
76afac25b4
video: Add color-matrix handling to caps
2010-03-09 13:17:34 -08:00
Benjamin Otte
ed3e1ab8b2
gstvideo: Fix typos in comments
2010-03-09 19:17:04 +01:00