Difference between revisions of "User:Avacore"

From VideoLAN Wiki
Jump to navigation Jump to search
 
 
(One intermediate revision by the same user not shown)
Line 1: Line 1:
= VLC Video Overlays (GSoC 2007) =
+
Is currently working on [[SoC 2007 Dynamic Video Overlays]]
I will be using this area to describe and track my progress, on implementing dynamic overlays in VLC, for Google Summer of Code 2007.
 
 
 
== Goal ==
 
The goal of this is to create a video filter for VLC, allowing third party applications to overlay dynamic images on top of the VLC video output.
 
 
 
== Details ==
 
The idea here is to provide VLC with a video filter that allows a third party application (hereafter the controller) to request an overlay on top of the video that VLC is displaying. The controller is then handed a piece of shared memory with a specified pixel format. The controller may then draw all that it desires to this shared memory, Finally when the shared memory has been written to, the controller will notify VLC of the change, and VLC will then composite the overlay into subsequent frames, or at least until instructed to do something else by the controller.
 
 
 
This is somewhat similar the the roles that bomvl, bmovl2 and vf_overlay play for MPlayer.
 
 
 
 
 
== Why ==
 
Well, because I can, why else? More seriously I can see to practical use-cases for this, the first is my primary motivation for working on this project.
 
 
 
The first use case is a computer gaming website which would like to broadcast computer game tournaments over the internet using VLC. This gaming site would then be able to overlay match statistics and other information onto the streamed video.
 
 
 
Additionally it may be useful for HTPC projects which can the use VLC as a canvas to draw user interfaces on. Such as the MeBox does with MPlayer and bmovl2.
 
 
 
== Tasks ==
 
{| class="wikitable"
 
! Task Description !! Status
 
|-
 
| Make simple no-op video filters                                                || style="background: #ffffdd" | Implementing
 
|-
 
| Define controller protocol                                                    || style="background: #ffdddd" | Not complete
 
|-
 
| Implement full video filter                                                    || style="background: #ffdddd" | Not complete
 
|-
 
| Implement bmovl/bmovl2 compatibility                                          || Undecided
 
|-
 
| Implement interface library                                                    || Undecided
 
|-
 
| Implement [http://freevo.sourceforge.net/cgi-bin/freevo-2.0/Kaa kaa] interface || Undecided
 
|-
 
| Speed up VLC blending (Using assembly or GCC intrinsics)                      || Undecided
 
|-
 

Latest revision as of 22:01, 16 April 2007

Is currently working on SoC 2007 Dynamic Video Overlays