public static MediaSourceEntity ToEntity(this IMediaSource mediaSource) { var fileMediaSource = mediaSource as FileMediaSource; if (fileMediaSource != null) { MediaFileEntity entity = new MediaFileEntity(); entity.Id = fileMediaSource.Id; entity.AudioGain = fileMediaSource.AudioGain; entity.FileName = fileMediaSource.FileName; entity.Title = fileMediaSource.Title; entity.Duration = fileMediaSource.Duration.Value.TotalSeconds; return(entity); } else { var channelSource = mediaSource as ChannelMediaSource; if (channelSource != null) { var entity = new ChannelInfo(); entity.Id = channelSource.Id; entity.Title = channelSource.Title; return(entity); } else { throw new ArgumentException(); } } }
public static IMediaSource ToMediaSource(this MediaSourceEntity entity, PlaybillItemEntity billItemEntity) { IMediaSource result = null; MediaFileEntity fileEntity = entity as MediaFileEntity; if (fileEntity != null) { var fileSource = new FileMediaSource(fileEntity); fileSource.AudioGain = billItemEntity.AudioGain; result = fileSource; } else { ChannelInfo ci = entity as ChannelInfo; if (ci != null) { var channelSource = new ChannelMediaSource(ci); result = channelSource; } else { throw new ArgumentException(); } } return(result); }
public T FromEntity <T>(IMediaSourceEntity entity) where T : IMediaSource { IMediaSource result = null; MediaFileEntity fileEntity = entity as MediaFileEntity; if (fileEntity != null) { var fileSource = new FileMediaSource(fileEntity); result = fileSource; } else { ChannelInfo ci = entity as ChannelInfo; if (ci != null) { var channelSource = new ChannelMediaSource(ci); result = channelSource; } else { throw new ArgumentException(); } } return((T)result); }
public static MediaItem FromEntity(MediaFileEntity entity) { MediaSourceBase source = new FileMediaSource(entity); PlayRange playRange = new PlayRange(TimeSpan.FromSeconds(entity.MarkerIn), TimeSpan.FromSeconds(entity.MarkerDuration)); return(new MediaItem(source, playRange)); }
public BindableFileMediaItem(MediaFileEntity entity, string filePath) { this.MediaSource = new FileMediaSource(entity); //this.StartPosition= TimeSpan.FromSeconds(this.Entity.MarkerIn); //this.PlayDuration= TimeSpan.FromSeconds(this.Entity.MarkerDuration); this.PlayRange = new PlayRange(TimeSpan.FromSeconds(this.Entity.MarkerIn), TimeSpan.FromSeconds(this.Entity.MarkerDuration)); this.FilePath = filePath; }
public FileMediaSource(MediaFileEntity entity) : base(MediaSourceCategory.File, entity) { this.FileName = entity.FileName; // resolvedFileName; // MediaFilePathResolver.Current.Resolve(entity.FileName); //this.Id = entity.Id; if (string.IsNullOrEmpty(this.Title)) { this.Title = System.IO.Path.GetFileNameWithoutExtension(/*this.FileName*/ entity.OriginalFileName); } }
public static IMediaSource ToMediaSource(this MediaSourceEntity entity) { MediaFileEntity fileEntity = entity as MediaFileEntity; if (fileEntity != null) { return(new FileMediaSource(fileEntity)); } else { ChannelInfo ci = entity as ChannelInfo; if (ci != null) { return(new ChannelMediaSource(ci)); } else { throw new ArgumentException(); } } }
public T ToEntity <T>(IMediaSource mediaSource) where T : IMediaSourceEntity { IMediaSourceEntity result = null; var fileMediaSource = mediaSource as FileMediaSource; if (fileMediaSource != null) { MediaFileEntity entity = new MediaFileEntity(); entity.Id = fileMediaSource.Id; entity.AudioGain = fileMediaSource.AudioGain; entity.FileName = fileMediaSource.FileName; entity.Title = fileMediaSource.Title; //entity.OriginalFileName=fileMediaSource. //entity.MediaFileCategory=fileMediaSource.me entity.Duration = fileMediaSource.Duration.Value.TotalSeconds; //entity.MarkerIn=fileMediaSource.m result = entity; return((T)result); } else { var channelSource = mediaSource as ChannelMediaSource; if (channelSource != null) { var entity = new ChannelInfo(); entity.Id = channelSource.Id; entity.Title = channelSource.Title; //entity.Special result = entity; return((T)result); } else { throw new ArgumentException(); } } }
public void DeleteMediaFile(MediaFileEntity entity, string applicationName) { PlayoutRepository.DeleteMediaFile(entity, applicationName, UserService.CurrentUser.Id, UserService.CurrentUser.Name); }
public BindableMediaFileItem Create(MediaFileEntity item) { return(new BindableMediaFileItem(item, this.ResolvePath(item.FileName))); }
public BindableMediaFileItem(MediaFileEntity entity, string filePath) { this.Entity = entity; this.PlayRange = new PlayRange(TimeSpan.FromSeconds(this.Entity.MarkerIn), TimeSpan.FromSeconds(this.Entity.MarkerDuration)); this.FilePath = filePath; }