多音轨视频使用FFmpeg删除不要音轨方法

news2024/12/18 17:53:03

近期给孩子找宫崎骏动画,但是有很多是多音轨视频但是默认的都是日语,电视上看没办法所以只能下载后删除音轨文件只保留中文。

方法分两步,先安装FFmpeg在转文件即可。

第一步FFmpeg安装

FFmpeg是一个开源项目,包含了处理视频的强大工具和库。他广泛应用于音视频转换、数据流处理和多媒体录制。

1、打开官网下载FFmpeg文件

FFmpeg download

多音轨视频使用FFmpeg删除不要音轨方法

2 选择FFmpeg系统版本

根据自己的电脑选择对应系统然后点击,由于我的电脑是 Window s的,所以我选择的是Windows ,点击之后选择下方的 Windows builds from gyan.dev

选择一个稳定的版本进行下载,我选择的版本为 ffmpeg-git-full.7z

多音轨视频使用FFmpeg删除不要音轨方法

3、设置环境变量

将下载好的压缩包进行解压,然后设置环境变量。

在搜索栏中搜索【环境变量】,然后单击将其打开

多音轨视频使用FFmpeg删除不要音轨方法

找到系统变量中的【Path】,点击【编辑】按钮

在弹出的对话框中点击【新建】按钮,然后将ffmpeg目录下的bin目录的路径添加进去,然后点击确定按钮。

注意:填写的路径要带上bin目录

可以直接进入到bin文件夹中然后将该目录的路径直接复制下来然后粘贴到环境变量中,例如我的路径为:C:\ffmpeg-2024-12-11-git-a518b5540d-full_build\bin

多音轨视频使用FFmpeg删除不要音轨方法

4、验证是否安装成功,打开命令提示符窗口输入命令 ffmpeg -version

如果可以看到打印出 ffmpeg的版本,则表示ffmpeg安装成功了,反之则表示安装失败。

多音轨视频使用FFmpeg删除不要音轨方法

第二步删除多余音轨

1、在搜索栏中搜索【cmd】,然后打开命令提示符

多音轨视频使用FFmpeg删除不要音轨方法

2、查看视频文件中所有音轨的信息,你会看到类似于以下内容:

ffmpeg -i input.mp4

注:input.mp4 为你的视频名称

多音轨视频使用FFmpeg删除不要音轨方法

在这个输出中,Stream #0:0 是视频流,Stream #0:1 和 Stream #0:2 是两个音轨。

3、删除特定音轨

如上图视频我们要保留第二个音轨文件国语,所以需要删除第一和第三个音轨

ffmpeg -i input.mp4 -map 0:v -map 0:a:0 -c:v copy -c:a copy output.mp4

