<p>使用<a href="http://pypi.python.org/pypi/hachoir-metadata/1.3.3" rel="nofollow">hachoir-metadata</a>读取视频文件的元数据(包括帧速率、高度和宽度)。</p>
<p>导入:</p>
<pre><code>from hachoir_core.error import HachoirError
from hachoir_core.cmd_line import unicodeFilename
from hachoir_parser import createParser
from hachoir_core.tools import makePrintable
from hachoir_metadata import extractMetadata
from hachoir_core.i18n import getTerminalCharset
from hachoir_metadata.metadata_item import QUALITY_BEST
</code></pre>
<p>功能:</p>
<pre><code>def metaDataFile(filePath):
filename, realname = unicodeFilename(filePath), filePath
parser = createParser(filename, realname)
try:
metadata = extractMetadata(parser, QUALITY_BEST)
except HachoirError, err:
print "Metadata extraction error: %s" % unicode(err)
metadata = None
if not metadata:
print metadata
print "Unable to extract metadata"
exit(1)
return metadata
</code></pre>
<p>用法:</p>
<pre><code>metadata = metaDataFile(videoPath)
width = metadata.get('width')
height = metadata.get('height')
fps = metadata.get('frame_rate')
</code></pre>
<p>查看相关属性:</p>
<pre><code>for data in sorted(metadata):
if len(data.values ) > 0:
print data.key, data.values[0].value
</code></pre>