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
Wim Taymans
296630a959
video: use gint to make parsing easier
...
Use gint for with/height etc to make it easier to pass the variables to various
caps and structure parsing functions.
2011-06-21 17:31:17 +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
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
e6f8f7f310
video: fix header after merge
2011-06-02 12:21:28 +02:00
Wim Taymans
f9967e4aac
Merge branch 'master' into 0.11
...
Conflicts:
gst-libs/gst/video/video.h
gst/playback/gstplaysinkaudioconvert.c
gst/playback/gstplaysinkvideoconvert.c
tests/check/libs/rtp.c
2011-06-02 12:18:13 +02:00
Tim-Philipp Müller
47614d3106
video: sprinkle some G_GNUC_CONST
...
Mark functions that have no effect besides their return value and
only inspect their input arguments with G_GNUC_CONST. (We just
ignore the g_return_val_if_fail() guards for this)
2011-05-28 12:29:46 +01:00
Tim-Philipp Müller
2699d875bf
video: clean up header file
...
Sprinkle some spaces and newlines here and there.
2011-05-28 12:29:46 +01: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
Tim-Philipp Müller
49cc1718a8
docs: fix typo in video format docs
2011-04-13 09:10:52 +01: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
Robert Swain
e0a658a664
gstvideo: Add GST_VIDEO_BUFFER_PROGRESSIVE flag
...
Maps to GST_BUFFER_FLAG_MEDIA4. The purpose is to explicitly indicate
whether a telecined buffer is progressive or not without having to make
assumptions based on previous buffers.
2011-02-25 15:29:56 +01: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
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
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
Tim-Philipp Müller
e98814c91e
docs: add Since: comment to docs for new GST_VIDEO_FORMAT_UYVP
2010-09-15 15:20:25 +01:00
Sebastian Dröge
7ac1938f0f
video: Add a destroy notify parameter to gst_video_convert_frame_async()
...
Binding generators apparently need this as they can't really know
that the callback is guaranteed to be called exactly once and that
the user_data can be freed at the end of it.
2010-09-15 11:26:48 +02:00
David Schleef
1a75dede56
video: Add UYVP, 10-bit 4:2:2
2010-09-14 12:33:21 -07:00
Sebastian Dröge
6407101c53
video: Add async variant of the convert frame function
...
API: gst_video_convert_frame_async()
2010-09-14 08:42:44 +02:00
Edward Hervey
349a76ed19
video: Add new method for converting a video frame
...
https://bugzilla.gnome.org/show_bug.cgi?id=629157
2010-09-14 08:42:43 +02:00
Sebastian Dröge
506be85356
video: Re-add (but deprecated) GST_VIDEO_{RED,GREEN,BLUE}_MASK_1[56]
2010-06-13 08:20:13 +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
Martin Bisson
b0d15133d7
video: Add support for Y800 and Y16
...
Fixes bug #620441 .
2010-06-07 08:17:55 +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
Tim-Philipp Müller
0ebbb98bfa
docs: add gtk-doc chunks with Since: tags for new GST_VIDEO_CAPS_GRAY* API
2010-04-07 20:21:14 +01:00
Sebastian Dröge
bf8fff4e33
video: API: Add GST_VIDEO_CAPS_GRAY{8,16}
2010-04-07 17:23:22 +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
David Schleef
76afac25b4
video: Add color-matrix handling to caps
2010-03-09 13:17:34 -08:00
Jan Schmidt
36711ab477
video: Add functions to create/parse still frame events.
...
Add a new video event to mark the start or end of a still-frame
sequence, and a parser function to identify and extract info from
such events.
API: gst_video_event_new_still_frame()
API: gst_video_event_parse_still_frame()
Fixes : #601942
2009-11-18 00:10:57 +00:00
Benjamin Otte
a27f439ab3
Update Since tags for NV12/NV21
...
They are added in 0.10.26 now, not 0.10.25
2009-10-07 09:58:27 +02:00
Benjamin Otte
1cf651f883
Add NV12 and NV21 formats
2009-10-07 09:54:07 +02:00
David Schleef
45cf881f39
video: Add Y444, v210, v216 formats
2009-05-15 16:18:59 -07:00
Sebastian Dröge
a6cf0c8f06
video: Fix typo in the docs
2009-04-15 15:35:59 +02:00
Sebastian Dröge
a1d8cfde9d
video: Add support for YVYU YUV colorspace
2009-04-15 14:53:47 +02:00
Stefan Kost
58695d78f9
docs: fix newly added interlace constants and plug holes in video format docs
2009-02-26 10:09:59 +02:00
Edward Hervey
a490b3f2dd
video: Fix 'Since' tags
2009-02-19 17:40:45 +01:00
Edward Hervey
c44b067817
video: Add flags for interlaced video along with convenience methods for interlaced caps.
...
These three flags allow all know combinations of interlaced formats. They should
only be used when the caps contain 'interlaced=True'.
Fixes #163577 (yes, it's a 4 year old bug).
2009-02-19 16:11:44 +01:00
Jan Schmidt
1b2dc5f3a8
gst-libs/gst/video/: Fix up build flags and include statement for the new generated enumtypes files, to fix dist.
...
Original commit message from CVS:
* gst-libs/gst/video/Makefile.am:
* gst-libs/gst/video/video.h:
Fix up build flags and include statement for the new generated
enumtypes files, to fix dist.
2009-01-06 10:16:16 +00:00
Edward Hervey
98ad43fcdd
gst-libs/gst/video/: Add glib-mkenum for GstVideoFormat enum GTYPE auto-generation.
...
Original commit message from CVS:
* gst-libs/gst/video/Makefile.am:
* gst-libs/gst/video/video.h:
Add glib-mkenum for GstVideoFormat enum GTYPE auto-generation.
This will help bindings to use it.
2008-12-31 13:01:30 +00:00
Jan Schmidt
f11cf32c3f
Document the GstTuner and GstColorBalance interfaces, and some other random API functions that needed it. 70% symbol ...
...
Original commit message from CVS:
* docs/libs/gst-plugins-base-libs-sections.txt:
* gst-libs/gst/interfaces/colorbalance.c:
* gst-libs/gst/interfaces/colorbalance.h:
* gst-libs/gst/interfaces/colorbalancechannel.c:
* gst-libs/gst/interfaces/colorbalancechannel.h:
* gst-libs/gst/interfaces/tuner.c:
* gst-libs/gst/interfaces/tunerchannel.c:
* gst-libs/gst/interfaces/tunerchannel.h:
* gst-libs/gst/interfaces/tunernorm.c:
* gst-libs/gst/interfaces/tunernorm.h:
* gst-libs/gst/video/video.c:
* gst-libs/gst/video/video.h:
Document the GstTuner and GstColorBalance interfaces, and some
other random API functions that needed it. 70% symbol coverage, woo.
2008-05-09 21:42:26 +00:00
Tim-Philipp Müller
843366350e
gst-libs/gst/video/video.*: API: add GST_VIDEO_FORMAT_Y41B and GST_VIDEO_FORMAT_Y42B.
...
Original commit message from CVS:
* gst-libs/gst/video/video.c: (gst_video_calculate_display_ratio),
(gst_video_format_from_fourcc), (gst_video_format_to_fourcc),
(gst_video_format_is_rgb), (gst_video_format_is_yuv),
(gst_video_format_has_alpha), (gst_video_format_get_row_stride),
(gst_video_format_get_pixel_stride),
(gst_video_format_get_component_width),
(gst_video_format_get_component_height),
(gst_video_format_get_component_offset), (gst_video_format_get_size):
* gst-libs/gst/video/video.h: (GST_VIDEO_FORMAT_Y41B),
(GST_VIDEO_FORMAT_Y42B):
API: add GST_VIDEO_FORMAT_Y41B and GST_VIDEO_FORMAT_Y42B.
2008-03-02 18:20:44 +00:00
David Schleef
d605ca3ba2
gst-libs/gst/video/video.*: Add additional RGBA and RGB-24 video formats.
...
Original commit message from CVS:
* gst-libs/gst/video/video.c:
* gst-libs/gst/video/video.h:
Add additional RGBA and RGB-24 video formats.
2007-12-22 05:19:00 +00:00
David Schleef
1c3e012fc3
Add new GstVideFormat enum and write a bunch of helper functions based around it.
...
Original commit message from CVS:
* docs/libs/gst-plugins-base-libs-sections.txt:
* gst-libs/gst/video/video.c:
* gst-libs/gst/video/video.h:
Add new GstVideFormat enum and write a bunch of helper functions
based around it.
2007-12-18 00:13:26 +00:00
Jan Schmidt
34db0838be
Fix integer overflow problem with pixel-aspect-ratio calculations in videoscale and xvimagesink ( #341542 )
...
Original commit message from CVS:
* docs/libs/gst-plugins-base-libs-docs.sgml:
* docs/libs/gst-plugins-base-libs-sections.txt:
* gst-libs/gst/video/video.c: (gst_video_calculate_display_ratio):
* gst-libs/gst/video/video.h:
* gst/videoscale/Makefile.am:
* gst/videoscale/gstvideoscale.c: (gst_video_scale_fixate_caps):
* sys/xvimage/xvimagesink.c: (gst_xvimagesink_setcaps):
* tests/check/Makefile.am:
* tests/check/libs/video.c: (GST_START_TEST), (video_suite),
(main):
Fix integer overflow problem with pixel-aspect-ratio calculations
in videoscale and xvimagesink (#341542 )
2006-05-12 21:30:00 +00:00
Thomas Vander Stichele
5f83aa7dfa
expand tabs
...
Original commit message from CVS:
expand tabs
2005-12-06 19:42:02 +00:00
Jan Schmidt
0e82871285
Convert elements to use fractions for their framerate.
...
Original commit message from CVS:
* ext/libvisual/visual.c: (gst_visual_src_setcaps), (get_buffer),
(gst_visual_chain):
* ext/ogg/gstogmparse.c: (gst_ogm_parse_chain):
* ext/theora/theoradec.c: (theora_handle_type_packet):
* ext/theora/theoraenc.c: (theora_enc_sink_setcaps),
(theora_enc_chain):
* gst-libs/gst/riff/riff-media.c: (gst_riff_create_video_caps):
* gst-libs/gst/video/video.c: (gst_video_frame_rate):
* gst-libs/gst/video/video.h:
* gst/ffmpegcolorspace/avcodec.h:
* gst/ffmpegcolorspace/gstffmpegcodecmap.c:
(gst_ffmpeg_caps_to_pixfmt):
* gst/ffmpegcolorspace/gstffmpegcolorspace.c:
(gst_ffmpegcsp_set_caps):
* gst/videorate/gstvideorate.c: (gst_videorate_transformcaps),
(gst_videorate_setcaps), (gst_videorate_blank_data),
(gst_videorate_chain):
* gst/videotestsrc/gstvideotestsrc.c:
(gst_videotestsrc_src_fixate), (gst_videotestsrc_getcaps),
(gst_videotestsrc_parse_caps), (gst_videotestsrc_setcaps),
(gst_videotestsrc_event), (gst_videotestsrc_create):
* gst/videotestsrc/gstvideotestsrc.h:
* sys/ximage/ximagesink.c: (gst_ximagesink_xcontext_get),
(gst_ximagesink_setcaps), (gst_ximagesink_change_state),
(gst_ximagesink_get_times), (gst_ximagesink_init):
* sys/ximage/ximagesink.h:
* sys/xvimage/xvimagesink.c: (gst_xvimagesink_get_xv_support),
(gst_xvimagesink_setcaps), (gst_xvimagesink_change_state),
(gst_xvimagesink_get_times), (gst_xvimagesink_init):
* sys/xvimage/xvimagesink.h:
Convert elements to use fractions for their framerate.
V4L elements to come later tonight.
2005-11-22 16:08:37 +00:00
Julien Moutte
69f68fa9f6
And here comes my change on caps for framerate and geometry range.
...
Original commit message from CVS:
2005-10-24 Julien MOUTTE <julien@moutte.net>
* gst-libs/gst/video/video.h:
* gst/ffmpegcolorspace/gstffmpegcodecmap.c:
* sys/ximage/ximagesink.c: (gst_ximagesink_xcontext_get):
* sys/xvimage/xvimagesink.c: (gst_xvimagesink_get_xv_support):
And
here comes my change on caps for framerate and geometry range.
We are now accepting 1 to MAXINT for width and height, and from
0.0 to MAXDOUBLE for framerate. That allows duration less png
frames
to be blended correctly in videomixer.
2005-10-24 13:36:40 +00:00
Tim-Philipp Müller
38f505b3c8
Add G_BEGIN_DECLS and G_END_DECLS around headers where missing, so that they work when included from C++ code
...
Original commit message from CVS:
Add G_BEGIN_DECLS and G_END_DECLS around headers where missing, so that they work when included from C++ code
2005-02-09 22:31:05 +00:00
Wim Taymans
4d6a0cb39e
gst-libs/gst/video/video.h: Added 32 bits RGBA. Not sure if we should use another mime-type for alpha rgb. Currently ...
...
Original commit message from CVS:
* gst-libs/gst/video/video.h:
Added 32 bits RGBA. Not sure if we should use another mime-type
for alpha rgb. Currently the presence of the alpha_mask property
signals an alpha channel. Ronald?
2004-07-16 10:40:54 +00:00
Johan Dahlin
bf07c7cc9b
*.h: Revert indenting
...
Original commit message from CVS:
* *.h: Revert indenting
2004-03-15 16:32:55 +00:00
Thomas Vander Stichele
4df3f18839
gst-indent
...
Original commit message from CVS:
gst-indent
2004-03-14 22:34:34 +00:00
Benjamin Otte
883b6925fd
gst-libs/gst/video/video.h: Fix caps template names to be understandable.
...
Original commit message from CVS:
2004-01-12 Benjamin Otte <in7y118@public.uni-hamburg.de>
* gst-libs/gst/video/video.h:
Fix caps template names to be understandable.
Prefix everything with GST_VIDEO.
* ext/aalib/gstaasink.c:
* ext/divx/gstdivxdec.c:
* ext/divx/gstdivxenc.c:
* ext/gdk_pixbuf/gstgdkpixbuf.c:
* ext/hermes/gstcolorspace.c: (gst_colorspace_base_init):
* ext/jpeg/gstjpegdec.c: (raw_caps_factory):
* ext/jpeg/gstjpegenc.c: (raw_caps_factory):
* ext/libcaca/gstcacasink.c:
* ext/libpng/gstpngenc.c: (raw_caps_factory):
* ext/snapshot/gstsnapshot.c:
* ext/swfdec/gstswfdec.c:
* ext/xvid/gstxviddec.c:
* ext/xvid/gstxvidenc.c:
* gst/chart/gstchart.c:
* gst/deinterlace/gstdeinterlace.c:
* gst/effectv/gsteffectv.c:
* gst/flx/gstflxdec.c: (gst_flxdec_loop):
* gst/goom/gstgoom.c:
* gst/median/gstmedian.c:
* gst/monoscope/gstmonoscope.c: (gst_monoscope_init),
(gst_monoscope_srcconnect), (gst_monoscope_chain):
* gst/overlay/gstoverlay.c:
* gst/smooth/gstsmooth.c:
* gst/smpte/gstsmpte.c:
* gst/synaesthesia/gstsynaesthesia.c:
* gst/videocrop/gstvideocrop.c:
* gst/videodrop/gstvideodrop.c:
* gst/y4m/gsty4mencode.c:
* sys/qcam/gstqcamsrc.c:
* sys/v4l/gstv4lsrc.c: (gst_v4lsrc_palette_to_caps):
Make them work with new video.h file.
* sys/ximage/ximagesink.c: (gst_ximagesink_chain),
(gst_ximagesink_buffer_free), (gst_ximagesink_buffer_alloc):
* sys/xvimage/xvimagesink.c: (gst_xvimagesink_chain),
(gst_xvimagesink_buffer_free), (gst_xvimagesink_buffer_alloc):
Make it work with new buffer allocation system.
2004-01-12 02:01:52 +00:00
Benjamin Otte
23bb1b8f35
I'm too lazy to comment this
...
Original commit message from CVS:
*** empty log message ***
2004-01-11 19:34:15 +00:00
David Schleef
3b60021408
Merge CAPS branch
...
Original commit message from CVS:
Merge CAPS branch
2003-12-22 01:47:09 +00:00
Benjamin Otte
c0909a864e
make colorspace handle the original RGB format, too, since it handles both. Add the template caps for the reverse for...
...
Original commit message from CVS:
make colorspace handle the original RGB format, too, since it handles both. Add the template caps for the reverse format to video.h
2003-11-11 22:40:43 +00:00
David Schleef
b81262ad9c
Fix endianness issues manifested in pngenc. Fixes #125932
...
Original commit message from CVS:
Fix endianness issues manifested in pngenc. Fixes #125932
2003-11-05 03:59:53 +00:00
Ronald S. Bultje
b005531324
New mimetypes gone into effect today - this commit changes all old mimetypes over to the new mimetypes spec as descri...
...
Original commit message from CVS:
New mimetypes gone into effect today - this commit changes all old mimetypes over to the new mimetypes spec as described in the previous commit's document. Note: some plugins will break, some pipelines will break, expect HEAD to be broken or at least not 100% working for a few days, but don't forget to report bugs
2003-07-06 20:49:52 +00:00
Ronald S. Bultje
d1cdccccce
Add untested get-video-size function (bug 104360)
...
Original commit message from CVS:
Add untested get-video-size function (bug 104360)
2003-01-30 20:47:43 +00:00
Thomas Vander Stichele
4b83831f48
muhaha
...
Original commit message from CVS:
muhaha
2002-11-09 18:31:27 +00:00
Ronald S. Bultje
895c730a13
This adds a generic video functions library
...
Original commit message from CVS:
This adds a generic video functions library
2002-09-26 12:20:12 +00:00