1. 程式人生 > >在windows系統上使用java程式碼在ffmpeg環境對音訊進行轉換wav,pcm,ogg

在windows系統上使用java程式碼在ffmpeg環境對音訊進行轉換wav,pcm,ogg

1.先裝一個ffmpeg環境,安裝方法請自行百度。

2.建一個類FfmpegTest

public class FfmpegTest {

	public static void main(String[] args) {
        String sPath = "d:\\music\\test.wav";
        String tPath = "c:\\music\\test.pcm";
        try {
            new FfmpegTest().changeAmrToMp3(sPath,tPath);
        } catch (Exception e) {
            e.printStackTrace();
        }
    }

    public void changeAmrToMp3(String sourcePath, String targetPath) throws Exception {
        String webroot = "c:\\ffmpeg\\bin";
        Runtime run = null;
        try {
            run = Runtime.getRuntime();
            long start=System.currentTimeMillis();
            System.out.println(new File(webroot).getAbsolutePath());
            //執行ffmpeg.exe,前面是ffmpeg.exe的地址,中間是需要轉換的檔案地址,後面是轉換後的檔案地址。-i是轉換方式,意思是可編碼解碼,mp3編碼方式採用的是libmp3lame
            //wav轉pcm
            //Process p=run.exec(new File(webroot).getAbsolutePath()+"/ffmpeg -y -i "+sourcePath+" -acodec pcm_s16le -f s16le -ac 1 -ar 16000 "+targetPath);
            //mp3轉pcm
            Process p=run.exec(new File(webroot).getAbsolutePath()+"/ffmpeg -y -i "+sourcePath+" -acodec pcm_s16le -f s16le -ac 1 -ar 16000 "+targetPath);
            //釋放程序
            p.getOutputStream().close();
            p.getInputStream().close();
            p.getErrorStream().close();
            p.waitFor();
            long end=System.currentTimeMillis();
            System.out.println(sourcePath+" convert success, costs:"+(end-start)+"ms");
        } catch (Exception e) {
            e.printStackTrace();
        }finally{
            //run呼叫lame解碼器最後釋放記憶體
            run.freeMemory();
        }
    } 

相關推薦

windows系統使用java程式碼ffmpeg環境音訊進行轉換wav,pcm,ogg

1.先裝一個ffmpeg環境,安裝方法請自行百度。2.建一個類FfmpegTestpublic class FfmpegTest { public static void main(String[]

windows系統部署java開發環境

JAVA部署 步驟二:安裝過程中,將開發工具安裝位置,更改為d:\java\jdk。 步驟三:新增環境變數:開始——>計算機 右鍵——>屬性——>高階系統設定——>環境變數 使用者變數 path = ...;d:\java\jdk\bin

Windows系統以C++打印出當前活動用戶的環境變量

include copyto cal ntb views read += tac windows.h 在Windows系統上以C++打印出當前活動用戶的環境變量,代碼如下(QT環境): [cpp] view plain copy void

Windows系統 HDFS java API的使用

1.建立資料夾 package hdfsApi1; import java.io.IOException; import java.net.URI; import java.net.URISyntaxException; import org.apache.hadoop

hadoop集群配置和在windows系統運用java操作hdfs

sdn 自帶 aux mkdir del 服務 services export rop 安裝 配置 概念 hadoop常用shell命令 使用java操作hadoop 本文介紹hadoop集群配置和在windows系統上運用java操作hdfs 安裝 http:

java程式執行在沒有java虛擬機器的windows系統

首先我們使用eclipse直接匯出的jar包。在該專案中右鍵選擇Export -->java資料夾中的 JAR file --下一步--在JAR flie出選擇JAR包檔案輸出路徑此時不要直接finish,而是點選下一步,在下一步看到mian class的時候一定要選擇mian class指定執行的類

TensorFlow - 在 windows 系統安裝

conda 安裝 rsh anaconda src 最新 之前 power ins 安裝方式: 1、pip (將介紹) 2、Anaconda 我采用的是本地 pip 方式 需提前安裝 Python - Python 3.5.x > TF 只支持 Python 3

windows系統下nodejs安裝、環境配置及刪除NPM全局配置

例如 參考 -h clas shel fcm gpe tar tortoise nodejs安裝及設置NPM全局路徑 刪除NPM全局路徑配置 一、nodejs安裝及設置NPM全局路徑 第一步:下載安裝文件 下載nodejs,官網:http://nodejs.org/do

WIN7系統JavaEE(java+tomcat7+Eclipse)環境配置

我的電腦 一件事 環境變量的配置 ini reference work 發布 系統設置 javac https://jingyan.baidu.com/article/3a2f7c2e62d25e26afd611fa.html WIN7系統JavaEE(java+tomca

非Unicode編碼的軟件如何在Windows系統運行

更改 軟件 class src 常常 為什麽 local 計算 clas 我們常常會遇到這樣一種情況:點開某些日文軟件(我不會說就是galgame( ╯□╰ ))會出現亂碼或者直接無法運行 出現亂碼的原因很簡單:編碼與譯碼的方式不一致!!!!!!!!!!! 首先大家需要

windows系統OLLVM + NDK 混淆編譯環境搭建

rev windows comment 版本 伊利諾伊 框架 body python腳本 ive 一、環境搭建:    系統:win10_X64    ndk版本:ndk-r12b(ndk-r12b後續版本也適用)    cmake-3.9.1-win64-x64.ms

Windows系統安裝JDK以及eclipse

load class jre spa ror clas ont ogr javase 下載JDK:http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html 下載根

Windows系統配置aria2

本地 快捷 seed target windows har o-c ipv6 ase Aria2是一個命令行下運行、多協議、多來源下載工具(HTTP/HTTPS、FTP、BitTorrent、Metalink),並且支持迅雷離線以及百度雲等常用網盤的多線程下載(甚至可

關於windows系統傳大於4G文件到linux的方法

-o sha entos x86 mage src images term 幹貨 閑著無聊,寫篇博文吧 !!!說點什麽呢 ,請看標題,這段時間有網友問我(多半小白),怎麽上傳大文件到linux,好啦廢話不多說,上幹貨1. 首先1> 下載安裝x-shell 6(自行下載

Windows系統安裝zabbix_agent

包括 數據庫 oss watermark 報表 存放位置 fff 4.6 維護 Zabbix概述 Zabbix是一個高度集成的企業級開源網絡監控解決方案,與Cacti、Nagios類似,提供分布式監控以及集中的Web管理界面。被監控對象只要支持SNMP協議或者運行Zabbi

windows系統執行spark、hadoop報錯Could not locate executable null\bin\winutils.exe in the Hadoop binaries

1.下載 winutils.exe:https://download.csdn.net/download/u010020897/10745623 2.將此檔案放置在某個目錄下,比如C:\winutils\bin\中。 3.在程式的一開始宣告:System.s

Redis進階實踐之三如何在Windows系統安裝安裝Redis

Redis進階實踐之三如何在Windows系統上安裝安裝Redis 一、Redis的簡介         Redis是一個key-value儲存系統。和Memcached類似,它支援儲存的value型別相對更多,包括strin

Windows系統 Docker中配置springboot環境並啟動,以及一些docker常用命令

C:\Users\Administrator\target 目錄下: 包含:可執行jar包 Dockerfile檔案 Dockerfile檔案內容為: FROM java:8   ADD masterspringmvc-0.0.1.jar app.jar #

windows系統用navicat連線遠端liunx系統的mysql資料庫

問題描述: 在ubuntu上裝了一個mysql為資料來源的hive資料庫,通過xshell連線操作沒有問題,我想在windows系統上使用工具連線,但是一直報Can’t connect to MySQL server on’XXXXX’的問題。 問題分析: 1.可能是網路不統 ,ping X

java學習:Java程式碼編寫規範開發的重要性

本文從Java程式碼編寫的初期到結尾,做了一次整體的總結,希望對初學者有幫助。 一個錯誤的命名會很誤導人,不良的命名,對於閱讀程式碼的人來說很糾結。一個良好的命名對自己也有很大的幫助。 我個人命名的變數都比較長,一般是單詞的全稱,這樣程式碼讀起來易懂,有些縮寫你根本不知道它代表的單詞是