.avi
从命令行获取电影文件的比特率,帧率,宽度/高度(在我的情况下)的信息的最佳方法是什么?我正在寻找一种与ImageMagicks类似的基本工具identify
。
运行mplayer
已经提供了此信息(但还有很多其他功能):
VIDEO: [FMP4] 800x711 24bpp 25.000 fps 1320.9 kbps (161.2 kbyte/s)
有没有办法mplayer
只给出这个输出(我没在男人那里找到它),或者有另一个标准的bash命令来获得相同的信息?
mplayer
附带了一个midentify
实用工具,可以满足您的大部分需求。
输出看起来像变量赋值,因此很容易在脚本/简单解析中使用。
如果midentify
您的mplayer
软件包未安装,则可能包含midentify.sh
脚本/usr/share/mplayer
或类似内容。如果没有,则midenfify
仅mplayer
使用一组特定的参数运行:
#!/bin/sh
#
# This is a wrapper around the -identify functionality.
# It is supposed to escape the output properly, so it can be easily
# used in shellscripts by 'eval'ing the output of this script.
#
# Written by Tobias Diedrich <[email protected]>
# Licensed under GNU GPL.
if [ -z "$1" ]; then
echo "Usage: midentify.sh <file> [<file> ...]"
exit 1
fi
mplayer -vo null -ao null -frames 0 -identify "$@" 2>/dev/null |
sed -ne '/^ID_/ {
s/[]()|&;<>`'"'"'\\!$" []/\\&/g;p
}'
的-ao
,-vo
并且-frames
参数防止mplayer
从实际播放的剪辑。其余的只是格式化。
例子:
$ midentify some_random.avi
ID_VIDEO_ID=0
ID_AUDIO_ID=0
...
ID_VIDEO_BITRATE=258488
ID_VIDEO_WIDTH=320
ID_VIDEO_HEIGHT=240
ID_VIDEO_FPS=29.917
...
ID_LENGTH=4216.76
...
ID_AUDIO_BITRATE=64000
ID_AUDIO_RATE=22050
...
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句