Phonon minimum needs to play a video: Difference between revisions

From Qt Wiki
Jump to navigation Jump to search
No edit summary
(Sub-categorize)
 
(3 intermediate revisions by 2 users not shown)
Line 1: Line 1:
[[Category:Snippets]]
{{Cleanup | reason=Auto-imported from ExpressionEngine.}}
 
[[Category:Snippets::Misc]]


= '''Phonon''' minimum needs to play a video. =
= '''Phonon''' minimum needs to play a video. =


The "documentation about Phonon":http://doc.qt.nokia.com/4.7/phonon-overview.html#phonon-overview provided by Qt doesn't give you an "out of the box" explanation on how to play a video using Phonon in Qt. That's why I write this down in order to help a little.
The [http://doc.qt.nokia.com/4.7/phonon-overview.html#phonon-overview documentation about Phonon] provided by Qt doesn't give you an "out of the box" explanation on how to play a video using Phonon in Qt. That's why I write this down in order to help a little.


Before you start testing, make sure that you have the right programs and or libs installed on your computer. Look "here":http://doc.qt.nokia.com/4.7/phonon-overview.html#installing-phonon for the setup you need.
Before you start testing, make sure that you have the right programs and or libs installed on your computer. Look [http://doc.qt.nokia.com/4.7/phonon-overview.html#installing-phonon here] for the setup you need.


You need only 4 items to get a video to play.<br /># You need to have a &quot;Phonon::MediaObject&amp;quot;:http://doc.qt.nokia.com/4.7/phonon-mediaobject.html<br /># You need to have a &quot;Phonon::VideoWidget&amp;quot;:http://doc.qt.nokia.com/4.7/phonon-videowidget.html<br /># You need to have a &quot;Phonon::AudioOutput&amp;quot;:http://doc.qt.nokia.com/4.7/phonon-audiooutput.html<br /># add your .pro file with &quot;+= phonon&amp;quot;
You need only 4 items to get a video to play.
# You need to have a [http://doc.qt.nokia.com/4.7/phonon-mediaobject.html Phonon::MediaObject]
# You need to have a [http://doc.qt.nokia.com/4.7/phonon-videowidget.html Phonon::VideoWidget]
# You need to have a [http://doc.qt.nokia.com/4.7/phonon-audiooutput.html Phonon::AudioOutput]
# add your .pro file with "+= phonon"


Then the code:
Then the code:


<code><br />//include the right lib:<br />#include &lt;phonon&amp;gt;
<code>
//include the right lib:
#include <phonon>
 
// setup the objects:
Phonon::MediaObject *obj_MediaObject = new Phonon::MediaObject(this);
Phonon::VideoWidget *wid_videoWidget = new Phonon::VideoWidget(this);
Phonon::AudioOutput '''aio_audioOutput = new Phonon::AudioOutput(Phonon::VideoCategory,this);
 
//clear the mediaobject:
obj_MediaObject->clearQueue();
 
//Put a video in the queue:
obj_MediaObject->enqueue(Phonon::MediaSource("path to video"));
 
//make the proper connections:
Phonon::createPath(obj_MediaObject, wid_videoWidget); // to link the mediaobject with the video widget.
Phonon::createPath(obj_MediaObject, aio_audioOutput); // to link the mediaobject with audio output.
 
//play the video:
obj_MediaObject->play();
</code>
 
That's all there is.


// setup the objects:<br />Phonon::MediaObject *obj_MediaObject = new Phonon::MediaObject(this);<br />Phonon::VideoWidget *wid_videoWidget = new Phonon::VideoWidget(this);<br />Phonon::AudioOutput '''aio_audioOutput = new Phonon::AudioOutput(Phonon::VideoCategory,this);
''' '''Note:''' This code only works on local video files. I didn't have YouTube videos and mms streaming working yet. When I do, I will edit this page.
<br />//clear the mediaobject:<br />obj_MediaObject-&gt;clearQueue();
<br />//Put a video in the queue:<br />obj_MediaObject-&gt;enqueue(Phonon::MediaSource(&quot;path to video&amp;quot;));
<br />//make the proper connections:<br />Phonon::createPath(obj_MediaObject, wid_videoWidget); // to link the mediaobject with the video widget.<br />Phonon::createPath(obj_MediaObject, aio_audioOutput); // to link the mediaobject with audio output.
<br />//play the video:<br />obj_MediaObject-&gt;play();<br /></code>
<br />That's all there is.
<br />''' '''Note:''' This code only works on local video files. I didn't have YouTube videos and mms streaming working yet. When I do, I will edit this page.


It's off course also possible for others to edit a working code.
It's off course also possible for others to edit a working code.

Latest revision as of 12:04, 28 November 2016

This article may require cleanup to meet the Qt Wiki's quality standards. Reason: Auto-imported from ExpressionEngine.
Please improve this article if you can. Remove the {{cleanup}} tag and add this page to Updated pages list after it's clean.

Phonon minimum needs to play a video.

The documentation about Phonon provided by Qt doesn't give you an "out of the box" explanation on how to play a video using Phonon in Qt. That's why I write this down in order to help a little.

Before you start testing, make sure that you have the right programs and or libs installed on your computer. Look here for the setup you need.

You need only 4 items to get a video to play.

  1. You need to have a Phonon::MediaObject
  2. You need to have a Phonon::VideoWidget
  3. You need to have a Phonon::AudioOutput
  4. add your .pro file with "+= phonon"

Then the code:

//include the right lib:
#include <phonon>

// setup the objects:
Phonon::MediaObject *obj_MediaObject = new Phonon::MediaObject(this);
Phonon::VideoWidget *wid_videoWidget = new Phonon::VideoWidget(this);
Phonon::AudioOutput '''aio_audioOutput = new Phonon::AudioOutput(Phonon::VideoCategory,this);

//clear the mediaobject:
obj_MediaObject->clearQueue();

//Put a video in the queue:
obj_MediaObject->enqueue(Phonon::MediaSource("path to video"));

//make the proper connections:
Phonon::createPath(obj_MediaObject, wid_videoWidget); // to link the mediaobject with the video widget.
Phonon::createPath(obj_MediaObject, aio_audioOutput); // to link the mediaobject with audio output.

//play the video:
obj_MediaObject->play();

That's all there is.

Note: This code only works on local video files. I didn't have YouTube videos and mms streaming working yet. When I do, I will edit this page.

It's off course also possible for others to edit a working code.