From fd621bbc522b39dca2f51c95d463a76ca7ca906e Mon Sep 17 00:00:00 2001 From: Luke Pulverenti Date: Thu, 5 Oct 2017 14:07:31 -0400 Subject: support mpeg2 decoding with omx --- MediaBrowser.Controller/MediaEncoding/EncodingHelper.cs | 6 ++++++ 1 file changed, 6 insertions(+) (limited to 'MediaBrowser.Controller/MediaEncoding') diff --git a/MediaBrowser.Controller/MediaEncoding/EncodingHelper.cs b/MediaBrowser.Controller/MediaEncoding/EncodingHelper.cs index 8b612f809..004748a76 100644 --- a/MediaBrowser.Controller/MediaEncoding/EncodingHelper.cs +++ b/MediaBrowser.Controller/MediaEncoding/EncodingHelper.cs @@ -1960,6 +1960,12 @@ namespace MediaBrowser.Controller.MediaEncoding return "-c:v h264_mmal"; } break; + case "mpeg2video": + if (_mediaEncoder.SupportsDecoder("mpeg2_mmal") && encodingOptions.HardwareDecodingCodecs.Contains("mpeg2video", StringComparer.OrdinalIgnoreCase)) + { + return "-c:v mpeg2_mmal"; + } + break; } } } -- cgit v1.2.3 From 851c62a9401919780f9413659eb13e8d2a556679 Mon Sep 17 00:00:00 2001 From: Luke Pulverenti Date: Wed, 11 Oct 2017 02:24:22 -0400 Subject: update image magick orientation function --- Emby.Drawing.ImageMagick/ImageMagickEncoder.cs | 2 +- .../TunerHosts/HdHomerun/HdHomerunHttpStream.cs | 66 ++++++++-------------- .../MediaEncoding/EncodingHelper.cs | 2 +- .../Manager/ItemImageProvider.cs | 24 +++----- 4 files changed, 35 insertions(+), 59 deletions(-) (limited to 'MediaBrowser.Controller/MediaEncoding') diff --git a/Emby.Drawing.ImageMagick/ImageMagickEncoder.cs b/Emby.Drawing.ImageMagick/ImageMagickEncoder.cs index 04f916eb1..38e2879ea 100644 --- a/Emby.Drawing.ImageMagick/ImageMagickEncoder.cs +++ b/Emby.Drawing.ImageMagick/ImageMagickEncoder.cs @@ -149,7 +149,7 @@ namespace Emby.Drawing.ImageMagick var originalImageSize = new ImageSize(originalImage.CurrentImage.Width, originalImage.CurrentImage.Height); - if (!options.CropWhiteSpace && options.HasDefaultOptions(inputPath, originalImageSize)) + if (!options.CropWhiteSpace && options.HasDefaultOptions(inputPath, originalImageSize) && !autoOrient) { // Just spit out the original file if all the options are default return inputPath; diff --git a/Emby.Server.Implementations/LiveTv/TunerHosts/HdHomerun/HdHomerunHttpStream.cs b/Emby.Server.Implementations/LiveTv/TunerHosts/HdHomerun/HdHomerunHttpStream.cs index 604aa74f0..5e3923972 100644 --- a/Emby.Server.Implementations/LiveTv/TunerHosts/HdHomerun/HdHomerunHttpStream.cs +++ b/Emby.Server.Implementations/LiveTv/TunerHosts/HdHomerun/HdHomerunHttpStream.cs @@ -33,7 +33,7 @@ namespace Emby.Server.Implementations.LiveTv.TunerHosts.HdHomerun OriginalStreamId = originalStreamId; } - protected override Task OpenInternal(CancellationToken openCancellationToken) + protected override Task OpenInternal(CancellationToken openCancellationToken) { _liveStreamCancellationTokenSource.Token.ThrowIfCancellationRequested(); @@ -77,56 +77,38 @@ namespace Emby.Server.Implementations.LiveTv.TunerHosts.HdHomerun { return Task.Run(async () => { - var isFirstAttempt = true; - - while (!cancellationToken.IsCancellationRequested) + try { - try + using (var response = await _httpClient.SendAsync(new HttpRequestOptions { - using (var response = await _httpClient.SendAsync(new HttpRequestOptions - { - Url = url, - CancellationToken = cancellationToken, - BufferContent = false, + Url = url, + CancellationToken = cancellationToken, + BufferContent = false, - // Increase a little bit - TimeoutMs = 30000, + // Increase a little bit + TimeoutMs = 30000, - EnableHttpCompression = false + EnableHttpCompression = false - }, "GET").ConfigureAwait(false)) - { - Logger.Info("Opened HDHR stream from {0}", url); - - if (!cancellationToken.IsCancellationRequested) - { - Logger.Info("Beginning multicastStream.CopyUntilCancelled"); - - FileSystem.CreateDirectory(FileSystem.GetDirectoryName(TempFilePath)); - using (var fileStream = FileSystem.GetFileStream(TempFilePath, FileOpenMode.Create, FileAccessMode.Write, FileShareMode.Read, FileOpenOptions.None)) - { - StreamHelper.CopyTo(response.Content, fileStream, 81920, () => Resolve(openTaskCompletionSource), cancellationToken); - } - } - } - } - catch (OperationCanceledException) - { - break; - } - catch (Exception ex) + }, "GET").ConfigureAwait(false)) { - if (isFirstAttempt) + Logger.Info("Opened HDHR stream from {0}", url); + + Logger.Info("Beginning multicastStream.CopyUntilCancelled"); + + FileSystem.CreateDirectory(FileSystem.GetDirectoryName(TempFilePath)); + using (var fileStream = FileSystem.GetFileStream(TempFilePath, FileOpenMode.Create, FileAccessMode.Write, FileShareMode.Read, FileOpenOptions.None)) { - Logger.ErrorException("Error opening live stream:", ex); - openTaskCompletionSource.TrySetException(ex); - break; + StreamHelper.CopyTo(response.Content, fileStream, 81920, () => Resolve(openTaskCompletionSource), cancellationToken); } - - Logger.ErrorException("Error copying live stream, will reopen", ex); } - - isFirstAttempt = false; + } + catch (OperationCanceledException) + { + } + catch (Exception ex) + { + Logger.ErrorException("Error copying live stream.", ex); } _liveStreamTaskCompletionSource.TrySetResult(true); diff --git a/MediaBrowser.Controller/MediaEncoding/EncodingHelper.cs b/MediaBrowser.Controller/MediaEncoding/EncodingHelper.cs index 004748a76..e7c768c3b 100644 --- a/MediaBrowser.Controller/MediaEncoding/EncodingHelper.cs +++ b/MediaBrowser.Controller/MediaEncoding/EncodingHelper.cs @@ -1638,7 +1638,7 @@ namespace MediaBrowser.Controller.MediaEncoding if (state.InputProtocol == MediaProtocol.Rtsp) { - inputModifier += " -rtsp_transport tcp"; + inputModifier += " -rtsp_transport tcp -rtsp_transport udp -rtsp_flags prefer_tcp"; } if (!string.IsNullOrEmpty(state.InputAudioSync)) diff --git a/MediaBrowser.Providers/Manager/ItemImageProvider.cs b/MediaBrowser.Providers/Manager/ItemImageProvider.cs index 00fd54271..4419b48cb 100644 --- a/MediaBrowser.Providers/Manager/ItemImageProvider.cs +++ b/MediaBrowser.Providers/Manager/ItemImageProvider.cs @@ -517,21 +517,11 @@ namespace MediaBrowser.Providers.Manager return true; } - if (libraryOptions.DownloadImagesInAdvance) - { - return false; - } - if (item.LocationType == LocationType.Remote || item.LocationType == LocationType.Virtual) { return true; } - if (!item.IsSaveLocalMetadataEnabled()) - { - return true; - } - if (item is IItemByName && !(item is MusicArtist)) { var hasDualAccess = item as IHasDualAccess; @@ -541,13 +531,17 @@ namespace MediaBrowser.Providers.Manager } } - switch (type) + if (libraryOptions.DownloadImagesInAdvance) { - case ImageType.Primary: - return true; - default: - return true; + return false; } + + //if (!item.IsSaveLocalMetadataEnabled()) + //{ + // return true; + //} + + return true; } private void SaveImageStub(IHasMetadata item, ImageType imageType, IEnumerable urls) -- cgit v1.2.3 From bc656edf4ff5cc60b246b6d59f7483610677ce69 Mon Sep 17 00:00:00 2001 From: Luke Pulverenti Date: Fri, 13 Oct 2017 01:44:20 -0400 Subject: update resolved video titles --- .../Emby.Server.Implementations.csproj | 2 -- .../Library/Resolvers/Movies/MovieResolver.cs | 28 ++++++++++++---------- .../Notifications/CoreNotificationTypes.cs | 12 +++++----- MediaBrowser.Api/ItemUpdateService.cs | 20 ++++++++-------- MediaBrowser.Api/LiveTv/LiveTvService.cs | 13 +++++----- MediaBrowser.Controller/LiveTv/ILiveTvManager.cs | 10 -------- .../MediaEncoding/EncodingJobInfo.cs | 5 ---- MediaBrowser.Model/Dto/MediaSourceInfo.cs | 1 - MediaBrowser.Model/LiveTv/LiveTvOptions.cs | 1 - 9 files changed, 38 insertions(+), 54 deletions(-) (limited to 'MediaBrowser.Controller/MediaEncoding') diff --git a/Emby.Server.Implementations/Emby.Server.Implementations.csproj b/Emby.Server.Implementations/Emby.Server.Implementations.csproj index b3fdead84..4f5471bc3 100644 --- a/Emby.Server.Implementations/Emby.Server.Implementations.csproj +++ b/Emby.Server.Implementations/Emby.Server.Implementations.csproj @@ -681,11 +681,9 @@ - - diff --git a/Emby.Server.Implementations/Library/Resolvers/Movies/MovieResolver.cs b/Emby.Server.Implementations/Library/Resolvers/Movies/MovieResolver.cs index 82f42c745..fc5cab0a0 100644 --- a/Emby.Server.Implementations/Library/Resolvers/Movies/MovieResolver.cs +++ b/Emby.Server.Implementations/Library/Resolvers/Movies/MovieResolver.cs @@ -69,13 +69,13 @@ namespace Emby.Server.Implementations.Library.Resolvers.Movies if (string.Equals(collectionType, CollectionType.MusicVideos, StringComparison.OrdinalIgnoreCase)) { - return ResolveVideos(parent, files, directoryService, true, collectionType); + return ResolveVideos(parent, files, directoryService, true, collectionType, false); } if (string.Equals(collectionType, CollectionType.HomeVideos, StringComparison.OrdinalIgnoreCase) || string.Equals(collectionType, CollectionType.Photos, StringComparison.OrdinalIgnoreCase)) { - return ResolveVideos