Russian Qt Forum

Qt => Qt Embedded => Тема начата: dmig2006 от Май 22, 2016, 20:02



Название: Qt-multimedia
Отправлено: dmig2006 от Май 22, 2016, 20:02
Такая проблемма. Есть Qt, установленна через offline установщик. Есть Linux. Qt cтавил с официального сайта Офлайн-инсталляторы Qt -  Qt 5.5.1 for Linux 32-bit (546 MB). Все поставилось, всe компилится, но при запуске выдает ошибку QtMultimedia : defaultServiceProvider::requestService(): no service found for - “org.qt-project.qt.mediaplayer”
1) GStream поставил
2) Кодеки работают(проигрывается и h264 и mpeg3 и др. форматы)
3) Модуль QtMultimedia стоит.
4) При установке, выделил ставить все.
5) Система Linux mint cinamon 17.3

В чем причина, чего не достает Qt, подскажите кто знает?


Название: Re: Qt-multimedia
Отправлено: kuzulis от Май 22, 2016, 21:18
Эммм.. как я знаю, оффициальный линуховый Qt-шный установщик не содержит мультимедиа плагинов для gstreamer. Посмотри в <your qt>/plugins/mediaservice/ наличие файлов типа "gst/gstreamer" бла-бла. Если их нет - то просто возьми и пересобери QtMultimedia сам (даже просто открыв в QtCreator) и установи (через make install). И все должно быть ок.

ЗЫ:
1. Обычно вообще-то берут из репозиториев пакеты (или из всяких ppa).
2. Или не используют всякие убунты/минты, а используют арчи/федоры
3. Да и Qt 5.5.1 - древненький.

ЗЫ2: Ах, да, еще помнится, что оффициальный Qt (то-ли до 5.6) линковался с qstreamer0.10 (это я к тому, что если вдруг плагины есть - а не работают). Поэтому нужен gstreamer0.10 тогда, а не 1.0.


Название: Re: Qt-multimedia
Отправлено: alexorleon от Май 23, 2016, 05:07
У меня была такая проблема. Может и здесь пригодится.

qml: Невозможно проиграть поток типа: <неизвестный>
Warning: "Для типа «video/x-h264, stream-format=(string)avc, alignment=(string)au, level=(string)3.1, profile=(string)main, codec_data=(buffer)014d401fffe1002a674d401f965201407b7fe000200029100000030010000003032e24000262580002625afc6383b42c5a2401000468eb7352, width=(int)640, height=(int)480, framerate=(fraction)25/1, pixel-aspect-ratio=(fraction)1/1, parsed=(boolean)true» недоступен декодер."

Установка основных кодеков (на всякий случай)
http://help.ubuntu.ru/wiki/%D0%BA%D0%BE%D0%B4%D0%B5%D0%BA%D0%B8

А это решение помогло:
http://fcorti.com/2014/04/22/ffmpeg-ubuntu-14-04-lts/


Название: Re: Qt-multimedia
Отправлено: dmig2006 от Май 23, 2016, 07:26
Спасибо всем кто откликнулся буду пробывать


Название: Re: Qt-multimedia
Отправлено: dmig2006 от Май 24, 2016, 17:02
Проблемма с ошибкой QTMultimedia решилась переустановкой на Qt 5.6 Но возникла следующая ошибка
GStreamer; Unable to pause -"rtsp://192.168.0.4:554/axis-media/media.amp?videocodec=h264&resolution=4CIF&camera=2&compression=0"
Не реализован обработчик URI, В чем может быть ошибка, на другой машине все проигрывается.

GStreamer обновил до 1.8
Plugin все поставил

ссылка по которой идет проигрывание  

Код:
#define PICTURE_7="rtsp://192.168.0.4:554/axis-media/media.amp?videocodec=h264&resolution=4CIF&camera=2&compression=0"

Код:
       player = new QMediaPlayer(this);
        QGraphicsScene *scene = new QGraphicsScene;
        ui -> graphicsView->setScene(scene);
        scene->setSceneRect(0,10,1378,1060);
        QGraphicsVideoItem *item = new QGraphicsVideoItem;
        QSizeF th(10,10);
        th.scale(1378,1060,Qt::IgnoreAspectRatio);
        item->setSize(th);
        player->setVideoOutput(item);
        ui->graphicsView->scene()->addItem(item);

Код:
       
player -> setMedia(QUrl(PICTURE_7));
player -> play();

Не знаю что может быть, на одной машине стоит Qt 5.6 x64 там все проигрывается ошибок нет.
На другой машине Qt 5.6 x86 выдает ошибку о которой писал ввыше.
Linux на обоих машинаx одинаковый, но на одной x64 на другой x86

Подскажите, какой пакет не стоит или куда хотя бы копать


Название: Re: Qt-multimedia
Отправлено: dmig2006 от Май 30, 2016, 07:21
Проблемма решена. Данная библиотека у меня заработала только после установки Qt5.6 х64, после установки всех пакетов(gstreamer и ffmpeg). При установке Qt5.6 х86 это не заработало. Системы соответствено x64 и x86