Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/qt/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Qt windows 7上的Taglib 1.8不能像windows XP那样正常工作_Qt_Taglib - Fatal编程技术网

Qt windows 7上的Taglib 1.8不能像windows XP那样正常工作

Qt windows 7上的Taglib 1.8不能像windows XP那样正常工作,qt,taglib,Qt,Taglib,我成功地使用Mingw编译了taglib1.8,然后将其集成到一个Qt项目中。 目的是从mp3文件中删除ID3标记 此代码: void MainWindow::removeTagFromFile(QByteArray &fileContent) { TagLib::ByteVector byteVector(fileContent.constData()); TagLib::ID3v2::FrameFactory *frame = TagLib::ID3v2::Frame

我成功地使用Mingw编译了taglib1.8,然后将其集成到一个Qt项目中。 目的是从mp3文件中删除ID3标记

此代码:

void MainWindow::removeTagFromFile(QByteArray &fileContent)
{
    TagLib::ByteVector byteVector(fileContent.constData());
    TagLib::ID3v2::FrameFactory *frame = TagLib::ID3v2::FrameFactory::instance();
    TagLib::IOStream *vectorStream = new TagLib::ByteVectorStream(byteVector);
    TagLib::MPEG::File file(vectorStream, frame);
    file.strip();
    file.save();
}
编译并在XP上运行良好。 编译,但在Windows 7上无法按预期工作。 将XP上编译的“.exe”设置为7并不能解决问题

奇怪吗?恐怕这是Taglib中的一个bug,它有意义吗? 欢迎任何想法或解释, 提前谢谢

你可以下载这个项目


我正在用法语写一篇关于编译和集成到Qt项目的详细教程,如果有兴趣的人,我会用英语写一篇

最后,这不是XP或7的问题,而是关于安装在计算机上的编解码器的问题

有一个简单的解决方案,你不需要从mp3文件中删除ID3标签就可以让声子读取,你只需要安装K-Lite编解码器

说明: Phonon后端使用Windows上的DirectShow读取mp3文件。 K-Lite编解码器包是DirectShow过滤器、VFW/ACM编解码器和工具的集合。编解码器和DirectShow过滤器用于音频和视频格式的编码和解码

安装K-Lite解决了一些mp3文件中的声子问题

我希望这能拯救那些在windows上播放mp3文件的人