diff options
| author | Luke <luke.pulverenti@gmail.com> | 2017-06-01 01:07:10 -0400 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2017-06-01 01:07:10 -0400 |
| commit | a1074c7f3ae10c1919acc86ef65c18ab66ea3b79 (patch) | |
| tree | 9d2d6b1c78b493b8fdfdeddb350fa4e00d5cc16b /MediaBrowser.Controller/IO/StreamHelper.cs | |
| parent | ab83706f13d09002a6665ebe37bfabd1643aa6ff (diff) | |
| parent | 386ed8d34a154766ff202ef86719bed5c89b2ff2 (diff) | |
Merge pull request #2683 from MediaBrowser/dev
update live stream buffers
Diffstat (limited to 'MediaBrowser.Controller/IO/StreamHelper.cs')
| -rw-r--r-- | MediaBrowser.Controller/IO/StreamHelper.cs | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/MediaBrowser.Controller/IO/StreamHelper.cs b/MediaBrowser.Controller/IO/StreamHelper.cs index 168d4b8c6..af97a0233 100644 --- a/MediaBrowser.Controller/IO/StreamHelper.cs +++ b/MediaBrowser.Controller/IO/StreamHelper.cs @@ -1,5 +1,6 @@ using System.IO; using System.Threading; +using System; namespace MediaBrowser.Controller.IO { @@ -7,6 +8,11 @@ namespace MediaBrowser.Controller.IO { public static void CopyTo(Stream source, Stream destination, int bufferSize, CancellationToken cancellationToken) { + CopyTo(source, destination, bufferSize, null, cancellationToken); + } + + public static void CopyTo(Stream source, Stream destination, int bufferSize, Action onStarted, CancellationToken cancellationToken) + { byte[] buffer = new byte[bufferSize]; int read; while ((read = source.Read(buffer, 0, buffer.Length)) != 0) @@ -14,6 +20,12 @@ namespace MediaBrowser.Controller.IO cancellationToken.ThrowIfCancellationRequested(); destination.Write(buffer, 0, read); + + if (onStarted != null) + { + onStarted(); + onStarted = null; + } } } } |
