JavaFX MediaPlayer এবং MediaView ক্লাসগুলি JavaFX-এ মিডিয়া প্লেব্যাকের জন্য ব্যবহৃত হয়। আপনি MediaPlayer ক্লাসটি ব্যবহার করে মিডিয়া ফাইল (যেমন, অডিও বা ভিডিও) প্লে করতে পারেন, এবং MediaView ক্লাসটি ব্যবহার করে সেই মিডিয়া ফাইলের ভিডিও কনটেন্টটিকে ইউজার ইন্টারফেসে প্রদর্শন করতে পারেন।
এগুলি ব্যবহার করে আপনি আপনার JavaFX অ্যাপ্লিকেশনগুলিতে ভিডিও এবং অডিও প্লেব্যাক অন্তর্ভুক্ত করতে পারেন।
MediaPlayer:
MediaPlayer ক্লাসটি মিডিয়া প্লেব্যাক চালানোর জন্য ব্যবহৃত হয়। এটি মিডিয়া ফাইল (যেমন audio, video) লোড, প্লে, পজ, স্টপ, স্কিপ, ভলিউম কন্ট্রোল এবং মিডিয়া সম্পর্কিত অন্যান্য কন্ট্রোল সমর্থন করে।
MediaView:
MediaView ক্লাসটি ভিডিও প্লেব্যাক দেখানোর জন্য ব্যবহৃত হয়। এটি একটি Canvas এর মতো কাজ করে, যেখানে ভিডিও ফ্রেমগুলো প্রদর্শিত হয়। এটি MediaPlayer এর সাথে যুক্ত হয়ে মিডিয়া ফাইলের ভিডিও অংশটি স্ক্রীনে রেন্ডার করে।
JavaFX-এ MediaPlayer এবং MediaView ব্যবহার করার উদাহরণ:
1. সিঙ্গল মিডিয়া প্লেব্যাক (ভিডিও প্লেব্যাক) উদাহরণ
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;
public class MediaPlayerExample extends Application {
@Override
public void start(Stage primaryStage) {
// মিডিয়া ফাইলের ইউআরএল অথবা লোকাল পাথ
String mediaUrl = "file:///C:/path/to/your/video.mp4"; // আপনার ভিডিও ফাইলের পাথ এখানে দিন
// মিডিয়া ফাইল তৈরি করা
Media media = new Media(mediaUrl);
// মিডিয়া প্লেয়ার তৈরি করা
MediaPlayer mediaPlayer = new MediaPlayer(media);
// MediaView তৈরি করা যা ভিডিও দেখাবে
MediaView mediaView = new MediaView(mediaPlayer);
// StackPane layout তৈরি করা
StackPane root = new StackPane();
root.getChildren().add(mediaView);
// Scene তৈরি এবং সেট করা
Scene scene = new Scene(root, 640, 480);
primaryStage.setTitle("JavaFX MediaPlayer Example");
primaryStage.setScene(scene);
// ভিডিও প্লে করা
mediaPlayer.play();
// স্টেজ প্রদর্শন করা
primaryStage.show();
}
public static void main(String[] args) {
launch(args);
}
}
ব্যাখ্যা:
Mediaক্লাস: মিডিয়া ফাইলের লোকেশন (পাথ বা URL) গ্রহণ করে।MediaPlayerক্লাস: মিডিয়া ফাইলটি প্লে করার জন্য ব্যবহৃত হয়।MediaViewক্লাস: মিডিয়া ফাইলের ভিডিও অংশটি দৃশ্যমান করতে ব্যবহৃত হয়। এটিMediaPlayerএর সাথে যুক্ত হয়ে ভিডিও স্ক্রীনে রেন্ডার করে।
এখানে, আপনি মিডিয়া ফাইলের পাথ দিন, তারপর MediaPlayer প্লে করবে এবং MediaView ভিডিওটি স্ক্রীনে প্রদর্শন করবে।
2. মিডিয়া প্লে কন্ট্রোল (প্লে, পজ, স্টপ) উদাহরণ
import javafx.application.Application;
import javafx.geometry.Pos;
import javafx.scene.Scene;
import javafx.scene.control.Button;
import javafx.scene.layout.StackPane;
import javafx.scene.media.Media;
import javafx.scene.media.MediaPlayer;
import javafx.scene.media.MediaView;
import javafx.stage.Stage;
public class MediaPlayerControlsExample extends Application {
@Override
public void start(Stage primaryStage) {
// মিডিয়া ফাইলের ইউআরএল
String mediaUrl = "file:///C:/path/to/your/video.mp4"; // আপনার ভিডিও ফাইলের পাথ এখানে দিন
// মিডিয়া ফাইল তৈরি করা
Media media = new Media(mediaUrl);
// মিডিয়া প্লেয়ার তৈরি করা
MediaPlayer mediaPlayer = new MediaPlayer(media);
// MediaView তৈরি করা
MediaView mediaView = new MediaView(mediaPlayer);
// Play, Pause, Stop বাটন তৈরি করা
Button playButton = new Button("Play");
Button pauseButton = new Button("Pause");
Button stopButton = new Button("Stop");
// Play বাটনে ইভেন্ট হ্যান্ডলার
playButton.setOnAction(e -> mediaPlayer.play());
// Pause বাটনে ইভেন্ট হ্যান্ডলার
pauseButton.setOnAction(e -> mediaPlayer.pause());
// Stop বাটনে ইভেন্ট হ্যান্ডলার
stopButton.setOnAction(e -> mediaPlayer.stop());
// Layout তৈরি করা
StackPane controlPane = new StackPane();
controlPane.setAlignment(Pos.BOTTOM_CENTER);
controlPane.getChildren().addAll(playButton, pauseButton, stopButton);
StackPane root = new StackPane();
root.getChildren().addAll(mediaView, controlPane);
// Scene তৈরি এবং সেট করা
Scene scene = new Scene(root, 640, 480);
primaryStage.setTitle("Media Player with Controls");
primaryStage.setScene(scene);
// ভিডিও প্লে করা
mediaPlayer.play();
// স্টেজ প্রদর্শন করা
primaryStage.show();
}
public static void main(String[] args) {
launch(args);
}
}
ব্যাখ্যা:
- এখানে, Play, Pause, এবং Stop বাটন তৈরি করা হয়েছে যা মিডিয়া প্লেব্যাক কন্ট্রোল করতে সহায়তা করে।
mediaPlayer.play(),mediaPlayer.pause(), এবংmediaPlayer.stop()মেথড ব্যবহার করে মিডিয়া ফাইলের প্লেব্যাক কন্ট্রোল করা হয়েছে।
৩. মিডিয়া ফাইলের ভলিউম কন্ট্রোল উদাহরণ
import javafx.application.Application;
import javafx.scene.Scene;
import javafx.scene.control.Slider;
import javafx.scene.layout.StackPane;
import javafx.scene.media.Media;
import javafx.scene.media.MediaPlayer;
import javafx.scene.media.MediaView;
import javafx.stage.Stage;
public class MediaPlayerVolumeControlExample extends Application {
@Override
public void start(Stage primaryStage) {
// মিডিয়া ফাইলের ইউআরএল
String mediaUrl = "file:///C:/path/to/your/video.mp4"; // আপনার ভিডিও ফাইলের পাথ এখানে দিন
// মিডিয়া ফাইল তৈরি করা
Media media = new Media(mediaUrl);
// মিডিয়া প্লেয়ার তৈরি করা
MediaPlayer mediaPlayer = new MediaPlayer(media);
// MediaView তৈরি করা
MediaView mediaView = new MediaView(mediaPlayer);
// Volume control Slider তৈরি করা
Slider volumeSlider = new Slider();
volumeSlider.setMin(0);
volumeSlider.setMax(1);
volumeSlider.setValue(0.5); // Default volume is 50%
// Volume slider এর পরিবর্তনে ভলিউম আপডেট করা
volumeSlider.valueProperty().addListener((observable, oldValue, newValue) ->
mediaPlayer.setVolume(newValue.doubleValue())
);
// Layout তৈরি করা
StackPane root = new StackPane();
root.getChildren().addAll(mediaView, volumeSlider);
// Scene তৈরি এবং সেট করা
Scene scene = new Scene(root, 640, 480);
primaryStage.setTitle("Media Player with Volume Control");
primaryStage.setScene(scene);
// ভিডিও প্লে করা
mediaPlayer.play();
// স্টেজ প্রদর্শন করা
primaryStage.show();
}
public static void main(String[] args) {
launch(args);
}
}
ব্যাখ্যা:
- Slider কন্ট্রোল ব্যবহার করা হয়েছে ভলিউম কন্ট্রোল করার জন্য।
mediaPlayer.setVolume()মেথড ব্যবহার করে ভিডিওর ভলিউম পরিবর্তন করা হয়েছে, এবং এটি স্লাইডারের মাধ্যমে নিয়ন্ত্রিত হচ্ছে।
সারাংশ:
JavaFX এর MediaPlayer এবং MediaView ক্লাসগুলি মিডিয়া প্লেব্যাকের জন্য গুরুত্বপূর্ণ। MediaPlayer মিডিয়া ফাইলটি প্লে, পজ, স্টপ, স্কিপ, ভলিউম কন্ট্রোল ইত্যাদি পরিচালনা করতে সাহায্য করে, এবং MediaView মিডিয়ার ভিডিও অংশটি স্ক্রীনে প্রদর্শন করে।
- MediaPlayer: মিডিয়া ফাইল (অডিও/ভিডিও) প্লে করতে ব্যবহৃত হয়।
- MediaView: মিডিয়ার ভিডিও অংশ প্রদর্শন করতে ব্যবহৃত হয়।
- Controls: প্লেব্যাক কন্ট্রোল যেমন Play, Pause, Stop, Volume Slider ব্যবহার করে মিডিয়া প্লেব্যাক নিয়ন্ত্রণ করা যায়।
এগুলি JavaFX অ্যাপ্লিকেশনে মিডিয়া উপাদান যোগ করার জন্য অত্যন্ত কার্যকরী এবং ব্যবহারযোগ্য টুল।
Read more