热门标签 | HotTags
当前位置:  开发笔记 > 前端 > 正文

解决java执行cmd命令调用ffmpeg报错Concaterror-Nosuchfilter'[0,0]'问题

这篇文章主要介绍了java执行cmd命令,调用ffmpeg报错Concaterror-Nosuchfilter[0,0]解决方法,本文通过截图实例代码说明给大家介绍的非常详细,对大家的工作或学习有一定的参考借鉴价值,需要的朋友可以参考下

最近公司有一个公交项目,要生成报站语音,采用的是 报站前缀 + 站点名 + 报站后缀,3个MP3文件拼接的方式,拼接成一个完整的语音,且需要转码率和比特率,使用到了ffmpeg。

去网上找了一些ffmpeg相关的命令,参考:

安装命令参考

音频转码:

ffmpeg -i **.mp3 -ar 8000 -ac 2 -y -b:a 32k -vol 400 **.mp3

音频拼接:

//音频拼接
(1) ffmpeg -i "concat:test4.mp3|180_out.mp3" -acodec copy third.mp3 (third格式和first保持一致)
(2) ffmpeg -i "concat:first.mp3|second.mp3" -i second.mp3 -acodec copy test.mp3 -map_metadata 0:1 (third格式和second保持一致)
(3)ffmpeg -i test4.mp3 -i test5.mp3 -filter_complex '[0:0] [1:0] cOncat=n=2:v=0:a=1 [a]' -map [a] j5.mp3

音频混合:

//音频混合
ffmpeg -i 180_out.mp3 -i 181_in.mp3 -strict -2 -filter_complex amix=inputs=2:duration=longest:dropout_transition=2 -ar 8000 -ac 2 -y -b:a 64k -vol 2500 test.aac

ffmpeg下载地址:http://www.ffmpeg.org/download.html

当然,主要用到的还是音频转码和音频拼接。音频转码没问题,音频拼接的坑就来了......下面是公司项目主要用到的拼接语句:

ffmpeg -i 1.mp3 -i 2.mp3 -i 3.mp3 -filter_complex '[0:0] [1:0] [2:0] cOncat=n=3:v=0:a=1 [a]' -map [a] -b:a 32k -ar 8000 4.mp3

重点关注这一段:-filter_complex '[0:0] [1:0] [2:0] cOncat=n=3:v=0:a=1 [a]'

在本机(Windows)和公司服务器(Linux)上都安装了ffmpeg,上面的拼接语句在服务器上(Linux)能拼接MP3成功,但在本机DOS命令运行报错:

??肿么肥四!!回想windows和linux的区别,难道是目录的斜杆和反斜杠的问题??

把MP3路径的斜杆替换"/"为"\\",还是报错,一顿查找,发现是单引号和双引号的问题。

windows系统下,把 ' 改为 " 拼接成功。类似改为 -filter_complex "[0:0] [1:0] [2:0] cOncat=n=3:v=0:a=1 [a]"

linux系统,单、双引号都能拼接成功。

那么好,Dos窗口能拼接MP3成功,java代码运行cmd就出问题了:在本机测试能成功拼接MP3文件,但放到服务器上去报错。↓

No such filter: '"' Error configuring filters.

提示配置的过滤器错误,我把拼接条件又单独拿出来去Linux运行,拼接成功。

没办法,尝试把双引号改为单引号试试怎么样:

No such filter: '[0:0]' Error configuring filters.

又是提示过滤器配置错误。同样,把拼接条件单独拿出来去Linux运行,拼接成功。


What!??去百度找答案,没有找到。回头看报错信息,单引号会报错到第一个空格,双引号则直接报错,那么我把中间的空格去掉,改成这样:

                   -filter_complex '[0:0][1:0][2:0]cOncat=n=3:v=0:a=1[a]'

dos窗口成功,java运行cmd命令失败,换成双引号呢?

                   -filter_complex "[0:0][1:0][2:0]cOncat=n=3:v=0:a=1[a]"

还是dos窗口成功,java运行cmd命令失败,去掉引号?

                   -filter_complex [0:0][1:0][2:0]cOncat=n=3:v=0:a=1[a]

成功!

回头再去百度了下,发现还真有"解决方案"(可能之前没好好找):

http://www.ffmpeg-archive.org/Concat-error-No-such-filter-0-0-td4654771.html#a4654803

改成类似这样的(好多单引号):

                  -filter_complex '[0:0]' '[1:0]' '[2:0]' 'cOncat=n=3:v=0:a=1' '[a]'

报错,双引号呢?

               -filter_complex "[0:0]" "[1:0]" "[2:0]" "cOncat=n=3:v=0:a=1" "[a]"

也是报错。

不测了不测了,就用这个吧:

ffmpeg -i 1.mp3 -i 2.mp3 -i 3.mp3 -filter_complex [0:0][1:0][2:0]cOncat=n=3:v=0:a=1[a] -map [a] -b:a 32k -ar 8000 4.mp3

总结

到此这篇关于解决java执行cmd命令调用ffmpeg报错Concat error - No such filter ''[0,0]''问题的文章就介绍到这了,更多相关java执行cmd命令调用ffmpeg报错内容请搜索以前的文章或继续浏览下面的相关文章希望大家以后多多支持!


