none
ASP.NET video görüntüleme RRS feed

  • Soru

  • iyi günler arkadaşlar. 

    Fileupload kontrolü ile video yükleme işlemini yapıyorum. Videonun isimlerini veri tabanında saklıyorum. Ama videoyu javaplayerde oynatamıyorum.

     

     

    <div id="mediaplayer">JW Player goes here</div>

    <script type="text/javascript" src="jwplayer.js"></script>

    <script type="text/javascript">

        jwplayer("mediaplayer").setup({

            flashplayer: "player.swf",

            file: "video/bicim.flv",

            image: "preview.jpg",

            height: 650,

            width: 675

        });

    </script>

    burada file kısmına veritanından seçeceğim video adının yazmasını istiyorum. Eval ile çekemedim.Javaplayer olması gerekli değil. Başka yöntemler olursa onlarıda deneyebiliriz

    18 Mayıs 2013 Cumartesi 23:12

Yanıtlar

  • Öncelikle jwplayer.js ve player.swf dosyası ana dizinde olduğunu kontrol edin.

    Eval ile çekebilmeniz için kodun repeater, datagrid gibi datacontrol içinde olması lazım. Muhtemelen siz detay sayfasında tek video göstermek istiyorsunuz. Eğer öyleyse; 

    <div id="mediaplayer">JW Player goes here</div>
    <script type="text/javascript" src="jwplayer.js"></script>
    <script type="text/javascript">
        jwplayer("mediaplayer").setup({
            flashplayer: "player.swf",
            file: "video/<%= VideoFile %>",
            image: "<%= PreviewImage %>",
            height: 650,
            width: 675
        });
    </script>

    Code behindde VideoFile ve PreviewImage değişkenlerine databaseden aldığınız verileri atmanız yetecektir.


    e-mail: onay[nokta]yalciner[at]hotmail[nokta]com
    MCC

    19 Mayıs 2013 Pazar 05:19
    Moderatör

