如何使用ov_open_callbacks从流中打开Ogg Vorbis文件

时间:2018-08-31 19:49:20

标签: c++ windows unicode oggvorbis

打开Ogg Vorbis文件的标准方法是使用ov_fopenov_open。但是,如果文件路径包含非ASCII字符,则这两个功能都无法在Windows上运行。

在这种情况下,可以包装现有的upstream/project(或其他输入流)并通过std::ifstream打开它。尝试执行此操作时,我发现the documentation对于所需包装函数的确切语义有些粗略。

如何包装现有流以将其传递到ov_open_callbacks

1 个答案:

答案 0 :(得分:1)

这是一个工作示例,该示例打开一个.ogg文件并打印出一些基本信息。所有包装函数(除了ov_open_callbacks,在这种情况下都不需要)都已实现,因此生成的close结构是完全可检索的。

OggVorbis_File