推荐阅读
  • CentOS 7部署KVM虚拟化环境之一架构介绍
    本文介绍了CentOS 7部署KVM虚拟化环境的架构,详细解释了虚拟化技术的概念和原理,包括全虚拟化和半虚拟化。同时介绍了虚拟机的概念和虚拟化软件的作用。 ... [详细]
  • GetWindowLong函数
    今天在看一个代码里头写了GetWindowLong(hwnd,0),我当时就有点费解,靠,上网搜索函数原型说明,死活找不到第 ... [详细]
  • 如何去除Win7快捷方式的箭头
    本文介绍了如何去除Win7快捷方式的箭头的方法,通过生成一个透明的ico图标并将其命名为Empty.ico,将图标复制到windows目录下,并导入注册表,即可去除箭头。这样做可以改善默认快捷方式的外观,提升桌面整洁度。 ... [详细]
  • 本文介绍了在Hibernate配置lazy=false时无法加载数据的问题,通过采用OpenSessionInView模式和修改数据库服务器版本解决了该问题。详细描述了问题的出现和解决过程,包括运行环境和数据库的配置信息。 ... [详细]
  • Windows下配置PHP5.6的方法及注意事项
    本文介绍了在Windows系统下配置PHP5.6的步骤及注意事项,包括下载PHP5.6、解压并配置IIS、添加模块映射、测试等。同时提供了一些常见问题的解决方法,如下载缺失的msvcr110.dll文件等。通过本文的指导,读者可以轻松地在Windows系统下配置PHP5.6,并解决一些常见的配置问题。 ... [详细]
  • 知识图谱——机器大脑中的知识库
    本文介绍了知识图谱在机器大脑中的应用,以及搜索引擎在知识图谱方面的发展。以谷歌知识图谱为例,说明了知识图谱的智能化特点。通过搜索引擎用户可以获取更加智能化的答案,如搜索关键词"Marie Curie",会得到居里夫人的详细信息以及与之相关的历史人物。知识图谱的出现引起了搜索引擎行业的变革,不仅美国的微软必应,中国的百度、搜狗等搜索引擎公司也纷纷推出了自己的知识图谱。 ... [详细]
  • 本文详细介绍了Linux中进程控制块PCBtask_struct结构体的结构和作用,包括进程状态、进程号、待处理信号、进程地址空间、调度标志、锁深度、基本时间片、调度策略以及内存管理信息等方面的内容。阅读本文可以更加深入地了解Linux进程管理的原理和机制。 ... [详细]
  • 计算机存储系统的层次结构及其优势
    本文介绍了计算机存储系统的层次结构,包括高速缓存、主存储器和辅助存储器三个层次。通过分层存储数据可以提高程序的执行效率。计算机存储系统的层次结构将各种不同存储容量、存取速度和价格的存储器有机组合成整体,形成可寻址存储空间比主存储器空间大得多的存储整体。由于辅助存储器容量大、价格低,使得整体存储系统的平均价格降低。同时,高速缓存的存取速度可以和CPU的工作速度相匹配,进一步提高程序执行效率。 ... [详细]
  • Webmin远程命令执行漏洞复现及防护方法
    本文介绍了Webmin远程命令执行漏洞CVE-2019-15107的漏洞详情和复现方法,同时提供了防护方法。漏洞存在于Webmin的找回密码页面中,攻击者无需权限即可注入命令并执行任意系统命令。文章还提供了相关参考链接和搭建靶场的步骤。此外,还指出了参考链接中的数据包不准确的问题,并解释了漏洞触发的条件。最后,给出了防护方法以避免受到该漏洞的攻击。 ... [详细]
  • 如何在服务器主机上实现文件共享的方法和工具
    本文介绍了在服务器主机上实现文件共享的方法和工具,包括Linux主机和Windows主机的文件传输方式,Web运维和FTP/SFTP客户端运维两种方式,以及使用WinSCP工具将文件上传至Linux云服务器的操作方法。此外,还介绍了在迁移过程中需要安装迁移Agent并输入目的端服务器所在华为云的AK/SK,以及主机迁移服务会收集的源端服务器信息。 ... [详细]
  • 本文介绍了在Linux下安装和配置Kafka的方法,包括安装JDK、下载和解压Kafka、配置Kafka的参数,以及配置Kafka的日志目录、服务器IP和日志存放路径等。同时还提供了单机配置部署的方法和zookeeper地址和端口的配置。通过实操成功的案例,帮助读者快速完成Kafka的安装和配置。 ... [详细]
  • CEPH LIO iSCSI Gateway及其使用参考文档
    本文介绍了CEPH LIO iSCSI Gateway以及使用该网关的参考文档,包括Ceph Block Device、CEPH ISCSI GATEWAY、USING AN ISCSI GATEWAY等。同时提供了多个参考链接,详细介绍了CEPH LIO iSCSI Gateway的配置和使用方法。 ... [详细]
  • Windows2003 IIS上设置301定向,实现不带www域名跳转带www域名的方法
    打开IIS,建一个网站,主机头用不带www的域名,随便指向一个目录。然后在这个网站上点右键,属性--主目录--重定向到URL如图ÿ ... [详细]
  • 分享css中提升优先级属性!important的用法总结
    web前端|css教程css!importantweb前端-css教程本文分享css中提升优先级属性!important的用法总结微信门店展示源码,vscode如何管理站点,ubu ... [详细]
  • 本文介绍了在Ubuntu下制作deb安装包及离线安装包的方法,通过备份/var/cache/apt/archives文件夹中的安装包,并建立包列表及依赖信息文件,添加本地源,更新源列表,可以在没有网络的情况下更新系统。同时提供了命令示例和资源下载链接。 ... [详细]
author-avatar
176精品传奇双线
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有