zoukankan      html  css  js  c++  java
  • Atitit java播放mp3 目录 1.1. 不能直接支持mp3播放。。需要解码播放转化为pcm 1 1.2. 使用\javalayer类库播放 3 1.3. ,就是普通的java sound

    Atitit java播放mp3

     

     

    目录

    1.1. 不能直接支持mp3播放。。需要解码播放转化为pcm 1

    1.2. 使用\javalayer类库播放 3

    1.3. ,就是普通的java sound api,和原来播放wav, aiff, au, snd没什么两样。但是光这样是运行不起来的,需要一些额外的jar包来支持。   2. 一些jar包介绍  4

     

     

    默认智能播放wav模式。。

     

    播放mp3 提示

     

    Exception in thread "main" java.lang.IllegalArgumentException: No line matching interface SourceDataLine supporting format MPEG1L3 44100.0 Hz, unknown bits per sample, stereo, unknown frame size, 38.28125 frames/second,  is supported.

    at javax.sound.sampled.AudioSystem.getLine(AudioSystem.java:479)

    at apkg.soundPlay.playwav(soundPlay.java:50)

    at apkg.soundPlay.main(soundPlay.java:28)

     

      1. 不能直接支持mp3播放。。需要解码播放转化为pcm

     

    /bookmarksHtmlEverythingIndexPrj/src/apkg/ConvertMP32PCM.java

    import javazoom.spi.mpeg.sampled.file.MpegAudioFileReader;

     

     

     

     

    private static AudioInputStream getPcmAudioInputStream(String mp3filepath) throws Exception, IOException {

     

     

    AudioInputStream AudioInputStream1 = new MpegAudioFileReader().getAudioInputStream(new File(mp3filepath));

     

     

    AudioFormat sourceFormat = AudioInputStream1.getFormat();

    AudioFormat targetFormat = new AudioFormat(AudioFormat.Encoding.PCM_SIGNED, sourceFormat.getSampleRate(), 16,

    sourceFormat.getChannels(), sourceFormat.getChannels() * 2, sourceFormat.getSampleRate(), false);

    AudioInputStream audioInputStream_Pcm = AudioSystem.getAudioInputStream(targetFormat, AudioInputStream1);

     

    return audioInputStream_Pcm;

    }

     

      1. 使用\javalayer类库播放

     

    D:\0workspace\libs t55\libmusic\javalayer-1.0.1.jar

    import javazoom.jl.decoder.*;

    import javazoom.jl.player.*;

     

    public class MySound extends Thread {

     

     

     

     public static void main(String[] args) throws Exception {

    String musicName="C:\\Users\\Administrator\\Music\\冷漠 - 一路向北.mp3";

    InputStream resourceAsStream =new FileInputStream(new File(musicName));

    new Player(resourceAsStream).play();

    }

    Atitit java 音频播放类库jar列表

     

     

      1. ,就是普通的java sound api,和原来播放wav, aiff, au, snd没什么两样。但是光这样是运行不起来的,需要一些额外的jar包来支持。 

        2. 一些jar包介绍 

    id

    最新版本

    描述

    支持格式

    jorbis

    0.0.17

    Vorbis解码器

    ogg

    VorbisSPI

    1.0.3

    支持OGG Vorbis格式的SPI封装器

     

    JLayer

    1.0.1

    MP3解码器

    mp3

    MP3SPI

    1.9.5

    mp3的SPI

     

    jflac

    1.3

    flac解码器和SPI

    flac

    jspeex

    0.9.7

    speex解码器和SPI

    spx

    jmac

    1.7.4

    Monkey's Audio解码器和SPI

    ape,mac

    tritonus_share

    0.3.6

    tritonus底层库

     

    jtta

    1.0

    tta解码器和SPI

    tta

    libkj-java

     

    dsp,可用来绘制音乐播放时的频谱分析

     

    jaudiotagger

    2.2.2

    音乐标签读取库

     

    jlGui

    3.1

    音乐播放器

     

    yoyoplayer

    1.3

    音乐播放器

     

    musique

     

    音乐播放器

     



    其中,如果要支持mp3的话,需要javalayer,mp3spi,tritonus_share这3个jar包。 
    而ogg需要jorbis,vorbisspi,tritonus_share这3个jar包。 
    ape需要jmac这个jar包。 
    flac需要jflac这个jar包。 

     

     

    java播放mp3_ogg_ape_flac音乐 - - ITeye博客.html

     

  • 相关阅读:
    多输出感知机及其梯度
    《机器学习实战》-线性回归
    《机器学习实战》-逻辑(Logistic)回归
    SQL Server 空间监测
    SQL Server 从数据库快照还原数据库
    SQL Server 创建数据库快照
    SQL Server 数据库的自动选项
    SQL Server 数据库游标选项
    SQL Server 数据库状态选项
    MYSQL 二进制还原
  • 原文地址:https://www.cnblogs.com/attilax/p/15197260.html
Copyright © 2011-2022 走看看