[vlc-devel] Video filter - picture_t versus subpicture_t
Antoine Cellerier
dionoea at videolan.org
Fri Feb 3 22:48:27 CET 2012
Hello,
On Fri, Feb 03, 2012, Peter Tap wrote:
> 1. What is the difference between picture_t and subpicture_t? I was
> thinking a subpicture is only a small part of the picture and that is what
> I need to blend with the actual picture. However, it appears filter_Blend
> requires picture_t and not subpicture_t as parameter.
A picture_t is a full image. Typically a decoded video frame.
A subpicture_t is an element (well a list of elements to be exact) which
can be overlayed on top of an image. Two types of elements exist: text
and images. Text elements are rendered by the vlc core before overlay.
> 2. In general, what are the steps to create a picture and merge it with
> the existing picture?
Code-wise the simplest way is to create a subpicture filter (which seems
to be call subpicture source nowadays). A subpicture source will just
create a subpicture_t and then let the vlc core deal with blending it on
top of the video stream.
> 3. What is the simplest example I can look at for writing a filter?
Such filters can be found in modules/video_filter/ and match capability
"sub source". Noteworthy examples include:
* logo.c: overlay an image on top of the video. Note that this is also
implemented as a video filter2 which directly edits the
picture_t. So that might not be the simplest source to look at.
* marq.c: overlay text on top of the video
* rss.c: overlay text from an RSS stream on top of the video. This one
also includes picture elements sometimes which makes it a
good example to understand how composite subpicture_t
elements can be used.
I hope that this answers your questions.
Cheers,
--
Antoine Cellerier
dionoea
More information about the vlc-devel
mailing list