lurkertech.com → Lurker's Guide

Welcome to the Lurker's Guide to Video, a repository for the little-known, undocumented knowledge that you need in order to write any sort of useful video software.

The Lurker's Guide began in the 1990s as a guide to video software on SGI (Silicon Graphics) machines. Although SGI is long gone, several of the articles continue to be popular and relevant as they explain videosyncrasies that still apply today; you can find those articles just below, followed by the original SGI Lurker's Guide.

GuideHere's some popular Lurker's Guide material, updated for 2008
programmer's guide to video systems
What every programmer must know about 480i, 576i, 1080i, and 720p.
all about video fields
What is interlaced video and why do I care? Field dominance? Kinky...
square and non-square pixels
It's 2008 and—my god—we still have to deal with non-square pixels!
timecode
Understand the different flavors of timecode used for video.
SGI GuideHere's the original Lurker's Guide to Video for SGI machines.

History

The Lurker's Guide began in the 1990s as a guide to video software on SGI (Silicon Graphics) machines. Specifically, we (the Lurkers) were lowly engineers eking out an existence deep in the bowels of the corporate machine, and we created the Guide as a sort of renegade movement so that we could leak crucial development info out to our third-party developers without it first being dumbed to meaninglessness by the Tech Pubs department, or censored by the corporate PSFP (Positive Spin Filtration Process).

The name is a reference to the lowly poor folk who squat in the dark lower decks of the spaceship on the sci-fi series Babylon 5.

The Lurker's Guide to Video on SGI Machines

Welcome to the Lurker's Guide, a repository for the little-known, undocumented knowledge that you need in order to write any sort of video app on SGI machines. This Guide is not for the squeamish. Some of the material contained in here may be too graphic, or possibly even too useful, for the average educated computer science professional. We hear that some of this information might even survive the PSFP (Positive Spin Filtration Process) and make it into official documentation.

This collection of documents does not represent SGI, and is not an official SGI publication. The entire contents of this document are the personal observations, and/or opinions, of the lurkers. All errors and opinions in it are ours alone. SGI makes no guarantees about anything in this document. Neither do the lurkers. You use it at your own risk.

Video on SGI and in General: Concepts, Definitions and Parameters

Tips for Writing SGI Video Applications

SGI Video Devices

Video and OpenGL on O2

  • DMbuffers for Video and OpenGL
    • What is a dmbuffer?
    • What are the relevant image formats?
    • How do you set up a pool of buffers?
    • How to you use them with video?
    • How do you use them with graphics?
  • Rendering graphics onto video
    • How the video path is set up.
    • How graphics is set up.
    • How to handle fields with stencils.
    • How to handle fields with glPixelZoom and glCopyPixels
    • Rendering in the YCrCb color space
    • Rendering directly onto video
    • Blending onto a video frame
  • Using live video as a texture
    • Setting up the video path
    • Creating the digital media pbuffer
    • Creating the buffer pool
    • Getting the video frame
    • Loading the video frame as texture

Time and Synchronization on SGI Machines

Case Study: Uncompressed Video Disk I/O

  • Uncompressed Video Disk I/O: Introduction and Scope
    • full-rate, full-size uncompressed video disk i/o defined
    • which SGI platforms and video devices we cover
  • Concepts and Terminology for Disks and Filesystems
    • disk, disk array, disk enclosure, disk vault
    • partition
    • XLV
      • volume element, multipartition volume element, striped volume element
      • stripe unit
      • plex, concatenated plex
      • logical subvolumes: log, data, and real-time
      • logical volume
    • filesystem
    • device file, raw device file
    • XFS
      • internal vs. external log
      • filesystem sections: log, data, and real-time
  • Hardware/System Setup for Uncompressed Video I/O
    • your options for disks and disk arrays on each platform
    • tips for configuring your filesystem and kernel for best performance
  • Basic Uncompressed Video I/O Code
    • simple videoport API on top of VL
    • how much memory buffering do you need?
  • Software Methods for Disk I/O
    • buffered I/O
    • direct I/O: satisfying its constraints, portability concerns
    • data cache concerns
    • residency concerns
    • disk seek, disk retry, disk recal concerns
    • disk command concerns
    • optimizing command size and spacing: readv/writev
    • how I/Os map to commands: XFS, XLV, dksc, host adapter
    • exploiting parallellism: asynchronous I/O
    • disk readahead
    • disk write buffering
    • disk command tag queueing
    • missed revolutions
  • Getting Raw Data in and out of the Movie Library
    • how to read and write video efficiently using the QuickTime file format
    • organization of a QuickTime file
    • basic information on SGI Movie Library calls to do this

Hints for Direct Sony-Style RS-422 Deck Control

Related Non-video Topics

Like It?Like what you see on this site? Want to see more in the future?
DonateSubmit this site (helps attract more readers)
StumbleUpondel.icio.us
del.icio.us
Google Ads
Shameless
Plugs
If you find this information useful or entertaining, consider browsing these shameless plugs for things that me and my friends to do earn a living.
mapfling.com: free custom maps with your own labels
Party? Meeting? Request a map, label it yourself, and easily fling it to your friends!
world's stupidest everything
See some of the worst the world has to offer, and add some of your own!

World's Stupidest Holiday and Birthday Presents - stupidest-presents.com
World's Stupidest Wedding Websites - stupidest-wedding-sites.com
World's Stupidest Baby Websites - stupidest-baby-sites.com
World's Stupidest TV, Movie, Music, and Sports Stars - stupidest-stars.com
World's Stupidest Politicians - stupidest-politicians.com
World's Stupidest TV Shows - stupidest-tv-shows.com
World's Stupidest Movies - stupidest-movies.com
World's Stupidest Blogs - stupidest-blogs.com
World's Stupidest Websites - stupidest-websites.com
World's Stupidest Company Websites - stupidest-company-sites.com
lurkertech: video tech and diversions
Buzzword bingo, bill the borg, MEZ, lurker's guide to video, and Thai, oh my!
slice-of-thai.com
Tasty morsels of information on Thai food, language, culture, and general silliness.
thailand fever
I co-authored this bilingual cultural guidebook to Thai-Western romantic relationships.
thai-english software dictionary
Check out my Thai-English, English-Thai dictionary for Palm OS® PDAs.
allaboutpai.com
A site about Pai, my peaceful home in the mountains of Northern Thailand.
thailand your way
Travel with my friend Nang, who is a great nature, birding, and cultural guide.
jeed illustration
My English-fluent Thai friend Jeed is a freelance illustrator who is available for hire.
CopyrightAll text and images copyright 1999-2008 Chris Pirazzi unless otherwise indicated.