FAQ Search Today's Posts Mark Forums Read
» Video Reviews

» Linux Archive

Linux-archive is a website aiming to archive linux email lists and to make them easily accessible for linux users/developers.


» Sponsor

» Partners

» Sponsor

Go Back   Linux Archive > Gentoo > Gentoo User

 
 
LinkBack Thread Tools
 
Old 12-03-2007, 08:36 PM
"Jonathan R. Haws"
 
Default Video Overlay Software API

All,

This may not be the right place for this question, if so please direct me.

I am looking for a software API that I can use to develop a UI that will
display an analog video stream on the screen with overlaid controls
(buttons, indicators, etc.). I have looked into a few options, but
haven't found a satisfactory solution. The latency for the video
display must be less than 1/4 second to meet the design requirements, so
something that can be programmed in separate threads (a video thread and
an overlay thread) may be the best option. If the indicators lag
slightly, that is okay, as long as the video feed doesn't.


If anyone has any ideas, suggestions, or solutions, that would be
great. Thanks for the help!


--
Jonathan R. Haws
Student Engineer
Space Dynamics Laboratory

Jonathan.Haws@sdl.usu.edu
(435)797-4629

--
gentoo-user@gentoo.org mailing list
 
Old 12-04-2007, 02:27 PM
James
 
Default Video Overlay Software API

Jonathan R. Haws <Jonathan.Haws <at> sdl.usu.edu> writes:

Hello,

> I am looking for a software API that I can use to develop a UI that will
> display an analog video stream on the screen with overlaid controls
> (buttons, indicators, etc.).

Maybe these are a good place to look at developing software for gentoo:
[1][2]


> The latency for the video
> display must be less than 1/4 second to meet the design requirements, so
> something that can be programmed in separate threads (a video thread and
> an overlay thread) may be the best option.

You'll need to find or develop a 'low latency' method to collect the video
(frames). I'm not so sure how experienced you are with video, so some of this
advice may not be relevant for you:

1. Look at the existing projects for frame grabbers and the device drivers
for the hardware portion of the related software: bttv/xawtv/camE has been
around for ever and the driver code has been fundamentally changed over time.

Here is a more current listing: [3]
Looking at some of the oldest driver code will show you have the 'bt848' chips
works. The bt848 chips have been replaced by new chips (878) and others.
Reading the data sheets on the chips will tell you quite a lot about
what is possible (This all assumes you are going to use a 'cots'
video capture hardware system that plugs into the pci slot of a (gentoo)
computer. If you are custom designing hardwareware (fpga, dsp, analog circuits)
then it may not be useful.

2. Find the relevant devise drivers for other chipsets used in video capture,
in the latest linux kernels for good places to look at what has already been
coded. This is a very dynamic area for device drivers (over the last few
years) so the driver code for a given video chipset and easily have changed
of the coarse of that time.

3. Look at ffmpeg and the developers therein, as you might be able to
learn quite a lot from previously (failed) projects and new efforts.

3. Keep you gui tools simple and lightweight. There are many graphical
toolkits you can use to create your graphics (UI). This is a huge,
separate effort. You may decide to use existing code for all of the low
level code and then just spin your own (UI) on top of a striped down
version of ffmpeg. My choice, QT4.

4. Read the sources to a lot of projects and talk to the folks at these
projects, before you start off 'half-baked'.....(caveat emptor)!


On gentoo here is a great place to begin your search:

cd //usr/portage/media-video


Other keywords
camstream Ogg OGM matroska


5. If you are looking into low latency video, for machine control
types of projects, then look into some 'image processing' areas
such as robotics for ideas in published 'white paper' and from
the standard journal publications. ACM, IEEE and the various
research area related to (computer) vision.


This is a very active, complex area you have chosen to work in. READ
(research) quite a lot and then narrow your focus on something that is
realistically achievable. Drop me some private email, if you like.


HTH,


James


[1] http://gentoo-wiki.com/HOWTO_Installing_3rd_Party_Ebuilds
[2] http://overlays.gentoo.org/
[3] http://www.cs.cornell.edu/~reynolds/quickcam/

--
gentoo-user@gentoo.org mailing list
 

Thread Tools




All times are GMT. The time now is 01:10 AM.

VBulletin, Copyright ©2000 - 2014, Jelsoft Enterprises Ltd.
Content Relevant URLs by vBSEO ©2007, Crawlability, Inc.
Copyright 2007 - 2008, www.linux-archive.org