我希望能够打开给定文件,并看到“这是一个 MP4 文件”或“这是一个 webm”文件,甚至是“这似乎不是一个有效的视频”
我在https://code.google.com/p/pyffmpeg/看到了 FFmpeg 包装器,但我没有在其中看到任何类型的 get_codec 函数。
想法?
我希望能够打开给定文件,并看到“这是一个 MP4 文件”或“这是一个 webm”文件,甚至是“这似乎不是一个有效的视频”
我在https://code.google.com/p/pyffmpeg/看到了 FFmpeg 包装器,但我没有在其中看到任何类型的 get_codec 函数。
想法?
看看Hachoir。它“从多媒体文件中提取元数据”。
这是他们从 AVI 文件中提取元数据的示例:
$ hachoir-metadata pacte_des_gnous.avi
Common:
- Duration: 4 min 25 sec
- Comment: Has audio/video index (248.9 KB)
- MIME type: video/x-msvideo
- Endian: Little endian
Video stream:
- Image width: 600
- Image height: 480
- Bits/pixel: 24
- Compression: DivX v4 (fourcc:"divx")
- Frame rate: 30.0
Audio stream:
- Channel: stereo
- Sample rate: 22.1 KHz
- Compression: MPEG Layer 3
我的 python 有点生锈了,但是快速浏览一下模块就会发现这些。
要获取编解码器 ID:
Track.CodecCtx.codec_id
要获取编解码器本身(AVCodec):
Track.Codec
AVCodec 包含编解码器名称。