It is currently 28 Mar 2017, 10:56



Simple Video Playout

Videos, graphics, Flash templates – how to create and play them using CasparCG

Moderators: Macey, Jonas Hummelstrand, didikunz

Re: Simple Video Playout

Postby vimlesh1975 » 04 Jan 2016, 13:31

@azultv
There is a setting in utility module.
Send filename without extension.
Last edited by vimlesh1975 on 05 Jan 2016, 17:20, edited 1 time in total.
User avatar
vimlesh1975
 
Posts: 595
Joined: 29 Aug 2011, 11:42
Location: Doordarshan, Mumbai, India

Re: Simple Video Playout

Postby Michel » 05 Jan 2016, 13:33

Hi Vimlesh,

I'm in the process of creating a generic Html Scrolling template and I 'm searching the better way to get a smooth scroll...
I've noticed that in your template, the way the scroll actualizes itself on each frame is not constant, and this behavior makes it to be slightly jerky (a smooth jerky, no easily noticeable but it's there)...
I think the reason is the use of Date.now() that makes the interval value between each frame is not constant...
I've modified your template like this:
Code: Select all
<!DOCTYPE html>
<html>
<head>
    <title>htmlscroller</title>
   <style type="text/css">
      BODY {   overflow: hidden;   }
   </style>
   
</head>
<body>

<div id="htmlscroller" style="background-color:#6600CC; border-width:2px; border-color:White; border-style:solid; font-size:30px; font-family :Arial; color :Yellow; position: absolute; width:1920px; height:40px; top: 500px; left:0px;"></div>
<div id="marqueedata" style="font-size:30px; font-family :Arial; white-space:nowrap; color:Yellow;position:absolute; top: 500px; left:1024px;"><img  id ="image"  style=" vertical-align:middle" alt="" src='caspar.png' width ='40px' height ='30px' />&nbsp; Welcome To Doordarshan . This is Html Scroll test. All are welcome to contribute.</div>
      </div>


<script type ="text/javascript">
    function marqueedatabase64(str)
     {   
         document.getElementById("marqueedata").innerHTML = "<img  id ='image' style='vertical-align:middle' alt='' src='caspar.png' width ='40px' height ='30px' />" + "  " + atob(str);
       elmwidth=elm.offsetWidth;
   winwidth=window.innerWidth;
    }

function marqueedata(str)
     {   
         document.getElementById("marqueedata").innerHTML = "<img  id ='image' style='vertical-align:middle' alt='' src='caspar.png' width ='40px' height ='30px' />" + "  " + (str);
       elmwidth=elm.offsetWidth;
   winwidth=window.innerWidth;
    }

    function font(str)
    { elmwidth=elm.offsetWidth;
        document.getElementById("marqueedata").style.fontFamily = str;
    }

    function bullet(str)
     {
        document.getElementById("image").src=str;
    }

    function fontsize(str)
     {
   elmwidth=elm.offsetWidth;
         document.getElementById("marqueedata").style.fontSize=str; //fontSize S shuould be capital
     }


     function fontcolor(str)
     {
         document.getElementById("marqueedata").style.color = str;
     }

     function stripcolor(str)
     {
         document.getElementById("htmlscroller").style.backgroundColor = str;
     }

     function stripy(str)
     {
         document.getElementById("htmlscroller").style.top = str;
   
     }

   function Tickery(str)
     {
       
   document.getElementById("marqueedata").style.top = str;
     }

     function stripheight(str) {
         document.getElementById("htmlscroller").style.height = str;
     }



var elm = document.getElementById("marqueedata");
        var stopped;
        var requestId = 0;
        var starttime;
   var elmwidth=elm.offsetWidth;
   var winwidth=window.innerWidth;
   var speed1=3;
   var my_pixels = 0;

        function render1(time) {
            // set left style to a function of time.
     if (!stopped) {
            //elm.style.left = (winwidth -((Date.now() - starttime) / (10-speed1) % (winwidth + elmwidth)) )+ "px";
            elm.style.left = (winwidth - my_pixels) + "px";
         my_pixels = my_pixels + speed1 ;
            if ((elmwidth + winwidth) <= my_pixels) {
               my_pixels = 0;
               elm.style.left = ((winwidth) + 1)  + "px";
               if (stopped != true) {requestId = window.requestAnimationFrame(render1);}
            }else{
               if (stopped != true) {requestId = window.requestAnimationFrame(render1);}
            }
            }
        }

function render2(time) {
            // set left style to a function of time.
     if (!stopped) {
            //elm.style.left = (-elmwidth +((Date.now() - starttime) / (10-speed1) % (winwidth + elmwidth)) )+ "px";
            elm.style.left = (-elmwidth + my_pixels) + "px";
         my_pixels = my_pixels + speed1 ;
            if ((elmwidth + winwidth) <= my_pixels) {
               my_pixels = 0;
               elm.style.left = ((-elmwidth) + 1)  + "px";
               if (stopped != true) {requestId = window.requestAnimationFrame(render2);}
            }else{
               if (stopped != true) {requestId = window.requestAnimationFrame(render2);}
            }
            }
        }


        function start1() {
            starttime = Date.now();
            requestId = window.requestAnimationFrame(render1);
            stopped = false;
        }
function start2() {
            starttime = Date.now();
            requestId = window.requestAnimationFrame(render2);
            stopped = false;
        }
        function stop() {
            if (requestId) {
                window.cancelAnimationFrame(requestId);
            }
            stopped = true;
        }
 function speed(str)
     {
   elmwidth=elm.offsetWidth;
        speed1=str;
     }


//start1()



</script>
 
     </body>

</html>


It seems to me that the resulting scroll is slightly smoother, don't you think so?

Regards,
Michel

Edited: Copy paste error in code...
Last edited by Michel on 13 Jan 2016, 12:35, edited 1 time in total.
Michel
 
Posts: 55
Joined: 20 Feb 2015, 22:48

Re: Simple Video Playout

Postby CGguy » 05 Jan 2016, 14:43

vimlesh1975 wrote:There is a setting in utility module.
Send filename without extension.


Hi Vimlesh,

Thanks for the response. Unfortunately I don't see any reference to that in the utility. Please kindly clarify.

Are you referring to the Streaming Consumer in the Utility? If so, how do I go about addressing the stream to an Azure storage server? Thanks again!
CGguy
 
Posts: 15
Joined: 20 Apr 2015, 05:12

Re: Simple Video Playout

Postby vimlesh1975 » 05 Jan 2016, 17:27

@CGguy
The above response was for Azultv question about jpg and png file not playing with latest client.

You question about m3u8 streaming is unanswered till now due to lack of knowledge.

@Michel
Will check the code to understand and experiment to the see the change in smoothness.
User avatar
vimlesh1975
 
Posts: 595
Joined: 29 Aug 2011, 11:42
Location: Doordarshan, Mumbai, India

Re: Simple Video Playout

Postby CGguy » 05 Jan 2016, 18:24

vimlesh1975 wrote:@CGguy
The above response was for Azultv question about jpg and png file not playing with latest client.

You question about m3u8 streaming is unanswered till now due to lack of knowledge.

@Michel
Will check the code to understand and experiment to the see the change in smoothness.


