Commit graph

29 commits

Author SHA1 Message Date
Guillaume Desmottes
bcca3b926c videoencoder: implement QoS
It allows encoders to detect and drop input frames which are already
late to increase the chance of the pipeline to catch up.

The QoS logic and code is directly copied from gstvideodecoder.c.

https://bugzilla.gnome.org/show_bug.cgi?id=582166
2017-10-19 16:26:22 +02:00
Tim-Philipp Müller
820c34740f video: mark symbols explicitly for export with GST_EXPORT 2017-05-16 15:23:12 +01:00
Sebastian Dröge
5be3c5f6b2 videodecoder/encoder: Correct GST_IS_*CODER_CLASS macros
They are currently not used, but would result in a compiler error due to wrong
variable name usage.

https://bugzilla.gnome.org/show_bug.cgi?id=766203
2016-05-10 10:01:12 +03:00
Thibault Saunier
1bf18f6f44 videoencoder: Deprecate GST_VIDEO_ENCODER_FLOW_DROPPED
It was never actually supported or used

https://bugzilla.gnome.org/show_bug.cgi?id=760666
2016-01-20 09:51:09 +02:00
Xavier Claessens
429860e51f base: Add g_autoptr() support to all types
https://bugzilla.gnome.org/show_bug.cgi?id=754464
2015-12-14 13:39:43 -05:00
Thiago Santos
d259a233a5 videoencoder: remove empty line to make g-i-scanner happy
gstvideoencoder.h:228: Warning: GstVideo: "@transform_meta"
parameter unexpected at this location:
 * @transform_meta: Optional. Transform the metadata on ...
2015-08-10 10:40:19 -03:00
Sebastian Dröge
ceef2cc12d videoencoder: Add transform_meta() vfunc with default implementation
The default implementation copies all metadata without tags, and metadata
with only the video tag. Same behaviour as in GstVideoFilter.

https://bugzilla.gnome.org/show_bug.cgi?id=742385
2015-06-30 10:40:09 +02:00
Matej Knopp
dc7b254805 videoencoder: Add gst_video_encoder_set_min_pts()
For streams with reordered frames this can be used to ensure that there
is enough time to accomodate first DTS, which may be less than first PTS

https://bugzilla.gnome.org/show_bug.cgi?id=740575
2015-06-12 17:17:25 -04:00
Sebastian Dröge
729e3c8a10 videoencoder: Add sink_query() src_query() virtual functions
Based on the videodecoder change by Nicolas Dufresne and applied
here for consistency.

https://bugzilla.gnome.org/show_bug.cgi?id=720103
2013-12-09 16:34:19 +01:00
Olivier Crête
779e360352 videoencoder: Remove gst_video_encoder_set/get_discont
They've never existed outside the header file.
2013-12-06 16:24:46 -05:00
Sebastian Dröge
146bb1a153 video{en,de}coder: Add new flush vfunc as a replacement for reset 2013-08-15 13:26:39 +02:00
Sebastian Dröge
9df036c216 video{en,de}coder: Revert to old ::reset() behaviour and deprecate it 2013-08-15 13:26:38 +02: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
Andoni Morales Alastruey
8a5cf5ef4d audio/video: update documentation for vfunc's that require chaining up 2012-10-08 13:04:02 +02:00
Mark Nauwelaerts
214b7b6d1d video: add some padding
... and clean up some related resolved FIXMEs
2012-09-10 14:03:49 +02:00
Sebastian Dröge
bdc056c12d video: Add methods to return a list of all pending GstVideoCodecFrames 2012-08-16 12:13:25 +02:00
Víctor Manuel Jáquez Leal
c02dcda885 videoencoder: getter for allocator
Sometimes the encoder would need to use the allocator for something else than
just allocating output buffers, for example, querying different parameters.

This patch expose a getter accessor for the negotiated memory allocator.
2012-08-14 15:47:23 +02:00
Sebastian Dröge
3c915afc39 videoencoder: Add API to conveniently handle tags 2012-08-09 16:02:15 +02:00
Sebastian Dröge
e37bb460bd videoencoder: Add negotiate vfunc that is used to negotiate with downstream
The default implementation negotiates a buffer pool and allocator
with downstream.
2012-08-09 14:47:46 +02:00
Vivia Nikolaidou
d2e1b64e0c videoencoder: Expose _negotiate function
This is to be called by encoders once they have set the output format
in order for (re)negotiation to be triggered as early as possible.

https://bugzilla.gnome.org/show_bug.cgi?id=679878
2012-07-24 20:42:49 +02:00
Sebastian Dröge
1645ea4a90 video: Rename alloc_output_buffer() to allocate_output_buffer() 2012-07-23 10:18:41 +02:00
Sebastian Dröge
fc24035790 videoencoder: Fix parameters names in header 2012-07-23 09:54:50 +02:00
Sebastian Dröge
cce1078fe9 videoencoder: Add decide_allocation vfunc and functions to allocate buffers with the information from the allocation query 2012-07-23 09:39:47 +02:00
Edward Hervey
2817bdadc9 libs: Remove "Since" markers and minor doc fixups 2012-07-13 12:11:06 +02:00
Sebastian Dröge
76f47979c1 videoencoder: Don't propose video-meta by default 2012-04-25 13:19:11 +02:00
Sebastian Dröge
3de8d58c4e videoencoder: Add support for subclasses to propose allocation parameters 2012-04-24 22:42:59 +02:00
Sebastian Dröge
13b88908ce videoencoder: Require to chain up to the parent's sink event functions 2012-04-24 19:47:22 +02:00
Sebastian Dröge
f7bc9cc5ba video: Initial port of video base classes and related things to 0.11 2012-04-24 19:35:24 +02:00
Edward Hervey
f6cfd763e4 video: Base classes for video decoders and encoders 2012-04-24 17:03:40 +02:00