Exemplo n.º 1
0
        public IEnumerable <Frame> Read(Stream stream)
        {
            while (stream.Position < stream.Length)
            {
                currentFrame.Read(stream);
                while (currentFrame.IsValid == false)
                {
                    ClearFrame();

                    if (stream.Position == stream.Length)
                    {
                        break;
                    }

                    stream.ReadByte();
                    currentFrame.Read(stream);
                }
                if (currentFrame.IsCompleted)
                {
                    yield return(currentFrame);
                }

                if (currentFrame.IsValid == false || currentFrame.IsCompleted)
                {
                    ClearFrame();
                }
            }
        }