Oh. OK. Thanks for your kind response :) I hope someone could really chime in on the M3U8 issue because that seems to be a new territory for most folks. I can't seem to find any information on how to get around it. But I am very optimistic about the possibilities in your playout client.

I guess another way to ask my question is this: Is there a way to use the recording feature in your playout client to send the recorded file to a Microsoft Azure or Amazon S3 strorage server in the cloud?
CGguy
 
Posts: 15
Joined: 20 Apr 2015, 05:12

Re: Simple Video Playout

Postby farhad.nematy » 09 Jan 2016, 13:39

Hi to all,

i have changed the twoliner code. i have an issue with it. this code does not show any thing.






Code: Select all
package
{
   import se.svt.caspar.template.CasparTemplate;
   import flash.text.TextFormat;
   import flash.display.*;
   import flash.events.Event;
   import flash.text.*;
   import flash.utils.Timer;
   import flash.text.TextField;
   public class main extends CasparTemplate
   {
      public var newdata:String;
       public var newdata2:String;
      public var newdata_length:int=100;
      public var newdata_length2:int=100;
      
      
      public var xx:int;
      public var yy:int;
      public var xx1:int;
      public var yy1:int;
      public var bcolor,textcolor: uint;
      public var bcolor1,textcolor1: uint;
      public var fontname:String;
      public var fontname1:String;
      public var fontsize:int;
        public var fontsize1:int;
      
      var format1:TextFormat=new TextFormat;
      var format3:TextFormat=new TextFormat;
        var format11:TextFormat=new TextFormat;
      var format31:TextFormat=new TextFormat;
      
      
      
      
      public function main()
      {
         
         xf0.addEventListener(Event.ENTER_FRAME, setnewdata);
         xf0.addEventListener(Event.ENTER_FRAME, drawbackground);
         xf1.addEventListener(Event.ENTER_FRAME, setnewdata1);
         
      }
      override public function SetData(xmlData:XML):void
      {
         super.SetData(xmlData);
         for each (var element:XML in xmlData.elements())
         {
            if ((element. @ id == "scrolldata"))
            {
               newdata = element.data. @ value;
               
               
            }
            if ((element. @ id == "scrolldata2"))
            {
               newdata2 = element.data. @ value;
               
               
            }
            
            if ((element. @ id == "scrolldatalenght"))
            {
               newdata_length = element.data. @ value;
               
               
            }
            if ((element. @ id == "scrolldatalenght2"))
            {
               newdata_length2 = element.data. @ value;
               
               
            }
            
            if ((element. @ id == "x"))
            {
               xx = element.data. @ value;
               
               
            }
            
            if ((element. @ id == "y"))
            {
               yy = element.data. @ value;
               
               
            }
            
            if ((element. @ id == "x1"))
            {
               xx1 = element.data. @ value;
               
               
            }
            
            if ((element. @ id == "y1"))
            {
               yy1 = element.data. @ value;
               
               
            }
            
            
            
            if ((element. @ id == "textcolor1"))
            {
               textcolor= element.data. @ value;
               //format1.color = element.data. @ value;
                   // xf0.setTextFormat(format1);            
                }
            if ((element. @ id == "textcolor2"))
            {
               
               bcolor=element.data. @ value;
               
               
                     
               
               
            }
            if ((element. @ id == "textcolor3"))
            {
               textcolor1= element.data. @ value;
               //format1.color = element.data. @ value;
                   // xf0.setTextFormat(format1);            
                }
            if ((element. @ id == "textcolor4"))
            {
               
               bcolor1=element.data. @ value;
               
               
                     
               
               
            }
            if ((element. @ id == "fontname"))
            {
               
               fontname=element.data. @ value;
               
               
                     
               
               
            }
            
            if ((element. @ id == "fontname1"))
            {
               
               fontname1=element.data. @ value;
               
               
                     
               
               
            }
            if ((element. @ id == "fontsize"))
            {
               
               fontsize=element.data. @ value;
               
               
                     
               
               
            }
            if ((element. @ id == "fontsize1"))
            {
               
               fontsize1=element.data. @ value;
               
               
                     
               
               
            }
            
          }
      }
      
      
      function drawbackground(myevent:Event):void
      {
         
         
         var shapes:Sprite = new Sprite();
               
             var txt: TextField=new TextField();
         
         
         txt.textColor=textcolor;
            
            txt.x = xx;
            txt.y = yy;
         format1.size=fontsize;
         format1.color=textcolor;
         format1.font=fontname;
         format1.align=TextFormatAlign.RIGHT;
         
         
         txt.autoSize = TextFieldAutoSize.LEFT;
         
         
         //txt.embedFonts=true   ;
         txt.background = true;   
            txt.backgroundColor=bcolor;
         txt.selectable = false;
            txt.border = false;
            txt.multiline =false;
            txt.wordWrap =false;
         txt.antiAliasType = AntiAliasType.ADVANCED;

         
          txt.text=newdata;
         txt.defaultTextFormat=format1;
         txt.setTextFormat(format1);
         shapes.addChild(txt);
         
         //this.addChild(shapes);
          
         ////////////////////////////////////////////////
          var txt1: TextField=new TextField();
         
         
         txt1.textColor=textcolor1;
         
   
            txt1.x = xx1;
            txt1.y = yy1;
         format11.size=fontsize1;
         format11.color=textcolor1;
         format11.font=fontname1;
         format11.align=TextFormatAlign.RIGHT;
         
         
         txt1.autoSize = TextFieldAutoSize.LEFT;
         
         
         //txt.embedFonts=true   ;
         txt1.background = true;   
            txt1.backgroundColor=bcolor1;
         txt1.selectable = false;
            txt1.border = false;
            txt1.multiline =false;
            txt1.wordWrap =false;
         txt1.antiAliasType = AntiAliasType.ADVANCED;

         
          txt1.text=newdata2;
         txt1.defaultTextFormat=format11;
         txt1.setTextFormat(format11);
         shapes.addChild(txt1);
         
         this.addChild(shapes);
         
         
               
               
               
               
               
               
               
               
         
      }

      function setnewdata(myevent:Event):void
      {
          // xf0.text = newdata;
        // xf0.setTextFormat(format1);            

         
      }
      function setnewdata1(myevent:Event):void
      {
        //   xf1.text = newdata2;
        // xf1.setTextFormat(format3);            

         
      }

   }
}


but when i use it like this it works and shows one of lines.

Code: Select all
function drawbackground(myevent:Event):void
      {
         
         
         var shapes:Sprite = new Sprite();
               
             var txt: TextField=new TextField();
         
         
         txt.textColor=textcolor;
            
            txt.x = xx;
            txt.y = yy;
         format1.size=fontsize;
         format1.color=textcolor;
         format1.font=fontname;
         format1.align=TextFormatAlign.RIGHT;
         
         
         txt.autoSize = TextFieldAutoSize.LEFT;
         
         
         //txt.embedFonts=true   ;
         txt.background = true;   
            txt.backgroundColor=bcolor;
         txt.selectable = false;
            txt.border = false;
            txt.multiline =false;
            txt.wordWrap =false;
         txt.antiAliasType = AntiAliasType.ADVANCED;

         
          txt.text=newdata;
         txt.defaultTextFormat=format1;
         txt.setTextFormat(format1);
         shapes.addChild(txt);
         
         this.addChild(shapes);
          
         ////////////////////////////////////////////////
      
         
         
         
               
               
               
               
               
               
               
               
         
      }


