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

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

利用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();
        }
相关推荐
强哥之神6 分钟前
Nexa AI发布OmniAudio-2.6B:一款快速的音频语言模型,专为边缘部署设计
人工智能·深度学习·机器学习·语言模型·自然语言处理·音视频·openai
EasyDSS1 小时前
国标GB28181-2022平台EasyGBS:安防监控中P2P的穿透方法
网络协议·php·音视频·p2p
Amarantine、沐风倩✨9 小时前
设计一个监控摄像头物联网IOT(webRTC、音视频、文件存储)
java·物联网·音视频·webrtc·html5·视频编解码·七牛云存储
量子-Alex10 小时前
【多模态聚类】用于无标记视频自监督学习的多模态聚类网络
学习·音视频·聚类
mo477614 小时前
Webrtc音频模块(四) 音频采集
音视频·webrtc
icy、泡芙14 小时前
T527-----音频调试
linux·驱动开发·音视频
易我数据恢复大师14 小时前
怎么提取音频保存到本地?电脑音频提取方法
音视频·软件·音频提取
野蛮的大西瓜14 小时前
开源呼叫中心中,如何将ASR与IVR菜单结合,实现动态的IVR交互
人工智能·机器人·自动化·音视频·信息与通信
嘟嘟实验室16 小时前
微信小程序xr-frame透明视频实现
微信小程序·ffmpeg·音视频·xr
红米饭配南瓜汤18 小时前
WebRTC服务质量(09)- Pacer机制(01) 流程概述
网络·音视频·webrtc