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

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

利用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();
        }
相关推荐
智算菩萨1 小时前
OpenCV色彩空间转换实战:BGR转HSV/LAB的工业应用场景详解(含自动化脚本)
人工智能·python·opencv·计算机视觉·自动化·音视频
顾道长生'2 小时前
(ICLR-2026)LONGLIVE:实时交互式长视频生成
音视频·长视频生成
爱学习的程序媛3 小时前
【WebRTC】呼叫中心前端技术选型:SIP.js vs JsSIP vs Verto
前端·javascript·typescript·音视频·webrtc·实时音视频·web
愚公搬代码4 小时前
【愚公系列】《剪映+DeepSeek+即梦:短视频制作》027-字幕:用文字来美化画面(用剪映专业版添加字幕贴纸)
音视频
小仙女的小稀罕5 小时前
专业音频工具排行 | 迅捷音频转文字介绍
音视频
Terasic友晶科技5 小时前
2-DE10-Nano的HDMI音频传输案例——基于FPGA的I2S控制模块设计
fpga开发·音视频·i2s·de10-nano·hdmi音频传输
irpywp6 小时前
SentrySearch:一款支持用自然语言检索原生 MP4 视频的 Python 命令行工具
python·音视频·概率论
狄林可6 小时前
从付费软件到自主开发:我用AI和FFmpeg实现了一个录屏工具
人工智能·ffmpeg
2301_764441337 小时前
Helios:14B实时长视频生成模型
人工智能·音视频
0xDevNull7 小时前
Java 视频在线播放功能案例
java·开发语言·音视频