i read lots of topics in google. but could not find any solution. please help me
thanks in advance
nothing is impossible
farhad.nematy
 
Posts: 167
Joined: 24 Jul 2013, 06:00

Re: Simple Video Playout

Postby didikunz » 09 Jan 2016, 13:54

Your code is a big mess to me, can you at least tell us, what you would like it to do? In a Caspar template there is no Main() function and you can not attach an event multiple times etc.

And it would help to name variables for what they do, so instead of Format1 you could name it NameFormat, when you use it to format a name of a person you display or something else.
Didi Kunz
CasparCG Client-Programmer, Template Maker & Live CG-Operator
Media Support, CH-5722 Gränichen, Switzerland http://mediasupport.ch/
Problems? Guide to posting Bug reports & Feature requests
User avatar
didikunz
 
Posts: 3401
Joined: 10 May 2010, 09:08
Location: Aarau, Switzerland

Re: Simple Video Playout

Postby farhad.nematy » 09 Jan 2016, 14:07

didikunz wrote:Your code is a big mess to me, can you at least tell us, what you would like it to do? In a Caspar template there is no Main() function and you can not attach an event multiple times etc.

And it would help to name variables for what they do, so instead of Format1 you could name it NameFormat, when you use it to format a name of a person you display or something else.



this a a template named "twoliner", originally mr vimlesh created it and i changed it (main was in the original code by vimlesh). because the twoliner template of vimlesh was so simple.
i want to dynamically create two text fields and specify their x,y,textcolor,backcolor , font name and font size. in this way the operator of CG can do lots of work and customize the output.

when i run it for one line of data. it works fine. but when i add the second text field it is not working.
nothing is impossible
farhad.nematy
 
Posts: 167
Joined: 24 Jul 2013, 06:00

Re: Simple Video Playout

Postby farhad.nematy » 11 Jan 2016, 16:11

farhad.nematy wrote:
didikunz wrote:Your code is a big mess to me, can you at least tell us, what you would like it to do? In a Caspar template there is no Main() function and you can not attach an event multiple times etc.

And it would help to name variables for what they do, so instead of Format1 you could name it NameFormat, when you use it to format a name of a person you display or something else.



this a a template named "twoliner", originally mr vimlesh created it and i changed it (main was in the original code by vimlesh). because the twoliner template of vimlesh was so simple.
i want to dynamically create two text fields and specify their x,y,textcolor,backcolor , font name and font size. in this way the operator of CG can do lots of work and customize the output.

when i run it for one line of data. it works fine. but when i add the second text field it is not working.

i found the issue and it is ok now
nothing is impossible
farhad.nematy
 
Posts: 167
Joined: 24 Jul 2013, 06:00

Re: Simple Video Playout

Postby farhad.nematy » 11 Jan 2016, 16:14

i have another problem.

i am running the html scroller.
after pressing start button only the background appears
but no text and photo. i tried checking and unchecking base64 but did not work.

the only thing that i can change is the background of scroller.
what is the calling format for a html template?
nothing is impossible
farhad.nematy
 
Posts: 167
Joined: 24 Jul 2013, 06:00

Re: Simple Video Playout

Postby farhad.nematy » 12 Jan 2016, 08:27

anybody worked with this html scroller??
nothing is impossible
farhad.nematy
 
Posts: 167
Joined: 24 Jul 2013, 06:00

Re: Simple Video Playout

Postby farhad.nematy » 12 Jan 2016, 08:43

farhad.nematy wrote:anybody worked with this html scroller??


the issue was with casparcg version. i was using casparCG 2.0.7 beta 2

now with casparCG 2.0.7 working good. but i perefer casparCG 2.0.7 beta because it has a graphical interface for managing the configuration.

is there any way yo use this graphical interface for casparCG 2.0.7??
nothing is impossible
farhad.nematy
 
Posts: 167
Joined: 24 Jul 2013, 06:00

Re: Simple Video Playout

Postby Michel » 13 Jan 2016, 12:59

Hi Vimlesh,

vimlesh1975 wrote:@Michel
Will check the code to understand and experiment to the see the change in smoothness.


First, SORRY !!!... All tries I made were directly on the server console (not using your Client)...

note: I've edited the HTML code above as there was a copy paste error in it....

The html code above does not work using your Client CasparMediaPlayback...
At least, not in the way the commands are sent from your HTML Scroller module... by looking to the server logs, the commands are as follow:
Code: Select all
play 1-210 [HTML] "file:///C:/casparcg/mydata/html/htmlscroller.html"\r\n
call 1-210 marqueedatabase64('V2VsY29tZSBUbyBEb29yZGFyc2hhbiAuIFRoaXMgaXMgSHRtbCBTY3JvbGwgdGVzdC4gQWxsIGFyZSB3ZWxjb21lIHRvIGNvbnRyaWJ1dGUu')\r\n
call 1-210 bullet('C:/Casparcg/mydata/html/dd.png')\r\n
call 1-210 start1()\r\n
call 1-210 fontcolor('#FFFF00')\r\n
call 1-210 stripcolor('#800080')\r\n
call 1-210 stripy('500px')\r\n
call 1-210 speed('3')\r\n
call 1-210 fontsize('30px')\r\n
call 1-210 font('Arial')\r\n
call 1-210 Tickery('500px')\r\n\r\n

Those commands work with your code but not with mine....

To make it working from your Client I have to use the AMCP module in this way:
Code: Select all
play 1-210 [HTML] "file:///C:/casparcg/mydata/html/htmlscroller.html"\r\n
call 1-210 marqueedatabase64('V2VsY29tZSBUbyBEb29yZGFyc2hhbiAuIFRoaXMgaXMgSHRtbCBTY3JvbGwgdGVzdC4gQWxsIGFyZSB3ZWxjb21lIHRvIGNvbnRyaWJ1dGUu')\r\n
call 1-210 bullet('C:/Casparcg/mydata/html/dd.png')\r\n
call 1-210 start1()\r\n
call 1-210 fontcolor('#FFFF00')\r\n
call 1-210 stripcolor('#800080')\r\n
call 1-210 stripy('500px')\r\n
call 1-210 speed(3)\r\n
call 1-210 fontsize('30px')\r\n
call 1-210 font('Arial')\r\n
call 1-210 Tickery('500px')\r\n\r\n

note the speed(3) call without quotes !!!

To be honest, I do not understand why your HTML Scroller module works with your code and not with mine...

This said, my purpose was to see if there is any difference of smoothness between your code and mine... It seems to me that there is... don't you think so?

Regards,
Michel
Michel
 
Posts: 55
Joined: 20 Feb 2015, 22:48

Re: Simple Video Playout

Postby Aston » 15 Jan 2016, 16:50

farhad.nematy wrote
is there any way yo use this graphical interface for casparCG 2.0.7??

Copy GUI to 2.0.7 director, it's work for me.
User avatar
Aston
 
Posts: 58
Joined: 25 Feb 2014, 08:49
Location: Rautjärvi 60.928374, 27.105396

Re: Simple Video Playout

Postby CGguy » 19 Jan 2016, 02:52

Hi there folks!

