Esempio n. 1
0
        private void DoHandshake(Stream stream)
        {
            // read c0+c1
            var c01 = RtmpHandshake.Read(stream, true);

            var random      = new Random();
            var randomBytes = new byte[1528];

            random.NextBytes(randomBytes);

            // write s0+s1+s2
            var s01 = new RtmpHandshake
            {
                Version = 3,
                Time    = (uint)Environment.TickCount,
                Time2   = 0,
                Random  = randomBytes
            };
            var s02 = s01.Clone();

            s02.Time2 = (uint)Environment.TickCount;
            RtmpHandshake.WriteAsync(stream, s01, s02, true);

            // read c02
            var c02 = RtmpHandshake.Read(stream, false);

            hasConnected = true;
        }
Esempio n. 2
0
        private void DoHandshake(Stream stream)
        {
            RtmpHandshake.Read(stream, true);
            Random random = new Random();

            byte[] numArray = new byte[1528];
            byte[] buffer   = numArray;
            random.NextBytes(buffer);
            RtmpHandshake h = new RtmpHandshake()
            {
                Version = 3, Time = (uint)Environment.TickCount, Time2 = 0, Random = numArray
            };
            RtmpHandshake h2 = h.Clone();

            h2.Time2 = (uint)Environment.TickCount;
            RtmpHandshake.WriteAsync(stream, h, h2, true);
            RtmpHandshake.Read(stream, false);
        }