怎么快速又方便的旋转视频

背景:当你在看某片时,发现视频视角是"---"这样的,而更好的观感视角是 "|"这样的,为了旋转视频,你下载了各种编辑软件,但,不是付费的就是非常耗时,而且转换的像素还不好,怎么方便操作便成了你心结?

利用FFmpeg 视频旋转功能,并启用多线程的方式加快视频的处理:

java 复制代码
ffmpeg -threads 4 -i input.mp4 -vf "transpose=1" -metadata:s:v:0 rotate=90 output.mp4
  • ffmpeg: FFmpeg命令行工具的名称,用于处理音视频文件。

  • -threads 4: 用于设置FFmpeg使用的线程数。在这个例子中,设置为4,表示使用4个线程来处理视频。

  • -i input.mp4: 输入文件的路径和名称。-i用于指定输入文件。

  • -vf "transpose=1": 视频过滤器选项,用于对视频进行旋转操作。transpose=1表示将视频逆时针旋转90度。

  • -metadata:s:v:0 rotate=90: 这是设置视频元数据的选项,用于设置视频旋转的角度。:s:v:0表示设置视频流的第一个流的元数据。在这个例子中,设置视频旋转角度为90度。-metadata:s:v:0 rotate=90的作用是将输出视频文件的第一个视频流(索引为0)的旋转角度元数据设置为90度。这是为了确保播放器在播放视频时能够正确地根据旋转角度进行渲染。通常情况下,如果视频被旋转了,但是没有正确地设置旋转元数据,播放器可能会错误地显示视频。因此,通过设置旋转元数据,可以确保视频在播放时以正确的方向显示。

java 复制代码
        try {
            // 构建FFmpeg命令
            ProcessBuilder builder = new ProcessBuilder(
                    ffmpegPath,
//                    "-threads", "4", // 设置线程数为4
                    "-i", inputVideo,
                    "-vf", "transpose=1",
                    "-metadata:s:v:0", "rotate=90",
                    outputVideo
            );


            // 启动进程并等待命令执行完成
            builder.inheritIO();// 将FFmpeg输出重定向到Java的标准输出
            Process process = builder.start();
            process.waitFor();
            System.out.println("Watermark added successfully!");

            // 打印命令执行结果
            if (process.exitValue() == 0) {
                System.out.println("FFmpeg command executed successfully.");
            } else {
                System.out.println("FFmpeg command failed.");
            }
        } catch (IOException | InterruptedException e) {
            e.printStackTrace();
        }
相关推荐
爱趣五科技5 小时前
无界云剪音频教程:提升视频质感
前端·音视频
YiSLWLL7 小时前
Tauri2+Leptos开发桌面应用--绘制图形、制作GIF动画和mp4视频
python·rust·ffmpeg·音视频·matplotlib
阿虚同学9 小时前
一键视频转文字/音频转文字,浏览器右键提取B站视频文案,不限时长免费无限次可用
音视频·语音识别·视频转文字·音频转文字·视频文案
学习嵌入式的小羊~10 小时前
RV1126+FFMPEG推流项目源码
ffmpeg
Everbrilliant8912 小时前
GL C++显示相机YUV视频数据使用帧缓冲FBO后期处理,实现滤镜功能。
音视频·opengl图片水印·opengl文字水印·opengl帧缓冲·opengl离屏渲染(osr)·opengl fbo·opengl图像合成
yangshuo128115 小时前
如何将手机的画面和音频全部传输到电脑显示和使用电脑外放输出
智能手机·音视频
陈皮话梅糖@17 小时前
iOS 集成ffmpeg
ios·ffmpeg
芥末的无奈18 小时前
GStreamer 简明教程(九):插件开发,以一个音频特效插件为例
音视频·gstreamer
winxp-pic1 天前
视频行为分析系统,可做安全行为检测,比如周界入侵,打架
安全·音视频
姓学名生2 天前
李沐vscode配置+github管理+FFmpeg视频搬运+百度API添加翻译字幕
vscode·python·深度学习·ffmpeg·github·视频