Please could someone kindly help me on my situation. I am stuck on a year old project with a very unhappy client. I have been testing a software called Vodobox Live Server for over a year now. It enabled my client to stream to Microsoft Azure Cloud storage server with Vimlesh's playout client. I was able to grab the UDP stream from CasparCG and then send the subsequent mpegts (.m3U8 and .ts files) to Microsoft Cloud storage. The storage stores items in blobs and this requires various authentication, including Account Name, Access Key and Container. Here are some screenshots of the software for reference:

Vodobox input.PNG
Vodobox input.PNG (34.11 KiB) Viewed 11481 times


Vodobox output.PNG
Vodobox output.PNG (29.72 KiB) Viewed 11481 times


My client hedged everything on this one software and built an entire infrastructure around it. But now her entire business is in shambles, because unfortunately it seems the Vodobox software company is out of business. The company website has been down for over 3 months. They only have a "placeholder" homepage at the moment. The old community and forum messages are gone, no contact info, no reference to the original Live Server product. Nothing. Suddenly I don't get any response from them anymore. None of my emails has been returned since late last year. My conclusion is that the company has been sold (or at-least the Live Server product). At this point I am stuck with a very very irate client. She is totally disappointed in my judgement because I evaluated Vodobox in the first place and gave my blessings.

That is why I have come to the forum for help. I guess at this point, my greatest challenge is how to effectively bypass this Vodobox software and stream directly from Vimlesh's client to the Microsoft Azure Cloud storage. I can see there is an implementation for YouTube and Wowza in the client. I am quite optimistic this could be achieved for any cloud storage, including FTP or Amazon EC2. One specific question is: How do I add a stream in the client to send the mpegts output to a HTTP url instead of UDP? Hopefully that way I could slowly tunnel my way to the cloud storage. I have tried multiple syntax combos, but I can't get it right. Could someone kindly point me in the right direction? Please help. I'm in a deep mess.

Thanks!
Last edited by CGguy on 19 Jan 2016, 03:27, edited 1 time in total.
CGguy
 
Posts: 15
Joined: 20 Apr 2015, 05:12

Re: Simple Video Playout

Postby mcdikki » 19 Jan 2016, 03:27

Since the streaming of casparCG is based on ffmpeg, you could search for help on their sites.

In case of streaming and cloud storage/distribution, I usually stick on evostream.
This is a server software able to do all the streaming distribution and has the ability to use the the amazon cloud (tested by myself) and, with the new release they added the azure could too (untested).

But this software is not so easy because you need to install, configure and run the server.

Hope this helps.

Cheers
mcdikki
sublan.tv - Wir teilen Begeisterung
User avatar
mcdikki
 
Posts: 1051
Joined: 11 Dec 2012, 15:48
Location: Germany

Re: Simple Video Playout

Postby vimlesh1975 » 19 Jan 2016, 16:21

Good thing is that when i give a command like this
Code: Select all
add 1 stream  C:/wamp/www/test/stream1.m3u8 -hls_time 10 -b:v 10000000


I get a file stream1.m3u8 in that directory.

When i play this file in vlc it plays happily.
Keep experimenting.
User avatar
vimlesh1975
 
Posts: 595
Joined: 29 Aug 2011, 11:42
Location: Doordarshan, Mumbai, India

Re: Simple Video Playout

Postby farhad.nematy » 19 Jan 2016, 19:47

Aston wrote:farhad.nematy wrote
is there any way yo use this graphical interface for casparCG 2.0.7??

Copy GUI to 2.0.7 director, it's work for me.



i will try it


thanks
nothing is impossible
farhad.nematy
 
Posts: 167
Joined: 24 Jul 2013, 06:00

Re: Simple Video Playout

Postby CGguy » 19 Jan 2016, 21:13

mcdikki wrote:Since the streaming of casparCG is based on ffmpeg, you could search for help on their sites.

In case of streaming and cloud storage/distribution, I usually stick on evostream.
This is a server software able to do all the streaming distribution and has the ability to use the the amazon cloud (tested by myself) and, with the new release they added the azure could too (untested).

But this software is not so easy because you need to install, configure and run the server.

Hope this helps.

Cheers
mcdikki


Thanks mcdikki for the feedback! Indeed evostream looks like an excellent alternative and I am studying it as I write. I can also see how engaging it could get as far as costs, installation and configuration. Nevertheless, it is good to have in my arsenal. As you mentioned, I have spent a few sleepless nights on the ffmpeg website and forums, perusing information that relates to mine. Documentation is not the best. It is more of a glossary than a "how to". But I have picked up a few insights and good leads so far. My investigation continues as I experiment with syntax combos. Thanks again!!
CGguy
 
Posts: 15
Joined: 20 Apr 2015, 05:12

Re: Simple Video Playout

Postby CGguy » 19 Jan 2016, 21:41

vimlesh1975 wrote:Good thing is that when i give a command like this
Code: Select all
add 1 stream  C:/wamp/www/test/stream1.m3u8 -hls_time 10 -b:v 10000000


I get a file stream1.m3u8 in that directory.

When i play this file in vlc it plays happily.
Keep experimenting.


Hi there Vimlesh!

Thanks for that idea! In-fact, I followed up on it and experimented with this syntax that I found at ffmpeg website <ADD 1 STREAM ftp://[user[:password]@]server[:port]/path/to/remote/sream.m3u8>

I managed to stream to my client's FTP server with that! Unfortunately it lasted only five seconds and cut off. And then CasparCG crashed. I tried a few more times with the same result. Here is the log for reference and actual streamed files at the FTP server. It seems to throw out about 4 to 6 ".ts" files before each crash:

[2016-01-19 15:28:07.242] [5152] [info] Received message from 127.0.0.1: ADD 1 STREAM ftp://xxxxxxx:@xxxxxxx@xxxxxxxx/xxxx/xxxxx/stream.m3u8\r\n
[2016-01-19 15:28:07.277] [340] [info]
+------------------------+
| ffmpeg_consumer_buffer |default--[1280x720 1:1 bgra]--auto-inserted scaler 0:default
| (buffer) |
+------------------------+

+----------------------------+
auto-inserted scaler 0:default--[1280x720 1:1 yuv420p]--default| ffmpeg_consumer_buffersink |
| (buffersink) |
+----------------------------+

+------------------------+
ffmpeg_consumer_buffer:default--[1280x720 1:1 bgra]--default| auto-inserted scaler 0 |default--[1280x720 1:1 yuv420p]--ffmpeg_consumer_buffersink:default
| (scale) |
+------------------------+


[2016-01-19 15:28:07.289] [340] [warning] [ffmpeg] [ffmpeg_consumer_abuffersink @ 02B7B3C0] Conflicting all_channel_counts and list in options
[2016-01-19 15:28:07.295] [340] [info]
+-------------------------+
| ffmpeg_consumer_abuffer |default--[48000Hz s32:stereo]--auto-inserted resampler 0:default
| (abuffer) |
+-------------------------+

+-----------------------------+
auto-inserted resampler 0:default--[48000Hz s16:stereo]--default| ffmpeg_consumer_abuffersink |
| (abuffersink) |
+-----------------------------+

