ffmpeg下載安裝和簡單應用(C#音頻格式轉換)

來源:互聯網
上載者:User

標籤:bsp   路徑配置   開源   nis   ons   dmi   start   轉換   license   

ffmpeg下載安裝和簡單應用

先介紹一下ffmpeg:FFmpeg是一個自由軟體,可以運行音頻和視頻多種格式的錄影、轉換、流功能,包含了libavcodec —這是一個用於多重專案中音頻和視頻的解碼器庫,以及libavformat——一個音頻與視頻格式轉換庫。
名字由來:"FFmpeg"這個單詞中的"FF"指的是"Fast Forward"[2]。有些新手寫信給"FFmpeg"的項目負責人,詢問FF是不是代表“Fast Free”或者“Fast Fourier”等意思,"FFmpeg"的項目負責人回信說“Just for the record, the original meaning of "FF" in FFmpeg is "Fast Forward"...”

一、ffmpeg下載

先到http://ffmpeg.org/下載ffmpeg安裝檔案

 

接著中間部分黑體字 Latest Zeranoe FFmpeg Build Version下面有系統標註,32位還是64位,並且都有三種版本,簡單介紹一下,都是我理解的想法,不太懂英文,大家見諒。
Static Versions是整合版,就是全都封裝在一個exe可執行檔裡了。
Shared Versions是共用版,這個是總的執行程式和一些lib庫檔案在一個檔案夾裡,應該是為了可以自訂庫吧,我猜的。
Dev Versions是開發版,裡面完全是指令碼,看樣子像Linux下的,這個真不懂。

大家按自己的系統位元建議選擇Static Versions整合版,只需要一個檔案ok了,乾淨方便。

 

二、ffmpeg安裝

a、解壓下載完的ffmpeg-20150407-git-c4b2017-win64-shared

解壓後,(doc檔案夾就是關於文檔,licenses是聲明,這個有個開源軟體協議,瞭解詳情請百度,presets檔案夾裡貌似是一些編碼的預設設定吧,我猜的,不懂,想瞭解還是百度吧,度娘真是萬能的)

b、將ffmpeg.exe的路徑配置到環境變數裡的Path裡

三、ffmpeg驗證

Alt+r,輸入cmd,在dos命令列輸入 ffmpeg

出現下列提示,即表示ffmpeg安裝成功

 

四、ffmpeg簡單應用

目前我是用來把錄製好的視頻轉換成圖片

ffmpeg.exe -i 路徑\待轉換的檔案名稱.mp4 -r 30 -s 640*480 轉換後儲存的路徑\檔案夾名/%d.jpg 

ffmpeg.exe -i C:\Users\Administrator\Desktop\video\20150407_174405.mp4 -r 30 -s 640x480 C:\Users\Administrator\Desktop\video/%d.jpg

 

-i 是選擇被執行檔案

-r 30 是轉換後視頻的幀率,就是每秒的幀數

-s 640*480 是轉換後視屏的解析度

 

 

 

C#代碼實現

首先,得下載個“ffmpeg.exe” 外掛程式,然後把它放到你的項目中,如:
程式中會調用該檔案,以助於轉換音頻格式!

        /// <summary>        /// 音頻格式轉換        /// </summary>        /// <param name="pathBefore">轉換前檔案路徑/檔案名稱</param>        /// <param name="pathLater">轉換後檔案路徑/檔案名稱</param>        /// <returns></returns>        public string ConvertToMp3(string pathBefore, string pathLater)        {            //string pathBefore = MapPathFile("~/Attachment/AlertMessage/") + "20180309194843";            //string pathLater = MapPathFile("~/Attachment/AlertMessage/") + "20180309194855.mp3";            string c = MapPathFile("/Resources/ffmpeg/") + @"ffmpeg.exe -i " + pathBefore + " " + pathLater;            string str = RunCmd(c);            return str;        }        /// <summary>        /// 執行Cmd命令        /// </summary>        private string RunCmd(string c)        {            try            {                ProcessStartInfo info = new ProcessStartInfo("cmd.exe");                info.RedirectStandardOutput = false;                info.UseShellExecute = false;                Process p = Process.Start(info);                p.StartInfo.UseShellExecute = false;                p.StartInfo.RedirectStandardInput = true;                p.StartInfo.RedirectStandardOutput = true;                p.StartInfo.RedirectStandardError = true;                p.Start();                p.StandardInput.WriteLine(c);                p.StandardInput.AutoFlush = true;                Thread.Sleep(1000);                p.StandardInput.WriteLine("exit");                p.WaitForExit();                string outStr = p.StandardOutput.ReadToEnd();                p.Close();                return outStr;            }            catch (Exception ex)            {                return "error" + ex.Message;            }        }

 

 

ffmpeg下載安裝和簡單應用(C#音頻格式轉換)

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.