1. MP3如何壓縮
壓縮mp3文件可以藉助一些音頻處理軟體(有很多款,下面以格式工廠為例)。音頻格式大小依次排列是midi<wma<mp3,越小的格式,失真率會越高,所以如無特殊要求,轉為wma即可。
下面是具體步驟:
第一步,打開軟體,在軟體左側選擇wma轉化選項。
2. 怎麼壓縮MP3音樂格式的大小
1、下載WinMP3Shrink1.1軟體,將下載的文件解壓,並打開WinMP3Shrink.EXE。
3. 把MP3的容量壓縮小的方法
把MP3的歌曲的容量縮小(即文件縮小),需要藉助軟體來操作。
經常使用的軟體有很多,推薦一款很流行的軟體,名稱是:GoldWave。
壓縮方法:
1:在網路上搜索軟體:GoldWave,並將其下載。
2:安裝好後,打開顯示以下界面:
最後,點擊「保存」即可。
建議:多壓縮幾次,多保存幾次,然後,找出文件,逐個測試試聽,選擇最理想的文件。
4. 怎樣壓縮MP3格式的文件
如果你的MP3文件過大,想要壓縮的話,也可以輕松實現。只需要藉助第三方軟體就能實現了,下面分享一個操作步驟少,能快速實現音頻壓縮的方法給大家,希望能幫到你們哦!
藉助工具:閃電音頻格式轉換器
方法步驟:
第一步、雙擊打開軟體,在左側選擇「音頻壓縮」;
5. 如何將MP3文件的大小壓縮
現在MP3的體積對手機來說是有點大,不過我們可以給MP3減肥來達到目的。
轉化為「瘦小」的WMA格式
在同等音質的前提下,WMA格式音樂文件的體積比MP3格式小得多。如果將MP3音樂轉換成WMA格式的話,就可以在手機中存放更多的音樂文件,不過需要你的手機支持WMA格式的文件喲^_^
利用《千千靜聽》就可以輕松實現上述轉換要求。在《千千靜聽》主窗口中打開合適的MP3文件,在播放列表中選中文件(可多選),在其菜單中點擊「轉換格式」項,在彈出窗口(圖1)的「輸出格式」列表中選擇「WMA編碼器」,之後點擊「配置」按鈕,在「WMA」編碼選項窗口中設置編碼的格式,包括恆定比特率和基於質量的VBR格式,可以根據需要進行設定,點擊「確定」按鈕保存設置。
在「轉換格式」窗口中的「目標文件夾」欄中點擊「瀏覽」按鈕,確定輸出路徑,其餘的設置保持默認即可,最後點擊「立即轉換」按鈕,在彈出的「正在轉換格式」窗口中顯示文件轉換的進度。當然,《千千靜聽》可以同時轉換多個文件,之後就可以得到所需的WMA格式文件了。
直接為MP3文件「瘦身」
從網上下載的MP3音樂,為了保證其有高質量的音質,在製作中往往使用了較低的壓縮率。在保證音質的前提下,如果能將MP3文件直接進行壓縮操作,可以在音樂格式不便的基礎上,達到在手機上存放更多音樂文件的目的。
相比之下,MP3Resizer是一款MP3專用壓縮器。下載地址:
http://download.cpcw.com
。在MP3Resizer主窗口(圖2)的工具欄上點擊「Add
Files」按鈕,導入需要處理的MP3文件,在窗口右側點擊「Output
Folder」按鈕,選擇輸出文件夾的路徑。
在「Out
File
Format」面板的「Bitrate」列表中選擇合適的比特率和采樣頻率的組合,范圍從「32Kbit
11KHz」到「256Kbit
44KHz」,在保證音質的前提下,選擇較低的比特率和采樣頻率的組合(例如「96Kbit
44KHz」),可以有效的減小MP3文件的體積。選擇完成後,在「Total
Size」面板中可以直觀預覽全部文件在轉換前後的體積變化情況。
為了避免在轉換過程中出現佔用資源過多的情況,在MP3Resizer中點擊菜單「Settings」,在設置窗口的「General」面板的「Priority」列表中選擇合適的優先順序,包括「Normal」、「Below
Normal」、「Low」等。在「Output
File」面板的「Channel
Mode」列表中選擇「Auto」項,在「Quality/Speed」中將滑塊拖動到最右側,這樣可以得到更好的音質。之後點擊「Resize!」按鈕,即可壓縮MP3文件的體積了。
6. 如何用java代碼完成AMR格式到MP3格式的轉換
真正的萬能視頻轉換工具,扔掉那些所謂的什麼白金大師吧!!!
綠色(安裝到其他機器,拷過來也可以使用)!無插件!同濟學子開發的免費軟體,更新快!
MediaCoder是一個免費的通用音頻/視頻批量轉碼工具,它將眾多來自開源社區的優秀音頻視頻編解碼器和工具整合為一個通用的解決方案,它可以將音頻、視頻文件在各種格式之間進行轉換。
特點聚焦:
直接、批量地在眾多音頻視頻壓縮格式和容器格式之間進行轉換
無需安裝任何媒體播放器或編碼器
純綠色軟體,不在系統中注冊任何組件
完全使用Win32
SDK開發,高效、緊湊,不依賴於任何中間層(如.NET,
JAVA等)
典型應用:
提高壓縮率/減小文件尺寸
將無損音頻或者高碼率的有損音頻轉換轉換為較低碼率的有損音頻,以便用攜帶型數字音樂播放設備欣賞
轉換至可在各種設備(如手機、PDA、MP4播放器、VCD/DVD播放機)上播放的格式
提取視頻文件中的音軌
保存CD/VCD/DVD
支持的輸入格式:
MP3,
Ogg
Vorbis,
AAC,
AAC+/Parametric
Stereo,
AMR
NB/WB,
MusePack,
WMA,
RealAudio
FLAC,
WavPack,
Monkey's
Audio
(APE,
APL),
OptimFrog,
AAC
Lossless,
WMA
Lossless,
WAV
H.264,
Xvid,
DivX
4/5,
MPEG
1/2/4,
H.263,
3ivx,
RealVideo,
Windows
Media
Video
7/8/9,
DV
AVI,
MPEG/VOB,
Matroska,
MP4,
RealMedia,
ASF/WMV,
Quicktime
MOV,
OGM
CD,
VCD,
DVD,
CUE
Sheets
支持的輸出格式:
MP3,
Ogg
Vorbis,
AAC,
AAC+/Parametric
Stereo,
AMR
NB/WB,
MusePack,
WMA
FLAC,
WavPack,
Monkey's
Audio
(APE,
APL),
OptimFrog,
WMA
Lossless,
WAV
H.264,
Xvid,
DivX
4/5,
MPEG
1/2/4,
H.263,
Flash
Video,
etc.
AVI,
MPEG/VOB,
Matroska,
MP4,
PMP
(PSP媒體播放器格式)
另外,虛機團上產品團購,超級便宜
7. 怎麼把MP3文件壓縮到最小
操作步驟如下。
我們可以利用酷狗音樂來實現這一功能,我們點擊左側的更多,選擇格式轉換。
8. mp3錄音文件如何壓縮成很小的文件
不管是什麼格式的文件都一樣,只要質量高了,那麼文件就會比較大。因此,在進行傳輸的時候就比較耗時間,不過可以將音頻適當進行壓縮,讓它的文件大小變小,這樣就不會有這些苦惱了。那麼下面就來跟大家說說怎麼將音頻文件壓縮到合適大小,想要將MP3音頻文件壓縮變小的方法有多種,今天小編分享一種最簡單的壓縮音頻的方法供大家參考。
推薦使用:閃電音頻格式轉換器
操作方法:
第一步、打開音頻處理軟體後,在左側選擇「音頻壓縮」選項;
9. java實現 mp3格式轉換wav
/*
*實現錄音機的功能
*/
packagecom.liuyun.MyRecord1;
importjava.awt.*;
importjavax.swing.*;
importjava.awt.event.*;
importjava.io.*;
importjavax.sound.sampled.*;
importjava.lang.*;
{
//定義錄音格式
AudioFormataf=null;
//定義目標數據行,可以從中讀取音頻數據,該TargetDataLine介面提供從目標數據行的緩沖區讀取所捕獲數據的方法。
TargetDataLinetd=null;
//定義源數據行,源數據行是可以寫入數據的數據行。它充當其混頻器的源。應用程序將音頻位元組寫入源數據行,這樣可處理位元組緩沖並將它們傳遞給混頻器。
SourceDataLinesd=null;
//定義位元組數組輸入輸出流
ByteArrayInputStreams=null;
ByteArrayOutputStreambaos=null;
//定義音頻輸入流
AudioInputStreamais=null;
//定義停止錄音的標志,來控制錄音線程的運行
Booleanstopflag=false;
//記錄開始錄音的時間
longstartPlay;
//定義所需要的組件
JPaneljp1,jp2,jp3;
JLabeljl1=null;
JButtoncaptureBtn,stopBtn,playBtn,saveBtn;
publicstaticvoidmain(String[]args){
//創造一個實例
MyRecordmr=newMyRecord();
}
//構造函數
publicMyRecord()
{
//組件初始化
jp1=newJPanel();
jp2=newJPanel();
jp3=newJPanel();
//定義字體
FontmyFont=newFont("華文新魏",Font.BOLD,30);
jl1=newJLabel("錄音機功能的實現");
jl1.setFont(myFont);
jp1.add(jl1);
captureBtn=newJButton("開始錄音");
//對開始錄音按鈕進行注冊監聽
captureBtn.addActionListener(this);
captureBtn.setActionCommand("captureBtn");
//對停止錄音進行注冊監聽
stopBtn=newJButton("停止錄音");
stopBtn.addActionListener(this);
stopBtn.setActionCommand("stopBtn");
//對播放錄音進行注冊監聽
playBtn=newJButton("播放錄音");
playBtn.addActionListener(this);
playBtn.setActionCommand("playBtn");
//對保存錄音進行注冊監聽
saveBtn=newJButton("保存錄音");
saveBtn.addActionListener(this);
saveBtn.setActionCommand("saveBtn");
this.add(jp1,BorderLayout.NORTH);
this.add(jp2,BorderLayout.CENTER);
this.add(jp3,BorderLayout.SOUTH);
jp3.setLayout(null);
jp3.setLayout(newGridLayout(1,4,10,10));
jp3.add(captureBtn);
jp3.add(stopBtn);
jp3.add(playBtn);
jp3.add(saveBtn);
//設置按鈕的屬性
captureBtn.setEnabled(true);
stopBtn.setEnabled(false);
playBtn.setEnabled(false);
saveBtn.setEnabled(false);
//設置窗口的屬性
this.setSize(400,300);
this.setTitle("錄音機");
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
this.setLocationRelativeTo(null);
this.setVisible(true);
}
publicvoidactionPerformed(ActionEvente){
if(e.getActionCommand().equals("captureBtn"))
{
//點擊開始錄音按鈕後的動作
//停止按鈕可以啟動
captureBtn.setEnabled(false);
stopBtn.setEnabled(true);
playBtn.setEnabled(false);
saveBtn.setEnabled(false);
//調用錄音的方法
capture();
//記錄開始錄音的時間
startPlay=System.currentTimeMillis();
}elseif(e.getActionCommand().equals("stopBtn")){
//點擊停止錄音按鈕的動作
captureBtn.setEnabled(true);
stopBtn.setEnabled(false);
playBtn.setEnabled(true);
saveBtn.setEnabled(true);
//調用停止錄音的方法
stop();
//記錄停止錄音的時間
longstopPlay=System.currentTimeMillis();
//輸出錄音的時間
System.out.println("Playcontinues"+(stopPlay-startPlay));
}elseif(e.getActionCommand().equals("playBtn"))
{
//調用播放錄音的方法
play();
}elseif(e.getActionCommand().equals("saveBtn"))
{
//調用保存錄音的方法
save();
}
}
//開始錄音
publicvoidcapture()
{
try{
//af為AudioFormat也就是音頻格式
af=getAudioFormat();
DataLine.Infoinfo=newDataLine.Info(TargetDataLine.class,af);
td=(TargetDataLine)(AudioSystem.getLine(info));
//打開具有指定格式的行,這樣可使行獲得所有所需的系統資源並變得可操作。
td.open(af);
//允許某一數據行執行數據I/O
td.start();
//創建播放錄音的線程
Recordrecord=newRecord();
Threadt1=newThread(record);
t1.start();
}catch(LineUnavailableExceptionex){
ex.printStackTrace();
return;
}
}
//停止錄音
publicvoidstop()
{
stopflag=true;
}
//播放錄音
publicvoidplay()
{
//將baos中的數據轉換為位元組數據
byteaudioData[]=baos.toByteArray();
//轉換為輸入流
s=newByteArrayInputStream(audioData);
af=getAudioFormat();
ais=newAudioInputStream(s,af,audioData.length/af.getFrameSize());
try{
DataLine.InfodataLineInfo=newDataLine.Info(SourceDataLine.class,af);
sd=(SourceDataLine)AudioSystem.getLine(dataLineInfo);
sd.open(af);
sd.start();
//創建播放進程
Playpy=newPlay();
Threadt2=newThread(py);
t2.start();
}catch(Exceptione){
e.printStackTrace();
}finally{
try{
//關閉流
if(ais!=null)
{
ais.close();
}
if(s!=null)
{
s.close();
}
if(baos!=null)
{
baos.close();
}
}catch(Exceptione){
e.printStackTrace();
}
}
}
//保存錄音
publicvoidsave()
{
//取得錄音輸入流
af=getAudioFormat();
byteaudioData[]=baos.toByteArray();
s=newByteArrayInputStream(audioData);
ais=newAudioInputStream(s,af,audioData.length/af.getFrameSize());
//定義最終保存的文件名
Filefile=null;
//寫入文件
try{
//以當前的時間命名錄音的名字
//將錄音的文件存放到F盤下語音文件夾下
FilefilePath=newFile("F:/語音文件");
if(!filePath.exists())
{//如果文件不存在,則創建該目錄
filePath.mkdir();
}
longtime=System.currentTimeMillis();
file=newFile(filePath+"/"+time+".wav");
AudioSystem.write(ais,AudioFileFormat.Type.WAVE,file);
//將錄音產生的wav文件轉換為容量較小的mp3格式
//定義產生後文件名
StringtarFileName=time+".mp3";
Runtimerun=null;
try{
run=Runtime.getRuntime();
longstart=System.currentTimeMillis();
//調用解碼器來將wav文件轉換為mp3文件
<strong><spanstyle="color:#ff0000;">Processp=run.exec(filePath+"/"+"lame-b16"+filePath+"/"+file.getName()+""+filePath+"/"+tarFileName);//16為碼率,可自行修改
</span></strong>//釋放進程
p.getOutputStream().close();
p.getInputStream().close();
p.getErrorStream().close();
p.waitFor();
longend=System.currentTimeMillis();
System.out.println("convertneedcosts:"+(end-start)+"ms");
//刪除無用的wav文件
if(file.exists())
{
file.delete();
}
}catch(Exceptione){
e.printStackTrace();
}finally{
//最後都要執行的語句
//run調用lame解碼器最後釋放內存
run.freeMemory();
}
}catch(Exceptione){
e.printStackTrace();
}finally{
//關閉流
try{
if(s!=null)
{
s.close();
}
if(ais!=null)
{
ais.close();
}
}catch(Exceptione){
e.printStackTrace();
}
}
}
//設置AudioFormat的參數
()
{
//下面注釋部分是另外一種音頻格式,兩者都可以
AudioFormat.Encodingencoding=AudioFormat.Encoding.
PCM_SIGNED;
floatrate=8000f;
intsampleSize=16;
StringsignedString="signed";
booleanbigEndian=true;
intchannels=1;
returnnewAudioFormat(encoding,rate,sampleSize,channels,
(sampleSize/8)*channels,rate,bigEndian);
////采樣率是每秒播放和錄制的樣本數
//floatsampleRate=16000.0F;
////采樣率8000,11025,16000,22050,44100
////sampleSizeInBits表示每個具有此格式的聲音樣本中的位數
//intsampleSizeInBits=16;
////8,16
//intchannels=1;
////單聲道為1,立體聲為2
//booleansigned=true;
////true,false
//booleanbigEndian=true;
////true,false
//returnnewAudioFormat(sampleRate,sampleSizeInBits,channels,signed,bigEndian);
}
//錄音類,因為要用到MyRecord類中的變數,所以將其做成內部類
classRecordimplementsRunnable
{
//定義存放錄音的位元組數組,作為緩沖區
bytebts[]=newbyte[10000];
//將位元組數組包裝到流里,最終存入到baos中
//重寫run函數
publicvoidrun(){
baos=newByteArrayOutputStream();
try{
stopflag=false;
while(stopflag!=true)
{
//當停止錄音沒按下時,該線程一直執行
//從數據行的輸入緩沖區讀取音頻數據。
//要讀取bts.length長度的位元組,cnt是實際讀取的位元組數
intcnt=td.read(bts,0,bts.length);
if(cnt>0)
{
baos.write(bts,0,cnt);
}
}
}catch(Exceptione){
e.printStackTrace();
}finally{
try{
//關閉打開的位元組數組流
if(baos!=null)
{
baos.close();
}
}catch(IOExceptione){
e.printStackTrace();
}finally{
td.drain();
td.close();
}
}
}
}
//播放類,同樣也做成內部類
classPlayimplementsRunnable
{
//播放baos中的數據即可
publicvoidrun(){
bytebts[]=newbyte[10000];
try{
intcnt;
//讀取數據到緩存數據
while((cnt=ais.read(bts,0,bts.length))!=-1)
{
if(cnt>0)
{
//寫入緩存數據
//將音頻數據寫入到混頻器
sd.write(bts,0,cnt);
}
}
}catch(Exceptione){
e.printStackTrace();
}finally{
sd.drain();
sd.close();
}
}
}
}