Commit graph

121 commits

Author SHA1 Message Date
Wim Taymans 04a2610444 video: improve frame_flags
Rename the frame_flags to flags. Because they are flags on the frame object it
does not need the redundant frame_ prefix.
Change the order of the metadata constructor so that the flags come before the
format and dimension arguments.
2012-04-19 14:14:35 +02:00
Sebastian Dröge 91ffe7dd5e video: Clean up interlaced flags and enums
There's a new GstVideoFrameFlags enum now that contains the frame
specific flags only. GstVideoFlags does not contain the TFF/TFF/ONEFIELD
flags anymore because these are strictly frame specific.

Also add fallback to parse these fields from the GstBufferFlags in
gst_video_frame_map() if there's no GstVideoMeta attached to the buffer.
2012-04-19 12:30:57 +02:00
Wim Taymans ac9a8781ba video: fix macros 2012-04-02 12:25:30 +02:00
Mark Nauwelaerts 6c260d732c video: remove bogus define 2012-03-26 18:13:13 +02:00
Wim Taymans e620dbc57d video: add function to copy one video plane 2012-03-19 12:26:11 +01:00
Mark Nauwelaerts fa63d7181d video: add GST_VIDEO_INFO_COMP_BITS 2012-02-06 10:52:01 +01:00
Sebastian Dröge 103c59af24 video: Add GST_VIDEO_INFO_COMP_WIDTH 2012-02-06 09:53:22 +01:00
Wim Taymans fcdc385aa1 port to new map API 2012-01-25 12:30:53 +01:00
Wim Taymans 21ed12739e video: add macro to check interlaced
Add a convenience macro to check if the video is interlaced.
2012-01-03 10:41:51 +01:00
Wim Taymans 21bf4f04f3 video: fix some video formats
Rename the offset field in GstVideoFormatInfo to poffset to avoid confusion with
the offset of the plane in the buffer. The poffset is the offset in the plane
where the first byte of the component data can be found.
Properly implement the COMP_OFFSET calculations.
Fix YV12 and YVU9, simply use the same offsets as the regular I420 and YUV9
variants, we use the plane info to reorder components already.
Improve the unit test.
2012-01-02 13:30:53 +01:00
Wim Taymans ddc05e0ed1 propertyprobe: remove propertyprobe
Remove the propertyprobe interface
Improve docs
2011-12-21 11:58:53 +01:00
Wim Taymans 6241ff63f8 video: update interlace caps and docs
Remove interlaced boolean from caps and replace with an interlace-mode enum.
document this new property in the video caps document. With the enum we can
put fields into separate video meta.
Add enum for this interlace-mode in the VideoInfo.
Update the buffer flags.
2011-12-19 18:03:45 +01:00
Tim-Philipp Müller ec0d3566bf Merge remote-tracking branch 'origin/master' into 0.11
Conflicts:
	ext/alsa/gstalsasrc.c
	ext/alsa/gstalsasrc.h
	gst/adder/gstadder.c
	gst/playback/gstplaybin2.c
	gst/playback/gstplaysinkconvertbin.c
	win32/common/libgstvideo.def
2011-12-02 00:07:39 +00:00
Wim Taymans 59113af604 Use the new GstSample for snapshots
Make appsink return a GstSample. Remove the pull_buffer_list method because it
is not very useful anymore.
Pass GstSample to the conversion function.
Update playbin2 and examples
2011-12-01 16:53:11 +01:00
Alessandro Decina 848711706b libgstvideo: minor fixes to key unit events
Make out args to gst_video_event_parse_{downstream|upstream}_force_key_unit
optional, update libgstvideo.def and fix docs a bit.

API: gst_video_event_new_upstream_force_key_unit
API: gst_video_event_new_downstream_force_key_unit
API: gst_video_event_is_force_key_unit
API: gst_video_event_parse_upstream_force_key_unit
API: gst_video_event_parse_downstream_force_key_unit

https://bugzilla.gnome.org/show_bug.cgi?id=607742
2011-11-29 09:15:59 +01:00
Andoni Morales Alastruey df44e771f1 libgstvideo: Add force key unit events 2011-11-29 08:58:28 +01:00
Vincent Penquerc'h ea78b060a7 Revert "libgstvideo: add a new API to handle QoS events and dropping logic"
This reverts commit eb03323fb6.

