Russian Qt Forum

Qt => Мультимедиа => Тема начата: richardzorgi от Август 02, 2011, 21:48



Название: VLC
Отправлено: richardzorgi от Август 02, 2011, 21:48
Доброго времени суток! Изучил http://www.prog.org.ru/topic_17690_0.html, но как сделать плеер с помощью vlc-qt так и не разобрался.

Собрал библиотеку (выполнил шаги отсюда http://slow-tone.blogspot.com/2011/04/qt-vlc-qt-1.html), осталось "подключить к своему проекту данную библиотеку." Вопрос: что делать дальше?
Вот у меня есть 2 папки E:\VLC\vlc-1.1.9   <-здесь исходный код библиотеки, E:\VLC\libvlc-qt-0.5.0  <-собранная с помощью cmake (согласно http://slow-tone.blogspot.com/2011/04/qt-vlc-qt-1.html).
Дальше создаю проект в QTCreator (Gui приложение qt) и собственно не знаю что делать дальше..

Нужно ли собранную библиотеку копировать в папку с QT (E:\QT\4.7.3) или как в 13 посте http://www.prog.org.ru/topic_17690_0.html создавать папку в проекте и копировать туда заголовочники из собранной библиотеки? Кто-нибудь может выложить примерчик, а то ссылки из постов 42 и 45 уже не рабочие..
Спасибо.


Название: Re: VLC
Отправлено: SeverusSnape от Август 03, 2011, 11:29
Примеров, которые тогда выкладывал не осталось. Обратите внимание на ответ 13 из темы http://www.prog.org.ru/topic_17690_0.html


Название: Re: VLC
Отправлено: richardzorgi от Август 03, 2011, 19:59
создал папку vlc-qt в папке с проектом, кинул туда 15 указанных выше файлов, пытаюсь подключить эти заголовочники к проекту:
.pro
Код:
QT       += core gui

TARGET = MyPlayer
TEMPLATE = app


SOURCES += main.cpp\
        mainwindow.cpp

HEADERS  += mainwindow.h

FORMS    +=  mainwindow.ui

    INCLUDE += ./vlc-qt

INCLUDE - отображается чёрным, хотя наверно должен как HEADERS, FORMS и др. быть фиолетовым; в коде заголовочников невидно (не работает автозаполнение, добавляю в mainwindow.h    #include "vlc жму Ctrl + пробел - вариантов не предлагает). У вас ещё подключались dll:
Код:
LIBS += ./vlc/libvlc.dll
LIBS += ./vlc/libvlc-qt.dll
LIBS += ./vlc/libvlccore.dll
LIBS += ./vlc/libvlc-qt.dll.a
В папке с проектом сделал папку vlc, кинул туда соотв. dll, подключил их в проект (после INCLUDE += ./vlc-qt), при запуске получившегося пустого приложения появляются 4 ошибки  ./vlc/libvlc.dll No such file in directory и для остальных dll так же. пробовал папку vlc поместить на 1 уровень выше, не помогло..

SeverusSnape, если не трудно, не могли бы вы ещё раз сделать простой пример, в котором видео грузится например из корня, и выложить его на форум attachment'ом?


Название: Re: VLC
Отправлено: SeverusSnape от Август 04, 2011, 09:05
Повторюсь - сейчас нет возможности не то что выложить, но даже быстренько сделать примерчик. Возможно, чуть позже


Название: Re: VLC
Отправлено: AlekseyK от Август 04, 2011, 11:57
VLC запускаешь через QProcess с параметрами, параметры см. доке на VLC - список его команд.


Название: Re: VLC
Отправлено: richardzorgi от Август 31, 2011, 21:57
Открыть видос плеером VLC с помощью QProcess получилось, проблема в том, что решаю следующую задачу: нужно сделать простенький плеер, в котором будет возможность включать\отключать субтитры, выводить на экран (в отдельное окно) весь текст субтитров. Если субтитры лежат в .src файле, то его можно открыть и прочитать, если же они зашиты в самом видео, то вытащить их без использования библиотеки не получится (я так думаю, возможно ошибаюсь). Поэтому нужно не запускать плеер с параметрами, а писать свой с нуля.. (чтобы хотябы интерфейс был попроще).

Повторюсь, если не трудно, не могли бы Вы(кто-нибудь?!) по возможности выложить пример на форум?


Название: Re: VLC
Отправлено: Funcy-dcm от Сентябрь 01, 2011, 16:36
Собрал vlc-qt (http://slow-tone.blogspot.com/2011/04/qt-vlc-qt-1.html), а дальше не могу прицепит это к проекту Qt. Если кто использовал эти библиотеки, выложите, пожалуйста, готовый примерчик  ::).  Гугл ничего не дал  :(.   


Название: Re: VLC
Отправлено: Funcy-dcm от Сентябрь 11, 2011, 06:52
Получилось подключить библиотеку, но при запуске приложения вылетает на строчке:
Код:
m_videoWidget = new VlcVideoWidget(centralwidget);
ниже более подробно:
Код:
DemoPlayer::DemoPlayer(QWidget *parent) :
    QMainWindow(parent)
{
    centralwidget = new QWidget(parent);
    centralwidget->setObjectName("centralwidget");
    m_videoWidget = new VlcVideoWidget(centralwidget);

    fileMenu = new QMenu(this);
    QAction *openFileAction = fileMenu->addAction(tr("Open File..."));
    menuBar()->addMenu(fileMenu);

    _instance = new VlcInstance(VlcCommon::args(), this);
    _player = new VlcMediaPlayer(m_videoWidget->widgetId(), this);

    connect(openFileAction, SIGNAL(triggered()), this, SLOT(open()));
}
Подскажите, пожалуйста, что я делаю не так... :(


Название: Re: VLC
Отправлено: SeverusSnape от Сентябрь 12, 2011, 14:15
Вот из этой темы http://www.prog.org.ru/topic_17690_0.html, ответ 13. Вы все сделали так?
А также, положили ли библиотеки в папку с программой?


Название: Re: VLC
Отправлено: Funcy-dcm от Сентябрь 12, 2011, 17:41
Сначало снова перечитал тему http://www.prog.org.ru/topic_17690_0.html (http://www.prog.org.ru/topic_17690_0.html), но не смог найти в моём тестовом проекте ошибок, потом методом тыка пытался его оживить, а оказалось, что оно не хочет работать в режиме отладки. Переключил в режим релиза и всё заработало... ;)
Спасибо, что ответил. А у тебя работает в режиме отладки?


Название: Re: VLC
Отправлено: KrupaKarlo от Март 12, 2013, 21:33
Самый простой способ если конечно на windows. Просто  установить VLC и юзать ActiveX от него там кода будет на 5 строк.