งานเว็บไซต์แบบ Multimedia ที่มีการนำไฟล์ประเภทเสียงหรือวีดีโอมาแสดงนั้น นับว่าเป็นปัญหาที่ท้าทายโปรแกรมเมอร์ไม่น้อย เนื่องจากระบบที่จะต้องออกแบบมาเพื่อรองรับการใช้งานในปริมาณเยอะๆแล้ว เซิฟเวอร์และแบนวิดช์ ยังเป็นสิ่งจำเป็นที่จะช่วยให้ระบบทำงานได้อย่างราบรื่น เท่านั้นยังไม่พอ การแสดงผลยังเป็นปัญหากับผู้ใช้งานบางคนอีก
ย้อนกลับไปหลายปีก่อน ที่ยังไม่ค่อยมีสคริปต์ให้เราเล่นกันมากนัก ทางออกทางเดียวของการแสดงผลไฟล์ประเภทเสียงและวีดีโอ คือ Object โดยเรียกใช้งานผ่านเครื่องเล่น Windows Media Player ซึ่งแน่นอนว่าบนเครื่องส่วนใหญ่จะมีโปรแกรมนี้ติดตั้งมาด้วยกันแทบทั้งสิ้น แต่ข้อจำกัดก็ยังมีคือ จะต้องเป็นไฟล์ที่เจ้าโปรแกรมนี้รองรับเท่านั้น ซึ่งหากผิดแปลกออกไป จะทำให้หลายๆเครื่องไม่สามารถเล่นไฟล์ได้ตามต้องการ ซึ่งคำสั่งที่ใช้เรียกที่เรารู้จักกันนั่นก็คือ
<object id="MediaPlayer1" CLASSID="CLSID:22d6f312-b0f6-11d0-94ab-0080c74c7e95" codebase="http://activex.microsoft.com/activex/controls/mplayer/en/nsmp2inf.cab#Version=5,1,52,701" standby="Loading Microsoft Windows® Media Player components..." type="application/x-oleobject" width="280" height="256"> <param name="fileName" value="one.mpg"> <param name="animationatStart" value="true"> <param name="transparentatStart" value="true"> <param name="autoStart" value="true"> <param name="showControls" value="true"> <param name="Volume" value="-450"> <embed type="application/x-mplayer2" pluginspage="http://www.microsoft.com/Windows/MediaPlayer/" src="one.mpg" name="MediaPlayer1" width=280 height=256 autostart=1 showcontrols=1 volume=-450> </object>
ซึ่งอาจจะแตกต่างกันไปเล็กน้อย แล้วแต่ลูกเล่นของคนเขียนแต่ละคน แต่จะมีที่เหมือนกันคือ การเรียกใช้ค่า CLASSID ของเครื่องเล่น ซึ่งเห็นว่าการเขียนเองทั้งหมดนั้นค่อนข้างจะยุ่งยาก แถมการใช้งานแบบนี้ยังมีช่องว่างคือ หากบราวเซอร์ไม่รองรับ หรือเครื่องที่ไม่มี Windows Media Player มันจะไม่สามารถเล่นได้ ดังนั้นทางออกในการแก้ปัญหานี้ หลายท่านจึงไปเลือกใช้ Script ประเภท Flash Media Player ที่สามารถรองรับไฟล์ได้หลากหลายกว่า
HTML 5 เป็นภาษาใหม่ได้ทำการออกแบบมาเพื่อช่วยเพิ่มคุณสมบัติการแสดงผลของเว็บเพจ รวมทั้งแก้ปัญหาจากบางคำสั่งของรุ่นก่อนๆ อย่างการแสดงผลไฟล์มีเดียก็ได้รับการพิจารณา ทำให้เกิดเป็นคำสั่ง <video> ขึ้นมา
Player Framework เป็นสคริปต์ Opensource ออกแบบเพื่อเพิ่มประสิทธิภาพในการแสดงผลไฟล์ประเภทมีเดีย ด้วยภาษา HTML5 ซึ่งรองรับการใช้งานผ่าน Silverlight ที่เข้ามามีบทบาทในการแสดงผลแบบมีเดียในเว็บไซต์บนวินโดว์มากขึ้น สามารถออกแบบหน้าตา เสริมปลักอิน การติดโฆษณา และความสามารถอื่นๆอีก
การติดตั้งใช้งาน
ก่อนอื่นเราจะต้องดาวน์โหลด Player Framework และ MMP Player Framework 2.6 มาวางไว้บนเว็บไซต์เราก่อน และด้วยที่ทำงานผ่าน Javascript เราจึงสามารถเรียกไฟล์ได้แบบทั่วไปเลยคือ
<script src="js/playerframework.min.js"></script>
<link rel="stylesheet" href="css/playerframework.min.css">
<script>
var myPlayer = new PlayerFramework.Player("myVideo");
</script>
จากนั้นเราจะเรียกแสดงผลวีดีโอด้วยคำสั่ง HTML 5
<video id="myVideo" class="pf-video" width="480" height="320" controls="controls" poster="http://smf.cloudapp.net/html5/media/bigbuck.png">
<source src="http://smf.cloudapp.net/html5/media/bigbuck.mp4" type='video/mp4; codecs="avc1.42E01E, mp4a.40.2"' />
<source src="http://smf.cloudapp.net/html5/media/bigbuck.webm" type='video/webm; codecs="vp8, vorbis"' />
<source src="http://smf.cloudapp.net/html5/media/bigbuck.ogv" type='video/ogg; codecs="theora, vorbis"' />
<object class="pf-silverlight" data="data:application/x-silverlight-2," type="application/x-silverlight-2" width="480" height="320" data-poster="http://smf.cloudapp.net/html5/media/bigbuck.png">
<param name="source" value="xap/SilverlightPlayer.xap"/>
<param name="onError" value="onSilverlightError" />
<param name="onLoad" value="onSilverlightLoad" />
<param name="minRuntimeVersion" value="4.0.50401.0" />
<param name="autoUpgrade" value="false" />
<param name="enableGPUAcceleration" value="true" />
<param name="windowless" value="true" />
<param name="InitParams" value="scriptablename=Player,autoplay=false,mediaurl=http://smf.cloudapp.net/html5/media/bigbuck.mp4"/>
<div class="pf-static">
Silverlight is not installed or a later version is required.
</div>
</object>
</video>
ซึ่งคำสั่งนี้ บราวเซอร์จะพยายามแสดงผลด้วยคำสั่ง HTML 5 ก่อน หากไม่สามารถแสดงได้ ระบบจะไปทำการเรียก Silverlight เข้ามาเป็นตัวแสดงแทน
สรุป ก็เอาไว้เป็นอีกตัวเลือกหนึ่งสำหรับผู้ที่กำลังหาวิธีการแสดงผลไฟล์ประเภทมีเดีย ส่วนตัวผมแล้วยังคงติดใจกับพวก Flash Media Player มากกว่า





