Toon posts:

[Java] Audio afspelen

Pagina: 1
Acties:
  • 182 views sinds 30-01-2008
  • Reageer

Verwijderd

Topicstarter
Ik wil dus in een java progje (een applicatie, dus geen applet) audio afspelen, zoals wav's, mp3's e.d.
Heb al gezocht en aan mijn docenten op school gevraagd, maar kon niets vinden, ik weet dat het vanuit een applet wel kan via de classe audioclip oid, maar die classe werkt natuurlijk niet voor een application.
Hoop dat iemand weet hoe dit kan (en of dit kan).

Verwijderd

Heb je al in de Java Sound API gekeken ;)

  • mbravenboer
  • Registratie: Januari 2000
  • Laatst online: 06-11-2025
Java Media Framework:
http://java.sun.com/products/java-media/jmf/index.html

Zie hier wat allemaal wordt ondersteund:
http://java.sun.com/products/java-media/jmf/2.1.1/formats.html

(daar staat overigens geen mp3 bij, misschien zijn er third parties dit dit wel leveren)

Blog, Stratego/XT: Program Transformation, SDF: Syntax Definition, Nix: Software Deployment


  • nxt
  • Registratie: November 2001
  • Laatst online: 26-08 13:51

nxt

Dat probleem klinkt me bekend in de oren.
wat dacht je van iets als
code:
1
AudioClip audio = Applet.newAudioClip(urlNaarAudioFile);

de method newAudioClip is static, en dus aan te spreken zonder de class Applet te instantieren.

en daarna kun je met de method play() uit AudioClip de boel afspelen

  • Tomatrix
  • Registratie: Juni 1999
  • Laatst online: 27-02-2025
Op woensdag 06 februari 2002 19:14 schreef nxt het volgende:
de method newAudioClip is static
In welke JDK versie is dat? Iig. niet 1.3...

  • nxt
  • Registratie: November 2001
  • Laatst online: 26-08 13:51

nxt

Op woensdag 06 februari 2002 19:21 schreef Tomatrix het volgende:

In welke JDK versie is dat? Iig. niet 1.3...
dan heb je de api nog nooit doorgelezen ;)
http://java.sun.com/j2se/1.3/docs/api/java/applet/Applet.html
public static final AudioClip newAudioClip(URL url)
...
Since:
1.2

  • Tomatrix
  • Registratie: Juni 1999
  • Laatst online: 27-02-2025
Oh ja, hehe, ik zat naar 'getAudioClip' te kijken...

Verwijderd

Topicstarter
Bedankt voor jullie reacties, maar ik snap niet echt wat er uitgelegd staat, ik kan er bijvoorbeeld geen wijs uit of ik de goede JDK heb, volgens mij heb ik nl 1.3.1, maar ik zou niet weten hoe ik aan een andere JDK zou moeten komen, en ten tweede snap ik ook niet echt welke package ik nu moet importeren om dat allemaal mogelijk te maken, wellicht dat jullie hier wel antwoord op hebben??

  • MisterData
  • Registratie: September 2001
  • Laatst online: 07-09 20:23
Allereerst moet je zorgen dat je een recente JDK hebt. Die dingen zijn vrij groot (+30MB) en zijn te downloaden op http://java.sun.com. Daar moet je klikken op "Products & API's" en dan zoeken naar J2SE (Java 2 Standard Edition).
Nog even over "welk package moet ik importeren" : als je eht via de Applet class doet, dan moet je natuurlijk java.applet.Applet importeren. Anders (ik geloof dat er ook een andere sound-api bestaat) moet je javax.audio.*; of iets dergelijks (javax.sound zou ook goed kunnen) importeren. Check de docs nog maar es goed of bekijk een tutorial over geluid :) Daar kun je veel van leren ;)

  • The - DDD
  • Registratie: Januari 2000
  • Laatst online: 03-09 16:40
Doe het volgende op een command prompt:

java -version

