mirror of
https://github.com/jellyfin/jellyfin.git
synced 2025-07-08 02:34:19 -04:00
commit
dbceef97fd
@ -10,7 +10,7 @@
|
|||||||
- [Bond_009](https://github.com/Bond-009)
|
- [Bond_009](https://github.com/Bond-009)
|
||||||
- [AnthonyLavado](https://github.com/anthonylavado)
|
- [AnthonyLavado](https://github.com/anthonylavado)
|
||||||
- [sparky8251](https://github.com/sparky8251)
|
- [sparky8251](https://github.com/sparky8251)
|
||||||
- [LeoVerto](https://github.com/LeoVerto]
|
- [LeoVerto](https://github.com/LeoVerto)
|
||||||
|
|
||||||
# Emby Contributors
|
# Emby Contributors
|
||||||
|
|
||||||
|
@ -121,7 +121,7 @@ namespace Emby.Drawing.Common
|
|||||||
/// </summary>
|
/// </summary>
|
||||||
/// <param name="binaryReader">The binary reader.</param>
|
/// <param name="binaryReader">The binary reader.</param>
|
||||||
/// <returns>System.Int16.</returns>
|
/// <returns>System.Int16.</returns>
|
||||||
private static short ReadLittleEndianInt16(BinaryReader binaryReader)
|
private static short ReadLittleEndianInt16(this BinaryReader binaryReader)
|
||||||
{
|
{
|
||||||
var bytes = new byte[sizeof(short)];
|
var bytes = new byte[sizeof(short)];
|
||||||
|
|
||||||
@ -137,7 +137,7 @@ namespace Emby.Drawing.Common
|
|||||||
/// </summary>
|
/// </summary>
|
||||||
/// <param name="binaryReader">The binary reader.</param>
|
/// <param name="binaryReader">The binary reader.</param>
|
||||||
/// <returns>System.Int32.</returns>
|
/// <returns>System.Int32.</returns>
|
||||||
private static int ReadLittleEndianInt32(BinaryReader binaryReader)
|
private static int ReadLittleEndianInt32(this BinaryReader binaryReader)
|
||||||
{
|
{
|
||||||
var bytes = new byte[sizeof(int)];
|
var bytes = new byte[sizeof(int)];
|
||||||
for (int i = 0; i < sizeof(int); i += 1)
|
for (int i = 0; i < sizeof(int); i += 1)
|
||||||
@ -205,25 +205,30 @@ namespace Emby.Drawing.Common
|
|||||||
/// <exception cref="System.ArgumentException"></exception>
|
/// <exception cref="System.ArgumentException"></exception>
|
||||||
private static ImageSize DecodeJfif(BinaryReader binaryReader)
|
private static ImageSize DecodeJfif(BinaryReader binaryReader)
|
||||||
{
|
{
|
||||||
|
// A JPEG image consists of a sequence of segments,
|
||||||
|
// each beginning with a marker, each of which begins with a 0xFF byte
|
||||||
|
// followed by a byte indicating what kind of marker it is.
|
||||||
|
// Source: https://en.wikipedia.org/wiki/JPEG#Syntax_and_structure
|
||||||
while (binaryReader.ReadByte() == 0xff)
|
while (binaryReader.ReadByte() == 0xff)
|
||||||
{
|
{
|
||||||
byte marker = binaryReader.ReadByte();
|
byte marker = binaryReader.ReadByte();
|
||||||
short chunkLength = ReadLittleEndianInt16(binaryReader);
|
short chunkLength = binaryReader.ReadLittleEndianInt16();
|
||||||
if (marker == 0xc0)
|
// SOF0: Indicates that this is a baseline DCT-based JPEG,
|
||||||
|
// and specifies the width, height, number of components, and component subsampling
|
||||||
|
// SOF2: Indicates that this is a progressive DCT-based JPEG,
|
||||||
|
// and specifies the width, height, number of components, and component subsampling
|
||||||
|
if (marker == 0xc0 || marker == 0xc2)
|
||||||
{
|
{
|
||||||
binaryReader.ReadByte();
|
// https://help.accusoft.com/ImageGear/v18.2/Windows/ActiveX/IGAX-10-12.html
|
||||||
int height = ReadLittleEndianInt16(binaryReader);
|
binaryReader.ReadByte(); // We don't care about the first byte
|
||||||
int width = ReadLittleEndianInt16(binaryReader);
|
int height = binaryReader.ReadLittleEndianInt16();
|
||||||
return new ImageSize
|
int width = binaryReader.ReadLittleEndianInt16();
|
||||||
{
|
return new ImageSize(width, height);
|
||||||
Width = width,
|
|
||||||
Height = height
|
|
||||||
};
|
|
||||||
}
|
}
|
||||||
|
|
||||||
if (chunkLength < 0)
|
if (chunkLength < 0)
|
||||||
{
|
{
|
||||||
var uchunkLength = (ushort)chunkLength;
|
ushort uchunkLength = (ushort)chunkLength;
|
||||||
binaryReader.ReadBytes(uchunkLength - 2);
|
binaryReader.ReadBytes(uchunkLength - 2);
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
|
@ -45,7 +45,6 @@
|
|||||||
<EmbeddedResource Include="TextEncoding\NLangDetect\Profiles\*" />
|
<EmbeddedResource Include="TextEncoding\NLangDetect\Profiles\*" />
|
||||||
<EmbeddedResource Include="TextEncoding\NLangDetect\Utils\messages.properties" />
|
<EmbeddedResource Include="TextEncoding\NLangDetect\Utils\messages.properties" />
|
||||||
<EmbeddedResource Include="Localization\Ratings\*.txt" />
|
<EmbeddedResource Include="Localization\Ratings\*.txt" />
|
||||||
<EmbeddedResource Include="values.txt" />
|
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
|
|
||||||
</Project>
|
</Project>
|
||||||
|
@ -1056,7 +1056,7 @@ namespace Emby.Server.Implementations.LiveTv
|
|||||||
var numComplete = 0;
|
var numComplete = 0;
|
||||||
double progressPerService = _services.Length == 0
|
double progressPerService = _services.Length == 0
|
||||||
? 0
|
? 0
|
||||||
: 1 / _services.Length;
|
: 1.0 / _services.Length;
|
||||||
|
|
||||||
var newChannelIdList = new List<Guid>();
|
var newChannelIdList = new List<Guid>();
|
||||||
var newProgramIdList = new List<Guid>();
|
var newProgramIdList = new List<Guid>();
|
||||||
@ -1262,7 +1262,7 @@ namespace Emby.Server.Implementations.LiveTv
|
|||||||
}
|
}
|
||||||
|
|
||||||
numComplete++;
|
numComplete++;
|
||||||
double percent = numComplete / allChannelsList.Count;
|
double percent = numComplete / (double) allChannelsList.Count;
|
||||||
|
|
||||||
progress.Report(85 * percent + 15);
|
progress.Report(85 * percent + 15);
|
||||||
}
|
}
|
||||||
@ -1307,7 +1307,7 @@ namespace Emby.Server.Implementations.LiveTv
|
|||||||
}
|
}
|
||||||
|
|
||||||
numComplete++;
|
numComplete++;
|
||||||
double percent = numComplete / list.Count;
|
double percent = numComplete / (double) list.Count;
|
||||||
|
|
||||||
progress.Report(100 * percent);
|
progress.Report(100 * percent);
|
||||||
}
|
}
|
||||||
|
@ -65,7 +65,7 @@ namespace Emby.Server.Implementations.ScheduledTasks.Tasks
|
|||||||
|
|
||||||
foreach (var file in filesToDelete)
|
foreach (var file in filesToDelete)
|
||||||
{
|
{
|
||||||
double percent = index / filesToDelete.Count;
|
double percent = index / (double) filesToDelete.Count;
|
||||||
|
|
||||||
progress.Report(100 * percent);
|
progress.Report(100 * percent);
|
||||||
|
|
||||||
|
@ -1,5 +1,10 @@
|
|||||||
<Project Sdk="Microsoft.NET.Sdk">
|
<Project Sdk="Microsoft.NET.Sdk">
|
||||||
|
|
||||||
|
<PropertyGroup>
|
||||||
|
<Authors>Jellyfin Contributors</Authors>
|
||||||
|
<PackageId>Jellyfin.Common</PackageId>
|
||||||
|
</PropertyGroup>
|
||||||
|
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<ProjectReference Include="..\MediaBrowser.Model\MediaBrowser.Model.csproj" />
|
<ProjectReference Include="..\MediaBrowser.Model\MediaBrowser.Model.csproj" />
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
|
@ -64,7 +64,7 @@ namespace MediaBrowser.Controller.Entities.Movies
|
|||||||
}
|
}
|
||||||
|
|
||||||
public override double GetDefaultPrimaryImageAspectRatio()
|
public override double GetDefaultPrimaryImageAspectRatio()
|
||||||
=> 2 / 3;
|
=> 2.0 / 3;
|
||||||
|
|
||||||
public override UnratedItem GetBlockUnratedType()
|
public override UnratedItem GetBlockUnratedType()
|
||||||
{
|
{
|
||||||
|
@ -51,7 +51,7 @@ namespace MediaBrowser.Controller.Entities.Movies
|
|||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
return 2 / 3;
|
return 2.0 / 3;
|
||||||
}
|
}
|
||||||
|
|
||||||
protected override async Task<bool> RefreshedOwnedItems(MetadataRefreshOptions options, List<FileSystemMetadata> fileSystemChildren, CancellationToken cancellationToken)
|
protected override async Task<bool> RefreshedOwnedItems(MetadataRefreshOptions options, List<FileSystemMetadata> fileSystemChildren, CancellationToken cancellationToken)
|
||||||
|
@ -111,7 +111,7 @@ namespace MediaBrowser.Controller.Entities.TV
|
|||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
return 16 / 9;
|
return 16.0 / 9;
|
||||||
}
|
}
|
||||||
|
|
||||||
public override List<string> GetUserDataKeys()
|
public override List<string> GetUserDataKeys()
|
||||||
|
@ -21,7 +21,7 @@ namespace MediaBrowser.Controller.Entities
|
|||||||
public TrailerType[] TrailerTypes { get; set; }
|
public TrailerType[] TrailerTypes { get; set; }
|
||||||
|
|
||||||
public override double GetDefaultPrimaryImageAspectRatio()
|
public override double GetDefaultPrimaryImageAspectRatio()
|
||||||
=> 2 / 3;
|
=> 2.0 / 3;
|
||||||
|
|
||||||
public override UnratedItem GetBlockUnratedType()
|
public override UnratedItem GetBlockUnratedType()
|
||||||
{
|
{
|
||||||
|
@ -54,11 +54,11 @@ namespace MediaBrowser.Controller.LiveTv
|
|||||||
|
|
||||||
if (string.Equals(serviceName, EmbyServiceName, StringComparison.OrdinalIgnoreCase) || string.Equals(serviceName, "Next Pvr", StringComparison.OrdinalIgnoreCase))
|
if (string.Equals(serviceName, EmbyServiceName, StringComparison.OrdinalIgnoreCase) || string.Equals(serviceName, "Next Pvr", StringComparison.OrdinalIgnoreCase))
|
||||||
{
|
{
|
||||||
return 2 / 3;
|
return 2.0 / 3;
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
return 16 / 9;
|
return 16.0 / 9;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1,5 +1,10 @@
|
|||||||
<Project Sdk="Microsoft.NET.Sdk">
|
<Project Sdk="Microsoft.NET.Sdk">
|
||||||
|
|
||||||
|
<PropertyGroup>
|
||||||
|
<Authors>Jellyfin Contributors</Authors>
|
||||||
|
<PackageId>Jellyfin.Controller</PackageId>
|
||||||
|
</PropertyGroup>
|
||||||
|
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<ProjectReference Include="..\MediaBrowser.Model\MediaBrowser.Model.csproj" />
|
<ProjectReference Include="..\MediaBrowser.Model\MediaBrowser.Model.csproj" />
|
||||||
<ProjectReference Include="..\MediaBrowser.Common\MediaBrowser.Common.csproj" />
|
<ProjectReference Include="..\MediaBrowser.Common\MediaBrowser.Common.csproj" />
|
||||||
|
@ -1,5 +1,10 @@
|
|||||||
<Project Sdk="Microsoft.NET.Sdk">
|
<Project Sdk="Microsoft.NET.Sdk">
|
||||||
|
|
||||||
|
<PropertyGroup>
|
||||||
|
<Authors>Jellyfin Contributors</Authors>
|
||||||
|
<PackageId>Jellyfin.Model</PackageId>
|
||||||
|
</PropertyGroup>
|
||||||
|
|
||||||
<PropertyGroup>
|
<PropertyGroup>
|
||||||
<TargetFramework>netstandard2.0</TargetFramework>
|
<TargetFramework>netstandard2.0</TargetFramework>
|
||||||
<GenerateAssemblyInfo>false</GenerateAssemblyInfo>
|
<GenerateAssemblyInfo>false</GenerateAssemblyInfo>
|
||||||
|
@ -183,6 +183,10 @@ namespace MediaBrowser.Model.Net
|
|||||||
{
|
{
|
||||||
return "text/plain";
|
return "text/plain";
|
||||||
}
|
}
|
||||||
|
if (StringHelper.EqualsIgnoreCase(ext, ".log"))
|
||||||
|
{
|
||||||
|
return "text/plain";
|
||||||
|
}
|
||||||
if (StringHelper.EqualsIgnoreCase(ext, ".xml"))
|
if (StringHelper.EqualsIgnoreCase(ext, ".xml"))
|
||||||
{
|
{
|
||||||
return "application/xml";
|
return "application/xml";
|
||||||
|
@ -1,3 +1,3 @@
|
|||||||
using System.Reflection;
|
using System.Reflection;
|
||||||
|
|
||||||
[assembly: AssemblyVersion("10.0.0")]
|
[assembly: AssemblyVersion("10.0.1")]
|
||||||
|
13
debian/changelog
vendored
13
debian/changelog
vendored
@ -1,3 +1,16 @@
|
|||||||
|
jellyfin (10.0.1-1) unstable; urgency=medium
|
||||||
|
|
||||||
|
* Hotfix release, corrects several small bugs from 10.0.0
|
||||||
|
* #512: Fix CONTRIBUTORS.md formatting
|
||||||
|
* #501: Fix regression in integer divisions in latest movies category
|
||||||
|
* #498: Change contributing link in settings to readthedocs.io
|
||||||
|
* #493: Remove unused values.txt resource
|
||||||
|
* #491: Fix userprofile.js crash
|
||||||
|
* #519: Fix the DecodeJfif function to get proper image sizes
|
||||||
|
* #486: Add NuGet package info to plugin projects
|
||||||
|
|
||||||
|
-- Joshua Boniface <joshua@boniface.me> Tue, 08 Jan 2019 20:06:01 -0500
|
||||||
|
|
||||||
jellyfin (10.0.0-1) unstable; urgency=medium
|
jellyfin (10.0.0-1) unstable; urgency=medium
|
||||||
|
|
||||||
* The first Jellyfin release under our new versioning scheme
|
* The first Jellyfin release under our new versioning scheme
|
||||||
|
Loading…
x
Reference in New Issue
Block a user