为了账号安全,请及时绑定邮箱和手机立即绑定

如何从ffmpeg输出中提取持续时间?

如何从ffmpeg输出中提取持续时间?

梦里花落0921 2019-12-25 15:51:12
要获取有关媒体文件的大量信息,可以做ffmpeg -i <filename>它会输出很多行,特别是一行Duration: 00:08:07.98, start: 0.000000, bitrate: 2080 kb/s我只想输出00:08:07.98,所以我尝试ffmpeg -i file.mp4 | grep Duration| sed 's/Duration: \(.*\), start/\1/g'但是它可以打印所有内容,而不仅仅是长度。甚至ffmpeg -i file.mp4 | grep Duration输出所有内容。如何获得持续时间长度?
查看完整描述

3 回答

?
www说

TA贡献1775条经验 获得超8个赞

ffmpeg正在将该信息写入,而stderr不是stdout。尝试这个:


ffmpeg -i file.mp4 2>&1 | grep Duration | sed 's/Duration: \(.*\), start/\1/g'

注意重定向stderr到stdout:2>&1


编辑:


您的sed陈述也不起作用。尝试这个:


ffmpeg -i file.mp4 2>&1 | grep Duration | awk '{print $2}' | tr -d ,


查看完整回答
反对 回复 2019-12-25
  • 3 回答
  • 0 关注
  • 944 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信