+---------------------------+
ffmpeg_consumer_abuffer:default--[48000Hz s32:stereo]--default| auto-inserted resampler 0 |default--[48000Hz s16:stereo]--ffmpeg_consumer_abuffersink:default
| (aresample) |
+---------------------------+


[2016-01-19 15:28:07.806] [340] [info] [ffmpeg] Output #0, hls, to 'ftp://xxxxxxx:@xxxxxxx@xxxxxxxx/xxxx/xxxxx/stream.m3u8':
[2016-01-19 15:28:07.806] [340] [info] [ffmpeg] Metadata:
[2016-01-19 15:28:07.806] [340] [info] [ffmpeg] encoder :
[2016-01-19 15:28:07.806] [340] [info] [ffmpeg] Lavf55.33.10
[2016-01-19 15:28:07.807] [340] [info] [ffmpeg]
[2016-01-19 15:28:07.807] [340] [info] [ffmpeg] Stream #0:
[2016-01-19 15:28:07.807] [340] [info] [ffmpeg] : Video: mpeg2video, yuv420p, 1280x720 [SAR 1:1 DAR 16:9], q=2-31, 200 kb/
[2016-01-19 15:28:07.807] [340] [info] [ffmpeg] , 90k tb
[2016-01-19 15:28:07.807] [340] [info] [ffmpeg] , 29.97 tb
[2016-01-19 15:28:07.807] [340] [info] [ffmpeg]
[2016-01-19 15:28:07.807] [340] [info] [ffmpeg] Stream #0:
[2016-01-19 15:28:07.807] [340] [info] [ffmpeg] : Audio: mp2, 48000 Hz, stereo, s16, 128 kb/
[2016-01-19 15:28:07.807] [340] [info] [ffmpeg]
[2016-01-19 15:28:07.835] [5596] [info] output[1] streaming_consumer[ftp://xxxxxxx:@xxxxxxx@xxxxxxxx/xxxx/xxxxx/stream.m3u8] Added.
[2016-01-19 15:28:07.835] [340] [debug] Executed command: AddCommand
[2016-01-19 15:28:07.835] [340] [info] Sent message to 127.0.0.1: 202 ADD OK\r\n
[2016-01-19 15:28:22.643] [4944] [error] [ffmpeg] [ftp @ 0F1C1D60] Cannot open control connection
[2016-01-19 15:28:22.643] [4944] [error] [ffmpeg] [ftp @ 0F1C1D60] FTP open failed
[2016-01-19 15:28:29.431] [4944] [error] [ffmpeg] [ftp @ 0F1C1CC0] Cannot open control connection
[2016-01-19 15:28:29.431] [4944] [error] [ffmpeg] [ftp @ 0F1C1CC0] FTP open failed


FTP.JPG
FTP.JPG (67.66 KiB) Viewed 11432 times


I'm guessing it could be security features at the FTP server? Or do I need to augment my syntax with more code? Thanks again for the response!
CGguy
 
Posts: 15
Joined: 20 Apr 2015, 05:12

Re: Simple Video Playout

Postby CGguy » 20 Jan 2016, 03:53

vimlesh1975 wrote:Good thing is that when i give a command like this
Code: Select all
add 1 stream  C:/wamp/www/test/stream1.m3u8 -hls_time 10 -b:v 10000000


I get a file stream1.m3u8 in that directory.

When i play this file in vlc it plays happily.
Keep experimenting.


You are right Vimlesh. Thanks a lot! I have made a lot of progress. I modified the syntax and I can now stream to FTP with this:

Code: Select all
ftp://[user[:password]@]server[:port]/path/to/remote/stream.m3u8 vcodec libx264

-vf scale=640:360 -hls_time 10 -hls_wrap 10 -start_number 1


However, as you stated, I can only view the resulting output in VLC. I am unable to view with any other player on a browser or standalone, including JW Player and embedded HTML5 <video> tag. I also continue to get intermittent disruptions and disconnections with the FTP server and CasparCG reports the following:

Code: Select all
[2016-01-19 21:39:51.466] [3968] [error]   [ffmpeg] [ftp @ 2F3F50A0] Cannot open control connection
[2016-01-19 21:39:51.466] [3968] [error]   [ffmpeg] [ftp @ 2F3F50A0] FTP open failed
[2016-01-19 21:42:42.174] [3968] [error]   [ffmpeg] [ftp @ 2F3F50A0] Cannot open control connection
[2016-01-19 21:42:42.174] [3968] [error]   [ffmpeg] [ftp @ 2F3F50A0] FTP open failed
[2016-01-19 21:44:26.353] [3968] [error]   [ffmpeg] [ftp @ 2F3F5340] Cannot open control connection
[2016-01-19 21:44:26.353] [3968] [error]   [ffmpeg] [ftp @ 2F3F5340] FTP open failed


Any suggestions?
CGguy
 
Posts: 15
Joined: 20 Apr 2015, 05:12

Re: Simple Video Playout

Postby vimlesh1975 » 20 Jan 2016, 06:58

Code: Select all
-vf format=pix_fmts=yuv420p


Adding above code to your code i got it working on my mobile.
User avatar
vimlesh1975
 
Posts: 595
Joined: 29 Aug 2011, 11:42
Location: Doordarshan, Mumbai, India

Re: Simple Video Playout

Postby CGguy » 21 Jan 2016, 11:08

vimlesh1975 wrote:
Code: Select all
-vf format=pix_fmts=yuv420p


Adding above code to your code i got it working on my mobile.


Excellent! Thanks a lot Vimlesh! Really appreciate your help. Now I have video and audio on web browser with this:

Code: Select all
ftp://[user[:password]@]server[:port]/path/to/remote/stream.m3u8 -c:a libvo_aacenc -c:v libx264 -vf format=pix_fmts=yuv420p -hls_time 10 -hls_list_size 10 -hls_wrap 10 -start_number 1


Unfortunately I loose video once I add the scale parameter:

Code: Select all
-vf scale=640:360


I'm sure I'm doing something wrong. I guess at this point I have to fine-tune the precise parameters. Any suggestions/corrections in my code? Again, much thanks!
CGguy
 
Posts: 15
Joined: 20 Apr 2015, 05:12

Re: Simple Video Playout

Postby dizbap » 22 Jan 2016, 20:46

vimlesh1975 wrote:
1. Multi-Channel Playout ( Up to 4 channel full HD playout on single server )
Open four instance of CMP. Configure OSC section of casparcg.config file for clients ports 6250, 6251, 6252, and 6253. Put these diffrent ports for each CMP instance.


Hi vimlesh, can you clarify more on the above? as the casparcg.config is a single file in the server, how can each CMP have different config file? or you mean to code all these ports into same conf. file as below code?
Code: Select all
<osc>
   <default-port>6250</default-port>
   <predefined-clients>
      <predefined-client>
         <address>127.0.0.1</address>
         <port>5253</port>
      </predefined-client>
   </predefined-clients>
</osc>
<osc>
   <default-port>6251</default-port>
   <predefined-clients>
      <predefined-client>
         <address>127.0.0.1</address>
         <port>5253</port>
      </predefined-client>
   </predefined-clients>
</osc>
<osc>
   <default-port>6252</default-port>
   <predefined-clients>
      <predefined-client>
         <address>127.0.0.1</address>
         <port>5253</port>
      </predefined-client>
   </predefined-clients>
</osc>
<osc>
   <default-port>6253</default-port>
   <predefined-clients>
      <predefined-client>
         <address>127.0.0.1</address>
         <port>5253</port>
      </predefined-client>
   </predefined-clients>
</osc>


Please Help and keep up the good work!
dizbap
 
Posts: 3
Joined: 20 Jan 2016, 15:05

Re: Simple Video Playout

Postby didikunz » 22 Jan 2016, 22:26

It's very clear: 1 server with 4 OSC ports configured, 4 of his programms CMP, each configured for one of the ports.
Didi Kunz
CasparCG Client-Programmer, Template Maker & Live CG-Operator
Media Support, CH-5722 Gränichen, Switzerland http://mediasupport.ch/
Problems? Guide to posting Bug reports & Feature requests
User avatar
didikunz
 
Posts: 3401
Joined: 10 May 2010, 09:08
Location: Aarau, Switzerland

Re: Simple Video Playout

Postby CGguy » 23 Jan 2016, 00:18

vimlesh1975 wrote:
Code: Select all
-vf format=pix_fmts=yuv420p


Adding above code to your code i got it working on my mobile.


Lots of success so far. In fact my respect continues to grow for CasparCG and more especially, Vimlesh's playout solution! I am now able to stream to an FTP server and play with HTML 5 <video> tag with the following code:

Code: Select all
ADD 1 STREAM [clients' FTP server address/stream.m3u8] -vcodec libx264 -tune zerolatency -preset ultrafast -crf 25 -vf "scale=426:-1,format=yuv420p" -c:a libvo_aacenc -b:a 32k -hls_time 10 -hls_list_size 6 -hls_wrap 10 start_number 1


I have been testing and calibrating the stream for the past 24 hours with a lot of success. That solves some of my problems and relationship with my client is less tense :) Unfortunately her web host does not support streaming so she would have to find an alternative host. So that takes me out of deep waters but I'm still in water :) Next, I have to figure out how to pipe the same .m3u8 stream to Microsoft Azure blob storage. Unfortunately the URL for that is not as easy as a regular FTP url. I welcome any help or suggestions. Also, I humbly invite all you FFMPEG gurus to kindly take a look at my code above and offer any optimization ideas. Would I do better with a specific video bitrate instead of -crf?

Thanks a lot!

- Prince
CGguy
 
Posts: 15
Joined: 20 Apr 2015, 05:12

Re: Simple Video Playout

Postby vimlesh1975 » 23 Jan 2016, 05:08

@dizbap
In server config, it should be like this.
Code: Select all
<osc>
   <default-port>6250</default-port>
   <predefined-clients>

      <predefined-client>
         <address>127.0.0.1</address>
         <port>6251</port>
      </predefined-client>

   <predefined-client>
         <address>127.0.0.1</address>
         <port>6252</port>
      </predefined-client>

   <predefined-client>
         <address>127.0.0.1</address>
         <port>6253</port>
      </predefined-client>

   </predefined-clients>
</osc>


In four instances of CMP it should be like this.
four_cmp_osc_configuration.png
four_cmp_osc_configuration.png (22.04 KiB) Viewed 11273 times
User avatar
vimlesh1975
 
Posts: 595
Joined: 29 Aug 2011, 11:42
Location: Doordarshan, Mumbai, India

Re: Simple Video Playout

Postby CGguy » 26 Jan 2016, 20:13

Hi there Vimlesh,

I just downloaded the recent CMP build and noticed the HLS stream implementation already!

Dude, you are unstoppable man :)!!

