[vorbis] Why the commotion about file extensions?

J C Fitzgerald v7022 at wave.co.nz
Fri Jul 18 23:14:33 PDT 2003



Hi Folks,

It seems to me that this discussion has thrown up a number of
requirements, some of which conflict:

1.  For robustness, the operating system should determine the file type
    by examining the contents rather than relying on the any portion of
    the file name.  (The "I Am Not My Name" principle.)

2.  For efficiency, the operating system should determine the file type
    from the file name (its directory entry) rather than having examine
    the file's contents.

3.  Some users want to know the most generic file type (audio, video,
    etc).

4.  Some users want to know the most specific file type (e.g., FLAC mono
    16000Hz).

5.  Some users want something in between (lossless audio, etc).

6.  Users want to be able to view and manipulate sets of files based
    on their preferred interpretation of the file's type (e.g., delete
    all lossy audio).

7.  Users want to launch applications and display icons based on their
    preferred interpretation of the file type (e.g. play only Speex
    files in WinAmp).

Obviously, all of these are not going to be acheivable with any of the
schemes already mentioned.

So here's an idea:

1.  The originator of a file (person or program) assigns an OID to it as
    the extension.  (OID is an Object Identifier and an already existing,
    global and flexible naming standard [ISO9834] which operates similary
    to domain names.)  The OID is as specific as possible about the
    file's contents.

2.  The first time an operating system sees any given OID it examines the
    file's contents to determine the format that the OID identifies
    and/or asks the user to replace, confirm or ammend it as well
    as determining how the user wishes to regard files of this OID.
    Subsequently, all files with this OID are assumed (provisionally)
    to be of the identified type.

3.  Within the file system, the file retains its OID.  For external
    presentation, the file's name gets remapped to satisfy the user's
    expressed wishes with regard to files of this type.

4.  Groups of files are manipulated using the remapped file names.

5.  Any time the contents of the file need to be accessed by a program,
    the Operating System examines the specific file to ensure that it
    is actually of the type its OID claims it is.

Because the user is able to specify how much information they want to
be aware of about a file's type, and how such files should be viewed and
maniplulated, requirements 3 to 7 are met.  Because the operating system
can summarily identify a file's type from its OID, requirement 2 is met.
And because the operating system can positively identify a file's type
from it's content, requirement 1 is met.

Of course, a lot of details would need to be worked through (such as how
not to tax users beyond their abilities to identify file types), but the
crux of the idea seems to work.  Applied to all files and file types, it
would also help with viruses and, perhaps, trojans.

(Who was it said that any problem can be solved by adding another layer
of indirection?)

Unfortunately, it's implementation is well outside of Xiph's domain.  Doing
so would be a major cross-OS effort.

Whew!
John
--- >8 ----
List archives:  http://www.xiph.org/archives/
Ogg project homepage: http://www.xiph.org/ogg/
To unsubscribe from this list, send a message to 'vorbis-request at xiph.org'
containing only the word 'unsubscribe' in the body.  No subject is needed.
Unsubscribe messages sent to the list will be ignored/filtered.



More information about the Vorbis mailing list