รู้จักมานานแล้วครับ haXe แต่ไม่เคยได้ลองจริงๆ สักที ได้โอกาสเลยเอา code สำหรับ load video มาโหลด mp4 แล้วเล่นดู ใช้งานได้ดีไม่มีปัญหา แต่สรุปได้ว่า ถ้าจะเขียน flash อยู่แล้ว และเน้น as3 เป็นหลัก haXe อาจไม่ค่อยมีประโยชน์เท่าไหร่นัก แต่ถ้าจะแปลงเป็น C++ เนี่ย น่าสนมาก รอตัว C++ เสร็จแล้วจะมาลองใช้อีกที
เมื่อลอง compile ดูได้ไฟล์ swf ขนาด 4kb เพื่อโหลดไฟล์ mp4 มาเล่นอีกที เล็กมากๆ ครับ สะดวกติดไว้เล่นเพลงบนเว็บไซต์มาก
class Main
{
static var videoURL:String = "test.mp4";
static var connection:NetConnection;
static var stream:NetStream;
static function main() {
connection = new NetConnection();
connection.addEventListener(NetStatusEvent.NET_STATUS, netStatusHandler);
connection.addEventListener(SecurityErrorEvent.SECURITY_ERROR, securityErrorHandler);
connection.connect(null);
}
static function netStatusHandler(event:NetStatusEvent) {
switch (event.info.code) {
case "NetConnection.Connect.Success":
connectStream();
break;
case "NetStream.Play.StreamNotFound":
trace("Unable to locate video: " + videoURL);
break;
}
}
static function connectStream() {
var stream:NetStream = new NetStream(connection);
stream.addEventListener(NetStatusEvent.NET_STATUS, netStatusHandler);
stream.addEventListener(AsyncErrorEvent.ASYNC_ERROR, asyncErrorHandler);
stream.addEventListener('onCuePoint', function(e) { trace(e.time); } );
var video:Video = new Video();
video.attachNetStream(stream);
stream.play(videoURL);
var mc:MovieClip = new MovieClip();
mc.addChild(video);
}
static function securityErrorHandler(event:SecurityErrorEvent) {
trace("securityErrorHandler: " + event);
}
static function asyncErrorHandler(event:AsyncErrorEvent) {
// ignore AsyncErrorEvent events.
}
}
ที่มาของตัวอย่าง: http://livedocs.adobe.com/flash/9.0/ActionScriptLangRefV3/flash/media/Video.html#includeExamplesSummary
ทำไมต้อง mp4 ด้วย เนื่องด้วยตัว Flash 10 รองรับ AAC ซึ่งเป็นการเข้ารหัสเสียงที่สามารถรวมอยู่ในไฟล์ 3gp, mp4, m4a นอกจากจะมีขนาดเล็กแล้วยังคุณภาพดีกว่า mp3 ในขนาดเท่ากันมาก โดยเฉพาะ AAC-HE
(เชื่อไหมว่ามี flash programmer อีกหลายคนไม่รู้ -_-" และอีกหลายคนยังใช้ as2 กันอยู่ ปรับตัวด่วน!)
ไม่มีความคิดเห็น:
แสดงความคิดเห็น