RE: General questions on multimedia programming



"James Buchanan" wrote:
Like for example "raw" audio is a series of samples (I need to find out what
the kHz samples means etc) in PCM format, 16 or 32 bit or whatever, signed or
unsigned, that represents the difference between the last audio sample or the
absolute value (what it it exactly? Tone/pitch/volume/something else?)

I don't know my audio well, so I'll let wikipedia answer:

http://en.wikipedia.org/wiki/Pulse-code_modulation

for video, there's a series of frames with a colourspace like RGB of a
certain size, 1024x746 with so many bits per pixel, big or little endian, or
whatever, and there are 4cc codes like YUV, CMYK and whatever. The codec for
video takes them and compresses them, making a new format like MPEG or AVI or
whatever.

A few notes:
1. RGB, YUV, and CMYK are *all* colorspaces.
2. Within those colorspaces, there are different digital formats, and those
formats generally have a 4cc code. For example, YUY2 is a 16 bit/pixel
composite image, while YV12 is a 12 bit/pixel planar image. The Y, U, and V
values are 8 bit in both formats, but they use subsampling to achieve their
overall bits/pixel.
3. AVI is a storage container, MPEG-2 is a codec. MPEG is neither.
Likewise, ASF is a storage container, which isn't the same thing as a codec.
An ASF may contain WMV9 encoded video, but it isn't a codec per se. An AVI
file can contain any number of things.

See here:
http://en.wikipedia.org/wiki/Colorspace
http://en.wikipedia.org/wiki/YUV
http://en.wikipedia.org/wiki/RGB
http://en.wikipedia.org/wiki/CMYK
http://en.wikipedia.org/wiki/AVI
http://en.wikipedia.org/wiki/MPEG
http://en.wikipedia.org/wiki/MPEG2

Where do I start to learn about the basics like audio, graphics and video
such as PCM, waveforms, sample rates and what they mean, 4cc codes, what
codec algorithms do, the various file format specs and so on?

Surprisingly, wikipedia isn't a bad resource here. Although, if you want
good information, I've found most major colleges/universities have the best
resources.

And then from there, I'd like to learn how to write a codec and how to
capture audio, video, etc., and write a program to test it all. Different
tracks, video editing, and so on.

That's good, but keep in mind:
1. Codec development is a huge undertaking. Groups of people spend
man-decades working on many of the name-brand codecs.
2. It is highly unlikely that you'd write a better codec than the ones that
are already available to you. So unless you're doing it for educational
purposes, there isn't much point in attempting to write your own.

I expect I am going to spend a few years on this and I'd like to specialise
here. Does anyone know of any good books, websites, etc?

Honestly, if you're interested in codec development and a lot of the nitty
gritty, I'd suggest college courses on image and audio processing. Also,
take math. Lots of it. The web is nice for informal training, but I think a
good foundation would be much better had at a reputable college.

If you'll be developing in Windows, you'll want to familiarize yourself with
DirectShow, which is Microsoft's API for processing audio and video. The
Windows Media SDKs also probably have some useful information. If you're
developing under *nix, you'll want to look at GStreamer.

--
http://www.avdevforum.com
.



Relevant Pages

  • Re: Codecs/WAV/WMM
    ... I pinned the problem on Arcsoft Audio Decoder version 1.3.1.63 ... With that decoder disabled in the Movie Maker, I can now play mp3s on the ... Using MM I published a video ... "or on the codec side (something overriding the default codecs ...
    (microsoft.public.windows.vista.music_pictures_video)
  • Re: WMP 11 Vista will not start
    ... You've got a huge amount of cr-p in there - what codec pack did you install? ... ACM Messenger Audio Codec 028E sirenacm.dll 8.5.1288.816 ... ICM Microsoft Video 1 MSVC msvidc32.dll 6.0.6000.16513 ... DMO WMV Screen decoder DMO MSS1, ...
    (microsoft.public.windowsmedia.player)
  • Re: green screen on hd tv
    ... When I use DECCHECK I can set the preferred video CODEC to be WinDVD I then ... set Video and Audio to be WinDVD. ... it to be audio and video using VMCD but unfortunately Media Center and Media ...
    (microsoft.public.windows.mediacenter)
  • Re: strange symbols under tools menu
    ... Media Player Binaries ... ACM Sipro Lab Telecom ACELP.net audio codec 0130 sl_anet.acm 3.2.0.0 ... Video Codecs ...
    (microsoft.public.windowsmedia.player)
  • Re: Novice: First steps with VirtualDub
    ... editors such as "TMPGEnc MPEG Editor" or "VideoReDo", ... Do you know of a table or matrix somewhere showing what SW converts one format to another please? ... DV video can be stored in both AVI and QuickTime containers for the simple reason that there are DV codec implementations for both frameworks. ...
    (rec.video.desktop)

Loading