Kun je zien welke JRE je hebt draaien. En als die meegeinstalleerd is met een JDK, dan is die JDK dezelfde versie.

  • MisterData
  • Registratie: September 2001
  • Laatst online: 07-09 20:23
Kijk anders eens hier :

http://java.sun.com/docs/books/tutorial/sound/index.html

= Tutorial over Sound in Java :)

Verwijderd

Topicstarter
code:
1
2
3
4
5
6
7
8
9
public void startNummer() {
    try {
    codeBase = new URL("file:E:/Belangrijk Files OUD/MP3 tijdelijk/gery halliwell - it s raining men.mp3");
    } catch (MalformedURLException e) {
    System.err.println(e.getMessage());
    }
    AudioClip audioClip = Applet.newAudioClip(codeBase);
    audioClip.play();
}

Dit heb ik zeg maar als methode om een nummer te starten, alleen hij doet nix, zelfs geen errors oid.
Waar kan dat aan liggen??
Ik heb deze code ff uit die tut gehaald en heeeeel erg versimpeld, alleen volgens mij zou dit toch echt moeten werken :?

  • Glimi
  • Registratie: Augustus 2000
  • Niet online

Glimi

Designer Drugs

(overleden)
Op woensdag 06 februari 2002 22:07 schreef Grote Vos het volgende:
Op woensdag 06 februari 2002 18:30 schreef mbravenboer het volgende:
[knip]
(daar staat overigens geen mp3 bij, misschien zijn er third parties dit dit wel leveren)
Java zal dan (nog) wel geen mp3's ondersteunen.
[edit] Kijk hier eens naar, dan moet het lukken http://www.javaworld.com/javaworld/jw-11-2000/jw-1103-mp3.html

  • mbravenboer
  • Registratie: Januari 2000
  • Laatst online: 06-11-2025
JMF 2.1.1 support trouwens MP3 zie ik:
Q: Will JMF 2.1.1 support MP3?

Yes, JMF 2.1.1 supports the playback (decoding) of MP3, i.e. MPEG-1 layer 3 audio, in both optimized and Java versions of JMF 2.1.1. MP3 encoding is only supported in the optimized versions.
2.1.1 is de meest recente release het Java Media Framework. Uiteraard moet dit dan wel geinstalleerd zijn bij de clients waarop je het gebruikt. In een simpele 1.1 applet gaat dit niet werken.

Blog, Stratego/XT: Program Transformation, SDF: Syntax Definition, Nix: Software Deployment


  • nxt
  • Registratie: November 2001
  • Laatst online: 26-08 13:51

nxt

Op woensdag 06 februari 2002 22:07 schreef Grote Vos het volgende:
......
Dit heb ik zeg maar als methode om een nummer te starten, alleen hij doet nix, zelfs geen errors oid.
Waar kan dat aan liggen??
Ik heb deze code ff uit die tut gehaald en heeeeel erg versimpeld, alleen volgens mij zou dit toch echt moeten werken :?
probeer het inderdaad eens met een wav-file.

Verwijderd

Topicstarter
Ik heb het geprobeerd om ipv een mp3 een wav af te spelen, maar dat werkt ook niet.
Ik heb die url alsvolgt:
code:
1
codeBase = new URL("file:D:\\Cool2000\\MixCeeDeeDeechte\\track1.wav");

Ik neem aan dat dat goed is, heb het ook geprobeerd met andere slashes, maar dat werkt dus ook niet. Ik snap niet goed waarom dat hij niets doet??? :?
Heeft iemand een idee?

  • Tomatrix
  • Registratie: Juni 1999
  • Laatst online: 27-02-2025
Gooit ie geen MalformedURLException? URL's zijn met forward slashes nl.

Verwijderd

Topicstarter
Nee, hij geeft geen exception nee, (ik vang die wel af).
Maar als ik het met forward slashes probeer, dan doet hij nog niets.

  • supersook
  • Registratie: Januari 2001
  • Laatst online: 06-09 07:52

supersook

Professioneel prutser

[off topic]

wat zijn java proggers toch behulpzaam ;) , mijn complimenten!

[/off topic]
Pagina: 1