Well done Sir. This community owes you a lot. You really saved my life back there a few days ago. You have no idea the kind of nasty folks I was dealing with. Thanks for kindly stepping in. I am still researching and experimenting with Amazon S3 and Microsoft Azure Blob addressing structures. I will post as soon as I have a break through.

Best Regards!

- Prince
CGguy
 
Posts: 15
Joined: 20 Apr 2015, 05:12

Re: Simple Video Playout

Postby imorrish » 26 Jan 2016, 23:27

CGguy wrote:Next, I have to figure out how to pipe the same .m3u8 stream to Microsoft Azure blob storage. Unfortunately the URL for that is not as easy as a regular FTP url. I welcome any help or suggestions.


Have a look at CloudBerry Explorer for Azure. I use this to sync some Silverlight assets generated locally up to Azure Blob storage (about 50,000 png's). Certainly works for on-demand, don't know about live...

Regards,
Ian
User avatar
imorrish
 
Posts: 28
Joined: 27 Jan 2015, 07:12
Location: New Zealand

Re: Simple Video Playout

Postby CGguy » 27 Jan 2016, 01:29

imorrish wrote:
CGguy wrote:Next, I have to figure out how to pipe the same .m3u8 stream to Microsoft Azure blob storage. Unfortunately the URL for that is not as easy as a regular FTP url. I welcome any help or suggestions.


Have a look at CloudBerry Explorer for Azure. I use this to sync some Silverlight assets generated locally up to Azure Blob storage (about 50,000 png's). Certainly works for on-demand, don't know about live...

Regards,
Ian


Yes Ian, that's correct. Thanks for pointing that out. Well you wouldn't believe it, but coincidentally I use CloudBerry Explorer as well to manage files:)! But as you pointed out, it does not support a live work flow, in fact I am using CloudBerry Drive (not Explorer) now as I write. It allows one to mount the Azure storage as a local drive and them send files as a local archive. However, I have been monitoring the stream for the past 24 hours and noticing various network latency and missed frame issues.

However, this doesn't occur when I stream direct to FTP and I would probably attribute this to the file caching system of the software. I have probably gone through about 10 other upload apps in that category including Gladinet, NetDrive, WebDrive, IPTV Transcoding Live, BestSync, Cloud Combine etc. Unfortunately they all exhibit the same missed frame and intermittent connection issues to some extent. I think the key is to stream directly to Azure. I am now crudely "reverse engineering" those apps to figure out their Azure blob addressing structures. And the journey continues ......

Thanks for the suggestion!
CGguy
 
Posts: 15
Joined: 20 Apr 2015, 05:12

Re: Simple Video Playout

Postby imorrish » 27 Jan 2016, 05:56

Check latency to Azure with this tool http://www.azurespeed.com/
Presume you are using closest datacenter. Express route may help improve things if you are almost there.
Must be an reason why you cant use Azure Media Services to ingest live feed...
User avatar
imorrish
 
Posts: 28
Joined: 27 Jan 2015, 07:12
Location: New Zealand

Re: Simple Video Playout

Postby dizbap » 27 Jan 2016, 06:00

Hi @vimlesh1975,
Thanks for quick respond, so once I change the port should I click start? and also do you have any operation manual for the CMP? And How do I create a playlist which will be played next day automatic once the current playlist ends?

Thanks.
dizbap
 
Posts: 3
Joined: 20 Jan 2016, 15:05

Re: Simple Video Playout

Postby CGguy » 29 Jan 2016, 20:25

imorrish wrote:Check latency to Azure with this tool http://www.azurespeed.com/
Presume you are using closest datacenter. Express route may help improve things if you are almost there.
Must be an reason why you cant use Azure Media Services to ingest live feed...


Thanks Ian for that suggestion. The test revealed that I am using the nearest data-center in East US (Virginia) with average latency at 27 ms. Terrific, if you ask me :)! That's like in my own back yard.

