0

我正在尝试启动我的代码并启动播放器。但我不能那样做。

import javax.media.*;
import java.io.*;

public class MP3Player {

    public static void main(String[] args) throws Exception {
       File file = new File("c://player/trigger.mpg");
       MediaLocator mrl = new MediaLocator(file.toURL());
       Player player = Manager.createPlayer(mrl);
       player.start();
    }

}

[由 Philipp 编辑] 根据原作者的评论,Netbeans 打印以下错误消息:

Unable to handle format: MPEG, 160x120, FrameRate=30.0, Length=28800 Failed to realize:
com.sun.media.PlaybackEngine@131f71a Error: Unable to realize
com.sun.media.PlaybackEngine@131f71a BUILD SUCCESSFUL (total time: 1 second)

[/菲利普编辑]

4

2 回答 2

1

我根本不知道 JMF 播放器,但我认为问题是代码在发出命令后立即退出,终止任何其他线程......

我会尝试插入一个 Thread.sleep(1000); 在 player.start() 之后;:

public class MP3Player {
    public static void main(String[] args) throws Exception 
    {    
        File file = new File("c:/player/trigger.mpg");    
        MediaLocator mrl = new MediaLocator(file.toURL());    
        Player player = Manager.createPlayer(mrl);    
        player.start(); 
        Thread.sleep(1000);
    } 
}

如果现在听到 MP3 的第一秒,这就是问题所在。

编辑另外,有人指出了斜线的问题,路径也应该是正确的,但是斜线并没有丢失,但是斜线太多了……

EDIT2好的,我将 mpg 误读为 mp3,并且由于发布者发布了他得到的错误:JMF 不支持视频的格式,您需要一个编解码器。

这可能会有所帮助:Tek-tips:使用 JMF 播放 MPEG-4 电影?

于 2012-10-09T14:25:21.623 回答
0

Unable to handle format: MPEG, 160x120, FrameRate=30.0 它无法播放它找到的视频流。从代码的描述和名称来看,该文件预计仅包含压缩格式 MP3(MPEG-1 音频层 III)的音频流.mpg 扩展名可能包含许多不同的 mpeg 格式

于 2012-10-09T15:00:28.883 回答