在freebsd上裝ostube的教學......

OS環境:FreeBSD 6.2
安裝基本套件:Apache22+Mysql50+PHP5+PHP5-extension

先至www.ostube.de/註冊後,下載ostube免費版

安裝Ostube所需套件:
1.安裝mplayer
#cd /usr/ports/multimedia/mplayer;make install clean

2.安裝mencoder
#cd /usr/ports/multimedia/mencoder;make install clean
3.安裝ruby
#cd /usr/pors/lang/ruby18;make install clean

4.安裝flvtool2
#cd /usr/ports/multimedia/ruby-flvtool2;make install clean

5.安裝GD套件(若沒意外,裝完APACHE與MYSQL與RUBY就會自行安裝)
#cd /usr/ports/


將下載的ostube壓縮檔解至網站資料夾,以下解壓縮至/data/www/html/ostube


更改ostube資料夾權限
chmod 755 ostube
chmod 777 templates_c
chmod -R 777 media
chmod -R 777 ostube.log
chmod -R 777 conversion.log
chmod -R 777 include/config.php


建立ostube資料庫及帳號、密碼
#mysql -u root -p
#create database ostube(資料庫名稱為ostube);
#grant all privileges on ostube.* to 帳號@localhost identified by '密碼';
#flush privileges;


更改php檔案上傳的最大限制:
#vi /usr/local/etc/php.ini
修改upload_max_filesize值,至少大於100MB,等會安裝完後,可至ADMIN的管理界面改成較低的容量
另若要上傳大檔案,也需修改下列參數:
max_execution_time
memory_limi
post_max_size
file_uploads 


以瀏覽器進行安裝
http://your.domain.name/ostube/(按畫面右上角英國國旗,將語系改成英文)
STEP1:若按照先前程式安裝,所有的設定都會打綠色勾勾。
在資料庫設定部份:
DB hostname:localhost
DB username:先前設定的帳號
DB password:先前設定的密碼
DB database:先前設定的資料庫名稱ostube
STEP2:
1.Homepage directory
Absolut path:設定ostube資料夾的絕對位置
Relative path:設定網站的相對位置
2.Activated Media
設定影片、聲音、圖像、文件是否可上傳
3.External programs
額位的模組,若按照先前步驟,應不會有問題,若有出現黃色的警告,再至ports裡安裝該套件
4.Video conversion settings
設定影片上傳的品質

STEP3:
設定進入網站的一些資料與admin的資料

將install資料夾移除或重新命名,以確保安全

設定ostube資料夾裡的cgi-bin裡的uu_default_config.pm
#vi uu_default_config.pm
1.upload_dir => $ENV{'DOCUMENT_ROOT'} . '/ostube/media/tmp/',
2.redirect_url => 'http://' . $ENV{'SERVER_NAME'} . '/ostube/upload.php',
3.path_to_upload => 'http://'. $ENV{'SERVER_NAME'} . '/ostube/uploads/',

若機器本身有跑cgi,則將此cgi-bin目錄移至網站根目錄(以https.conf裡的cgi-bin之alias為準)
若機器不跑cgi,就將httpd.conf裡cgi的alias改至ostube資料夾下
#vi /usr/local/etc/apache22/httpd.conf
將原 ScriptAlias /cgi-bin/ "/usr/local/www/apache22/cgi-bin/"註解掉,加入以下設定(路徑以安裝路徑為準)
ScriptAlias /cgi-bin/ "/data/www/html/ostube/cgi-bin/"

AllowOverride None
Options ExecCGI -MultiViews +SymLinksIfOwnerMatch
Order allow,deny
Allow from all


重跑Apache
#/usr/local/etc/rc.d/apache22 restart

此時若上傳影片會出現問題
#vi conversion.log
2007-12-26 - 15:28:43 :: There was a problem with the encoder command line:
- /usr/local/bin/mencoder /tmp/4.tmpvideo -o /data/www/html/ostube/media/vide
o/4.flv -of lavf -lavfopts i_certify_that_my_video_stream_does_not_use_b_fram
es -oac mp3lame -lameopts abr:br=56 -srate 22050 -ovc lavc -lavcopts vcodec=f
lv:vbitrate=400:trell:v4mv:cbp:last_pred=3 -vf scale=480:327

原因是出在指令裡有i_certify_that_my_video_stream_does_not_use_b_frames,
若要刪除此指令,需修改程式碼(convert.php裡將162與164行註解掉,強迫將此指令清除掉)
或至資料庫(ost_config裡的video_convert_string、video_convert_string_fast、video_convert_string_normal修改,有三筆)

這樣修改完後,就可以開始上傳影片檔,並自動轉成flv檔,
但奇怪的是,轉wmv檔就是會有問題。
這是mencoder的轉檔參數問題,所以就來個暴力的作法,
直接在convert.php裡設定轉檔參數
#vi convert.php
在第144行至154行,
將$main->getConfig("***********")改成下列指令(直接指定參數,不讀取資料庫了):
-ofps 12 -oac mp3lame -of lavf -srate 22050 -ovc lavc -lavcopts vcodec=flv:vbitrate=200:mbd=2:mv0:trell:v4mv:cbp:last_pred=3 -vf scale="
如:

case "normal":
$conversionString = "-ofps 12 -oac mp3lame -of lavf -srate 22050 -ovc lavc -lavcopts vcodec=flv:vbitrate=200:mbd=2:mv0:trell:v4mv:cbp:last_pred=3 -vf scale=";
break;
case "user":
$conversionString = "-ofps 12 -oac mp3lame -of lavf -srate 22050 -ovc lavc -lavcopts vcodec=flv:vbitrate=200:mbd=2:mv0:trell:v4mv:cbp:last_pred=3 -vf scale=";
break;
default:
$conversionString = "-ofps 12 -oac mp3lame -of lavf -srate 22050 -ovc lavc -lavcopts vcodec=flv:vbitrate=200:
mbd=2:mv0:trell:v4mv:cbp:last_pred=3 -vf scale=";

這樣的做法較沒彈性,而且所有的壓縮比都是一樣的,日後再來調校。 

留言

這個網誌中的熱門文章

十四、NAS4Free 新增一ZFS磁碟機