Ejemplo n.º 1
0
 private void SendVideoMessage()
 {
     if (File.Exists(videofilename) && isRecording == "false")
     {
         //Sending to server
         byte[] bytes = Encoding.UTF8.GetBytes("videofile");
         stream.Write(bytes, 0, bytes.Length);
         SendVideo video = new SendVideo();
         video.SetFile(videofilename);
         using (FileStream fstream = new FileStream(videofilename, FileMode.Open, FileAccess.Read))
         {
             SendFileInfo(fstream);
             SendFile(fstream);
         }
         //Ending send file
         //Locate control on GUI
         video.Left = this.Width - 158;
         CheckScrollBar();
         video.Top = getPosition();
         video.AddTimeLabelSender();
         panel3.Controls.Add(video);
         lastObject = video;
         videolist.Add(video);
         //Ending add control
     }
 }
Ejemplo n.º 2
0
        private void StartPlayVideo(object sender, EventArgs e)
        {
            SendVideo sv = new SendVideo(remoteEP, 21, 20);

            sv.Send(Toimg, cam);
            //timer.Stop();
        }
Ejemplo n.º 3
0
        /// <summary>
        ///  回复语音消息的函数
        /// </summary>
        /// <param name="model">The model.</param>
        /// <param name="mediaId">服务器上视频的ID</param>
        /// Author  : 俞立钢
        /// Company : 绍兴标点电子技术有限公司
        /// Created : 2014-10-24 10:25:01
        private static void ProduceVideo(Dictionary <string, string> model, int mediaId)
        {
            SendVideo video = new SendVideo();

            video.ToUserName   = model.ReadKey(PublicField.FromUserName);
            video.FromUserName = model.ReadKey(PublicField.ToUserName);
            video.CreateTime   = int.Parse(model.ReadKey(PublicField.CreateTime));
            video.MsgType      = "image";
            video.MediaId      = mediaId;
            OperateXml.ResponseEnd(Templete.SendVideo(video));
        }
Ejemplo n.º 4
0
        /// <summary>
        ///  回复的视频消息的函数
        /// </summary>
        /// <param name="model">The model.</param>
        /// <param name="mediaId">服务器上视频的ID</param>
        /// <param name="title">title</param>
        /// <param name="description">描述</param>
        /// Author  : 俞立钢
        /// Company : 绍兴标点电子技术有限公司
        /// Created : 2014-10-24 10:25:01
        private static void ProduceMusic(Dictionary <string, string> model, int mediaId, string title, string description, string musicURL, string hqMusicUrl)
        {
            SendVideo video = new SendVideo();

            video.ToUserName   = model.ReadKey(PublicField.FromUserName);
            video.FromUserName = model.ReadKey(PublicField.ToUserName);
            video.CreateTime   = int.Parse(model.ReadKey(PublicField.CreateTime));
            video.MsgType      = "music";
            video.MediaId      = mediaId;
            video.Title        = title;
            video.Description  = description;
            OperateXml.ResponseEnd(Templete.SendVideo(video));
        }
