diff options
author | Qt Forward Merge Bot <qt_forward_merge_bot@qt-project.org> | 2019-08-28 07:37:55 +0200 |
---|---|---|
committer | Qt Forward Merge Bot <qt_forward_merge_bot@qt-project.org> | 2019-08-28 07:37:55 +0200 |
commit | 2de952fbd9843046e0612f1eaf257c9de94c966e (patch) | |
tree | 8ed82d62688ff9cb75ad446a78b1fdc2135429f3 /src/multimedia/doc/snippets/multimedia-snippets/media.cpp | |
parent | 8972b26890b9c4d7e82cc47a4864fda0a8a78ff4 (diff) | |
parent | d4a3e85eb86d551bdbeae973ab59c1fcee09393e (diff) |
Merge remote-tracking branch 'origin/5.13' into 5.14
Change-Id: Ic16cafaf6df356e430db4d60ad95610c855e1042
Diffstat (limited to 'src/multimedia/doc/snippets/multimedia-snippets/media.cpp')
-rw-r--r-- | src/multimedia/doc/snippets/multimedia-snippets/media.cpp | 31 |
1 files changed, 31 insertions, 0 deletions
diff --git a/src/multimedia/doc/snippets/multimedia-snippets/media.cpp b/src/multimedia/doc/snippets/multimedia-snippets/media.cpp index 60097d917..8ec7cb072 100644 --- a/src/multimedia/doc/snippets/multimedia-snippets/media.cpp +++ b/src/multimedia/doc/snippets/multimedia-snippets/media.cpp @@ -40,6 +40,7 @@ /* Media related snippets */ #include <QFile> #include <QTimer> +#include <QBuffer> #include "qmediaplaylist.h" #include "qmediarecorder.h" @@ -189,6 +190,36 @@ void MediaExample::MediaPlayer() player->play(); //! [Movie playlist] + + //! [Pipeline] + player = new QMediaPlayer; + player->setMedia(QUrl("gst-pipeline: videotestsrc ! autovideosink")); + player->play(); + //! [Pipeline] + + //! [Pipeline appsrc] + QImage img("images/qt-logo.png"); + img = img.convertToFormat(QImage::Format_ARGB32); + QByteArray ba(reinterpret_cast<const char *>(img.bits()), img.sizeInBytes()); + QBuffer buffer(&ba); + buffer.open(QIODevice::ReadOnly); + player = new QMediaPlayer; + player->setMedia(QUrl("gst-pipeline: appsrc blocksize=4294967295 ! \ + video/x-raw,format=BGRx,framerate=30/1,width=200,height=147 ! \ + coloreffects preset=heat ! videoconvert ! video/x-raw,format=I420 ! jpegenc ! rtpjpegpay ! \ + udpsink host=127.0.0.1 port=5000"), &buffer); + player->play(); + + QMediaPlayer *receiver = new QMediaPlayer; + videoWidget = new QVideoWidget; + receiver->setVideoOutput(videoWidget); + receiver->setMedia(QUrl("gst-pipeline: udpsrc port=5000 ! \ + application/x-rtp,encoding-name=JPEG,payload=26 ! rtpjpegdepay ! jpegdec ! \ + xvimagesink name=qtvideosink")); + receiver->play(); + // Content will be shown in this widget. + videoWidget->show(); + //! [Pipeline appsrc] } void MediaExample::MediaRecorder() |