It's working properly Samsung A20 device with android version 10. when I used the rest of the Android, that time it shows an error. How can I overcome this? I saw a similar question in our community but not get a proper answer. Please help me out of this.
Get path: /storage/emulated/0/video.mp4
private void getVideoResolution(String videoUri) {
FFmpegMediaMetadataRetriever retriever = new FFmpegMediaMetadataRetriever();
retriever.setDataSource(videoUri);
try {
int width = Integer.valueOf(retriever.extractMetadata(FFmpegMediaMetadataRetriever.METADATA_KEY_VIDEO_WIDTH));
int height = Integer.valueOf(retriever.extractMetadata(FFmpegMediaMetadataRetriever.METADATA_KEY_VIDEO_HEIGHT));
String time = retriever.extractMetadata(FFmpegMediaMetadataRetriever.METADATA_KEY_DURATION);
long timeInMis = Long.parseLong(time);
Log.d(TAG, "Video Actual Duration: " + timeInMis / 1000);
retriever.release();
if (height < width) {
int temp = height;
height = width;
width = temp;
}
Log.d(TAG, "getVideoResolution: width: " + width + ", height: " + height);
videoDimension = width + "x" + height;
Log.d(TAG, "getVideoResolution: " + videoDimension);
centerCropVideo(width, height);
} catch (Exception e) {
e.printStackTrace();
}
}
Error:
2020-12-08 12:22:00.760 11739-11739/com.songsterbd.songster E/AndroidRuntime: FATAL EXCEPTION: main
Process: com.songsterbd.songster, PID: 11739
java.lang.RuntimeException: Unable to start activity ComponentInfo{com.songsterbd.songster/com.songsterbd.songster.view.activity.VideoEditUploadActivity}: java.lang.IllegalArgumentException: setDataSource failed: status = 0xFFFFFFFF
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:3270)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:3409)
at android.app.servertransaction.LaunchActivityItem.execute(LaunchActivityItem.java:83)
at android.app.servertransaction.TransactionExecutor.executeCallbacks(TransactionExecutor.java:135)
at android.app.servertransaction.TransactionExecutor.execute(TransactionExecutor.java:95)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2016)
at android.os.Handler.dispatchMessage(Handler.java:107)
at android.os.Looper.loop(Looper.java:214)
at android.app.ActivityThread.main(ActivityThread.java:7356)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:492)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:930)
Caused by: java.lang.IllegalArgumentException: setDataSource failed: status = 0xFFFFFFFF
at wseemann.media.FFmpegMediaMetadataRetriever.setDataSource(Native Method)
at com.songsterbd.songster.view.activity.VideoEditUploadActivity.getVideoResolution(VideoEditUploadActivity.java:222)
at com.songsterbd.songster.view.activity.VideoEditUploadActivity.onCreate(VideoEditUploadActivity.java:170)
at android.app.Activity.performCreate(Activity.java:7802)
at android.app.Activity.performCreate(Activity.java:7791)
at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1299)
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:3245)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:3409)
at android.app.servertransaction.LaunchActivityItem.execute(LaunchActivityItem.java:83)
at android.app.servertransaction.TransactionExecutor.executeCallbacks(TransactionExecutor.java:135)
at android.app.servertransaction.TransactionExecutor.execute(TransactionExecutor.java:95)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2016)
at android.os.Handler.dispatchMessage(Handler.java:107)
at android.os.Looper.loop(Looper.java:214)
at android.app.ActivityThread.main(ActivityThread.java:7356)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:492)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:930)
User contributions licensed under CC BY-SA 3.0