mirror of
				https://github.com/jellyfin/jellyfin.git
				synced 2025-10-31 10:37:22 -04:00 
			
		
		
		
	
		
			
				
	
	
		
			43 lines
		
	
	
		
			1.1 KiB
		
	
	
	
		
			C#
		
	
	
	
	
	
			
		
		
	
	
			43 lines
		
	
	
		
			1.1 KiB
		
	
	
	
		
			C#
		
	
	
	
	
	
| using System;
 | |
| using System.Threading;
 | |
| using System.Threading.Tasks;
 | |
| using MediaBrowser.Model.Dto;
 | |
| using MediaBrowser.Controller.Library;
 | |
| 
 | |
| namespace Emby.Server.Implementations.Library
 | |
| {
 | |
|     public class ExclusiveLiveStream : ILiveStream
 | |
|     {
 | |
|         public int ConsumerCount { get; set; }
 | |
|         public string OriginalStreamId { get; set; }
 | |
| 
 | |
|         public string TunerHostId => null;
 | |
| 
 | |
|         public bool EnableStreamSharing { get; set; }
 | |
|         public MediaSourceInfo MediaSource { get; set; }
 | |
| 
 | |
|         public string UniqueId { get; private set; }
 | |
| 
 | |
|         private Func<Task> _closeFn;
 | |
| 
 | |
|         public ExclusiveLiveStream(MediaSourceInfo mediaSource, Func<Task> closeFn)
 | |
|         {
 | |
|             MediaSource = mediaSource;
 | |
|             EnableStreamSharing = false;
 | |
|             _closeFn = closeFn;
 | |
|             ConsumerCount = 1;
 | |
|             UniqueId = Guid.NewGuid().ToString("N");
 | |
|         }
 | |
| 
 | |
|         public Task Close()
 | |
|         {
 | |
|             return _closeFn();
 | |
|         }
 | |
| 
 | |
|         public Task Open(CancellationToken openCancellationToken)
 | |
|         {
 | |
|             return Task.CompletedTask;
 | |
|         }
 | |
|     }
 | |
| }
 |