However, my research took me as far as speaking with a Microsoft Azure Team Developer and he confirmed it is not possible to address directly to Azure storage like an FTP, due to security. Apparently the only option is to use various shells and scripts for file transfer (like Cloudberry Explorer. Not for real time), or to use the Azure SDK and integrate it into my application (CasparCG/CMP). It seems pretty straightforward:

1. Create an Azure storage account (which I have).
2. Setup a storage connection string (save in a app.config file).
3. Configure the connection string using .NET configuration.
4. Programmatically access the Azure storage (from CasparCG/CMP?).
5. Upload/append files into the storage account.

https://azure.microsoft.com/en-us/documentation/articles/storage-dotnet-how-to-use-blobs/

Unfortunately this solution is beyond me, as I am not well versed in .NET. However, I enjoy trying new things. Could anyone kindly deconstruct how this could possibly work with the CasparCG .NET framework?
CGguy
 
Posts: 15
Joined: 20 Apr 2015, 05:12

Re: Simple Video Playout

Postby farhad.nematy » 06 Feb 2016, 11:12

hi vimlesh

i have a question, is this simple video playout only for 32bit platforms??
when i want to compile it in visual studio for 64bit platfrom it gives me lots of errors. i think that is because of .dll files we used in this project. where we can find the 64bit dll files?
nothing is impossible
farhad.nematy
 
Posts: 167
Joined: 24 Jul 2013, 06:00

Re: Simple Video Playout

Postby farhad.nematy » 20 Feb 2016, 05:52

farhad.nematy wrote:hi vimlesh

i have a question, is this simple video playout only for 32bit platforms??
when i want to compile it in visual studio for 64bit platfrom it gives me lots of errors. i think that is because of .dll files we used in this project. where we can find the 64bit dll files?



need help
nothing is impossible
farhad.nematy
 
Posts: 167
Joined: 24 Jul 2013, 06:00

Re: Simple Video Playout

Postby didikunz » 20 Feb 2016, 07:41

You can compile as 32 bit exe and still run ona 64 bit platform.
Didi Kunz
CasparCG Client-Programmer, Template Maker & Live CG-Operator
Media Support, CH-5722 Gränichen, Switzerland http://mediasupport.ch/
Problems? Guide to posting Bug reports & Feature requests
User avatar
didikunz
 
Posts: 3401
Joined: 10 May 2010, 09:08
Location: Aarau, Switzerland

Re: Simple Video Playout

Postby farhad.nematy » 23 Feb 2016, 08:26

didikunz wrote:You can compile as 32 bit exe and still run ona 64 bit platform.



this is what i am doing. but i think 64 bit exe can run better because of access to more resources
nothing is impossible
farhad.nematy
 
Posts: 167
Joined: 24 Jul 2013, 06:00

Re: Simple Video Playout

Postby didikunz » 23 Feb 2016, 09:37

I don't think that you notice much difference. A typical Caspar client is not much more than a GUI with a little databse handling in the background. The heavy lifting is done in CasparCG server, which is, by the way, still a 32 bit process (AFAIK 64 bit comes with version 2.1).
Didi Kunz
CasparCG Client-Programmer, Template Maker & Live CG-Operator
Media Support, CH-5722 Gränichen, Switzerland http://mediasupport.ch/
Problems? Guide to posting Bug reports & Feature requests
User avatar
didikunz
 
Posts: 3401
Joined: 10 May 2010, 09:08
Location: Aarau, Switzerland

Hi Budy

Postby Shahrad.R » 29 Feb 2016, 16:21

I want play Power point in caspar Media playback
but show me this (run-time error -2147467259 (80004005) slide (unknown member): powerpoint can not save 0 to 1.)
please help me
Shahrad.R
 
Posts: 3
Joined: 21 Feb 2016, 21:56

Re: Simple Video Playout

Postby travishkelly » 09 Mar 2016, 17:07

Good afternoon Vimesh, I've asked a couple questions here before but just wanted to thank you again for the time you take on these posts and the playout you created. Quick question. Is there an easy way to enlarge the scoring bug? I plan on testing this out on a giant LED screen and wanted to know if there was a way to enlarge it to make it more visible.
travishkelly
 
Posts: 4
Joined: 05 Jan 2016, 16:48

Re: Simple Video Playout

Postby vlukac » 09 Mar 2016, 19:05

Hi, Vimlesh,

How can I change search code in twitter module from "search by username" to "search by word query"?

Thank you for solutions.

Vinko
vlukac
 
Posts: 13
Joined: 19 Jan 2014, 16:36

Re: Simple Video Playout - error help?

Postby dario-ri » 21 Mar 2016, 17:07

Hi to all,

I am electronic engineer working on small project of weather station connected to my home automation system where I would like to send data to TV sets installed in my rooms. For now I send data over UDP protocol to micro controller which work as web server.
On other side my son has his own camera and decklink duo card on his computer and installed CASPARCG for school projects, so I would like to combine two systems on the way to have home private channel with weather data and some other info if possible. This is how I come to this site.
I also use vb2010 for my projects so looks to me it could be good to see if I can do it. I found and download CMP 190316 and try to use weather module but I receive error listed below. Further more looks that template could not be found. Directory is in C:\casparcg\CMP\weather\weather.. There are 3 files, mains.as ,weather.fla and weather.ft

what else should be there?

Thanks for any help,
Regards,
Damir

Code: Select all
[2016-03-21 16:33:00.961] [5604]  [info]    Received long message from 127.0.0.1: CG 1-91 ADD 91 "CMP/weather/weather" 1 "<templateData><componentData id=\"logofilename1\"><data id=\"text\" value=\"C:/Casparcg/mydata/weather/1.png\" /></componentData><componentData id=\"logowidth1\"><data id=\"text\" value=\"140\" /></componentData><componentData id=\"logoheight1\"><data id=\"text\" value=\"100\" /></componentData><componentData id=\"logox1\"><data id=\"text\" value=\"30\" /></componentData><componentData id=\"logoy1\"><data id=\"text\" value=\"260\" /></componentData><componentData id [...]\r\n
[2016-03-21 16:33:00.964] [10452] [warning] Could not find template CMP/WEATHER/WEATHER
[2016-03-21 16:33:00.964] [10452] [debug]   Executed command: CGCommand
[2016-03-21 16:33:00.965] [10452] [info]    Sent message to 127.0.0.1: 404 CG ERROR\r\n
dario-ri
 
Posts: 11
Joined: 21 Sep 2013, 23:13

Re: Simple Video Playout

Postby vimlesh1975 » 21 Mar 2016, 17:28

Try after clicking on copy example template button. This button is in bottom of the client.
User avatar
vimlesh1975
 
Posts: 595
Joined: 29 Aug 2011, 11:42
Location: Doordarshan, Mumbai, India

Re: Simple Video Playout

Postby dario-ri » 21 Mar 2016, 17:38

Hi Vimlesh1975,
it is working now, can I ask what was problem ? or from where the line coming.
Thanks,
Damir
dario-ri
 
Posts: 11
Joined: 21 Sep 2013, 23:13

Re: Simple Video Playout

Postby d3aak117 » 22 Mar 2016, 19:03

