Java Media Frameworkin (JMF) käyttö silmukointiin
Java Media Framework (JMF) on tehokas kirjasto, joka mahdollistaa multimediasovellusten kehittämisen Javassa. Se tukee ääntä, videota ja muuta aikapohjaista mediaa, joten se on ihanteellinen valinta silmukkatoimintojen toteuttamiseen mediasoittimessa. Tässä osiossa perehdymme JMF-kirjastoon ja keskustelemme mediasisällön silmukasta käyttämällä koodin vaiheittaista selitystä.
import javax.media.*;
import java.net.*;
public class MediaPlayerLooper {
public static void main(String[] args) {
try {
// Create a media locator from a file URL
MediaLocator mediaLocator = new MediaLocator(new URL("file:///path/to/media/file"));
// Create a Player from the media locator
Player player = Manager.createPlayer(mediaLocator);
// Add a controller listener to the player
player.addControllerListener(new ControllerAdapter() {
@Override
public void endOfMedia(EndOfMediaEvent e) {
// Set media time to zero and restart the player
player.setMediaTime(new Time(0));
player.start();
}
});
// Start playing the media
player.start();
} catch (Exception e) {
e.printStackTrace();
}
}
}
Yllä oleva koodinpätkä näyttää seuraavat vaiheet:
1. Tuo JMF ja muut tarvittavat kirjastot
2. Luo MediaPlayerLooper luokka
3. Käytä MediaLocator luodaksesi mediaobjektin
4. Luo Soitin käyttäen Johtaja luokka määritetyn mediaobjektin kanssa
5. Lisää a ControllerListener soittimeen seuratakseen sen tilan muutoksia
6. Käsittele "endOfMedia" -tapahtuma, joka tapahtuu, kun median toisto päättyy, nollaamalla media-aika ja käynnistämällä soitin uudelleen.
7. Aloita median toistaminen
Silmukoiminen MediaPlayerin kanssa JavaFX:ssä
JavaFX on toinen suosittu kirjasto multimediasovellusten luomiseen Javassa. Sen MediaPlayer luokka tarjoaa sisäänrakennetun silmukkatoiminnon, mikä tekee mediatiedostojen silmukasta entistä yksinkertaisempaa. Tässä osiossa tarkastellaan JavaFX:n MediaPlayerin käyttöä mediasisällön silmukassa.
import javafx.application.Application;
import javafx.scene.Scene;
import javafx.scene.layout.StackPane;
import javafx.scene.media.Media;
import javafx.scene.media.MediaPlayer;
import javafx.scene.media.MediaView;
import javafx.stage.Stage;
import java.io.File;
public class JavaFXMediaPlayerLooper extends Application {
@Override
public void start(Stage primaryStage) {
File mediaFile = new File("path/to/media/file");
Media media = new Media(mediaFile.toURI().toString());
MediaPlayer mediaPlayer = new MediaPlayer(media);
mediaPlayer.setCycleCount(MediaPlayer.INDEFINITE);
MediaView mediaView = new MediaView(mediaPlayer);
StackPane root = new StackPane();
root.getChildren().add(mediaView);
Scene scene = new Scene(root, 800, 600);
primaryStage.setTitle("Media Player Looper");
primaryStage.setScene(scene);
primaryStage.show();
mediaPlayer.play();
}
public static void main(String[] args) {
launch(args);
}
}
Yllä oleva JavaFX-koodiesimerkki esittelee seuraavat vaiheet:
1. Tuo JavaFX-kirjastot
2. Luo JavaFXMediaPlayerLooper alkaen luokkaa Hakemus
3. Lataa mediatiedosto käyttämällä Media luokka
4. Luo MediaPlayer esinettä ladatulla materiaalilla
5. Aseta cycleCount MediaPlayerin attribuutti MÄÄRÄTÖN silmukkaa varten
6. Luo MediaView objekti ja lisää se kohtauskaavioon
7. Alusta käyttöliittymän osat, kuten lava ja kohtaus
8. Aloita median toistaminen
Yhteenvetona voidaan todeta, että mediasoittimen silmukointi Javassa voidaan saavuttaa käyttämällä kirjastoja, kuten JMF ja JavaFX. Ymmärtämällä näiden kirjastojen tarjoamat toiminnot ja luokat, kehittäjät voivat luoda tehokkaita ja kiinnostavia sovelluksia, jotka vastaavat käyttäjien mediasilmukoiden tarpeisiin.