Unity C# Mp3 Mp4 音频 视频 合成

需求

将声音文件合并到视频中

限制

暂时只支持Windows使用

准备

下载ffmpeg.exe

解压后得到exe

https://ffmpeg.org/download.html#releases

注意事项:

目录要在一起

代码

cs 复制代码
 public void StartExe()
    {
        if (File.Exists(ffmpegExe))
        {    
            string mp4;
            string mp3;
   
            //volume=3 这个参数代表 把输入的MP3合成音量
            string commad = $"-i {mp4} -i {mp3} -filter_complex \"[1:a]volume=10[a1];[0:a][a1]amix=inputs=2:duration=first[a]\" -map 0:v -map \"[a]\" -c:v copy -c:a aac -y {outPut}";

            Process process = new Process();   // params 为 string 类型的参数,多个参数以空格分隔,如果某个参数为空,可以传入""
            ProcessStartInfo startInfo = new ProcessStartInfo(ffmpegExe);
            process.StartInfo = startInfo;
            process.StartInfo.Arguments = commad;
            process.Start();
            process.WaitForExit();
        }
    }

小笨蛋快去试试吧

相关推荐
不是万能的豆学长2 小时前
filetidy 文件整理助手:一键归类 + 规范重命名(Python 零依赖单文件工具)
大数据·开发语言·python·技术美术
懂点Tech6 小时前
ctfshow MISC入门图片篇(信息附加):misc41解题思路
开发语言·python
2601_965619696 小时前
把开源项目Changelog自动做成更新视频,AI工作流
人工智能·开源·音视频
catchadmin7 小时前
PHP 8.7 协程新提案 让跨协程代码共享请求身份
开发语言·php
念何架构之路8 小时前
go-grpc设计思想
开发语言·后端·golang
小豆庄8 小时前
视频人脸打码追踪:转场丢失、漏检和ID撞号的处理
目标检测·计算机视觉·开源·音视频·视频·python3.11
酷炫码神9 小时前
Day 10|Pinia 状态管理:把散落在各组件的数据,收进一个全局仓库
android·开发语言·javascript
Elastic 中国社区官方博客9 小时前
我们如何通过 70 多个拉取请求,将 OpenTelemetry Java agent 迁移到 invokedynamic
java·大数据·开发语言·elasticsearch·搜索引擎·全文检索·es
tyn1889 小时前
记录本地安装nacos服务的方法及异常
java·开发语言
步行cgn10 小时前
Spring MVC 视图机制的核心接口与类
java·开发语言·后端·spring·mvc