Воспроизведение видео с помощью Silverlight - PullRequest
0 голосов
/ 26 июля 2010

Здесь я новичок в Silverlight, и мне нужно реализовать видеопроигрыватель на asp.net с C #, я нашел статью о видеоплеере и медиаплеере. Я реализую в соответствии с учебниками, но это не работает здесь, я посылаю свой код, пожалуйста, выясните, в чем проблема. Скажите, в чем разница между медиаэлементом и медиаплеером в Silverlight?

вот код страницы .aspx

<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="_Default" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" 
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<%@ Register Assembly="System.Web.Silverlight"  Namespace="System.Web.UI.SilverlightControls" TagPrefix="asp" %>

<%@ Register assembly="AjaxControlToolkit" amespace="AjaxControlToolkit"  tagprefix="cc1" %>    


<html xmlns="http://www.w3.org/1999/xhtml">
    <head runat="server">
        <title>SILVERLIGHT MEDIA PLAYER | DEMO</title>
    </head>
    <body>
        <form id="form1" runat="server">
        <div id="xx" runat="server"></div>
        <asp:ScriptManager ID="ScriptManager1" runat="server" />    

            <div>
                <div style="float:left">
                    <asp:DropDownList ID="cmbSkins" runat="server" 
                    onselectedindexchanged="cmbSkins_SelectedIndexChanged" />
                </div>               
                <div><h3>SELECT PLAYER STYLE</h3></div>
            </div>

            <asp:MediaPlayer ID="MediaPlayer1" runat="server" 
                Width="600px" 
                Height="440px"
                PlaceholderSource="http://www.webinfocentral.com/VIDEO/JJ2008/ImgMain.JPG">                  
            </asp:MediaPlayer>
            <hr />            
            <hr />    
        </form>
    </body>
</html>

и этот код за страницей:

public partial class _Default : System.Web.UI.Page
{
protected enum MediaPlayerSkins
{
    AudioGray,
    Basic,
    Classic,
    Console,
    Expression,
    Futuristic,
    Professional,
    Simple
}   

protected void Page_Load(object sender, EventArgs e)
{
    if (!IsPostBack)
    {
        MediaPlayer1.AutoPlay = true;
        MediaPlayer1.ScaleMode = System.Web.UI.SilverlightControls.ScaleMode.Zoom;

        cmbSkins.Items.Add(MediaPlayerSkins.Classic.ToString());
        cmbSkins.Items.Add(MediaPlayerSkins.Console.ToString());
        cmbSkins.Items.Add(MediaPlayerSkins.Expression.ToString());
        cmbSkins.Items.Add(MediaPlayerSkins.Futuristic.ToString());
        cmbSkins.Items.Add(MediaPlayerSkins.Professional.ToString());
        cmbSkins.Items.Add(MediaPlayerSkins.AudioGray.ToString());
        cmbSkins.Items.Add(MediaPlayerSkins.Simple.ToString());
        cmbSkins.AutoPostBack = true;
        cmbSkins.SelectedIndex = 4;

        MediaPlayer1.MediaSource = Server.MapPath("~/") + "Wildlife.wmv";
        xx.InnerHtml = Server.MapPath("~/") + "Wildlife.wmv";
        MediaPlayer1.MediaSkinSource = "~/MediaPlayerSkins/" + cmbSkins.SelectedValue + ".xaml";
    }
}


protected void cmbSkins_SelectedIndexChanged(object sender, EventArgs e)
{
    MediaPlayer1.MediaSkinSource = "~/MediaPlayerSkins/" + cmbSkins.SelectedValue + ".xaml";
}

}

Я ничего не знаю о Silverlight, и это сделано с помощью статьи, я только изменил источник игрока, и это не работает.

У меня возникает вопрос, какой из них лучше всего подойдет для воспроизведения видео флеш-плеера или такого, когда у нас интернет-соединение с низкой пропускной способностью. Подскажите пожалуйста какое-нибудь полезное решение?

Спасибо

Ответы [ 2 ]

1 голос
/ 26 июля 2010

Чтобы ответить на эту часть вашего вопроса:

скажите мне, в чем разница между медиа-элементом и медиаплеером в серебряном свете.

Элемент MediaPlayer вы 'Мы использовали элемент управления ASP.NET, который состоит из базового проигрывателя Silverlight (я думаю, что использую Silveright 1.0).Все, что вам нужно сделать, это указать его на видеофайл, и он будет воспроизводиться.MediaPlayer предоставляет вам все основные элементы управления для воспроизведения мультимедиа (воспроизведение / пауза и т. Д.).

MediaElement - это тип Silverlight, используемый в приложении Silverlight, а не в приложении ASP.NET, например MediaPlayer.MediaElements используются в XAML (т. Е. Разметка Silverlight) для представления элементов мультимедиа.MediaElement не дает вам управления воспроизведением мультимедиа, он просто воспроизводит его (аудио или визуально).Вы можете использовать другие элементы в XAML для управления MediaElement, например, если вам нужна кнопка воспроизведения / паузы, вы можете создать другой элемент для этого.

0 голосов
/ 26 июля 2010

ребята, я обнаружил, что это не работает, я пропустил правильный путь к исходному тексту, который должен быть "~ / MediaFile.wmv" вместо server.mappath (....).

...