بسیاری از دوستان دات نت نویس برای نوشتن وب سایت هایی که مثل سایت یوتیوب فایل های ویدئویی را به فرمت FLV تبدیل می کرد و در پلیر نشان می داد در بخش تبدیل فایل به FLV مشکل داشتند و راه حلی برای آن پیدا نمی کردند. در این مطلب قصد دارم روش تبدیل فرمت های مختلف ویدئویی را به FLV در ASP.net به زبان C# آموزش بدهم.
برای تبدیل فرمت های ویدئویی می بایست ابتدا برنامه FFMPEG را دانلود و در روت پروژه قرار دهید که این برنامه را می توانید از لینک زیر دانلود نمایید:
http://www.4shared.com/file/tb_Yajfq/ffmpeg.html
قابل ذکر است برنامه فوق نسخه رایگان می باشد و برای استفاده از این روش در سایتتان می بایست لایسنس FFMPEG را خریداری کنید.
پس از قرار دادن FFMPEG در روت پروژه جهت تست کد دو دکمه در صفحه قرار بدهید که یکی برای گرفتن عکس از فیلم می باشد و دیگری برای تبدیل فیلم.
کد ذیل مربوط است به گرفتن عکس از بخشی از فیلم بعنوان تصویر بند انگشتی:
Process ffmpeg; // creating process string video; string thumb; video = Page.MapPath("1.mp4"); // setting video input name with path thumb = Page.MapPath("") + "\\frame.jpg"; // thumb name with path ! ffmpeg = new Process(); ffmpeg.StartInfo.Arguments = " -i \"" + video + "\" -s 108*80 -vframes 1 -f image5 -vcodec mjpeg \"" + thumb + "\""; // arguments ! ffmpeg.StartInfo.FileName = Page.MapPath("ffmpeg.exe"); ffmpeg.Start(); // start !
کد ذیل مربوط است به تبدیل فیلم به فرمت FLV:
Process ffmpeg; // creating process string video; string mpg; video = Page.MapPath("1.mp4"); // setting video input name with path mpg = Page.MapPath("") + "\\ali\\video.flv"; // thumb name with path ! ffmpeg = new Process(); ffmpeg.StartInfo.Arguments = " -i \"" + video + "\" -target vcd \"" + mpg + "\""; // arguments ! ffmpeg.StartInfo.FileName = Page.MapPath("ffmpeg.exe"); ffmpeg.Start(); // start !
توجه داشته باشید با تغییر دادن کد های بالا می توانید فایل ها را از کاربر دریافت و تبدیل نمایید.
امیدوارم مطلب فوق بدرد دوستان دات نت نویس بخورد.
همین مطلب در سایت برنامه نویس