libvlc путь к файлу в libvlc_media_new_path

Я пишу свой собственный музыкальный проигрыватель на Win7, используя libvlc. После некоторых попыток заставить его работать должным образом с 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;

Я пробовал файлы с и без пробелов в их именах, поэтому я не думаю, что это причина. Было бы здорово, если бы вы могли помочь мне здесь.

1 ответ

Решение

Ты пробовал "d:\\path\\to\\some\\external\\file"?

Другие вопросы по тегам