路灯灯杆高度:flv视频网站制作 使用Flex和PHP创建自己的视频应用 - MJ的日志 - 网...
来源:百度文库 编辑:九乡新闻网 时间:2024/10/05 23:48:40
flv视频网站制作 使用Flex和PHP创建自己的视频应用
默认分类 2009-07-13 23:49:29 阅读340 评论1 字号:大中小 订阅
flv视频网站制作 使用Flex和PHP创建自己的视频应用
英文原文:Creating MyTube with Flex and PHP原文地址:
http://www.on
原文作者:Jack Herrington
随着宽带的普及、硬盘空间的价格持续降低以及Adobe? Flash? Player 和 Flash Video的实用性,视频分享在互联网上疯狂流行是不足为奇的。像Google video 和 YouTube 这样的站点是领头羊,而现在已经到处都是小型的视频分享站点了。那么,如何才能加入到潮流中去呢?如何利用像PHP, Flash和Adobe Flex? 等技术来创建自己的视频分享网站?行动起来吧,它比你想象的要容易得多。
本文将告诉你如何创建网站的PHP部分以及如何使用Flex框架创建一个视频播放器。要创建一个YouTube的简单版本(我们可以称它为MyTube),你需要有一些适当的工具。
在服务器端,你需要PHP 和 MySQL。MySQL是用来存储有关视频的数据的(比如视频的文件名,缩略图,缩略图的高度和宽度,标题和描述)。PHP将完成格式化页面的工作,包括HTML和XML页面,这取决于你想要怎么做。
你还需要一个开源的软件:ffmpeg,它可以将用户上传的任何格式的视频文件转换成Flash Video文件(FLV)。当你向用户展示一个可用的视频列表时,这个 ffmpeg 软件还可以生成视频中某一帧的缩略图。毫无疑问,在视频分享的世界中ffmpeg 会是你最好的助手。它是一个功能强大、易于使用而且文档齐全的极为优秀的软件。
在客户端,有几种不同的用户界面可供选择。第一种就是类似于YouTube的HTML/Flash混合式的用户界面,另外一种就是完全基于Flash的用户界面。这里我选择了Flex框架来创建一个Flash程序,这个程序首先播放视频,然后会列出一个可用视频的列表并提供导航。
创建PHP后台
创建后台的程序之前,你必须先在MySQL建立一些数据库模式(schema)。首先,创建一个数据库,你可以使用mysqladmin命令行: 复制内容到剪贴板
代码:
<>movies.sql 复制内容到剪贴板
代码:
<>CREATE TABLE movies (
movieId INTEGER NOT NULL AUTO_INCREMENT,
title VARCHAR( 255 ),
source VARCHAR( 255 ),
thumb VARCHAR( 255 ),
width INTEGER,
height INTEGER,
PRIMARY KEY( movieId )
);
创建上传页面
事实上,创建一个上传视频的HTML页很简单,如下:
addmovie.html 复制内容到剪贴板
代码:
<>upload.php 复制内容到剪贴板
代码:
<>require "DB.php";
function converttoflv( $in, $out )
{
unlink( $out );
$cmd = "ffmpeg -v 0 -i $in -ar 11025 $out 2>&1";
$fh = popen( $cmd, "r" );
while( fgets( $fh ) ) { }
pclose( $fh );
}
function getthumbnail( $in, $out )
{
unlink( $out );
$cmd = "ffmpeg -i $in -pix_fmt rgb24 -vframes 1 -s 300x200 $out 2>&1";
$fh = popen( $cmd, "r" );
while( fgets( $fh ) ) { }
pclose( $fh );
}
function flv_imp
{
$fname = preg_replace( '/\..*$/', '', basename( $fname ) );
$flvpath = "$fname.flv";
$thumbpath = "$fname.gif";
converttoflv( $upfile, "movies\\$flvpath" );
getthumbnail( $upfile, "movies\\$thumbpath" );
$dsn = 'mysql://root@localhost/movies';
$db =& DB::connect( $dsn );
if ( PEAR::isError( $db ) ) { die($db->getMessage()); }
$sth = $db->prepare( 'INSERT INTO movies VALUES ( 0, ?, ?, ?, ?, ? )' );
$db->execute( $sth, array( $title, $flvpath, $thumbpath, 300, 200 ) );
}
flv_imp
?>
File sucessfully uploaded
当我打开addmovie.html 页面的时候,我做了一下截图,见图1.
图1.上传视频的页面
upload.php 页面中的脚本只是一些很基础的代码。如果向将其投入使用,你需要添加一些错误验证代码。这些脚本最大的问题就是处理较大的视频文件的能力。较大的视频文件需要转换很长时间,用户也需要等待很长时间才行。
为了能够支持大的视频文件(比如长于10秒钟的视频),我建议你简单地将视频复制到一个文件夹中,然后通知用户该视频稍后将会出现在网站上。然后你可以编写一段脚本来处理该文件夹中的视频。
这里我觉得有必要说明一下为什么要把视频转换成Flash Video。当然,在Flash Player中我需要使用Flash Video来观看视频。但是不只是那样,如果我不进行转换的话就要显示每个视频的播放器是什么,而且还要帮助用户找到并安装适用于他们系统的播放器。这将需要大量的工作。将所有的视频转换成Flash Video的最大优点——同时也是使用Flex编写的Flash Player的最大优点——就是它几乎可以在任何地方运行。
下一步就是创建一个类似YouTube的简单的 HTML/Flash 界面。
创建 HTML/Flash 界面
在Adobe Flex Builder? 2创建一个新的Flex 工程,然后创建一个Flash视频,这个视频通过给定的URL找到视频并播放。我们将这个Flex应用程序文件命名为simplemovie.mxml,代码如下:
simplemovie.mxml 复制内容到剪贴板
代码:
<>VideoDisplay 组件有一个 source 属性,它包含了视频FLV文件的URL地址。在这里,它的值是一个程序变量,这个变量是HTML中的
flv视频网站制作 使用Flex和PHP创建自己的视频应用 - MJ的日志 - 网...
FLV视频播放器的制作1
下载FLV视频的一种简便方法
如何获得Flv视频的网址
如何下载土豆/56/优酷等网站的视频?维棠Flv下载工具帮助你方便快速下载在线Flv视频 ...
如何下载土豆/56/优酷等网站的视频?维棠Flv下载工具帮助你方便快速下载在线Flv视频 ...
视频动画制作:制作FLV格式Flash视频
下载 FLV 格式视频的一种简便方法 - 哥们干杯!的日志 - 网易博客
位图的创建和使用
教您制作自己的视频相册
经外奇穴的部位和临床应用(视频)
【视频】使用直接套用的日志模版
下载视频并把Flv格式的视频转成MP3音频或其它格式的视频
豆渣钓饵的制作和使用 - 钓鱼技巧视频免费发布
不用任何软件下载网页上的FLV视频!
技巧:下载FLV视频的一种简便方法
一步一步教你创建【自己的网站】......
一步一步教你创建自己的网站
一步一步教你创建【自己的网站】*......
一步一步教你创建自己的网站
一步步教你创建自己的网站
一步一步教你创建自己的网站
一步一步教你创建【自己的网站】......
一步一步教你创建自己的网站