2011-06-07 55 views
0

嘿,只是一個簡單的問題,任何人誰做到了這一點。我想創建一個視頻管網站。我之前完成了文件上傳,但是想知道是否有人可以給我建議我計劃要做的事情。視頻上傳:推薦流程?

我計劃的方式是在我的web目錄中有一個文件夾,並在病毒掃描和檢查MIME後將視頻上傳到文件夾中。然後視頻將被轉換並使用FFMPEG壓縮成flv。

我將更改名稱並將視頻引用ID存儲在mysql中,以便可以提取並投放文件名。

我會用HTTP_Download的Flash播放器

$dl = new HTTP_Download(); 
$dl->setFile("$path"); 
$dl->setContentDisposition(HTTP_DOWNLOAD_ATTACHMENT, "$path"); 
$dl->setContentType('video/flv'); 
$dl->send(); 

人有什麼建議可以提供文件服務?將所有視頻放在一個目錄中是一個好主意嗎?

回答

1

你可能要考慮一個基於Java的上傳器,因爲PHP在大型上傳時可能會遇到超時問題。

你也做FFMPEG處理作爲CRON作業不在上傳,因爲它需要很長時間。

尋找像Wowza Streaming Server這樣的東西來爲視頻提供服務。允許流媒體和一切都在根之上。我用UID命名每個視頻並向Flash視頻播放器發送參數以決定播放哪個視頻。

+0

非常感謝niggles,你的意思是一個cron工作? – Scarface 2011-06-07 22:53:25

+0

而且,Wowza究竟是一個什麼地方存儲視頻和流如獨立的服務器提供商? – Scarface 2011-06-07 23:00:29

+1

CRON作業是您可以設置爲以特定間隔運行的自動過程。因此,不是直接處理視頻,而是將其放入臨時目錄並用「未處理」標記寫入數據庫條目。 cron作業將每分鐘查看「未處理」條目並在後臺處理它們。 Wowza是您安裝在您自己的服務器上的流媒體服務器(軟件)。 – niggles 2011-06-07 23:09:26

1

在哪裏以及如何存儲它們將在很大程度上取決於他們需要怎樣的安全是(即如果人們能夠訪問直接在目錄中的文件?還是應該把它比存儲更安全?)

如果直接訪問沒問題,那麼把它們放在一個文件夾中就沒問題。如果沒有,那麼您可能需要隱藏文件夾名稱,將它們存儲在安全的數據庫中或存儲在服務器之外無法訪問的文件夾中。

此外,我希望你知道這樣的服務將消耗大量的存儲空間和帶寬?我希望你有一個可擴展的解決方案,如果你真的認真對待這個問題的話。

+0

我知道帶寬和使用情況。我正在構建一個解決方案,但我將不得不隨時擴展它。我有限的資金哈哈。任何推薦的服務提供商我應該從專用服務器開始嗎?另外,我不希望用戶訪問視頻,除非他們正在流式傳輸視頻,所以您說我應該爲每個視頻上傳創建一個文件夾? – Scarface 2011-06-07 03:49:58

+1

絕對不是每個上傳的新文件夾。我會選擇將它們存儲在您的主要Web目錄中,以便在服務器外部無法直接訪問。然後將它們流到一個可訪問的地方。 – BraedenP 2011-06-07 07:11:03

+0

如何訪問根網站目錄之外的文件?你提到將它們流到一個地方。你是什​​麼意思? – Scarface 2011-06-07 22:51:30