我准备了一个测试程序来运行 FFMPEG 命令,并且它成功运行了-i "/data/user/0/com.example.test/cache/file_picker/test.mp4" -c:v mpeg4 "/data/user/0/com.example.test/cache/test-1639310478143.mp4"命令。这只是为了确保 ffmpeg_kit_flutter 已正确加载并已获得所有权限。
但是,我在执行-i "source.mp4" -vf fps=30 "thumb%03d.jpg" -hide_banner命令时遇到问题。当我在 Windows 上运行该命令时,该命令本身运行良好,例如:
md frame1
ffmpeg -i "test.mp4" -vf fps=30 frame1/thumb%%04d.jpg -hide_banner
Run Code Online (Sandbox Code Playgroud)
(注:双%是转义Windows批处理文件中的%)
这就是我在 android 上的 flutter 中所做的:
String command = '-i "/data/user/0/com.example.test/cache/file_picker/test.mp4" -vf fps=30 "/data/user/0/com.example.test/cache/tmp-1639309602536/thumb%03d.jpg" -hide_banner';
FFmpegKit.executeAsync(command, (session) async {
final returnCode = await session.getReturnCode();
if (ReturnCode.isSuccess(returnCode)) {
//ok
} else if (ReturnCode.isCancel(returnCode)) {
//cancelled
} else {
//error
}
});
Run Code Online (Sandbox Code Playgroud)
散文不起作用(总是转到错误部分)。我的问题是:
我正在寻找一种使用 Flutter 来检测操作系统深色模式是否处于活动状态的方法。我只希望我的应用程序遵循操作系统深色模式设置。我用谷歌搜索了一下,大多数主题都是关于“设置和切换”深色模式,而不是关于检测操作系统的深色模式。