Ejemplo n.º 5
0
 /// <summary>
 ///  回复视频消息
 /// </summary>
 /// <param name="model">The model.</param>
 /// Author  : 俞立钢
 /// Company : 绍兴标点电子技术有限公司
 /// Created : 2014-10-10 11:00:22
 public static string SendVideo(SendVideo model)
 {
     return(string.Format(@"<xml>
                             <ToUserName><![CDATA[{0}]]></ToUserName>
                             <FromUserName><![CDATA[{1}]]></FromUserName>
                             <CreateTime>{2}</CreateTime>
                             <MsgType><![CDATA[{3}]]></MsgType>
                             <Video>
                                 <MediaId><![CDATA[{4}]]></MediaId>
                                 <Title><![CDATA[{5}]]></Title>
                                 <Description><![CDATA[{6}]]></Description>
                             </Video> 
                            </xml>", model.ToUserName, model.FromUserName, model.CreateTime, model.MsgType, model.MediaId, model.Title, model.Description));
 }
Ejemplo n.º 6
0
 public Home(string a)
 {
     InitializeComponent();
     infoVideo   = new InfoVideo(this);
     watchVideo  = new WatchVideo();
     SenderVideo = new SendVideo(GetVideo);
     SenderIV    = new SendIV(GetIV);
     foreach (var i in data.VideoList)
     {
         i.SetChild(this);
         stackPn.Children.Add(i);
     }
     btnName.Content = a;
 }
Ejemplo n.º 7
0
 private int getPosition()
 {
     if (msglist.Count == 0 && receivelist.Count == 0 && photolist.Count == 0 && filelist.Count == 0 && audiolist.Count == 0 && videolist.Count == 0)
     {
         return(40);
     }
     if (lastObject is MyBubble)
     {
         MyBubble tmp = (MyBubble)lastObject;
         return(tmp.Top + tmp.Height);
     }
     if (lastObject is GetBubble)
     {
         GetBubble tmp = (GetBubble)lastObject;
         return(tmp.Top + tmp.Height);
     }
     if (lastObject is SendImage)
     {
         SendImage tmp = (SendImage)lastObject;
         return(tmp.Top + tmp.Height);
     }
     if (lastObject is SendFile)
     {
         SendFile tmp = (SendFile)lastObject;
         return(tmp.Top + tmp.Height);
     }
     if (lastObject is SendAudio)
     {
         SendAudio tmp = (SendAudio)lastObject;
         return(tmp.Top + tmp.Height);
     }
     if (lastObject is SendVideo)
     {
         SendVideo tmp = (SendVideo)lastObject;
         return(tmp.Top + tmp.Height);
     }
     else
     {
         return(0);
     }
 }
Ejemplo n.º 8
0
 private void timer1_Tick_1(object sender, EventArgs e)
 {
     if (gettedMessage != "")
     {
         ReceiveBubble(gettedMessage);
         gettedMessage = "";
     }
     if (path != "")
     {
         image = new SendImage();
         image.SetImage(path);
         image.Left       = 5;
         image.PhotoColor = Color.SkyBlue;
         image.Top        = getPosition();
         image.AddTimeLabelGetter();
         panel3.Controls.Add(image);
         lastObject = image;
         photolist.Add(image);
         path = "";
         CheckScrollBar();
     }
     if (filepath != "")
     {
         file = new SendFile();
         file.SetFile(filepath);
         file.FileName = filepath;
         file.FileSize = fileSizeString;
         file.Left     = 5;
         file.Top      = getPosition();
         file.AddTimeLabelGetter();
         panel3.Controls.Add(file);
         lastObject = file;
         filelist.Add(file);
         filepath = "";
         CheckScrollBar();
     }
     if (audiopath != "")
     {
         audio = new SendAudio();
         audio.SetFile(audiopath);
         audio.AudioTime = (GetWavFileDuration(audiopath)).ToString();
         audio.Left      = 5;
         audio.Top       = getPosition();
         audio.AddTimeLabelGetter();
         panel3.Controls.Add(audio);
         lastObject = audio;
         audiolist.Add(audio);
         audiopath = "";
         CheckScrollBar();
     }
     if (videopath != "")
     {
         wideo = new SendVideo();
         wideo.SetFile(videopath);
         wideo.Left = 5;
         wideo.Top  = getPosition();
         wideo.AddTimeLabelGetter();
         panel3.Controls.Add(wideo);
         lastObject = wideo;
         videolist.Add(wideo);
         videopath = "";
         CheckScrollBar();
     }
 }
Ejemplo n.º 9
0
        public MainWindow()
        {
            InitializeComponent();
            infoVideo   = new InfoVideo(this);
            watchVideo  = new WatchVideo();
            SenderVideo = new SendVideo(GetVideo);
            SenderIV    = new SendIV(GetIV);

            List <VideoInfo> lst = new List <VideoInfo>
            {
                new VideoInfo
                {
                    Path  = @"E:\HoangTrung\LTUDQL2\LTUDQL2---DACK\1660661\02.mp4",
                    Title = "Mavarl"
                },
                new VideoInfo
                {
                    Trailer = @"E:\HoangTrung\LTUDQL2\LTUDQL2---DACK\1660661\02.mp4",
                    Title   = "Mavarl2"
                },
                new VideoInfo
                {
                    Trailer = @"E:\HoangTrung\LTUDQL2\LTUDQL2---DACK\1660661\02.mp4",
                    Title   = "Thond"
                },
                new VideoInfo
                {
                    Trailer = @"E:\HoangTrung\LTUDQL2\LTUDQL2---DACK\1660661\02.mp4",
                },
                new VideoInfo
                {
                    Trailer = @"E:\HoangTrung\LTUDQL2\LTUDQL2---DACK\1660661\02.mp4",
                },
                new VideoInfo
                {
                },
                new VideoInfo
                {
                },
                new VideoInfo
                {
                },
                new VideoInfo
                {
                },
                new VideoInfo
                {
                },
                new VideoInfo
                {
                },
                new VideoInfo
                {
                },
                new VideoInfo
                {
                },
            };

            var l1 = new ListVideos(this);

            l1.SetListvideo(lst);
            l1.SetName("Phim Hành Động");
            stackPn.Children.Add(l1);
            var l2 = new ListVideos(this);

            l2.SetListvideo(lst);
            l2.SetName("Phim Ma");
            stackPn.Children.Add(l2);
            lstvideo.Add(l1);
            lstvideo.Add(l2);
            //l3.SetListvideo(lst);
            //l3.SetName("Phim Hoạt Hình");
            //l4.SetListvideo(lst);
            //l4.SetName("Phim Viễn Tưởng");
            //l5.SetListvideo(lst);
            //l5.SetName("Phim Cổ Trang");
            //l6.SetListvideo(lst);
            //l6.SetName("Phim Tào Lao");
        }
Ejemplo n.º 10
0
        private void ReceiveCallback(IAsyncResult ar)
        {
            StateObject state     = ar.AsyncState as StateObject;
            UdpClient   udpClient = state.workSocket;
            IPEndPoint  remote    = null;

            Byte[] data;
            try{ data = udpClient.EndReceive(ar, ref remote); }
            catch { return; }

            //查看是什么类型
            byte[] bnum = new byte[4];
            for (int i = 0; i < 4; i++)
            {
                bnum[i] = data[i];
            }
            int num = BitConverter.ToInt32(bnum, 0);

            switch (num)
            {
            case 10:
                state.mstext.Write(data, 4, data.Length - 4);
                break;

            case 11:
                state.mstext.Write(data, 4, data.Length - 4);
                this.Dispatcher.BeginInvoke(new DelegateWriteTextBox(WriteTextBox), SendText.Reveive(state.mstext));
                state.mstext = new MemoryStream();
                break;

            case 20:
                state.ms.Write(data, 4, data.Length - 4);
                break;

            case 21:
                state.ms.Write(data, 4, data.Length - 4);
                this.Dispatcher.BeginInvoke(new DelegateWriteImage(WriteImage), SendVideo.Reveive(state.ms));
                state.ms = new MemoryStream();
                break;

            case 30:
                state.msvoice.Write(data, 4, data.Length - 4);
                break;

            case 31:
                state.msvoice.Write(data, 4, data.Length - 4);
                this.Dispatcher.BeginInvoke(new DelegatePlayAudio(PlayAudio), SendAudio.Receive(state.msvoice));
                state.msvoice = new MemoryStream();
                break;

            default:
                break;
            }
            try
            {
                state.buffer = new byte[StateObject.lenght];
                udpReceive.BeginReceive(new AsyncCallback(ReceiveCallback), state);
            }
            catch
            {
                throw;
            }
        }
Ejemplo n.º 11
0
        public void ModCommunicationVideo()
        {
            while (mainthread.ThreadState != System.Threading.ThreadState.Stopped)
            {
                try
                {
                    if (Video == null)
                    {
                        Video = new AnonymousPipeClientStream(PipeDirection.In, CaptureStreamForm.VideoStream.GetClientHandleAsString());
                        if (Audio != null)
                        {
                            CaptureStreamForm.isConnected = true;
                        }

                        continue;
                    }
                    if (Video.CanRead)
                    {
                        int headersize = sizeof(int) * 2 + sizeof(ushort) * 4;
                        var read       = Video.Read(transfervbuffer, 0, headersize);
                        while (read < headersize)
                        {
                            read += Video.Read(transfervbuffer, read, headersize);
                            if (process.HasExited)
                            {
                                break;
                            }
                        }
                        //int control = BitConverter.ToInt32(transfervbuffer, 0);

                        //ushort stride = BitConverter.ToUInt16(transfervbuffer, sizeof(int));
                        //ushort height = BitConverter.ToUInt16(transfervbuffer, sizeof(ushort) + sizeof(int));
                        //ushort width = BitConverter.ToUInt16(transfervbuffer, sizeof(ushort) * 2 + sizeof(int));
                        //ushort framerate = BitConverter.ToUInt16(transfervbuffer, sizeof(ushort) * 3 + sizeof(int));
                        int bytes = BitConverter.ToInt32(transfervbuffer, sizeof(ushort) * 4 + sizeof(int));
                        //MyLog.Default.WriteLine($"Video Packet Header: b {bytes}");

                        //int bytes = stride * height;
                        if (bytes + headersize > transfervbuffer.Length)
                        {
                            var oldbuffer = transfervbuffer;
                            transfervbuffer = new byte[bytes + headersize];
                            Buffer.BlockCopy(oldbuffer, 0, transfervbuffer, 0, headersize);
                        }
                        int rest = 0;
                        do
                        {
                            rest += Video.Read(transfervbuffer, rest + headersize, bytes - rest);
                            if (process.HasExited)
                            {
                                break;
                            }
                        }while (rest < bytes);
                        //MyLog.Default.WriteLine($"Plugin: ModCommunication - Sending Video - {bytes + headersize}");
                        SendVideo?.Invoke(transfervbuffer, bytes + headersize);
                    }
                }
                catch (Exception ex)
                {
                    MyLog.Default.WriteLineAndConsole(ex.ToString());
                }
                if (process.HasExited)
                {
                    break;
                }
                Thread.Sleep(0);
            }
        }
 public static ValidationResult <SendVideo> CreateValidation(this SendVideo value) => new ValidationResult <SendVideo>(value)
 .ValidateRequired(x => x.ChatId)
 .ValidateRequired(x => x.Video);