我正在尝试用java播放一首歌(mp3文件)。我一直在寻找几个小时,而且我发现的方法都没有正常工作。
public void play()
{
String song = "song.mp3";
Media track = new Media(song);
MediaPlayer mediaPlayer = new MediaPlayer(track);
mediaPlayer.play();
}
我试过这样做,但它给了我错误。
我已导入JMF
和JLayer
。
我也在这个论坛上读过其他类似的问题,但没有人帮助过我。
我只需要帮助播放mp3文件。
答案 0 :(得分:2)
为此,您需要在PC中安装Java Media Framework (JMF)。你已经安装了它,然后尝试这段代码:
import javax.media.*;
import java.net.*;
import java.io.*;
import java.util.*;
class AudioPlay
{
public static void main(String args[]) throws Exception
{
// Take the path of the audio file from command line
File f=new File("song.mp3");
// Create a Player object that realizes the audio
final Player p=Manager.createRealizedPlayer(f.toURI().toURL());
// Start the music
p.start();
// Create a Scanner object for taking input from cmd
Scanner s=new Scanner(System.in);
// Read a line and store it in st
String st=s.nextLine();
// If user types 's', stop the audio
if(st.equals("s"))
{
p.stop();
}
}
}
你可能会遇到无法处理formaterror,因为Java默认情况下取消了MP3支持(盗版版权问题),你需要安装一个“JMF MP3插件”才能播放MP3文件。
去Java的JMF网站下载它 http://java.sun.com/javase/technologies/desktop/media/jmf/mp3/download.html
要确保使用支持的格式文件,请点击此处:
http://www.oracle.com/technetwork/java/javase/formats-138492.html
如果您使用的是Windows7,则可能还必须阅读:
https://forums.oracle.com/forums/thread.jspa?threadID=2132405&tstart=45
答案 1 :(得分:1)
我找到的最简单的方法是从http://www.javazoom.net/javalayer/sources.html下载JLayer jar文件并将其添加到Jar库http://www.wikihow.com/Add-JARs-to-Project-Build-Paths-in-Eclipse-%28Java%29
这是类
的代码public class SimplePlayer {
public SimplePlayer(){
try{
FileInputStream fis = new FileInputStream("File location.");
Player playMP3 = new Player(fis);
playMP3.play();
}catch(Exception e){System.out.println(e);}
}
}
以下是导入
import javazoom.jl.player.*;
import java.io.FileInputStream;
答案 2 :(得分:1)
JavaFX应用程序如何 -
import java.net.URL;
import javafx.application.Application;
import javafx.scene.media.Media;
import javafx.scene.media.MediaPlayer;
import javafx.stage.Stage;
public class VLC extends Application {
void playMedia() {
String mp3 = "00- Tu Hi Mera.mp3";
URL resource = getClass().getResource(mp3);
System.out.println(resource.toString());
Media media = new Media(resource.toString());
MediaPlayer mediaPlayer = new MediaPlayer(media);
mediaPlayer.play();
}
public static void main(String args[]) {
new VLC().playMedia();
}
@Override
public void start(Stage stage) throws Exception {
}
}