簡體   English   中英

Android FFMpeg 沒有此類文件或目錄錯誤

[英]Android FFMpeg No such file or directory error

我正在使用 ffmpeg for android(使用 gradle 插件 'com.writingminds:FFmpegAndroid:0.3.2'),我正在嘗試將視頻裁剪為 16:9 (w:h) 的比例。 原始視頻是 1080:1920 (w:h)。 當我執行命令時,我得到一個 IOException No such file or directory。

我正在使用的命令:

-i /storage/emulated/0/Movies/MyApp/result_joined.mp4 -vf crop=1080:607   -preset ultrafast /storage/emulated/0/Movies/MyApp/result_cropped.mp4

例外:

java.io.IOException: Error running exec(). Command: 
[/data/user/0/my.package.name/files/ffmpeg, -i, /storage/emulated/0/Movies/MyApp/result_joined.mp4, -vf, crop=1080:607, -preset, ultrafast, /storage/emulated/0/Movies/MyApp/result_cropped.mp4] Working Directory: null Environment: null
Caused by: java.io.IOException: No such file or directory

在沒有幫助的情況下搜索了幾個堆棧溢出問題之后。 我還嘗試將文件保存到內部存儲而不是外部存儲。 結果相同

有什么幫助嗎?

創建FFmpeg實例后,您需要調用loadBinary方法。

try {
    ffmpeg.loadBinary(new LoadBinaryResponseHandler() {
        @Override
        public void onFailure() {
          Logger.i(TAG, "ffmpeg not supported");
        }
    });
} catch (FFmpegNotSupportedException e) {
    e.printStackTrace();
}

我得到同樣的異常。 我忘了加載 FFmpeg 庫。 首先我們必須加載這個庫。 在運行命令之前運行此函數。

void LoadFFmpegLibrary()
{
    if(ffmpeg==null)
    {
        ffmpeg = FFmpeg.getInstance(context);
        try {
            ffmpeg.loadBinary(new LoadBinaryResponseHandler() {

                @Override
                public void onStart() {}

                @Override
                public void onFailure() {
                    Toast.makeText(context, "Failed", Toast.LENGTH_SHORT).show();
                }

                @Override
                public void onSuccess() {
                    Toast.makeText(context, "Success", Toast.LENGTH_SHORT).show();
                }

                @Override
                public void onFinish() {}
            });
        } catch (FFmpegNotSupportedException e) {
            e.printStackTrace();
        }
    }
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM