libvlc_media_new_path 中文件的 libvlc 路径
libvlc path to file in libvlc_media_new_path
我正在使用 libvlc 在 Win7 上编写自己的音乐播放器。经过一番努力使其与 Qt5.5 一起正常工作后,我可以成功 运行 我的代码。它按预期播放所需的文件。但是:
好像只播放了位于项目根目录下的文件。因此,每当我想使用位于其他地方的文件路径时,它就不起作用。
libvlc_instance_t * inst;
libvlc_media_player_t *mp;
libvlc_media_t *m;
/* Load the VLC engine */
inst = libvlc_new (0, NULL);
qDebug() << "Instance: " << inst;
/* this is what does not work. The programme crashes with a segmentation fault */
//m = libvlc_media_new_path(inst, "D:/path/to/some/external/file");
//m = libvlc_media_new_path(inst, "C:/path/to/some/external/file");
//m = libvlc_media_new_path(inst, "D:\Path\to\some\external\file");
//m = libvlc_media_new_path(inst, "file:///C:/path/to/some/external/file");
/* this works if track.flac is in the project's root director */
m = libvlc_media_new_path(inst, "track.flac");
qDebug() << "Item: " << m << " " << libvlc_media_get_mrl(m);
/* no problems here */
/* Create a media player playing environement */
mp = libvlc_media_player_new_from_media (m);
qDebug() << "Player: " << mp;
我尝试了名称中有和没有空格的文件,所以我认为这不是原因。如果你能在这里帮助我,那就太好了。
你试过了吗"d:\path\to\some\external\file"
?
我正在使用 libvlc 在 Win7 上编写自己的音乐播放器。经过一番努力使其与 Qt5.5 一起正常工作后,我可以成功 运行 我的代码。它按预期播放所需的文件。但是:
好像只播放了位于项目根目录下的文件。因此,每当我想使用位于其他地方的文件路径时,它就不起作用。
libvlc_instance_t * inst;
libvlc_media_player_t *mp;
libvlc_media_t *m;
/* Load the VLC engine */
inst = libvlc_new (0, NULL);
qDebug() << "Instance: " << inst;
/* this is what does not work. The programme crashes with a segmentation fault */
//m = libvlc_media_new_path(inst, "D:/path/to/some/external/file");
//m = libvlc_media_new_path(inst, "C:/path/to/some/external/file");
//m = libvlc_media_new_path(inst, "D:\Path\to\some\external\file");
//m = libvlc_media_new_path(inst, "file:///C:/path/to/some/external/file");
/* this works if track.flac is in the project's root director */
m = libvlc_media_new_path(inst, "track.flac");
qDebug() << "Item: " << m << " " << libvlc_media_get_mrl(m);
/* no problems here */
/* Create a media player playing environement */
mp = libvlc_media_player_new_from_media (m);
qDebug() << "Player: " << mp;
我尝试了名称中有和没有空格的文件,所以我认为这不是原因。如果你能在这里帮助我,那就太好了。
你试过了吗"d:\path\to\some\external\file"
?