windows上 通过avformat_open_input 打开音频设备设备失败 返回码 -5
我可以确定是一定有这个设备的 我尝试过搜索博客搜索出来的几个转utf-8的函数 将设备名转换为utf-8的字符串 或者说使用 Alternative name 并将其转成Utf-8或者不转为utf-8 都测试过 但是依然还是返回-5
下面是我使用的转换utf-8函数
std::string StringToUTF8(const std::string& gbkData)
{
const char* GBK_LOCALE_NAME = "CHS"; //GBK在windows下的locale name(.936, CHS ), linux下的locale名可能是"zh_CN.GBK"
std::wstring_convert<std::codecvt<wchar_t, char, mbstate_t>>
conv(new std::codecvt<wchar_t, char, mbstate_t>(GBK_LOCALE_NAME));
std::wstring wString = conv.from_bytes(gbkData); // string => wstring
std::wstring_convert<std::codecvt_utf8<wchar_t>> convert;
std::string utf8str = convert.to_bytes(wString); // wstring => utf-8
return utf8str;
}
想知道这个是我这个转换函数的问题 还是什么问题 怎么解决这个问题啊