如何使用 gstreamer 查找媒体长度?
如何使用 gstreamer 查找媒体的播放时间?
How do I find the playback time of media with gstreamer?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
如何使用 gstreamer 查找媒体的播放时间?
How do I find the playback time of media with gstreamer?
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
接受
或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
发布评论
评论(4)
这是一个简单的 Python 脚本,用于获取 gstreamer 可以解码的任何内容的持续时间。请注意,gstreamer 中的所有时间均以纳秒为单位。
持续时间.py:
示例:
Here's a simple Python script to get the duration of anything gstreamer can decode. Note that all times in gstreamer are in nanoseconds.
duration.py:
Examples:
为什么要重新发明轮子?
用途:
gst-discoverer-1.0 文件名
或
gst-discoverer-0.10 文件名
根据文件类型,您可能需要添加“| grep Duration”以避免过长的标签。
为了消除视频、flac 和 mp3 文件的无关标签,应该使用 grep 来排除它们。
gst-discoverer-1.0 文件名 | grep -v 标签 | grep -v grep -v ID3v2 | grep -v ID3v2 | grep -v 图像 | grep -v 附件
Why re-invent the wheel?
Use:
gst-discoverer-1.0 filename
or
gst-discoverer-0.10 filename
Depending on the file type you may want to add " | grep Duration" to avoid the tags which can be lengthy.
For the ridding of extraneous tags for video,flac and mp3 files this should do the trick by using grep to exclude them.
gst-discoverer-1.0 filename | grep -v Tags | grep -v ID3v2 | grep -v image | grep -v attachment
参见第 6.5 节。
http://majorsilence.com/pygtk_audio_and_video_playback_gstreamer
它避免了创建管道并手动运行它的需要。
See Section 6.5.
http://majorsilence.com/pygtk_audio_and_video_playback_gstreamer
It avoids need to create a pipeline and run it manually.
添加到大于 1.16 的 gstreamer 的答案。
使用
GstPbutils
和Discoverer
我们还可以查询持续时间和其他属性。完整 API 此处Adding on to the answer for gstreamer greater then 1.16.
Using
GstPbutils
andDiscoverer
we can query duration and other attributes as well. Full API here