Demonstrates placing a JavaFXMediaPlayer in the default Processing window. A green circle was added to demonstrate that draw() is functional; this would not be possible if we used the traditional JavaFX Stage.
import java.io.File;
import javafx.scene.layout.StackPane;
import javafx.scene.canvas.Canvas;
import javafx.scene.media.Media;
import javafx.scene.media.MediaPlayer;
import javafx.scene.media.MediaView;
Canvas canvas;
StackPane root;
void setup() {
size(500, 500, FX2D);
surface.setTitle("JavaFX MediaPlayer");
canvas = (Canvas)surface.getNative();
root = (StackPane)canvas.getParent();
// **** Replace this with your file path and mp4 **** //
String path = "/Users/s/Movies/birds.mp4";
Media media = new Media(new File(path).toURI().toString());
MediaPlayer mediaPlayer = new MediaPlayer(media);
MediaView mediaView = new MediaView(mediaPlayer);
mediaPlayer.setAutoPlay(true);
mediaView.setLayoutX(10);
mediaView.setLayoutY(10);
root.getChildren().add(mediaView);
}
void draw(){
fill(0,255,0);
circle(100,50,50);
}
Output: