Embedding decoders into video.

Locked
User avatar
Declan_Vee
Mr. Poopy Pants
Joined: Mon Feb 18, 2002 10:56 am
Location: SA, Australia
Org Profile

Embedding decoders into video.

Post by Declan_Vee » Wed Apr 16, 2003 10:29 am

Hey all,
Last night someone from my anime club brought in a video thing called "Red vs Blue"... or was it "Blue vs Red" I can't remember, namely because I was getting a drink when we tried to play it. It refused to cooperate, some new DivX codec... I dunno DivX6 (irrelevent).

An interesting idea came out of this though. Videos with the decoder embedded in the file. Considering that codecs aren't all that big (a few hundred Kb or so) no such a bad idea. A new media player that has the ability to read and use these decoders may have to be developed. But otherwise it's not too far fetched... radical, yes. Impossible, probably not.

This is probably a topic better suited for doom9, but I'd like to hear what anyone here thinks about it.
AMV Search | AMV Guides
AMV Live. "It's like Iron Chef, only too many cooks will spoil the broth"

trythil
is
Joined: Tue Jul 23, 2002 5:54 am
Status: N͋̀͒̆ͣ͋ͤ̍ͮ͌ͭ̔̊͒ͧ̿
Location: N????????????????
Org Profile

Re: Embedding decoders into video.

Post by trythil » Wed Apr 16, 2003 10:55 am

Declan_Vee wrote:Hey all,
Last night someone from my anime club brought in a video thing called "Red vs Blue"... or was it "Blue vs Red" I can't remember, namely because I was getting a drink when we tried to play it. It refused to cooperate, some new DivX codec... I dunno DivX6 (irrelevent).

An interesting idea came out of this though. Videos with the decoder embedded in the file. Considering that codecs aren't all that big (a few hundred Kb or so) no such a bad idea. A new media player that has the ability to read and use these decoders may have to be developed. But otherwise it's not too far fetched... radical, yes. Impossible, probably not.

This is probably a topic better suited for doom9, but I'd like to hear what anyone here thinks about it.
Insecure and a cross-compatibility headache.

I'll expand on both of those.

First off...it's ironic. Embedding code and data into the same package is the concept that drives modern software development. It's the concept that brought us funky languages like LISP and PROLOG.

But it's the same concept that makes macro viruses and malvolent ActiveX controls work :(

You'd have to have a very trusted code-signing infrastructure in place BEFORE you do anything like this. TCPA may be able to help out with that in some respect; I haven't researched enough on it to give a definitive "yes" or "no".

Before then, however, I wouldn't trust such a file. Ever. Even then, I'd be EXTREMELY cautious, because what you propose is like a dark, warm room to microorganisms: extremely receptive to propagation of nasty stuff.

There's also the cross-platform issue. Even a Sorenson v3 Quicktime-encoded file will play fine on my XP laptop, on my Gentoo editing system, and a PowerMac G4 tower. In order to retain cross-compatibility, a file like what you propose has two options:

(1) Include versions for ALL OSes, on ALL players.
(2) Make the code OS-independent. This is possible; Metro Link did it with their object loader, which is used in e.g. XFree86. But that requires the object loader to be present on the user's system.

Neither option is desirable. Option (1) is feasible, but only slightly so -- it'd mean that you'd have to include a fair amount of interfaces. Option (2) would be nice if we could all play along and use the same executable format, but THAT won't ever happen. We have at least three major executable formats in use at the moment across the span of consumer OSes: PE (Windows), ELF (many Unices), and Mach-O (Mac OS X executables). Good luck.

You could develop a media player that incorporated a platform-independent module loader, but you'd still have the same cross-platform problem (granted, to a lesser extent).

Another problem. Who dictates when the codec interfaces to the player break? (It's going to happen; nothing is ever right the first time.) When that happens, do all the old video files suddenly become unplayable? Do you incorporate some sort of interface version tag of sorts to prevent that from occurring? How do you keep that tag constantly accessible through many changes that could break binary compatibility in weird ways?

User avatar
Declan_Vee
Mr. Poopy Pants
Joined: Mon Feb 18, 2002 10:56 am
Location: SA, Australia
Org Profile

Post by Declan_Vee » Wed Apr 16, 2003 1:26 pm

Yeah I figured as much... sounds too much like hard work.
Also I just remembered, these videos exist... sort of. I think they're Bink video files with a player that are executables. Mostly used for Game promos and such (had I not been dealing with Activision, I would have forgotten).
AMV Search | AMV Guides
AMV Live. "It's like Iron Chef, only too many cooks will spoil the broth"

trythil
is
Joined: Tue Jul 23, 2002 5:54 am
Status: N͋̀͒̆ͣ͋ͤ̍ͮ͌ͭ̔̊͒ͧ̿
Location: N????????????????
Org Profile

Post by trythil » Wed Apr 16, 2003 1:31 pm

Declan_Vee wrote:Yeah I figured as much... sounds too much like hard work.
Also I just remembered, these videos exist... sort of. I think they're Bink video files with a player that are executables. Mostly used for Game promos and such (had I not been dealing with Activision, I would have forgotten).
"Hard work" isn't the problem; I'm more interested in how you'd address the issues ;)

User avatar
Quu
Joined: Tue Dec 26, 2000 1:20 pm
Location: Atlanta, GA
Contact:
Org Profile

Post by Quu » Wed Apr 16, 2003 2:22 pm

actually... bink executable is kind of the oposite... its not a video file with the codec embedded in it

its more like the player with the video file embeded into it...
Lead me not to temptation, for I have deadlines

User avatar
RadicalEd0
Joined: Mon Jun 24, 2002 2:58 pm
Org Profile

Post by RadicalEd0 » Wed Apr 16, 2003 4:06 pm

:\ well the only new divx codec is the divx 5.04 beta (codenamed schizo)
but that dosent have anything like you're talking about.
HMMMMMMmm
dunno
NMEAMV: PENIS
NMEAMV: IN
NMEAMV: YO
NMEAMV: MIXED
NMEAMV: DRINK

User avatar
koronoru
Joined: Mon Oct 21, 2002 10:03 am
Location: Waterloo, Ontario
Org Profile

Great idea! Wonderful! Amazing! Sugoi!

Post by koronoru » Thu Apr 17, 2003 10:40 am

I love the idea of embedding the codec in the video, because there are already far more videos I want to watch than I have time or bandwidth to download. If some of the videos would require me to download and execute binary software that comes included with the video and which almost certainly won't be compatible with my system anyway, then that'll help me cut titles from my list.

"Hey, man, I got this great new drug! It's in my bloodstream now, so to get high, all you have to do is inject yourself with some of my blood!" Is someone who wants to live a long time likely to say "yes" to that offer? Downloading binaries from God knows where, is the computer equivalent.

Locked

Return to “Video & Audio Help”