JavaFX - Media getError() Method



In JavaFX, the getError() method of the Media class used to find out if there were any issues while playing or loading media files. When this function is called, it returns the type of error that was encountered as a MediaError enum.

Following are the mediaError Enumeration −

  • UNKNOWN − Represents an unknown or unspecified error.

  • MEDIA_UNSUPPORTED − Indicates that the media format or codec is not supported.

  • MEDIA_INACCESSIBLE − Indicates that the media file or source is inaccessible.

  • MEDIA_UNAVAILABLE − Indicates that the media file or source is unavailable or cannot be found.

  • MEDIA_NETWORK_ERROR − Indicates a network-related error while loading or playing media.

  • MEDIA_PLAYBACK_ERROR − Indicates an error during media playback.

Syntax

Following is the syntax of the 'getError()' method of 'Media' class −

public MediaError getError()

Parameters

This method does not take any parameters.

Return value

This method returns error encountered during media playback. If there is no error, it returns null.

Example

Following is a basic example demonstrating the getError() method, where we provide the path to a non-existent media file −

In this example, we retrieve any error that occurred while loading the media. This process may throw a MediaException if an error occurs. If no exception is thrown, it indicates that no error occurred.

import javafx.scene.media.Media;
import javafx.scene.media.MediaException;
import java.io.File;

public class GetError1 {
   public static void main(String[] args) {
      // Provide the path to a non-existent media file
      File mediaFile = new File("sample.mp4");
      try {
         Media media = new Media(mediaFile.toURI().toString());
         // This may throw a MediaException if an error occurs
         media.getError();
         // If no exception is thrown, it means no error occurred
         System.out.println("No error occurred.");
      } catch (MediaException e) {
         // Handle the MediaException gracefully
         System.out.println("Error occurred: " + e.getMessage());
         e.printStackTrace();
      }
   }
}

Output

Following is the error in the code occurs when an incorrect path is specified.

Error occurred: D:\TP Work\javaFx api\Audio_Video_Class\sample.mp4 (The system cannot find the file specified)
MediaException: MEDIA_UNAVAILABLE : D:\TP Work\javaFx api\Audio_Video_Class\sample.mp4 (The system cannot find the file specified)
   at javafx.media@21.0.2/javafx.scene.media.Media.(Media.java:406)
   at GetError1.main(GetError1.java:13)
   at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:103)
   at java.base/java.lang.reflect.Method.invoke(Method.java:580)
   at jdk.compiler/com.sun.tools.javac.launcher.Main.execute(Main.java:484)
   at jdk.compiler/com.sun.tools.javac.launcher.Main.run(Main.java:208)
   at jdk.compiler/com.sun.tools.javac.launcher.Main.main(Main.java:135)
Advertisements