Flash, Uqbar, vOrbis Tertius: Video streaming and its Converters



Posted: Wednesday, September 14, 2005

by
http://www.sciprint.org

Flash, Uqbar,1 vOrbis Tertius:2

Video streaming and its Converters







As you may already know, the most recent hype in internet-media news is how to deliver video-streaming content efficiently. While there is no accepted standard for doing so, it seems that video-streaming technologies from conventional web could be used, of course with a few modification. A good alternative to provide videostreaming service in your homepage is using 'flv' (flash video format), which seems to become a ubiquitious format in the next future. This is because 'flv' is much more efficient in size, good quality, and supported by Macromedia, see tabel below [1]:




Player




Coverage




Installer Size




Formats




Flash Player




93 %




0.48 MB




FLV




Windows Media Player




61 %




9.66 MB




WMV,AVI,MP4,MPG




Real Player




57 %




11.68 MB




RM,RAM,AVI,MPG




Quicktime Player




47 %




11.00 MB




MOV,MPG,MP4










An obvious problem for video-content providers is how to manage and convert various contents effectively, and mostly on-the-fly. The present note is intended to discuss how to do so, albeit this is not so complete review.







A few good source




It seems that there is no good converter beside 'ffmpeg' to autoconvert your videocontent to flv format, except perhaps tcpmp (http://www.tcpmp.org), which has been publicly announced as 'opensource' media player. But it also consists ffmpeg. (If you want to find good media player for mpeg files and know good enough on C, tcpmp perhaps is a good tool).







Despite lack of good standards to do autoconvert to flv, there are always some ways to do things, including :




(i)--> ffmpeg: http://ffmpeg.sourceforge.net/index.php




It has been reported that it could be used, but not 'so perfect.'




"Here is the stream definition for ffserver.conf (also for higher resolutions):



Feed feed1.ffm

Format flv

VideoFrameRate 25

VideoSize 64x48

VideoBitRate 48

VideoCodec flv

NoAudio

"




See discussion on: http://antville.medien.uni-weimar.de/ape/stories/5098/

But not sure yet, how exactly it could be integrated online via php.




There are some problems in using this method, like not 'so perfect' streaming quality. Not sure how good is the process, but it could be like 'broken images' (not smooth). For other problems with ffmpeg which has been reported, see:

--> http://blog.gmane.org/gmane.comp.video.ffmpeg.user/day=20050810

--> http://www.phpbuilder.com/board/history/topic.php/10299440-1.html




The good news is that there is already GUI made for this ffmpeg, which can be found at: http://www.videohelp.com/tools?tool=gui4ffmpeg







(ii) --> use alternative execute file (.exe) to convert movie file into

flv inside a 'java runtime' (called by php using include). I mean,

something like an 'inverse way' of this method (flv to swf):




Inside Java:

Runtime.getRuntime().exec ("flv2swf.exe -i input.flv -o output.swf").waitFor()

see: http://www.flv2swf.com/english.htm




But don't verify whether existing executable files (to convert avi to flv) could

be used in this way (see point (v)).







(iii)--> develop 'extraengine' in C#/VBNet, so after user uploads the file (avi)

the php send it to C#/VBNet-engine --> translates to flv --> send the file

back to PHP (or flvfolder).

"Aspose.Flash developers can dynamically manipulate and generate

Flash® content directly from their ASP.Net code"

http://www.aspose.com/Downloads/Product.aspx?name=Aspose.Flash




(iv) --> Require the videocontent developer(s) to convert first by themselves

prior to upload, in order to limit the bandwidth (flv is efficient).

we can also include a guide for doing so, for instance:




http://www.macromedia.com/devnet/mx/flash/articles/flv_exporter_print.html

http://livedocs.macromedia.com/flash/mx2004/main_7_2/wwhelp/wwhimpl/common/html/wwhelp.htm?context=Flash_MX_2004&file=00000353.html

http://www.jeroenwijering.com/?item=FLV+Video+Compression

http://www.flashvideostream.com/

http://www.flvplayer.com/questions.php




(v)--> translate 'offline' each video file to FLV using:




a) The Flash Video Exporter, which comes with Flash MX 2004 Pro, or

b) http://www.sothink.com/flashvideoencoder/index.htm , or

c) "Video to Flash Converter PRO is a batch Video to SWF converter for converting your digital videos to SWF Flash files. Video to

Flash Converter PRO provide SWF file ready for the web or ready

to be streamed across Internet connections. Batch Video to SWF Flash

files converting. Convert digital videos (AVI/ASF/WMV/MPEG) to SWF

and FLV Flash format. Video to Flash Converter PRO provide SWF/FLV

files ready for the web or ready to internet use. "




For you who require a good introduction to flv format and how it could be alternative video-streaming format in the near future, see discussion concerning 'autoconvert to flv' at:




http://flash-forum.flashdevils.com/showthread_fd/t-188828.Audio%20Video%20streaming%20problem.html




Another recent conference held at Feb 2005: "It's not the flash part that is hard":

http://www.sti-media.com/blog/archives/000101.html







Concluding note




All in all, despite lack of wide consensus for video-streaming format, it seems that ffmpeg is the best choice so far, provided we could ensure that streaming is delivered at the most-efficient as possible, and use good converter to facilitate autoconverting between various media-file formats.




Apparently, rapid changes will keep on coming in this video-streaming issues, and the only thing to be sure is that the users will see video-streaming with better quality and low-size than before. Perhaps someday you will see full videostreaming-version of your favorite movie in the size of MP4 compression files. In this way, it could be understood why iPod folks also want to bring this dream stream into reality before the end of this year.




So what do you think, friends?







Sept. 7th, 2005




VC

email:vxianto@yahoo.com







Note:

If you would like to do FLV-based content integration with industry quality software, try: PHPTurbine from http://www.blue-pac.com/products/phpturbine/ But at this time, PHP Turbine requires PHP 4 engine running on the operating systems: Windows 2003 Server family, Windows XP Professional, Windows 2000 family.







References:

[1] http://www.jeroenwijering.com/?item=FLV+Video+Compression

[2] http://klaus.geekserver.net/flash/streaming.html

[3] http://www.swift-tools.net/

[4] http://libflv.sourceforge.net/

[5]MING CVS snapshots [klaus.geekserver.net/ming]

[6] http://www.blue-pacific.com/products/download.htm

[7] http://www.actionscript.org/software/converters_to_swf/more2.shtml

[8] Riva Free converter to FLV, http://rivavx.com/?encoder

2http://www.jcraft.com/jorbis/

This Article has been viewed 2,348 times. (Not updated in real-time.)
No comments yet.
We want your comments! If you can read this, you don't have javascript enabled, so you can't use this comment system. Please enable javascript.