TagLib#(C#)和TagLib(C)的长度差异
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了TagLib#(C#)和TagLib(C)的长度差异,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含957字,纯文字阅读大概需要2分钟。
内容图文
![TagLib#(C#)和TagLib(C)的长度差异](/upload/InfoBanner/zyjiaocheng/751/c146026c8aa1471f9f378d9fd2922c87.jpg)
我目前正在将我的C#应用??程序移到Qt / C上.我遇到TagLib的长度问题.我发现奇怪的是TagLib#以毫秒为单位返回音频持续时间,而TagLib以秒为单位返回其(不正确)持续时间. TagLib只为长度值返回零,而TagLib#保持正确.
这是我在C#/ TagLib中的来源#…
TagLib.File tagfile = TagLib.File.Create(path);
uint milliseconds = (uint)tagfile.Properties.Duration.TotalMilliseconds;
这里应该是C / TagLib中几乎相同的东西.我甚至强迫它准确阅读.没有成功.
TagLib::FileName fn(path);
TagLib::FileRef fr(fn, true, TagLib::AudioProperties::Accurate);
uint length = fr.audioProperties()->length();
它对我的大多数媒体文件都有预期的效果.但是,选择的几个音频文件无法返回任何音频属性(标签信息的其余部分读取正常!).返回完全相同的音频属性,TagLib#没有问题.
任何想法都表示赞赏.谢谢.
在赏金结束之前,有没有人有更多的想法?
解决方法:
嗨,有一个taglib的补丁计算长度,以毫秒为单位,这个人添加了一个方法(lengthMilliseconds()),返回长度(以毫秒为单位),这可能对您有用:
http://web.archiveorange.com/archive/v/sF3Pjr01lSQjsqjrAC7L
内容总结
以上是互联网集市为您收集整理的TagLib#(C#)和TagLib(C)的长度差异全部内容,希望文章能够帮你解决TagLib#(C#)和TagLib(C)的长度差异所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。