Video dosyalarini (avi,mpg,wmv) flv formatina çevirmek

8/26/2008

Video dosyalarini flash video (flv) formatina çevirebilmenin su an için en kolay ve kullanisli yolu açik kaynakli bir program olan ffmpeg''i kullanmak.

 

ffmpeg''in windows binary''lerini http://ffdshow.faireal.net/mirror/ffmpeg/ adresinden çekip içerigini( pthreadGC2.dll , ffmpeg.exe, ffplay.exe dosyalarini ) websitenizin bulundugu dizine kopyalayin.

asp.net''ten çevirme islemini yapmak için;

using System;

using System.Data;
using System.Configuration;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
using System.Diagnostics;
protected void convert_Click(object sender, EventArgs e)
{
Process ffmpeg;
string video;
 
string flv;
video = Page.MapPath("1.avi"); //Kaynak dosya yolu
flv = Page.MapPath("") + "\\\\video.flv"; //Hedef dosya yoluffmpeg = new Process();
ffmpeg.StartInfo.Arguments = " -i \\"" + video + "\\" --s 320x240 -b 240kb -ab 56kb -ar 22050 -ac 1 -g 240 \\"" + flv+ "\\"";
//Programa gönderilen parametreler youtube''un görüntü ve ses sikistirma oranina en yakin orani saglamaya yönelik parametreler, programin dökümantasyonunu inceleyerek daha farkli sekilde optimize edebilirsiniz
ffmpeg.StartInfo.FileName = Page.MapPath("ffmpeg.exe");
ffmpeg.Start();
}

klasik asp ile su sekilde yapabilirsiniz;

<%
Mpg="1.avi"
Flv="video.flv"
Set WScript = Server.CreateObject("WSCRIPT.SHELL")
WScript.Run(Server.Mappath("ffmpeg.exe") & " -i " & server.MapPath(Mpg) &" -y -ab 56 -ar 22050 -b 500 -r 15 -s 320*240 "& server.MapPath(Flv))
%>

 

Ancak klasik asp''de bu islemi yaparken IUSR_Bilgisayarinizin_Adi ve IWAM_Bilgisayarinizin_Adi kullanicilarina ffmpeg.exe dosyasini çalistirma hakkini atadiginizdan emin olun.

Bunlar disinda ffmpeg programina gönderilen parametrede kaynak ve hedef dosyalari arasina -s 320*240 -vframes 10 -f mjpeg parametresini gönderirseniz hedef dosyayi da örnegin preview.jpg olarak tanimlarsaniz videodan bir sahneyi yakalamis olur ve onu da video için giris görseli olarak kullanabilirsiniz.