greaaaaaaaaat work bro ...

have the all module it works ?

coz it works with me just play list
d3aak117
 
Posts: 48
Joined: 26 Nov 2015, 13:24

Re: Simple Video Playout

Postby vimlesh1975 » 23 Mar 2016, 03:56

Try after clicking on copy example template button. This button is in bottom of the client.
User avatar
vimlesh1975
 
Posts: 595
Joined: 29 Aug 2011, 11:42
Location: Doordarshan, Mumbai, India

Re: Simple Video Playout

Postby dario-ri » 23 Mar 2016, 18:27

Hi to all,
thanks to Vimlesh I try all options from CMP, and now I would like to make and add my own form to it and I install VB208 Professional , so far I used VB 2010 express.


Once I start CasparMediaPlayback.vbproj I have a lot of errors,most of them related to references. After I changed file path, I still have a lot of errors, for instance facebook.

Please check screen, and let me know if anybody can help.
Thanks,
Damir
Attachments
error.png
error.png (205.26 KiB) Viewed 9916 times
dario-ri
 
Posts: 11
Joined: 21 Sep 2013, 23:13

Re: Simple Video Playout

Postby vimlesh1975 » 24 Mar 2016, 05:00

Mostly I use windows 7 and vb.net 2013.
I see you are using windows 10 and vb2008 or vb2010. Windows 10 may not be the problem but you must try it on vb.net 2013.
User avatar
vimlesh1975
 
Posts: 595
Joined: 29 Aug 2011, 11:42
Location: Doordarshan, Mumbai, India

Re: Simple Video Playout

Postby d3aak117 » 24 Mar 2016, 09:02

vimlesh1975 wrote:Try after clicking on copy example template button. This button is in bottom of the client.


i was try my brother on the module game but actually it was not work with me

how could show it on screen
Attachments
cmp.jpg
cmp.jpg (221.68 KiB) Viewed 9875 times
d3aak117
 
Posts: 48
Joined: 26 Nov 2015, 13:24

Re: Simple Video Playout

Postby dario-ri » 24 Mar 2016, 21:01

Hi Vimlesh,
thanks for your answer.
I install visual studio 2013 and after I press build I have same errors as before. IT is run on windows 10 and vb2013,
please check picture.
Thanks ,
Damir
Attachments
error.png
error.png (114.57 KiB) Viewed 9844 times
dario-ri
 
Posts: 11
Joined: 21 Sep 2013, 23:13

Re: Simple Video Playout

Postby stevespaw » 30 Mar 2016, 15:06

Hello Vimlesh,
I have referred others to your software, but now the dropbox account is suspended for too many downloads!
Wow the price of success!

Just thought I would let you know, keep up the good work.
Steve
stevespaw
 
Posts: 75
Joined: 01 Aug 2013, 15:21

Re: Simple Video Playout

Postby vimlesh1975 » 30 Mar 2016, 18:48

Thank you for support. I have given a new link.
User avatar
vimlesh1975
 
Posts: 595
Joined: 29 Aug 2011, 11:42
Location: Doordarshan, Mumbai, India

Re: Simple Video Playout

Postby stevespaw » 30 Mar 2016, 19:20

I have posted links to CMP in the vMix forums.
Now fully supports NDI (Tricaster with Airsend update). http://www.newtek.com/ndi

Download the tools pack and the updater and you will never use the Caspar screen output again :-)

Awesome combo that every Caspar user should be looking at. And forget all of the streaming and recording stuff in Caspar. :-)

http://forums.vmix.com/default.aspx?g=posts&t=5955

http://forums.vmix.com/default.aspx?g=posts&m=23688&#post23688
stevespaw
 
Posts: 75
Joined: 01 Aug 2013, 15:21

Re: Simple Video Playout

Postby stevespaw » 30 Mar 2016, 20:00

vimlesh1975 wrote:Thank you for support. I have given a new link.



Getting this message again ?

Error (429)
This account's links are generating too much traffic and have been temporarily disabled!

You may need a new host?

Steve
stevespaw
 
Posts: 75
Joined: 01 Aug 2013, 15:21

Re: Simple Video Playout

Postby dario-ri » 30 Mar 2016, 22:35

Hi again,
I install visual studio 2013 running on win 10 but still have same problem with some dll's. How to solve that problem_
please check picture in post above.
Thanks ,
Damir
dario-ri
 
Posts: 11
Joined: 21 Sep 2013, 23:13

Re: Simple Video Playout

Postby vimlesh1975 » 31 Mar 2016, 07:36

I have given a new link from filehosting.org.

@ dario-ri
Please send me a PM containing id and password of team viewer. I want to see the errors and will try to correct.

@ vlukac 
Twitter search by word has been done.
User avatar
vimlesh1975
 
Posts: 595
Joined: 29 Aug 2011, 11:42
Location: Doordarshan, Mumbai, India

Re: Simple Video Playout

Postby sahir.baloch.786 » 09 Apr 2016, 13:15

Dear vimlesh
i am writing decklink based live player and implemented OSC protocol for communication ....i am stuck in a situation where i need to get the decklink input frame number or you can say i need frame counter from whom card i am getting live
for clip frame number i am using "message =="/channel/2/stage/layer/1/file/frame")" now i need decklink frame number from the card who produce the frame
Please advise me the solution
regards
sahir.baloch.786
 
Posts: 7
Joined: 19 Jan 2013, 14:55

Re: Simple Video Playout

Postby didikunz » 12 Apr 2016, 07:52

sahir.baloch.786 wrote:Dear vimlesh
i am writing decklink based live player and implemented OSC protocol for communication ....i am stuck in a situation where i need to get the decklink input frame number or you can say i need frame counter from whom card i am getting live
for clip frame number i am using "message =="/channel/2/stage/layer/1/file/frame")" now i need decklink frame number from the card who produce the frame
Please advise me the solution
regards

I don't know how to get that information. Have you tried the INFO command or OSC?
Didi Kunz
CasparCG Client-Programmer, Template Maker & Live CG-Operator
Media Support, CH-5722 Gränichen, Switzerland http://mediasupport.ch/
Problems? Guide to posting Bug reports & Feature requests
User avatar
didikunz
 
Posts: 3401
Joined: 10 May 2010, 09:08
Location: Aarau, Switzerland

Re: Simple Video Playout

Postby vimlesh1975 » 12 Apr 2016, 15:46

@sahir.baloch.786
I think OSC doesn't give frame number of decklink input. But "info 1-1" command gives the same.
For this purpose I use follow duration check box in my client. Because we may want to have decklink live for some time only.
User avatar
vimlesh1975
 
Posts: 595
Joined: 29 Aug 2011, 11:42
Location: Doordarshan, Mumbai, India

Re: Simple Video Playout

Postby sahir.baloch.786 » 15 Apr 2016, 13:20

vimlesh1975 wrote:@sahir.baloch.786
I think OSC doesn't give frame number of decklink input. But "info 1-1" command gives the same.
For this purpose I use follow duration check box in my client. Because we may want to have decklink live for some time only.

Thank you Dear.....
sahir.baloch.786
 
Posts: 7
Joined: 19 Jan 2013, 14:55

PreviousNext

Return to Content

Who is online

Users browsing this forum: No registered users and 3 guests