2014-01-30 4 views
1

Qt를 사용하여 비디오 파일을 재생하는 코드는 다음과 같습니다. 비디오를 재생하는 대신 IP 카메라에서 라이브 비디오 스트림을 재생하고 싶습니다. 또 다른 방법은 VLC 플레이어를 Qt에 내장하는 것이며 프로젝트 링크는 here입니다. 문제는 Qt에 플레이어를 포함시키는 방법을 모른다. 그래서 어떻게 진행합니까?Qt를 사용하여 라이브 비디오 스트림 재생

#include <QApplication> 
#include <QtMultimediaWidgets/QVideoWidget> 
#include <QtMultimedia/QMediaPlayer> 
#include <QtMultimedia/QMediaPlaylist> 
#include <QFile> 
#include <QHBoxLayout> 
#include "DemoPlayer.h" 
int main(int argc, char *argv[]) 
{ 
    QApplication a(argc, argv); 

    QWidget *widget=new QWidget; 
    widget->resize(400,300); 

    QMediaPlayer *player=new QMediaPlayer; 
    QVideoWidget *vw= new QVideoWidget; 
    QHBoxLayout *layout=new QHBoxLayout; 

    layout->addWidget(vw); 
    widget->setLayout(layout); 
    player->setVideoOutput(vw); 
    player->setMedia(QUrl::fromLocalFile("C:/Users/Administrator/Desktop/1minute.mp4")); 
    player->play(); 
    widget->show(); 
    qDebug()<<player->availableMetaData()<<player->currentMedia().canonicalUrl(); 

    return a.exec(); 
} 
+0

을 사용할 수 있습니다 .... – Metoo

+0

더 명확 조금 이제 질문을 확인 @Metoo 질문 해주십시오. –

+1

LibVLC를 사용해 보셨습니까? https://wiki.videolan.org/LibVLC_SampleCode_Qt – Metoo

답변

4

이 코드를 따르십시오. 유효한 창 ID를 사용하여 다른 위젯 내부에 위젯을 임베드 할 수 있습니다. How to show output video of other application in Qt? 당신이 위의 코드는 잘 작동 qx11embedwidget 및 qx11embedwidgetcontainer QX11EmbedWidget and QX11EmbedContainer

+0

링크가 열리지 않습니다. 그 링크가 틀림 없습니까? –

+0

qx11EmbedWidget 및 QX11EmbedContainer를 확인하십시오. 스택 오버플로 스레드를 열 수 있습니까? – Wagmare

+0

실을 열어도 대답에 제공된 링크를 열 수 없습니다. 그것이 문제이다. 나를 위해 –

관련 문제