Example #1
0
        protected override void OnStart(string[] args)
        {
            HdmiExtenderReceiver receiver = new HdmiExtenderReceiver(1);
            receiver.AddDevice("192.168.168.55");

            server = new VideoWebServer(18080, -1, receiver);
            server.Start();
        }
Example #2
0
        private void MainForm_Load(object sender, EventArgs e)
        {
            timer          = new System.Windows.Forms.Timer();
            timer.Interval = 1;
            timer.Tick    += timer_Tick;
            timer.Start();

            receiver = new HdmiExtenderReceiver("192.168.168.55", 1);
            receiver.Start();
        }
Example #3
0
        private void MainForm_Load(object sender, EventArgs e)
        {
            timer = new System.Windows.Forms.Timer();
            timer.Interval = 1;
            timer.Tick += timer_Tick;
            timer.Start();

            receiver = new HdmiExtenderReceiver(1);
            receiver.AddDevice("192.168.168.55");
            receiver.Start();
        }
 public VideoWebServer(int port, int port_https, HdmiExtenderReceiver _receiver)
     : base(port, port_https)
 {
     receiver = _receiver;
 }
Example #5
0
 public VideoWebServer(int port, int port_https, string senderIPAddress, int networkInterfaceIndex)
     : base(port, port_https)
 {
     receiver = new HdmiExtenderReceiver(senderIPAddress, networkInterfaceIndex);
     receiver.Start();
 }
Example #6
0
 public VideoWebServer(int port, int port_https, HdmiExtenderReceiver _receiver)
     : base(port, port_https)
 {
     receiver = _receiver;
 }
Example #7
0
        /// <summary>
        /// The main entry point for the application.
        /// </summary>
        static void Main(string[] args)
        {
            // create a generic parser for the ApplicationArguments type
            var cmdParser = new FluentCommandLineParser<ApplicationArguments>();

            // Define application arguments
            cmdParser.Setup(arg => arg.cmd)
             .As('c', "cmd")
             .WithDescription("Run as a console application rather than a Windows Service.")
             .SetDefault(false);

            cmdParser.Setup(arg => arg.port)
             .As('p', "port")
             .WithDescription("Port to use for the output streams.")
             .SetDefault(18080);

            cmdParser.Setup(arg => arg.networkInterface)
             .As('n', "interface")
             .WithDescription("Network interface id where the input device is connected to.")
             .SetDefault(1);

            cmdParser.Setup(arg => arg.devices)
             .As('d', "devices")
             .WithDescription("Input device IPs.");

            cmdParser.Setup(arg => arg.verbose)
             .As('v', "verbose")
             .WithDescription("Print 'netdrop1' or 'netdrop2'  in the console when a frame is dropped.")
             .SetDefault(true);

            cmdParser.SetupHelp("h", "help")
             .Callback(text => Console.WriteLine(text));

            //Parse arguments
            var cmdParseResult = cmdParser.Parse(args);

            //If no errors, continue
            if (!cmdParseResult.HasErrors && !cmdParseResult.HelpCalled)
            {

                // Check whether ro run as a service or a console application
                if (cmdParser.Object.cmd)
                {
                    MainService svc = new MainService();

                    HdmiExtenderReceiver receiver = new HdmiExtenderReceiver(cmdParser.Object.networkInterface);

                    foreach(string ip in cmdParser.Object.devices)
                    {
                        receiver.AddDevice(ip);
                    }

                    VideoWebServer server = new VideoWebServer(cmdParser.Object.port, -1, receiver);
                    server.Start();

                    receiver.Start();

                    Console.WriteLine("Jpeg still image:");
                    Console.ForegroundColor = ConsoleColor.White;
                    Console.WriteLine("http://localhost:" + cmdParser.Object.port +"/device ip/image.jpg");
                    Console.ResetColor();
                    Console.WriteLine();
                    Console.WriteLine("Motion JPEG:");
                    Console.ForegroundColor = ConsoleColor.White;
                    Console.WriteLine("http://localhost:" + cmdParser.Object.port + "/device ip/image.mjpg");
                    Console.ResetColor();
                    Console.WriteLine();
                    Console.WriteLine("PCM 48kHz, Signed 32 bit, Big Endian");
                    Console.ForegroundColor = ConsoleColor.White;
                    Console.WriteLine("http://localhost:" + cmdParser.Object.port + "/device ip/audio.wav");
                    Console.ResetColor();
                    Console.WriteLine();
                    Console.WriteLine("Press ENTER to exit.");
                    Console.ReadLine();
                    Console.WriteLine("Shutting down...");
                    server.Stop();
                }
                else
                {
                    ServiceBase[] ServicesToRun;
                    ServicesToRun = new ServiceBase[]
                    {
                    new MainService()
                    };
                    ServiceBase.Run(ServicesToRun);
                }
            }
        }
Example #8
0
 public VideoWebServer(int port, int port_https, string senderIPAddress, string staticNetworkAdapterIP)
     : base(port, port_https)
 {
     receiver = new HdmiExtenderReceiver(senderIPAddress, staticNetworkAdapterIP);
     receiver.Start();
 }