Russian Qt Forum

Qt => Qt Quick => Тема начата: kuzulis от Февраль 15, 2015, 19:14



Название: [Решено]MediaPlayer и картинки (JPG, PNG и пр.)
Отправлено: kuzulis от Февраль 15, 2015, 19:14
Всем доброго времени.

Интересует возможность с помощью медиа-плеера открывать и просматривать картинки в Windows.

Суть в том, что мне приходит некий путь к файлу (который может быть или видео файлом или изображением),
который мне необходимо проиграть/показать.

Хотелось бы для этого по-иметь один компонент (MediaPlayer к примеру), в который просто передавать путь
к файлу.. При этом, компонент сам должен "понять" что ему подсунули и сделать действия..

Я попробовал плееру подсовывать PNG файлы - он их вроде как отображает, но в лог сыпятся
ошибки типа:
Цитировать
virtual bool QSGVideoItemSurface::present(const QVideoFrame&) I'm getting bad frames here...

и я не знаю, нормально ли это ?

При попытке же подсунуть JPG - плеер ничего не отображает и ругается:
Цитировать
DirectShowPlayerService::doSetUrlSource: Unresolved error code 8007007b
qml: [qmlvideo] VideoItem.onError error 1 errorString
qml: [qmlvideo] Content.onFatalError

Вот я и не знаю - а хорошая ли идея использовать плеер для просмотра картинок? :)

Иначе как-то придется извращаться и вместе с путем к файлу передавать и тип файла
(видео или картинка), а затем отображать или в Image или в MediaPlayer..

Или может еще варианты какие есть? Никто не сталкивался с подобным?




Название: Re: MediaPlayer и картинки (JPG, PNG и пр.)
Отправлено: gil9red от Февраль 15, 2015, 19:18
А почему бы не проверять суффикс файла в QImageReader::supportedImageFormats (http://qt-project.org/doc/qt-4.8/qimagereader.html#supportedImageFormats), т.е. если суффикс есть в том списке, значит у нас изображение и мы его отображаем в Image, иначе в MediaPlayer.


Название: [Решено]Re: MediaPlayer и картинки (JPG, PNG и пр.)
Отправлено: kuzulis от Февраль 16, 2015, 11:16
Ох, да, точно. Спасибо! Что-то я совсем про расширения файлов забыл.  ::)