*grumble* I managed to merge something I did not mean to.
2011-11-28 13:26:53 +00:00
Vincent Penquerc'h eb03323fb6 libgstvideo: add a new API to handle QoS events and dropping logic
https://bugzilla.gnome.org/show_bug.cgi?id=658241
2011-11-28 12:34:43 +00:00
Wim Taymans 06a6ab3e32 video: add support for max-framerate
Add support for max-framerate in the video helpers and update the video
caps document.
2011-11-11 13:14:21 +01:00
Edward Hervey dfc9d1658d video: Add convenience macros for accessing GstVideoInfo flags 2011-11-02 11:24:33 +01:00
Wim Taymans 8778cff7f0 video: add h264 transfer functions 2011-10-03 10:02:43 +02:00
Wim Taymans 67f1a097bf video: add another color matrix for mpeg2 2011-09-30 11:04:19 +02:00
Wim Taymans 9592796d8a video: fix docs 2011-09-30 11:04:19 +02:00
Wim Taymans 4bf9022e0c docs: improve docs 2011-09-27 11:19:24 +02:00
Wim Taymans f04b8fd8af audio/video add descriptions
Add a description to the audio and video format info in case we want to use this
later.
2011-09-06 16:46:48 +02:00
Wim Taymans 2f2aa4ac32 video: improve docs a little 2011-08-31 13:32:21 +02:00
Wim Taymans de4aeab544 video: add some more macros 2011-08-30 14:04:54 +02:00
Edward Hervey d0eb0ed058 video: Fix typo in interlaced flag (TTF => TFF) 2011-08-25 17:41:11 +02:00
Wim Taymans b79ddf66d2 video: clean up the custom flags
Clean up the flags, make an enum of them. We can now do this because there are
no subclasses of buffer anymore.
2011-08-25 16:42:08 +02:00
Wim Taymans 24ea19935f audio/video: add format of the pack functions
Replace the unpack_size with an unpack_format, which is more descriptive of the
kind of data the unpack function will create.
2011-08-24 16:40:43 +02:00
Wim Taymans 1bb83435fd video: Add an id to the video frame
Rename @view_id to @id.
Add an id to the video metadata. Add a method to get the metadata from a buffer
with the given id.
Make a method to map a frame with a certain id. This only maps the frame with
the given id on the video metadata. The generic frame id can be used when a
buffer carries multiple video frames such as in multiview mode but maybe also
when dealing with interlaced video that stores the fields in separate buffers.
2011-08-24 13:52:20 +02:00
Wim Taymans e78b66f5a3 video: fix chroma-site enums 2011-08-23 20:34:24 +02:00
Wim Taymans 76c4bef932 video: fix docs 2011-08-23 19:04:34 +02:00
Wim Taymans 9ad89374a3 video: add colorimetry info
Make enums for the chroma siting for easier use in the videoinfo.
Make enums for the color range, color matrix, transfer function and the
color primaries. Add these values to the video info structure in a Colorimetry
structure. These values define the exact colors and are needed to perform
correct colorspace conversion. Use a couple of predefined colorimetry specs
because in practice only a few combinations are in use.
Add view_id to the video frames to identify the view this frame represents in
multiview video.
Remove old gst_video_parse_caps_framerate, use the videoinfo for this.
Port elements to new colorimetry info.
Remove deprecated colorspace property from videotestsrc.
2011-08-23 18:57:35 +02:00
Wim Taymans 00a30b5cfd video: parse number of views
Parse the number of views in multiview video buffers.
2011-08-22 15:57:30 +02:00
Wim Taymans c81c62d03a fourcc: remove fourcc
Remove fourcc in caps.
Fix pbutils descriptions.
Add more video macros
Fix some unit test
2011-08-22 12:22:02 +02:00
Wim Taymans dae848818d audio: rework audio caps.
Rework the audio caps similar to the video caps. Remove
width/depth/endianness/signed fields and replace with a simple string
format and media type audio/x-raw.
Create a GstAudioInfo and some helper methods to parse caps.
Remove duplicate code from the ringbuffer and replace with audio info.
Use AudioInfo in the base audio filter class.
Port elements to new API.
2011-08-18 19:15:03 +02:00
Wim Taymans ba1ca45eda video: add some more macros 2011-08-17 17:18:02 +02:00
Josep Torra 5629ed74b3 Fix debug statements
Fixes build on MacOSX

Signed-off-by: Edward Hervey <edward.hervey@collabora.co.uk>
2011-08-10 11:15:41 +02:00
Wim Taymans 6b8617271c video: ensure sign in scale function 2011-08-01 16:50:28 +02:00
Wim Taymans 42b49f6b0e video: add macro to access flags 2011-07-29 12:25:13 +02:00
Tim-Philipp Müller c39ad574aa video: make GST_VIDEO_FORMATS_ALL define more readable
We don't need all those quotes, strings will be parsed as strings
regardless, and g-i doesn't seem to like all those escaped quotes.
2011-07-28 13:39:14 +01:00
Wim Taymans 37e7d7415e video: add pack and unpack functions
Add pack and unpack function to handle complex formats in the future.
2011-07-25 18:35:01 +02:00
Wim Taymans 68088f7992 video: add more info in the format structure
Add a field to describe how many bits are used to pack items.
Specify the shift for each component.
Add some more flags to better describe the format.
2011-07-25 18:08:24 +02:00
Wim Taymans 87e06b6808 video: add macros for par and fps 2011-07-10 13:47:35 +02:00
Wim Taymans 7197af583d video: update docs 2011-07-05 16:58:04 +02:00
Wim Taymans 4340b80f81 video: add macro to get frame size 2011-07-04 18:08:25 +02:00
Wim Taymans 9b259250a1 video: add some more macros
Add macros to get the plane and offset of a component.
2011-07-04 16:27:50 +02:00
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