ChinaFFmpeg

 找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 17913|回复: 9

[Linux] 切片转码后合并视频,声音卡顿

[复制链接]
发表于 2017-2-13 16:22:54 | 显示全部楼层 |阅读模式
     现在做的是先把一个视频按照关键帧切分成几段,然后对各段视频分别进行转码,最后将转码后的切片合并成完整的视频。
遇到的问题:合并后的视频在切片连接处有声音的跳变,分析视频数据发现每个切片的开头加入了一个空白帧,好像是因为切片的第一个帧没有参考帧所致。 请大牛们帮忙知道如何解决,非常感谢!
回复

使用道具 举报

 楼主| 发表于 2017-2-14 17:48:18 | 显示全部楼层
孙悟空 发表于 2017-2-14 15:31
ffmpeg -i infile -c:v libx264 -b:v 800k -s 1280x720 -r 15 -g 15 -c:a mp3 -ar 48000 -b:a 128k -y outf ...

没搞定,下边是我单独拿音频测试的命令,源视频本身音频格式为aac, 第一种情况合并的音频是正常的,第二种进行转码后合并,就不正常了。。。
ffmpeg -i split1.mp4 -acodec copy -vn -y test.audio0001.aac
ffmpeg -i split2.mp4 -acodec copy -vn -y test.audio0002.aac
ffmpeg -i "concat:test.audio0001.aac|test.audio0002.aac" -c copy test.audio.aac

ffmpeg -i split1.mp4 -acodec copy -acodec libfaac -y test.audio1001.aac
ffmpeg -i split2.mp4 -acodec copy -acodec libfaac -y test.audio1002.aac
ffmpeg -i "concat:test.audio1001.aac|test.audio1002.aac" -c copy test.audio1.aac
回复 支持 1 反对 0

使用道具 举报

发表于 2017-2-14 10:24:06 | 显示全部楼层
这个问题目前无解,不同格式seek策略有所不同,切片的时候肯定会有不同的地方重合或者缺少
需要改大量的代码,ffmpeg.c本身,不建议做这么复杂
回复 支持 反对

使用道具 举报

 楼主| 发表于 2017-2-14 13:15:56 | 显示全部楼层
谢谢大圣。
实际我们做了测试,只是把视频切分然后再合并,这样是没问题的。 就是分片转码之后再合并就不行了。
回复 支持 反对

使用道具 举报

发表于 2017-2-14 13:31:12 | 显示全部楼层
rosekin 发表于 2017-2-14 13:15
谢谢大圣。
实际我们做了测试,只是把视频切分然后再合并,这样是没问题的。 就是分片转码之后再合并就不行 ...

能否详细介绍一下步骤?怎么切的,怎么转的,转成什么编码,什么封装格式

回复 支持 反对

使用道具 举报

 楼主| 发表于 2017-2-14 14:16:46 | 显示全部楼层
孙悟空 发表于 2017-2-14 13:31
能否详细介绍一下步骤?怎么切的,怎么转的,转成什么编码,什么封装格式

...

使用mkvmerge 按照分片的大小来切分, 转码命令:
ffmpeg -i infile -c:v libx264 -b:v 800k -s 1280x720 -r 15 -g 15 -c:a mp3 -ar 48000 -b:a 128k -y outfile.mp4
回复 支持 反对

使用道具 举报

发表于 2017-2-14 15:31:05 | 显示全部楼层
ffmpeg -i infile -c:v libx264 -b:v 800k -s 1280x720 -r 15 -g 15 -c:a mp3 -ar 48000 -b:a 128k -y outfile.ts
这么切,然后合并一下试试,这么切的话,每一个切片的starttime都是0
可以尝试用-output_ts_offset来设置output文件的starttime
回复 支持 反对

使用道具 举报

 楼主| 发表于 2017-2-14 15:43:51 | 显示全部楼层
孙悟空 发表于 2017-2-14 15:31
ffmpeg -i infile -c:v libx264 -b:v 800k -s 1280x720 -r 15 -g 15 -c:a mp3 -ar 48000 -b:a 128k -y outf ...

好的,我这边试试,非常感谢。
回复 支持 反对

使用道具 举报

发表于 2017-2-14 19:10:22 | 显示全部楼层
rosekin 发表于 2017-2-14 17:48
没搞定,下边是我单独拿音频测试的命令,源视频本身音频格式为aac, 第一种情况合并的音频是正常的,第二 ...

从现象看是编码参数不一致的问题了
不过从命令行看,你的ffmpeg版本应该比较老了
回复 支持 反对

使用道具 举报

发表于 2019-10-17 13:10:51 | 显示全部楼层
rosekin 发表于 2017-2-14 13:15
谢谢大圣。
实际我们做了测试,只是把视频切分然后再合并,这样是没问题的。 就是分片转码之后再合并就不行 ...

先转码,后分片呢?
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|Archiver|ChinaFFmpeg

GMT+8, 2024-12-27 12:49 , Processed in 0.047919 second(s), 16 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表