Example #1
0
 /// <summary>
 /// Raises the <see cref="UnknownDataDetected"/> event.
 /// </summary>
 /// <param name="e">The <see cref="UnknownDataDetectedEventArgs"/> for the event.</param>
 protected virtual void OnUnknownDataDetected(UnknownDataDetectedEventArgs e)
 {
     if (UnknownDataDetected != null)
     {
         UnknownDataDetected(this, e);
     }
 }
            private void UnknownDataDetected(object sender, UnknownDataDetectedEventArgs e)
            {
                _unknownData += e.Length;

                if (e.Offset < MaxBytesForDetect)
                {
                    long dataAfterLimit = Math.Max(0, (e.Offset + e.Length) - MaxBytesForDetect);
                    if ((_unknownData - dataAfterLimit) > _maxUnknownDataForDetect)
                    {
                        // Too much unknown data detected
                        _codecStreamFragments.Clear();
                        _cancelled = true;
                    }
                }
            }