User: Password:
|
|
Subscribe / Log in / New account

Un-re-writing history

Un-re-writing history

Posted Apr 8, 2010 2:56 UTC (Thu) by xiphmont (guest, #58693)
Parent article: Ogg and the multimedia container format struggle

I'm probably overreacting/nitpicking, but this is important to me as
it's part of my personal history.

It's widely claimed that Ogg was designed 'for Vorbis'[1][2] but this
isn't true. I designed Ogg for any codec type from the beginning,
including 'discontinuous-time' codecs like subtitles and overlays.

There had been earlier containers (from 1993-1998) used in the Ogg
project that were codec-specific and were not named 'Ogg'. They were
framings built into the various early codecs Xiph had worked on at
that time, eg 'Squish' and 'Stormbringer', just like mp3's framing
system is built into and used only in mp3.

The modern Ogg container design dates from approximately 1998, the
earliest Xiph.Org CVS entries are from 1999[3], and formal
documentation happened in 2000/2001[4] during the early Vorbis
releases. At that time, Xiph was working on two codecs, Vorbis and
Tarkin[5]. Most people don't know about Tarkin; it was a research
video codec just like Vorbis was a research audio codec. Unlike
Vorbis, Tarkin was not a successful approach. Both Vorbis and Tarkin
went into the Ogg container[6]. Tarkin never saw release, and it was
some time until Xiph had another suitable video format to use in Ogg
alongside Vorbis.

The abandoned Tarkin codec can still be found in Xiph.Org SVN[7].
Unfortunately, public archives for the tarkin-dev list only go back to
2002, at which point nearly all the activity surrounding Tarkin had
already passed[8].

[1] http://www.matroska.org/technical/guides/faq/index.html

document states, "Ogg was designed to stream audio, specifically
Vorbis. Ogg was not designed to handle video, or any other type of
audio."

[2] http://ffmpeg.org/~mru/hardwarebug.org/2010/03/03/ogg-obj...

document states, "On occasion, these people will assume an
apologetic tone, explaining how Ogg was only ever designed for
simple audio-only streams"

[3] https://trac.xiph.org/browser/trunk/vorbis/lib/framing.c?...
https://trac.xiph.org/browser/trunk/ogg?rev=618

Ogg container code was already functional when we set up the
current CVS repository (now SVN) at Xiph.Org; the first Ogg
implementation predates this initial commit. The Ogg container
and everything else was originally in a single monolithic 'vorbis'
module, as can be seen in the first link from 1999. The Tarkin
source module (see [6] below) also originally included its own
duplicate implementation of the Ogg container copied from the
Vorbis module. Ogg got its own CVS entry when the monolithic
Vorbis module was split up in 2000 (second link).

[4] https://trac.xiph.org/log/trunk/ogg/doc?action=follow_cop...

[5] http://en.wikipedia.org/wiki/Tarkin_%28codec%29#Ogg_codecs

[6] http://svn.xiph.org/trunk/tarkin/bitpack.c
http://svn.xiph.org/trunk/tarkin/bitwise.c
http://svn.xiph.org/trunk/tarkin/nikrat.c
http://svn.xiph.org/trunk/tarkin/tarkin.c
http://svn.xiph.org/trunk/tarkin/tarkinplay.c
http://svn.xiph.org/trunk/w3d/info.c
http://svn.xiph.org/trunk/w3d/tarkin.c
http://svn.xiph.org/trunk/w3d/tarkin_dec.c
http://svn.xiph.org/trunk/w3d/tarkin_enc.c
http://svn.xiph.org/trunk/w3d/tarkin_sdl_player.c

[7] http://svn.xiph.org/trunk/tarkin/
http://svn.xiph.org/trunk/w3d/

'tarkin' was the initial experimental Tarkin codec. 'w3d' was a
second research version that continued Tarkin experimentation.
Neither approach was successful.

[8] https://trac.xiph.org/changeset/3170/trunk/w3d

The last change to the Tarkin sourcebase, March 2002.


(Log in to post comments)

Un-re-writing history

Posted Apr 8, 2010 4:10 UTC (Thu) by ncm (subscriber, #165) [Link]

Thank you for this history.


Copyright © 2018, Eklektix, Inc.
Comments and public postings are copyrighted by their creators.
Linux is a registered trademark of Linus Torvalds