Tüm Yanıtlar

  • Öncelikle jwplayer.js ve player.swf dosyası ana dizinde olduğunu kontrol edin.

    Eval ile çekebilmeniz için kodun repeater, datagrid gibi datacontrol içinde olması lazım. Muhtemelen siz detay sayfasında tek video göstermek istiyorsunuz. Eğer öyleyse; 

    <div id="mediaplayer">JW Player goes here</div>
    <script type="text/javascript" src="jwplayer.js"></script>
    <script type="text/javascript">
        jwplayer("mediaplayer").setup({
            flashplayer: "player.swf",
            file: "video/<%= VideoFile %>",
            image: "<%= PreviewImage %>",
            height: 650,
            width: 675
        });
    </script>

    Code behindde VideoFile ve PreviewImage değişkenlerine databaseden aldığınız verileri atmanız yetecektir.


    e-mail: onay[nokta]yalciner[at]hotmail[nokta]com
    MCC

    19 Mayıs 2013 Pazar 05:19
    Moderatör
  • Fileupload kontrolü ile video yu nasıl yükledin ben beceremedim paylaşırmısın kodları

    <

    scripttype="text/javascript">


           

    functioncreateVideoUploader() {

               

    varuploader = newqq.FileUploader({

                    element: document.getElementById(

    'file-uploader-demo1'),

                    action:

    'FileUpload.ashx',

                    template:

    '<div class="qq-uploader">'+


    '<div class="qq-upload-drop-area"><span>Drop files here to upload</span></div>'

    +


    '<div class="qq-upload-button">Video Yükle</div>'

    +


    '<ul  class="qq-upload-list"></ul>'

    +


    '</div>'

    ,

                    multiple:

    false,

                    allowedExtensions: [

    'flv', 'mov', 'mp4', 'avi', '3gp', 'mgp', 'wmv'],

                    debug:

    true,

                    onComplete:

    function(id, fileName, responseJSON) {

                       

    if(responseJSON.success)

                            $(

    "#videoContainer").append("<div class='player'  style='display:block;width:400px;height:400px;background-image:url("+ responseJSON.image + ");' href='"+ responseJSON.path + "'><img src='img/play_large.png' alt='Play this video' /></div>");

                        flowplayer(

    "div.player", "../flowplayer/flowplayer-3.2.7.swf", {

                            clip: {

                                autoPlay:

    false,

                                autoBuffering:

    true


                            }

                        });

                    }

                });

            }

           

    // in your app create uploader as soon as the DOM is ready


           

    // don't wait for the window to load


            $(

    function() {

                createVideoUploader();

               

    //createAudioUploader();


            });

       

    </script>

    14 Haziran 2013 Cuma 15:59
  • hocam ben veri tabanı kullandım. videoyu fileupload ile sisteme yükleyip video adını veritabanında sakladım. Daha sonra video isimlerini datalist te listelettim. Oradan da querystring ile video adını videoyu gösterdiğim sayfaya gönderdim. Yani işlem yapan 3 sayfa var. 1.sayfa video kaydı için. ikinci sayfa video isimleri için 3. sayfa ise videoyu göstermek için.

    ----Kayıt sayfası----

       if (FileUpload1.HasFile)
            {
                OleDbConnection baglanti = new OleDbConnection("Provider=Microsoft.Jet.Oledb.4.0; Data Source=" + Server.MapPath("App_Data/db.mdb"));
                baglanti.Open();

                OleDbCommand komut = new OleDbCommand();
                komut.Connection = baglanti;
                komut.CommandText = "insert into video(video) values('" + FileUpload1.FileName + "')";
                komut.ExecuteNonQuery();
                baglanti.Close();

                FileUpload1.SaveAs(Server.MapPath("video/" + FileUpload1.FileName)); //videonun klasöre yüklendiği komut bu komutur)

            }

    video isimlerinin gösterildiği sayfa

    .cs sayfası

      OleDbConnection baglanti = new OleDbConnection("Provider=Microsoft.Jet.Oledb.4.0; Data Source=" + Server.MapPath("App_Data/db.mdb"));
            baglanti.Open();

            string sql = "select * from video";

            OleDbDataAdapter data = new OleDbDataAdapter(sql, baglanti);
            DataSet set = new DataSet();
            data.Fill(set, "video");

            DataList1.DataSource = set;
            DataList1.DataBind();

    baglanti.close();

    .aspx sayfası

    **datalist kısmı

      <asp:DataList ID="DataList1" runat="server">
                <ItemTemplate>
                    <table style="width:100%;">
                        <tr>
                            <td><a href="video/Default.aspx?video=<%#Eval("video") %>">
                            ders videosu
                            </a>
                 </td>
                        </tr>
                    </table>
                </ItemTemplate>
            </asp:DataList>

    ----- Videonun gösterildiği sayfa----

    .cs kısmı

     string gelen = Request.QueryString["video"].ToString();
            OleDbConnection baglanti = new OleDbConnection("Provider=Microsoft.Jet.Oledb.4.0; Data Source=" + Server.MapPath("../App_Data/db.mdb"));
            baglanti.Open();

            string sql = "select * from video where video='" + gelen + "'";

            OleDbDataAdapter data = new OleDbDataAdapter(sql, baglanti);
            DataSet set = new DataSet();
            data.Fill(set, "video");

            DataList1.DataSource = set;
            DataList1.DataBind();
            Response.Write("açıldı");


            baglanti.Close();

    -----aspx datalist kısmı-----

            

    <asp:DataList ID="DataList1" runat="server">
            <ItemTemplate>
                <table style="width:100%;">
                    <tr>
                        <td>

                            <div id="mediaplayer">JW Player goes here</div>
    <script type="text/javascript" src="jwplayer.js"></script>
    <script type="text/javascript">
       jwplayer("mediaplayer").setup({
           flashplayer: "player.swf",
           file: 'video/<%#Eval("video") %>',
           image: "preview.jpg",
           height: 650,
           width: 675
       });
    </script>
                            </td>
                    </tr>
                </table>
            </ItemTemplate>
        </asp:DataList>

    *** Not****

    <httpRuntime maxRequestLength="51200" executionTimeout="600"/>

    bu komutuda web config dosyasına kopyalarak video boyutunu ayarlayabilirsin. Fileupload varsayılan olarak 4 MB gelir. Yani 4 MB fazla videolar için yukarıda komutu dediğim gibi web.config yapıştırıp ayarlarsın. 

    ben videolar için javaplayer kullandım. Bunun için javaplayer ın "jwplayer.js" ve "player.swf" dosyalarının  bulunması ve adres yollarının düzgün belirtilmesi(videonun görüntülendiği dataliste bakabilirsin) gerekmektedir. Eğer istersen bu dosyaları mail olarak atarım. Takıldığın yer olursa yardımcı olmaya çalışırım. Ben bu yöntemle yaptım. Daha basiti varsa bilmiyorum. Şimdiden kolay gelsin 


    14 Haziran 2013 Cuma 21:07
  • hocam ben veri tabanı kullandım. videoyu fileupload ile sisteme yükleyip video adını veritabanında sakladım. Daha sonra video isimlerini datalist te listelettim. Oradan da querystring ile video adını videoyu gösterdiğim sayfaya gönderdim. Yani işlem yapan 3 sayfa var. 1.sayfa video kaydı için. ikinci sayfa video isimleri için 3. sayfa ise videoyu göstermek için.

    ----Kayıt sayfası----

       if (FileUpload1.HasFile)
            {
                OleDbConnection baglanti = new OleDbConnection("Provider=Microsoft.Jet.Oledb.4.0; Data Source=" + Server.MapPath("App_Data/db.mdb"));
                baglanti.Open();

                OleDbCommand komut = new OleDbCommand();
                komut.Connection = baglanti;
                komut.CommandText = "insert into video(video) values('" + FileUpload1.FileName + "')";
                komut.ExecuteNonQuery();
                baglanti.Close();

                FileUpload1.SaveAs(Server.MapPath("video/" + FileUpload1.FileName)); //videonun klasöre yüklendiği komut bu komutur)

            }

    video isimlerinin gösterildiği sayfa

    .cs sayfası

      OleDbConnection baglanti = new OleDbConnection("Provider=Microsoft.Jet.Oledb.4.0; Data Source=" + Server.MapPath("App_Data/db.mdb"));
            baglanti.Open();

            string sql = "select * from video";

            OleDbDataAdapter data = new OleDbDataAdapter(sql, baglanti);
            DataSet set = new DataSet();
            data.Fill(set, "video");

            DataList1.DataSource = set;
            DataList1.DataBind();

    baglanti.close();

    .aspx sayfası

    **datalist kısmı

      <asp:DataList ID="DataList1" runat="server">
                <ItemTemplate>
                    <table style="width:100%;">
                        <tr>
                            <td><a href="video/Default.aspx?video=<%#Eval("video") %>">
                            ders videosu
                            </a>
                 </td>
                        </tr>
                    </table>
                </ItemTemplate>
            </asp:DataList>

    ----- Videonun gösterildiği sayfa----

    .cs kısmı

     string gelen = Request.QueryString["video"].ToString();
            OleDbConnection baglanti = new OleDbConnection("Provider=Microsoft.Jet.Oledb.4.0; Data Source=" + Server.MapPath("../App_Data/db.mdb"));
            baglanti.Open();

            string sql = "select * from video where video='" + gelen + "'";

            OleDbDataAdapter data = new OleDbDataAdapter(sql, baglanti);
            DataSet set = new DataSet();
            data.Fill(set, "video");

            DataList1.DataSource = set;
            DataList1.DataBind();
            Response.Write("açıldı");


            baglanti.Close();

    -----aspx datalist kısmı-----

            

    <asp:DataList ID="DataList1" runat="server">
            <ItemTemplate>
                <table style="width:100%;">
                    <tr>
                        <td>

                            <div id="mediaplayer">JW Player goes here</div>
    <script type="text/javascript" src="jwplayer.js"></script>
    <script type="text/javascript">
       jwplayer("mediaplayer").setup({
           flashplayer: "player.swf",
           file: 'video/<%#Eval("video") %>',
           image: "preview.jpg",
           height: 650,
           width: 675
       });
    </script>
                            </td>
                    </tr>
                </table>
            </ItemTemplate>
        </asp:DataList>

    *** Not****

    <httpRuntime maxRequestLength="51200" executionTimeout="600"/>

    bu komutuda web config dosyasına kopyalarak video boyutunu ayarlayabilirsin. Fileupload varsayılan olarak 4 MB gelir. Yani 4 MB fazla videolar için yukarıda komutu dediğim gibi web.config yapıştırıp ayarlarsın. 

    ben videolar için javaplayer kullandım. Bunun için javaplayer ın "jwplayer.js" ve "player.swf" dosyalarının  bulunması ve adres yollarının düzgün belirtilmesi(videonun görüntülendiği dataliste bakabilirsin) gerekmektedir. Eğer istersen bu dosyaları mail olarak atarım. Takıldığın yer olursa yardımcı olmaya çalışırım. Ben bu yöntemle yaptım. Daha basiti varsa bilmiyorum. Şimdiden kolay gelsin 

    Murat bey videoyu fileupload ile sisteme nasıl yükledin acaba ashx kodlarını paylaşabilirmisn



    15 Haziran 2013 Cumartesi 16:32
  • ashx kullanmadım. 

    bir tane fileupload koyup şu kodları kullandım

     if (FileUpload1.HasFile)
            {
                OleDbConnection baglanti = new OleDbConnection("Provider=Microsoft.Jet.Oledb.4.0; Data Source=" + Server.MapPath("App_Data/db.mdb"));
                baglanti.Open();

                OleDbCommand komut = new OleDbCommand();
                komut.Connection = baglanti;
                komut.CommandText = "insert into video(video) values('" + FileUpload1.FileName + "')";
                komut.ExecuteNonQuery();
                baglanti.Close();

                FileUpload1.SaveAs(Server.MapPath("video/" + FileUpload1.FileName)); //videonun klasöre yüklendiği komut bu komutur)

            }

    esas yüklemeyi yapan kod :  

    FileUpload1.SaveAs(Server.MapPath("video/" + FileUpload1.FileName)); 

    bu kodun üstündekiler veri tabanına video ismini kaydediyor. Bu şekli ile ile en fazla 4 MB yükleme yapar. Bunun içinde web.config e

    <httpRuntime maxRequestLength="51200" executionTimeout="600"/> komutunu yapıştırdım. bu komut ile 500 MB kadar yükleme yapıyor. yükleme işini fileupload da saveas komutu yapıyor. Yükleme yapan kodu tekrar yapıştırayım karışıklık olmasın.

    FileUpload1.SaveAs(Server.MapPath("video/" + FileUpload1.FileName)); bir tane video diye klasör açarsan onun içine bu komut ile yükleme yapar.

    15 Haziran 2013 Cumartesi 16:43