Consequently, in a very real sense, the decisions made by artists and creative professionals have an impact on the future of video delivered via the Web. The appeal of a ISO standard format, such as MP4 with codec XviD, that does not require any royalties for encoding or delivery, is obvious. Third party software developers would have access to the planning stages for improvements and extensions to the format. Distributing the XviD codec is also free for software developers. The main obstacle to the adoption of MP4/XviD has been that it isn't as simple to develop a video format as it was to develop JPEG. The superior functionality of alternatives has led to tentative adoption of the other formats, despite distribution software licensing fees and limited compatibility. Even Quicktime is not innocent of the problems cited here, because its most popular codecs were developed by Sorenson, a for-profit company with an interest in enforcing their patent rights. The main appeal of the Quicktime plugin is simply that, theoretically, it is capable of using video codecs that use emerging international standards for MP4 encoding that are largely free of patent entanglements (even JPEG is fighting off patent lawsuits).
# frame 1 var nc = new NetConnection(); nc.connect(null); var ns = new NetStream(nc); video.attachVideo(ns); ns.play('gopvideo.flv'); |
Almost all of the alternatives to Flash and .flv do not afford the Web programmer much control of playback. Efforts by Sun to produce a useful Media API that would not carry a licensing burden have failed. They even dropped support for MP3 files in their API because of legal issues. This means that Java applets that would deliver video need to use software that is not part of the default Java Plugin: a major disincentive to using Java as a rich media delivery mechanism.
Therefore, where Web-based video is concerned, as of 2004, the choices are fairly stark. Either you accept that video is linear and single-channel oriented, like television, or you deal with Flash's proprietary codec.
Audios = new Sound(); s.loadSound( "sound.mp3", streaming ); // streaming being a boolean, true or false s.setVolume(50); // half volume s.start(); |
In the following example, the onSoundComplete callback function is triggered as soon as
the sound has finished playing.
m = "sound1"; createEmptyMovieClip( m, 1 ); s = new Sound( eval(m) ); s.attachSound( "libsound1" ); s.onSoundComplete = function() { trace( "sound completed." ); }; s.start( 0, 1 ); // offset: 0, loops: 1 |
Real and Quicktime encoding
Mike Barron writes:
"Basically there is a QTServer
that can be accessed via any SFTP client. Anyone who has a Mac account
should have a QTServer account. If they don't, they need only see me to
get one. Live streaming can now be done using QuickTime Broadcaster
from virtually any Mac in the lab. And live, multi-camera shoots are
even possible by checking out a couple cameras, the switcher and a
Digital-to-Analog Converter.
There are also tutorials on our "stuff" site. The live streaming one is outdated and needs to be redone, but the main one is still fairly accurate. Here's the link if you want to point students to it: http://www2.sva.edu/stuff/home/workshops/QTSS_DEMO/INTRO.html"
Other resources