Hello, I am writing a plugin and want to show a video in the middle of the screen.
The problem I have is, that there is no picture, only sound.
Perhaps someone could help me.
I put my code in the plugin template, so its easy to read.
To start the player you have to push buttonOne.
and the screenfile
The plugin is working, except I have no videopicture, the videowindow stays black, I only hear sound.
I tried to play the file with the video module, no problem.
There is a picture and sound.
Perhaps I miss something to initialise or something else, but I dont know what.
The problem I have is, that there is no picture, only sound.
Perhaps someone could help me.
I put my code in the plugin template, so its easy to read.
To start the player you have to push buttonOne.
Code:
using System;
using System.Windows.Forms;
using MediaPortal.GUI.Library;
using MediaPortal.Player;
using MediaPortal.Dialogs;
namespace OurPlugin
{
public class Class1 : GUIWindow, ISetupForm
{
[SkinControlAttribute(2)]
protected GUIButtonControl buttonOne = null;
[SkinControlAttribute(3)]
protected GUIButtonControl buttonTwo = null;
[SkinControlAttribute(99)]
protected GUIVideoControl contr = null;
public Class1()
{
}
#region ISetupForm Members
// Returns the name of the plugin which is shown in the plugin menu
public string PluginName()
{
return "MyFirstPlugin";
}
// Returns the description of the plugin is shown in the plugin menu
public string Description()
{
return "My First plugin tutorial";
}
// Returns the author of the plugin which is shown in the plugin menu
public string Author()
{
return "kaybe";
}
// show the setup dialog
public void ShowPlugin()
{
MessageBox.Show("Nothing to configure, this is just an example");
}
// Indicates whether plugin can be enabled/disabled
public bool CanEnable()
{
return true;
}
// get ID of windowplugin belonging to this setup
public int GetWindowId()
{
return 5678;
}
// Indicates if plugin is enabled by default;
public bool DefaultEnabled()
{
return true;
}
// indicates if a plugin has its own setup screen
public bool HasSetup()
{
return true;
}
public bool GetHome(out string strButtonText, out string strButtonImage, out string strButtonImageFocus, out string strPictureImage)
{
strButtonText = PluginName();
strButtonImage = String.Empty;
strButtonImageFocus = String.Empty;
strPictureImage = String.Empty;
return true;
}
#endregion
public override int GetID
{
get
{
return 5678;
}
set
{
}
}
public override bool Init()
{
return Load(GUIGraphicsContext.Skin + @"\VorlageScreen.xml");
}
protected override void OnClicked(int controlId, GUIControl control, MediaPortal.GUI.Library.Action.ActionType actionType)
{
if (control == buttonOne)
OnButtonOne();
if (control == buttonTwo)
OnButtonTwo();
base.OnClicked(controlId, control, actionType);
}
private void OnButtonOne()
{
if (contr != null)
GUIGraphicsContext.VideoWindow = new System.Drawing.Rectangle(contr.XPosition, contr.YPosition, contr.Width, contr.Height);
g_Player.Play(@"d:\video\test.dvr-ms");
}
private void OnButtonTwo()
{
GUIDialogOK dlg = (GUIDialogOK)GUIWindowManager.GetWindow((int)GUIWindow.Window.WINDOW_DIALOG_OK);
dlg.SetHeading("Button has been pressed");
dlg.SetLine(1, "You pressed button 2");
dlg.SetLine(2, String.Empty);
dlg.SetLine(3, String.Empty);
dlg.DoModal(GUIWindowManager.ActiveWindow);
}
}
}
and the screenfile
Code:
<window>
<id>5678</id>
<defaultcontrol>2</defaultcontrol>
<allowoverlay>no</allowoverlay>
<controls>
<control>
<description>BackGround</description>
<type>image</type>
<id>1</id>
<posX>0</posX>
<posY>0</posY>
<width>720</width>
<height>576</height>
<texture>background.png</texture>
</control>
<control>
<description>an Image</description>
<type>image</type>
<id>1</id>
<posX>75</posX>
<posY>370</posY>
<texture>hover_my videos.png</texture>
</control>
<control>
<description>text label</description>
<type>label</type>
<id>1</id>
<posX>250</posX>
<posY>70</posY>
<label>Some text</label>
<font>font16</font>
<align>right</align>
<textcolor>ffffffff</textcolor>
</control>
<control>
<description>Try Me</description>
<type>button</type>
<id>2</id>
<posX>60</posX>
<posY>97</posY>
<label>Try Me</label>
<onleft>2</onleft>
<onright>2</onright>
<onup>2</onup>
<ondown>3</ondown>
</control>
<control>
<description>Or Me</description>
<type>button</type>
<id>3</id>
<posX>60</posX>
<posY>131</posY>
<label>Or Me</label>
<onleft>2</onleft>
<onright>2</onright>
<onup>2</onup>
<ondown>2</ondown>
</control>
<control>
<type>videowindow</type>
<description>video window</description>
<id>99</id>
<posX>300</posX>
<posY>107</posY>
<width>220</width>
<height>184</height>
<colordiffuse>ffffffff</colordiffuse>
<onleft>2</onleft>
<onright>2</onright>
</control>
</controls>
</window>
The plugin is working, except I have no videopicture, the videowindow stays black, I only hear sound.
I tried to play the file with the video module, no problem.
There is a picture and sound.
Perhaps I miss something to initialise or something else, but I dont know what.