Zu den Aufzeichnungen der tutorials.de-Live-Workshops
ERLEDIGT
JA
ANTWORTEN
3
ZUGRIFFE
931
EMPFEHLEN
  • An Twitter übertragen
  • An Facebook übertragen
AUF DIESES THEMA
ANTWORTEN
  1. #1
    Technoblade Technoblade ist offline Mitglied Gold
    Registriert seit
    Feb 2009
    Beiträge
    190
    Hi,
    ich bin neu hier im Forum und hab direkt mal eine Frage

    Folgendes ist Code aus einem beispiel aus dem Buch Java lernen mit BlueJ
    mich persönlich interessiert hier der mittlere Teil in dem das tmp Format erstellt wird. Dieses würde ich gerne auch für mp3 umsetzen für ein Schulprojekt. Wenn ich allerdings versuche eine mp3 Datei zu laden wird direkt in der Zeile unter dem Try eine Exception geworfen. Diese sieht wie folgt aus: "could not get audio input stream from input file". Ich habe mittlerweile schon gesehn, dass es viele Packages die von Nutzern geschrieben wurden gibt. Allerdings hat mir keins davon (soweit die Links nicht zu Error 404 führten) weitergeholfen. Jetzt ist meine simple Frage, gibt es eine möglichst triviale Möglichkeit in Java mp3's zu laden oder müssen wir jegliche Sounds konvertieren?


    Code :
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    
    private boolean ladeSound(File datei) 
        {
            aktuellerClipLaenge = 0;
     
            try {
                AudioInputStream stream = AudioSystem.getAudioInputStream(datei);
                AudioFormat format = stream.getFormat();
     
                // Wir können ALAW/ULAW nicht abspielen,
                // also konvertieren wir sie nach PCM
                //
                if ((format.getEncoding() == AudioFormat.Encoding.ULAW) ||
                    (format.getEncoding() == AudioFormat.Encoding.ALAW)) 
                {
                    AudioFormat tmp = new AudioFormat(
                                              AudioFormat.Encoding.PCM_SIGNED, 
                                              format.getSampleRate(),
                                              format.getSampleSizeInBits() * 2,
                                              format.getChannels(),
                                              format.getFrameSize() * 2,
                                              format.getFrameRate(),
                                              true);
                    stream = AudioSystem.getAudioInputStream(tmp, stream);
                    format = tmp;
                }
                DataLine.Info info = new DataLine.Info(Clip.class, 
                                               stream.getFormat(),
                                               ((int) stream.getFrameLength() *
                                               format.getFrameSize()));
     
                aktuellerClip = (Clip) AudioSystem.getLine(info);
                aktuellerClip.open(stream);
                aktuellerClipFrameGroesse = (int) stream.getFrameLength();
                aktuellerClipLaenge = (int) (aktuellerClip.getBufferSize() / 
                                  (aktuellerClip.getFormat().getFrameSize() * 
                                  aktuellerClip.getFormat().getFrameRate()));
                return true;
            } catch (Exception ex) {
                aktuellerClip = null;
                return false;
            }
        }
     

  2. #2
    The_S Tutorials.de Gastzugang
    Es gibt diverse Libraries MP3 in Java verfügbar zu machen.

    1.) Das JMF (Java Media Framework) mit mp3 Support von sun
    2.) Das FMJ, API-Kompatibel zum JMF, wird aber (im Gegensatz zum JMF) supported und weiterentwickelt
    3.) JLayer von javazoom.net
    4.) BasicPlayer von javazoom.net

    Hab jetzt deinen Code nur überflogen, aber wenn du nur Musik wiedergeben möchtest, gibt es auch eine sehr viel einfachere Möglichkeit über AudioClip.
     

  3. #3
    Avatar von Matze
    Matze Matze ist offline Weltenwanderer
    Registriert seit
    Jul 2007
    Ort
    Die Welt
    Beiträge
    1.504
    Blog-Einträge
    7
    Wir haben sogar ein hauseigenes Tutorial dafür : hier!
     
    "... Jeder von uns ist Kunst... gezeichnet vom Leben" (Casper)

    "Sir?, we're sorrounded!"
    "Excellent, we can attack in any direction"

  4. #4
    Technoblade Technoblade ist offline Mitglied Gold
    Registriert seit
    Feb 2009
    Beiträge
    190
    Vielen dank für die Tipps, das Tutorials werd ich mir mal angucken
     

Ähnliche Themen

  1. Antworten: 0
    Letzter Beitrag: 15.03.09, 16:43
  2. Antworten: 0
    Letzter Beitrag: 01.05.08, 13:38
  3. Antworten: 1
    Letzter Beitrag: 17.02.07, 18:39
  4. Java is Hot! Java News - Java Polis 2005
    Von Thomas Darimont im Forum Java
    Antworten: 0
    Letzter Beitrag: 03.12.05, 16:23
  5. Rendering Performance von Java 2D / Swing verbessern unter Java 5
    Von Thomas Darimont im Forum Swing, Java2D/3D, SWT, JFace
    Antworten: 0
    Letzter Beitrag: 06.02.05, 00:58