diff options
| -rw-r--r-- | .github/ISSUE_TEMPLATE/bug_report.md | 12 | ||||
| -rw-r--r-- | .github/ISSUE_TEMPLATE/enhancement-request.md | 8 | ||||
| -rw-r--r-- | .github/ISSUE_TEMPLATE/feature_request.md | 4 | ||||
| -rw-r--r-- | .github/pull_request_template.md | 8 | ||||
| -rw-r--r-- | Jellyfin.Drawing.Skia/Properties/AssemblyInfo.cs | 21 | ||||
| -rw-r--r-- | MediaBrowser.Controller/MediaEncoding/EncodingHelper.cs | 11 | ||||
| -rw-r--r-- | SocketHttpListener/Net/HttpListenerContext.Managed.cs | 4 | ||||
| -rw-r--r-- | SocketHttpListener/Net/HttpListenerContext.cs | 2 | ||||
| -rw-r--r-- | SocketHttpListener/Net/HttpListenerRequest.cs | 2 | ||||
| -rw-r--r-- | SocketHttpListener/Net/HttpListenerResponse.cs | 2 | ||||
| -rw-r--r-- | SocketHttpListener/Net/WebHeaderEncoding.cs | 2 |
11 files changed, 55 insertions, 21 deletions
diff --git a/.github/ISSUE_TEMPLATE/bug_report.md b/.github/ISSUE_TEMPLATE/bug_report.md index 4abd39cfc..137a689e8 100644 --- a/.github/ISSUE_TEMPLATE/bug_report.md +++ b/.github/ISSUE_TEMPLATE/bug_report.md @@ -8,23 +8,23 @@ assignees: '' --- **Describe the bug** -A clear and concise description of what the bug is. +<!-- A clear and concise description of what the bug is. --> **To Reproduce** -Steps to reproduce the behavior: +<!-- Steps to reproduce the behavior: --> 1. Go to '...' 2. Click on '....' 3. Scroll down to '....' 4. See error **Expected behavior** -A clear and concise description of what you expected to happen. +<!-- A clear and concise description of what you expected to happen. --> **Logs** -Please paste any log errors. +<!-- Please paste any log errors. --> **Screenshots** -If applicable, add screenshots to help explain your problem. +<!-- If applicable, add screenshots to help explain your problem. --> **System (please complete the following information):** - OS: [e.g. Docker, Debian, Windows] @@ -32,4 +32,4 @@ If applicable, add screenshots to help explain your problem. - Jellyfin Version: [e.g. 10.0.1] **Additional context** -Add any other context about the problem here. +<!-- Add any other context about the problem here. --> diff --git a/.github/ISSUE_TEMPLATE/enhancement-request.md b/.github/ISSUE_TEMPLATE/enhancement-request.md index 57c0d4cae..a655b60f5 100644 --- a/.github/ISSUE_TEMPLATE/enhancement-request.md +++ b/.github/ISSUE_TEMPLATE/enhancement-request.md @@ -8,13 +8,13 @@ assignees: '' --- **Is your feature request related to a problem? Please describe.** -A clear and concise description of what the problem is. Ex. I'm always frustrated when [...] +<!-- A clear and concise description of what the problem is. Ex. I'm always frustrated when [...] --> **Describe the solution you'd like** -A clear and concise description of what you want to happen. +<!-- A clear and concise description of what you want to happen. --> **Describe alternatives you've considered** -A clear and concise description of any alternative solutions or features you've considered. +<!-- A clear and concise description of any alternative solutions or features you've considered. --> **Additional context** -Add any other context or screenshots about the feature request here. +<!-- Add any other context or screenshots about the feature request here. --> diff --git a/.github/ISSUE_TEMPLATE/feature_request.md b/.github/ISSUE_TEMPLATE/feature_request.md index a2ce07245..3cbc8cbb9 100644 --- a/.github/ISSUE_TEMPLATE/feature_request.md +++ b/.github/ISSUE_TEMPLATE/feature_request.md @@ -8,7 +8,7 @@ assignees: '' --- **Describe the feature you'd like** -A clear and concise description of what you want to happen. +<!-- A clear and concise description of what you want to happen. --> **Additional context** -Add any other context or screenshots about the feature request here. +<!-- Add any other context or screenshots about the feature request here. --> diff --git a/.github/pull_request_template.md b/.github/pull_request_template.md index b2b3cf241..967be0fb7 100644 --- a/.github/pull_request_template.md +++ b/.github/pull_request_template.md @@ -1,9 +1,11 @@ +<!-- Ensure your title is short, descriptive, and in the imperative mood (Fix X, Change Y, instead of Fixed X, Changed Y). For a good inspiration of what to write in commit messages and PRs please review https://chris.beams.io/posts/git-commit/ and our https://jellyfin.readthedocs.io/en/latest/developer-docs/contributing/ page. +--> **Changes** -Describe your changes here in 1-5 sentences. +<!-- Describe your changes here in 1-5 sentences. --> **Issues** -Tag any issues that this PR solves here. -Fixes # +<!-- Tag any issues that this PR solves here. +ex. Fixes # --> diff --git a/Jellyfin.Drawing.Skia/Properties/AssemblyInfo.cs b/Jellyfin.Drawing.Skia/Properties/AssemblyInfo.cs new file mode 100644 index 000000000..ea1c457f6 --- /dev/null +++ b/Jellyfin.Drawing.Skia/Properties/AssemblyInfo.cs @@ -0,0 +1,21 @@ +using System.Reflection; +using System.Resources; +using System.Runtime.InteropServices; + +// General Information about an assembly is controlled through the following +// set of attributes. Change these attribute values to modify the information +// associated with an assembly. +[assembly: AssemblyTitle("Jellyfin.Drawing.Skia")] +[assembly: AssemblyDescription("")] +[assembly: AssemblyConfiguration("")] +[assembly: AssemblyCompany("Jellyfin Project")] +[assembly: AssemblyProduct("Jellyfin: The Free Software Media System")] +[assembly: AssemblyCopyright("Copyright © 2019 Jellyfin Contributors. Code released under the GNU General Public License Version 2")] +[assembly: AssemblyTrademark("")] +[assembly: AssemblyCulture("")] +[assembly: NeutralResourcesLanguage("en")] + +// Setting ComVisible to false makes the types in this assembly not visible +// to COM components. If you need to access a type in this assembly from +// COM, set the ComVisible attribute to true on that type. +[assembly: ComVisible(false)] diff --git a/MediaBrowser.Controller/MediaEncoding/EncodingHelper.cs b/MediaBrowser.Controller/MediaEncoding/EncodingHelper.cs index d8d0a1aa3..968e3dbcb 100644 --- a/MediaBrowser.Controller/MediaEncoding/EncodingHelper.cs +++ b/MediaBrowser.Controller/MediaEncoding/EncodingHelper.cs @@ -1438,6 +1438,11 @@ namespace MediaBrowser.Controller.MediaEncoding if (string.Equals(outputVideoCodec, "h264_vaapi", StringComparison.OrdinalIgnoreCase) && outputSizeParam.Length == 0) { outputSizeParam = ",format=nv12|vaapi,hwupload"; + + // Add parameters to use VAAPI with burn-in subttiles (GH issue #642) + if (state.SubtitleStream != null && state.SubtitleStream.IsTextSubtitleStream && state.SubtitleDeliveryMethod == SubtitleDeliveryMethod.Encode) { + outputSizeParam += ",hwmap=mode=read+write+direct"; + } } var videoSizeParam = string.Empty; @@ -1741,6 +1746,12 @@ namespace MediaBrowser.Controller.MediaEncoding filters.Add(subParam); + // Ensure proper filters are passed to ffmpeg in case of hardware acceleration via VA-API + // Reference: https://trac.ffmpeg.org/wiki/Hardware/VAAPI + if (string.Equals(outputVideoCodec, "h264_vaapi", StringComparison.OrdinalIgnoreCase)) + { + filters.Add("hwmap"); + } if (allowTimeStampCopy) { output += " -copyts"; diff --git a/SocketHttpListener/Net/HttpListenerContext.Managed.cs b/SocketHttpListener/Net/HttpListenerContext.Managed.cs index 29b0a7ae2..79742bf37 100644 --- a/SocketHttpListener/Net/HttpListenerContext.Managed.cs +++ b/SocketHttpListener/Net/HttpListenerContext.Managed.cs @@ -1,4 +1,4 @@ -using System; +using System; using System.ComponentModel; using System.Security.Principal; using System.Text; @@ -7,7 +7,7 @@ using SocketHttpListener.Net.WebSockets; namespace SocketHttpListener.Net { - public sealed unsafe partial class HttpListenerContext + public sealed partial class HttpListenerContext { private HttpConnection _connection; diff --git a/SocketHttpListener/Net/HttpListenerContext.cs b/SocketHttpListener/Net/HttpListenerContext.cs index 8045299c6..d84e2d1aa 100644 --- a/SocketHttpListener/Net/HttpListenerContext.cs +++ b/SocketHttpListener/Net/HttpListenerContext.cs @@ -6,7 +6,7 @@ using SocketHttpListener.Net.WebSockets; namespace SocketHttpListener.Net { - public sealed unsafe partial class HttpListenerContext + public sealed partial class HttpListenerContext { private HttpListenerResponse _response; private IPrincipal _user; diff --git a/SocketHttpListener/Net/HttpListenerRequest.cs b/SocketHttpListener/Net/HttpListenerRequest.cs index 4924a7fa8..faeca78b2 100644 --- a/SocketHttpListener/Net/HttpListenerRequest.cs +++ b/SocketHttpListener/Net/HttpListenerRequest.cs @@ -8,7 +8,7 @@ using SocketHttpListener.Net.WebSockets; namespace SocketHttpListener.Net { - public sealed unsafe partial class HttpListenerRequest + public sealed partial class HttpListenerRequest { private CookieCollection _cookies; private bool? _keepAlive; diff --git a/SocketHttpListener/Net/HttpListenerResponse.cs b/SocketHttpListener/Net/HttpListenerResponse.cs index a32aca043..66ef88564 100644 --- a/SocketHttpListener/Net/HttpListenerResponse.cs +++ b/SocketHttpListener/Net/HttpListenerResponse.cs @@ -5,7 +5,7 @@ using System.Text; namespace SocketHttpListener.Net { - public sealed unsafe partial class HttpListenerResponse : IDisposable + public sealed partial class HttpListenerResponse : IDisposable { private BoundaryType _boundaryType = BoundaryType.None; private CookieCollection _cookies; diff --git a/SocketHttpListener/Net/WebHeaderEncoding.cs b/SocketHttpListener/Net/WebHeaderEncoding.cs index b65ff3c0d..96e0cc85d 100644 --- a/SocketHttpListener/Net/WebHeaderEncoding.cs +++ b/SocketHttpListener/Net/WebHeaderEncoding.cs @@ -71,7 +71,7 @@ namespace SocketHttpListener.Net } } } - internal static unsafe byte[] GetBytes(string myString) + internal static byte[] GetBytes(string myString) { byte[] bytes = new byte[myString.Length]; if (myString.Length != 0) |
