/// <summary> /// Construct a recording encoder/decoder /// </summary> /// <param name="stream">The original stream to wrap</param> /// <param name="recordStream">The stream to be embedded with the playback metadata</param> public TWSPlaybackRecorderEncoding(Stream stream, Stream recordStream) : base(stream) { if (!recordStream.CanSeek) throw new ArgumentException("must be seekable", "recordStream"); _recordStream = recordStream; _stream = new EchoStream(_stream, _recordStream, EchoStream.StreamOwnership.OwnPrimaryStream); _recordWriter = new BinaryWriter(_recordStream); }
/// <summary> /// Construct a recording encoder/decoder /// </summary> /// <param name="stream">The original stream to wrap</param> /// <param name="recordStream">The stream to be embedded with the playback metadata</param> public TWSPlaybackRecorderEncoding(Stream stream, Stream recordStream) : base(stream) { if (!recordStream.CanSeek) { throw new ArgumentException("must be seekable", "recordStream"); } _recordStream = recordStream; Stream = new EchoStream(Stream, _recordStream, EchoStream.StreamOwnership.OwnPrimaryStream); _recordWriter = new BinaryWriter(_recordStream); }