参数说明:
  • -i input.mp4:视频名称。
  • -map 0:v:选择所有的视频流。
  • -map 0:a:1:选择第二个音轨(保留 Stream #0:2)。
  • -c:v copy:复制视频流,不进行转码。
  • -c:a copy:复制音频流,不进行转码。
  • output.mp4:指定输出文件名。

注意:Stream #0:2音轨是从 0 开始排序,上述文件删除第一和第三个音轨保留第二个音轨,所以-map 0:a:1是1而不是2

Stream #0:1(jpn): Audio: aac (LC), 48000 Hz, stereo, fltp (default)    这个是-map 0:a:0

Metadata:title : 日语

Stream #0:2: Audio: aac (LC), 48000 Hz, stereo, fltp      这个是 -map 0:a:1

Metadata:title : 国语

Stream #0:3: Audio: aac (LC), 48000 Hz, stereo, fltp      这个是-map 0:a:2

Metadata:title : 粤语

多音轨视频使用FFmpeg删除不要音轨方法

多音轨视频使用FFmpeg删除不要音轨方法

出现上述带颜色文字说明转换为完成,打开就是保留的音轨其他音轨已经删除了。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2261717.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Ubuntu22.04切换gcc版本教程

在编译安装程序的时候,由于gcc版本过高,导致编译无法通过,需要降低gcc版本。 一、安装gcc版本 根据自己的需求安装gcc版本。 sudo apt update sudo apt install gcc-10 g++-10二、切换gcc版本 sudo update-alternatives --install /usr/bin/gcc gcc

[SZ901] JTAG合并功能(类似FPGA菊花链)

SZ901 JTAG支持将JTAG端口组合,最多将四个JTAG变成一个 设置如下 Vivado 识别结果如下 两块板子,变成一组,,可以同时抓取信号,调试! SZ901 已上架淘宝,搜素“SZ901”哦

【收藏】Cesium 限制相机倾斜角(pitch)滑动范围

1.效果 2.思路 在项目开发的时候,有一个需求是限制相机倾斜角,也就是鼠标中键调整视图俯角时,不能过大,一般 pitch 角度范围在 0 至 -90之间,-90刚好为正俯视。 在网上查阅了很多资料,发现并没有一个合适的…

如何解决samba服务器共享文件夹不能粘贴文件

sudo vim /etc/samba/smb.conf在samba的配置文件中增加一个选项 writable yes重启Samba服务以使更改生效: sudo service smbd restart

数据结构简介:结构创造效率

一、数据结构的本质 数据结构是组织大量数据的方法(data structures:methods of organizing large amounts of data )。 根据这个定义,一条数据,就不能构成数据结构。 因为结构是数据与数据之间的关联,…

【经验分享】容器云运维的知识点

最近忙于备考没关注,有次点进某小黄鱼发现首页出现了我的笔记还被人收费了 虽然我也卖了一些资源,但我以交流、交换为主,笔记都是免费给别人看的 由于当时刚刚接触写的并不成熟,为了避免更多人花没必要的钱,所以决定公…

Linux系列之如何更换Centos yum源?

环境 Centos7Xshell7 问题描述 最近安装了一个虚拟机,准备用来学习,不过使用yum命令安装一些软件,不过使用这个命令时候,提示 Cannot find a valid baseurl for repo: base/7/x86_64,Could not retrieve mirrorlis…

RabbitMQ如何构建集群?

大家好,我是锋哥。今天分享关于【RabbitMQ如何构建集群?】面试题。希望对大家有帮助; RabbitMQ如何构建集群? 1000道 互联网大厂Java工程师 精选面试题-Java资源分享网 在RabbitMQ中,集群(Cluster&#x…

负载均衡oj项目:介绍

目录 项目介绍 项目演示 项目介绍 负载均衡oj是一个基于bs模式的项目。 用户使用浏览器向oj模块提交代码,oj模块会在所有在线的后端主机中选择一个负载情况最低的主机,将用户的代码提交给该主机,该主机进行编译运行,将结果返回…

第8章 搬移特性

8.1 搬移函数 模块化是优秀软件设计的核心所在,好的模块化能够让我在修改程序时只需理解程序的一小部分。为了设计出高度模块化的程序,我得保证互相关联的软件要素都能集中到一块,并确保块与块之间的联系易于查找、直观易懂。同时&#xff0c…

rust的axux框架开启负载均衡和重启自身的方法-会议签到的调优

开启负载均衡和重启自身 更换axum后台的意外解决的尝试在caddy反代,使用负载均衡,加多一个节点axum主程序 ip映射信息做全局共享axum重启自身刷新全局共享配置 前期刚实现了rust的后台关键业务.结果出现了两类大问题停止服务.在正用着的时候,出现很多意外,真是刺激… 更换axum…

Spring源码分析之BeanFactory接口的解析

前言: 在我们的前两篇文章当中我们看完之后其实我们都会发现当我们进行相关的重要的行为的时候如我们看到的GetBean或者在Register方法的时候会出现BeanFactroy进行调用那么这个时候我们就会产生一个疑惑这个到底是什么为什么这么重要,在我没有说的时候我们从字面上进行一个简单…

【zlm】 webrtc源码讲解三(总结)

目录 setsdp onwrite ​编辑 play 参考 setsdp onwrite play 参考 【zlm】 webrtc源码讲解_zlm webrtc-CSDN博客 【zlm】 webrtc源码讲解(二)_webrtc 源码-CSDN博客

电子应用设计方案-56:智能书柜系统方案设计

智能书柜系统方案设计 一、引言 随着数字化时代的发展和人们对知识获取的需求增加,智能书柜作为一种创新的图书管理和存储解决方案,能够提供更高效、便捷和个性化的服务。本方案旨在设计一款功能齐全、智能化程度高的智能书柜系统。 二、系统概述 1. 系…

Spring Boot 性能提升的核武器,速度提升 500%!

虚拟线程是 Java 21 引入的一个新特性,用于简化并发编程。它与传统的操作系统线程相比,具有显著的优势: 轻量级:虚拟线程由 JVM 管理,而非操作系统,因此它们的内存占用和创建成本远低于传统线程。理论上&am…

【5G】5G 无线协议 Radio Protocols(一)

长期演进(LTE)无线电协议主要设计用于通过扁平架构提供PS服务,相比之前的代际,这代表了一个重大改进,它消除了支持电路交换(CS)服务和复杂架构中固有的复杂性。许多原始的LTE原则自第8版以来一直…

实现按键按下(低电平)检测到下降沿

按照流程进行编程 步骤1: 初始化函数 包括时基工作参数配置 输入通道配置 更新中断使能 使能捕获、捕获中断及计数器 HAL_TIM_IC_Init(&ic_handle) //时基参数配置 HAL_TIM_IC_ConfigChannel(&ic_handle,&ic_config,TIM_CHANNEL_2) //输…

2024广东省职业技能大赛云计算——私有云(OpenStack)平台搭建

OpenStack搭建 前言 搭建采用双节点安装,即controller控制节点和compute计算节点。 CentOS7 系统选择 2009 版本:CentOS-7-x86_64-DVD-2009.iso 可从阿里镜像站下载:https://mirrors.aliyun.com/centos/7/isos/x86_64/ OpenStack使用竞赛培…

使用ENSP实现NAT(2)

一、NAT的类型 二、静态NAT 1.项目拓扑 2.项目实现 路由器AR1配置: 进入系统视图 sys将路由器命名为AR1 sysname AR1关闭信息中心 undo info-center enable 进入g0/0/0接口 int g0/0/0将g0/0/0接口IP地址配置为192.168.10.254/24 ip address 192.168.10.254 24进…

RNN LSTM Seq2Seq Attention

非端到端: data -》 cleaning -》 feature Engining (70%-80%工作 设计特征)-》 分类器 -》预测 端到端 End-to-End: data -》 cleaning -》Deep learning(表示学习,从数据中学习特征) -》…