mirror of
https://github.com/jellyfin/jellyfin.git
synced 2024-09-05 21:37:10 -04:00
commit
5b4cb77858
@ -114,6 +114,12 @@ namespace MediaBrowser.MediaEncoding.Probing
|
||||
/// <value>The width.</value>
|
||||
public int width { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Gets or sets the refs.
|
||||
/// </summary>
|
||||
/// <value>The refs.</value>
|
||||
public int refs { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Gets or sets the height.
|
||||
/// </summary>
|
||||
|
@ -189,6 +189,11 @@ namespace MediaBrowser.MediaEncoding.Probing
|
||||
|
||||
// http://stackoverflow.com/questions/17353387/how-to-detect-anamorphic-video-with-ffprobe
|
||||
stream.IsAnamorphic = string.Equals(streamInfo.sample_aspect_ratio, "0:1", StringComparison.OrdinalIgnoreCase);
|
||||
|
||||
if (streamInfo.refs > 0)
|
||||
{
|
||||
stream.RefFrames = streamInfo.refs;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
@ -927,25 +932,26 @@ namespace MediaBrowser.MediaEncoding.Probing
|
||||
|
||||
private void UpdateFromMediaInfo(MediaSourceInfo video, MediaStream videoStream)
|
||||
{
|
||||
if (video.Protocol == MediaProtocol.File)
|
||||
if (video.Protocol == MediaProtocol.File && videoStream != null)
|
||||
{
|
||||
if (videoStream != null)
|
||||
try
|
||||
{
|
||||
try
|
||||
{
|
||||
_logger.Debug("Running MediaInfo against {0}", video.Path);
|
||||
_logger.Debug("Running MediaInfo against {0}", video.Path);
|
||||
|
||||
var result = new MediaInfoLib().GetVideoInfo(video.Path);
|
||||
var result = new MediaInfoLib().GetVideoInfo(video.Path);
|
||||
|
||||
videoStream.IsCabac = result.IsCabac ?? videoStream.IsCabac;
|
||||
videoStream.IsInterlaced = result.IsInterlaced ?? videoStream.IsInterlaced;
|
||||
videoStream.BitDepth = result.BitDepth ?? videoStream.BitDepth;
|
||||
videoStream.RefFrames = result.RefFrames;
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
_logger.ErrorException("Error running MediaInfo on {0}", ex, video.Path);
|
||||
}
|
||||
videoStream.IsCabac = result.IsCabac ?? videoStream.IsCabac;
|
||||
videoStream.IsInterlaced = result.IsInterlaced ?? videoStream.IsInterlaced;
|
||||
videoStream.BitDepth = result.BitDepth ?? videoStream.BitDepth;
|
||||
videoStream.RefFrames = result.RefFrames ?? videoStream.RefFrames;
|
||||
}
|
||||
catch (TypeLoadException)
|
||||
{
|
||||
// This is non-essential. Don't spam the log
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
_logger.ErrorException("Error running MediaInfo on {0}", ex, video.Path);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -92,6 +92,7 @@ namespace MediaBrowser.Server.Mac
|
||||
ServicePointManager.ServerCertificateValidationCallback = new RemoteCertificateValidationCallback(delegate { return true; });
|
||||
|
||||
var fileSystem = new ManagedFileSystem(new PatternsLogger(logManager.GetLogger("FileSystem")), false, true);
|
||||
fileSystem.AddShortcutHandler(new MbLinkShortcutHandler(fileSystem));
|
||||
|
||||
var nativeApp = new NativeApp();
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user