Commit graph

973 commits

Author SHA1 Message Date
nyanmisaka 3e9cf98c30 add hdr tone mapping to image extraction 2020-11-29 13:22:42 +08:00
nyanmisaka c2c06ae15b fix image extraction 2020-11-29 13:20:55 +08:00
nyanmisaka bb16174936 increase the default image extraction timeout 2020-11-29 13:12:41 +08:00
Nyanmisaka 0c6efe6317
Apply suggestions from code review
Co-authored-by: Claus Vium <cvium@users.noreply.github.com>
2020-11-28 22:32:54 +08:00
Nyanmisaka d72f3498bf
fix ci 2020-11-28 21:27:55 +08:00
Nyanmisaka 53c91c2c14
Apply suggestions from code review
Co-authored-by: BaronGreenback <jimcartlidge@yahoo.co.uk>
2020-11-28 21:14:55 +08:00
nyanmisaka d19edefbcd fix image extraction 2020-11-28 20:55:56 +08:00
Joshua M. Boniface f39e55e2e5
Merge pull request #4548 from orryverducci/mkv-interlaced-fix
Revert "Fix frame rate probing for interlaced MKV files"
2020-11-22 13:06:10 -05:00
Orry Verducci 812300ad33 Revert "Fix frame rate probing for interlaced MKV files"
This reverts commit 84fd5a0953.
2020-11-22 16:54:41 +00:00
nyanmisaka b4598bd71b Merge remote-tracking branch 'upstream/master' into fmp4-hls 2020-11-20 10:01:17 +08:00
Fernando Fernández e21e00cad5 Merge remote-tracking branch 'upstream/master' into no-scaling 2020-11-19 23:18:25 +01:00
Nyanmisaka 5ff08338d5
Apply suggestions from code review
Co-authored-by: Claus Vium <cvium@users.noreply.github.com>
2020-11-19 15:02:36 +00:00
Greenback 9a323f6df0 More spelling corrections. 2020-11-18 13:46:14 +00:00
Fernando Fernández 38c3b6fcd3 Fix build and thread detection logic 2020-11-18 10:20:59 +01:00
Bond_009 4b1c9dc9ea Pass cancellation where possible 2020-11-17 19:43:00 +01:00
Fernando Fernández 94cae4f145 Specify threads to ffmpeg properly 2020-11-17 16:44:04 +01:00
Joshua M. Boniface e0f60847c0
Merge pull request #4361 from ssenart/feature/4360-transcoding_flac_downsampling
Add FLAC and define the corresponding target sample rate
2020-11-17 10:29:29 -05:00
Fernando Fernández a6ad36b57a Don't scale images extracted by ffmpeg 2020-11-17 14:20:18 +01:00
nyanmisaka 488dbdb31d Merge remote-tracking branch 'upstream/master' into fmp4-hls 2020-11-16 12:36:55 +08:00
crobibero dae4541bad Merge remote-tracking branch 'upstream/master' into dotnet-5 2020-11-15 11:56:35 -07:00
Bond_009 ff49a3bb61
Missed some stuff 2020-11-14 20:28:15 +01:00
crobibero 01355e0498 Fix nullability errors in Jellyfin.Api (part 1) 2020-11-13 09:04:31 -07:00
crobibero e82829c444 Fix nullability errors in MediaBrowser.MediaEncoding 2020-11-13 09:01:55 -07:00
nyanmisaka 6987cb8357 fix ci 2020-11-11 17:25:14 +08:00
nyanmisaka 57e5b59b93 adjust bitrate limit for HLS audio codecs 2020-11-11 17:10:08 +08:00
crobibero 83629ab6f2 Update packages to net5 2020-11-10 09:52:34 -07:00
Stan 3bb8884e16
Merge branch 'master' into bdiso-playback 2020-10-28 13:18:05 +01:00
Orry Verducci 84fd5a0953 Fix frame rate probing for interlaced MKV files 2020-10-25 16:35:03 +00:00
Stéphane Senart 28ee4f0a7f [AudioTranscoding] Add FLAC as supported target audio format and be able to define the corresponding target sample rate 2020-10-22 11:09:59 +02:00
Stanislav Ionascu cd4641dca0 Remove PlayableStreamFileNames as unused
Since ffmpeg can play and transcode ISO files and BDMV folders directly,
there's no use of that property.
2020-10-01 22:20:34 +02:00
Stanislav Ionascu 3ad6232973 Add probe / direct-stream / transcoding support for BluRays
This commit (and ffmpeg built with libbluray support), adds support
for playback of bluray images (bd-iso) and bluray folders.
2020-10-01 21:59:57 +02:00
BaronGreenback 5464eaed4a
Update EncoderValidator.cs 2020-09-19 16:40:39 +01:00
crobibero 2a8653b309 Merge remote-tracking branch 'upstream/master' into http-client-migrate 2020-09-04 08:16:49 -06:00
Nyanmisaka 4cb0a57e46
Merge branch 'master' into tonemap 2020-09-04 02:55:57 +08:00
crobibero 30ba35a33b Use HttpClientFactory in SubtitleEncoder 2020-08-31 11:07:40 -06:00
crobibero 8b96881aa1 Clean up json Converters 2020-08-26 08:22:48 -06:00
Bond_009 119f64f5e7 Make some methods async 2020-08-21 22:01:19 +02:00
Anthony Lavado 72115c91e0
Merge pull request #3943 from Bond-009/ffmpeg
Simplify FFmpeg detection code
2020-08-21 15:04:58 -04:00
Bond-009 6292a9e4e9
Merge branch 'master' into warn24 2020-08-20 18:50:15 +02:00
Bond_009 301e029d42 Add unsupported ffmpeg version to tests 2020-08-20 17:45:40 +02:00
Bond_009 cb5cb075a9 Simplify FFmpeg detection code 2020-08-20 17:16:09 +02:00
Bond-009 5160e627f1
Merge branch 'master' into feature/ffmpeg-version-check 2020-08-20 16:40:03 +02:00
Bond_009 ab2147751f Make MediaBrowser.MediaEncoding warnings free 2020-08-20 12:16:24 +02:00
Bond_009 2b400c99ef Fix warnings 2020-08-19 17:50:50 +02:00
Bond-009 d9f6953416 Minor fixes 2020-08-04 17:14:07 +02:00
Bond-009 53f99d5d4b Add some analyzers to MediaBrowser.MediaEncoding 2020-08-04 17:08:09 +02:00
Bond-009 18efa25a6f Enable TreatWarningsAsErrors for MediaBrowser.MediaEncoding 2020-08-04 16:20:52 +02:00
Nyanmisaka c23d991c95
Merge branch 'master' into tonemap 2020-08-03 14:58:44 +08:00
Bond_009 d4092846e4 Optimize Substring and StringBuilder usage 2020-07-29 13:17:01 +02:00
Nyanmisaka df6b303da7
Merge branch 'master' into tonemap 2020-07-27 13:57:40 +08:00
Odd Stråbø 591fcf7ff2 Fix formating 2020-07-25 13:41:04 +02:00
Odd Stråbø 27709c9bb3 Fix embedded subtitles 2020-07-25 12:44:31 +02:00
nyanmisaka 4bdb870d16 Merge remote-tracking branch 'upstream/master' into tonemap 2020-07-25 00:58:14 +08:00
nyanmisaka 7b862bba5a add Tonemapping relaying on nvdec and ocl 2020-07-25 00:57:34 +08:00
Bond-009 3ff110984a
Merge branch 'master' into readonlyspan 2020-07-24 09:40:44 +02:00
Anthony Lavado 0cb2cd9456
Merge pull request #3576 from HelloWorld017/fix/sami-utf16
Fix SAMI UTF-16 Encoding Bug
2020-07-23 17:48:04 -07:00
Joshua M. Boniface 6f2b23b3df
Merge pull request #3613 from Bond-009/regex
Replace \d with [0-9] in ffmpeg detection and scan code
2020-07-23 18:07:01 -04:00
Bond-009 323fc576a5
Merge pull request #3521 from sachk/master
Fix support for mixed-protocol subtitles
2020-07-23 14:22:41 +02:00
Bond_009 febb6bced6 Review usage of string.Substring (part 1)
Reduced allocations by replacing string.Substring with ReadOnlySpan<char>.Slice
2020-07-22 13:39:24 +02:00
Bond_009 e98351b912 Replace \d with [0-9] in ffmpeg detection and scan code 2020-07-20 14:14:15 +02:00
Khinenw 6e069f925b Fix SAMI UTF-16 Encoding Bug 2020-07-18 04:53:05 +00:00
dkanada 87d7c4a62e
Merge pull request #3500 from nyanmisaka/vpp-qsv
Add FFmpeg 4.3 detection and solve the green line on QSV HWA
2020-07-14 20:31:13 +09:00
Sacha Korban 29c4220227 Fix support for mixed-protocol external subtitles 2020-07-07 19:54:11 +10:00
Patrick Barron 6d1b00da64 Use Array.Empty 2020-07-04 11:54:25 -04:00
nyanmisaka f5c5352861 add FFmpeg 4.3 detection and tests 2020-07-04 19:14:49 +08:00
Max Git 3588ee5229 Merge branch 'master' into feature/ffmpeg-version-check 2020-07-02 23:50:13 +02:00
Neil Burrows 6b532b3da5
User string.Empty instead of ""
Co-authored-by: Patrick Barron <18354464+barronpm@users.noreply.github.com>
2020-06-29 20:52:20 +01:00
Neil Burrows 4389773508 Respect FFMpeg path passed via Environment Variable 2020-06-29 17:17:28 +01:00
Max Git c35c401d65 Merge branch 'master' into feature/ffmpeg-version-check 2020-06-23 09:20:50 +02:00
telans 6556bec646
brace multiline if statements (cont.) 2020-06-20 21:19:16 +12:00
telans 5bb639a59a
newlines after braces 2020-06-20 21:13:48 +12:00
telans 7f307f9082
brace multiline if statements 2020-06-20 21:12:36 +12:00
telans 98db8f72e0
fix SA1503 for one line if statements 2020-06-20 20:35:29 +12:00
telans 8de6452967
fix some documentation periods 2020-06-20 18:13:11 +12:00
Max Git 33f78df051 Merge branch 'master' into feature/ffmpeg-version-check 2020-06-17 02:52:38 +02:00
Bond-009 9af6eda0b4
Merge pull request #3343 from telans/comment-stops
Add full stop at end of comments (SA1629)
2020-06-16 11:54:58 +02:00
telans 247f9c61e6
fix SA1513/SA1516 2020-06-16 16:11:30 +12:00
Max Git e6c197b969 Cleanup 2020-06-16 01:09:41 +02:00
telans 9018f8d8be
Add full stop at end of comments (SA1629) 2020-06-16 10:37:52 +12:00
Max Git ef3200e178 Remove redundant cast 2020-06-15 19:50:09 +02:00
Max Git 11f3a0dc58 Use Version instead of double. Use correct version number for libavdevice. 2020-06-15 15:10:59 +02:00
dkanada dabb869a6b
Merge branch 'master' into hwaccel 2020-06-15 20:21:25 +09:00
Max Git 37e737e012 Merge from master & fix conflict 2020-06-15 12:12:03 +02:00
telans 3d9049ef08
fix SA1508 2020-06-15 10:45:55 +12:00
telans acd4389653
fix SA1005 2020-06-15 10:41:00 +12:00
dkanada 403cd3205f
Merge pull request #3254 from crobibero/ilogger
Use typed logger where possible
2020-06-13 00:29:43 +09:00
Max Git 0f69ca8fa9 Merge branch 'master' into feature/ffmpeg-version-check 2020-06-11 20:47:12 +02:00
Max Git 620a1a106d Merge branch 'master' into feature/ffmpeg-version-check 2020-06-11 14:50:29 +02:00
dependabot[bot] 33f70bd5f0
Bump System.Text.Encoding.CodePages from 4.7.0 to 4.7.1
Bumps [System.Text.Encoding.CodePages](https://github.com/dotnet/corefx) from 4.7.0 to 4.7.1.
- [Release notes](https://github.com/dotnet/corefx/releases)
- [Commits](https://github.com/dotnet/corefx/commits)

Signed-off-by: dependabot[bot] <support@github.com>
2020-06-11 10:30:11 +00:00
artiume 0476acf5d5 Update EncoderValidator.cs 2020-06-08 14:45:26 +03:00
Vasily 4999831604 Merge remote-tracking branch 'upstream/master' into hwaccel 2020-06-08 14:44:21 +03:00
aled 22a860a806 Fix a small number of compile warnings 2020-06-06 20:17:49 +01:00
crobibero 44957c5a9a Use typed logger where possible 2020-06-05 18:15:56 -06:00
Max Git 5df00cb2b8 Merge branch 'master' into feature/ffmpeg-version-check 2020-06-03 12:26:50 +02:00
rotvel 480fd0a66a
Update MediaBrowser.MediaEncoding/Encoder/EncoderValidator.cs
Co-authored-by: Cody Robibero <cody@robibe.ro>
2020-06-01 16:00:58 +02:00
Max Git e103d087d3 Try harder at detecting FFmpeg version and enable the validation 2020-06-01 07:10:15 +02:00
Vasily aa17a53e83 Skip only line saying "Hardware acceleration methods:" instead of some random one 2020-05-26 19:05:44 +03:00
Vasily 628734931c Fix missing commas and merge defects 2020-05-26 18:49:15 +03:00
artiume 3c82379759 Update EncoderValidator.cs 2020-05-26 18:29:58 +03:00
artiume 407de0209e Update MediaEncoder.cs 2020-05-26 18:29:58 +03:00
artiume 1ff95289ef Update EncoderValidator.cs 2020-05-26 18:29:58 +03:00
nyanmisaka b4b93995f7 add more separate hw decoding toggles 2020-05-26 18:06:49 +03:00
Bond_009 10e381f66f Fix some 'bugs' flagged by sonarcloud 2020-05-25 23:52:51 +02:00
dkanada 4b4b50f3ee
Merge pull request #3115 from MrTimscampi/ffprobe
Parse color transfer and color primaries from ffprobe, and fix video range
2020-05-18 00:06:07 +09:00
MrTimscampi 9314434bbf Fix suggestions 2020-05-16 17:35:34 +02:00
MrTimscampi 2e18142bb3 Add color primaries to ffprobe output 2020-05-14 18:52:42 +02:00
MrTimscampi 428e1b04fc Add color transfer to ffprobe results 2020-05-14 18:11:32 +02:00
MrTimscampi a262ecd9c7 Add positionning cues to WebVTT writer 2020-05-09 20:47:05 +02:00
Max Git cee587d6e3 Try harder to find ffmpeg in app directory. While here do some cleanup 2020-04-27 03:25:57 +02:00
Mark Monteiro 8f02fb9a4f Remove unused usings
This addresses the new issues identified in SonarCloud analysis
2020-04-22 13:09:59 -04:00
Bond-009 d744d7d234 Merge branch 'master' into register-services-correctly 2020-04-22 13:05:03 -04:00
Bond-009 c0b3c11b2e
Merge pull request #2846 from jellyfin/azure
Remove requirement to build web during server builds
2020-04-22 00:17:44 +02:00
Mark Monteiro c5f163293f Add <ProjectGuid> properties to all project files
This is required for SonarCloud analysis to run
2020-04-21 16:21:09 -04:00
Mark Monteiro f815059698 Merge remote-tracking branch 'upstream/master' into register-services-correctly 2020-04-20 20:11:33 -04:00
Bond_009 a73e1f18b6 Minor improvements 2020-04-19 11:16:09 +02:00
Mark Monteiro 9728aa8b0a Merge branch 'master' into register-services-correctly 2020-04-13 17:06:24 -04:00
Joshua M. Boniface bf92694f8b
Merge pull request #2715 from nyanmisaka/libfdk-aac
Prefer to use libfdk_aac encoder for better audio quality when it is available
2020-04-12 19:17:11 -04:00
Mark Monteiro 4113288278 Fix style issues 2020-04-11 13:46:31 -04:00
Mark Monteiro 7152b55747 Use a separate line for each property initializer 2020-04-11 13:28:21 -04:00
Mark Monteiro 17e8813378 Use ActivatorUtilities to construct MediaEncoder and update constructor to inject EncodingHelper correctly 2020-04-11 10:53:13 -04:00
Mark Monteiro e0f40f57d8 Merge remote-tracking branch 'upstream/master' into remove-common-process 2020-04-03 20:22:03 -04:00
Mark Monteiro 0e195d2e49 Add missing call to ConfigureAwait() 2020-04-03 20:20:55 -04:00
Bond-009 f31efce52d
Merge branch 'master' into usings 2020-04-01 22:42:43 +02:00
Bond_009 787049f35f Merge branch 'master' into minor 2020-04-01 18:53:22 +02:00
Bond-009 ddd5d3aaec
Merge branch 'master' into usings 2020-04-01 18:51:44 +02:00
Vasily 9aefb41512
Merge pull request #2503 from nyanmisaka/vaapi
Fix various bugs in HWA subtitle burn-in
2020-03-31 23:19:44 +03:00
nyanmisaka db23660660 prefer to use libfdk_aac for better audio quality 2020-03-30 15:53:49 +08:00
nyanmisaka 0af353404c fix the UTF-16 error while burning ass/ssa subtitles 2020-03-30 14:47:55 +08:00
Mark Monteiro 1f5caa46c5 Fix some more issues with disposing Process instances 2020-03-27 01:53:08 +01:00
Mark Monteiro d705931e81 Dispose of process correctly in AttachmentExtractor 2020-03-27 01:42:28 +01:00
Mark Monteiro 48bbcbb426 Use WaitForExitAsync extension method in AttachmentExtractor 2020-03-27 01:09:25 +01:00
Mark Monteiro 97c36d11d4 Use a TimeSpan instead of ms and support providing a custom CancellationToken 2020-03-27 01:09:09 +01:00
Mark Monteiro 7447ea8960 Make sure Process objects are all disposed correctly 2020-03-27 00:49:22 +01:00
Mark Monteiro b947d98266 Delete unnecessary ProcessFactory abstraction 2020-03-27 00:45:48 +01:00
Mark Monteiro ee2f911a2b Remove unnecessary CommonProcess abstraction 2020-03-27 00:10:16 +01:00
Bond_009 e9d1eabd53 Remove unused usings 2020-03-24 16:12:06 +01:00
Ian Walton 4836d1674b Don't return closed stream for subtitles. (jellyfin/jellyfin#2650) 2020-03-23 12:39:12 -04:00
Bond-009 2c8592fe78 Fix subtitles 2020-03-12 17:18:49 +01:00
Bond_009 a07ee65365 Minor improvements 2020-02-23 10:53:51 +01:00
Ulrich Wagner d7f199bb1c #2407: Prefer MP4-Metadata for episodes 2020-02-17 14:57:07 +01:00
Bond_009 87d2479b78 Fix warnings 2020-01-31 22:26:53 +01:00
Bond_009 2186df8ac4 Update deps 2020-01-28 22:42:07 +01:00
Bond-009 c8409d2ea1 Remove FileSystem.GetStream 2020-01-22 22:20:35 +01:00
Bond-009 f3a1729964 Address comments 2020-01-16 15:02:50 +01:00
Bond-009 e882b03e81 Add back support for DVDs copied as folders 2020-01-16 13:30:38 +01:00
dkanada 4aa0b940e3
Merge pull request #2251 from nyanmisaka/master
add support for AMD AMF hardware encoding on Windows & Linux
2020-01-16 15:26:46 +09:00
Nyanmisaka 2c10891b66
turn on indentation. 2020-01-15 18:45:28 +08:00
Bond_009 93ab829df5 Attempt #3 2020-01-12 23:25:57 +01:00
Bond_009 0d6a4c2909 Fix build 2020-01-11 00:08:47 +01:00
Bond_009 e714b9930e Merge branch 'master' into embytv 2020-01-10 21:16:46 +01:00
Nyanmisaka e95239e281
add support for AMD h264_amf & hevc_amf 2020-01-11 01:36:25 +08:00
Bond-009 b1af8a4178 Rename function 2020-01-08 18:14:01 +01:00
Bond-009 277e9d2b0b fix build 2020-01-08 18:13:11 +01:00
Bond-009 c3752b1a30 Merge branch 'master' into scanerrors 2020-01-08 18:10:17 +01:00
dkanada 423d50e978
Merge pull request #1838 from Unhelpful/media-attachments
Add support for embedded attachments in media files
2020-01-08 11:04:21 +09:00
dkanada 73fac50e57 rename two properties based on code suggestions 2020-01-08 10:52:48 +09:00
Bond_009 8a0ef41036 Minor improvements 2020-01-08 01:24:12 +09:00
Bond_009 a253fa616d Fix build and address comments 2020-01-08 01:23:57 +09:00
dkanada aca31457c0 merge branch master into media-attachments 2020-01-08 01:21:09 +09:00
Bond-009 9dfafb9e9f
Update MediaBrowser.MediaEncoding/Probing/MediaFormatInfo.cs
Co-Authored-By: Erwin de Haan <EraYaN@users.noreply.github.com>
2020-01-07 11:13:47 +01:00
Bond-009 49fef5f09c
Update MediaBrowser.MediaEncoding/Probing/MediaChapter.cs
Co-Authored-By: Erwin de Haan <EraYaN@users.noreply.github.com>
2020-01-07 11:13:11 +01:00
dkanada 534716d9c9
Merge pull request #2220 from Bond-009/unicode
Replace unicode char with its integer value
2020-01-06 21:16:22 +09:00
Bond-009 70210b47a4
Update MediaBrowser.MediaEncoding/Probing/ProbeResultNormalizer.cs
Co-Authored-By: dkanada <dkanada@users.noreply.github.com>
2020-01-06 10:39:01 +01:00
Bond_009 09d1f976d9 Replace unicode char with its integer value 2020-01-02 20:19:01 +01:00
Bond-009 59cdfdc2d9 Fix JSON subtitle writer 2020-01-02 14:38:13 +01:00
dkanada b3963058db
Merge pull request #1891 from stanionascu/bdinfo-uhd
Upgrade BDInfo plugin to UHD/Atmos/DTS:X support
2019-12-28 04:16:45 +09:00
Bond_009 a41ec5c9d4 Fix typo 2019-12-23 15:29:30 +01:00
Bond_009 cf2e2a3f30 Fix exceptions while scanning
Fixes these exceptions:
```
[2019-12-22 20:48:14.779 +01:00] [ERR] Error in WaitForExit
System.InvalidOperationException: No process is associated with this object.
   at System.Diagnostics.Process.EnsureState(State state)
   at System.Diagnostics.Process.EnsureState(State state)
   at System.Diagnostics.Process.GetWaitState()
   at System.Diagnostics.Process.WaitForExitCore(Int32 milliseconds)
   at System.Diagnostics.Process.WaitForExit(Int32 milliseconds)
   at Emby.Server.Implementations.Diagnostics.CommonProcess.WaitForExit(Int32 timeMs) in /home/pi/dev/jellyfin/Emby.Server.Implementations/Diagnostics/CommonProcess.cs:line 100
   at MediaBrowser.MediaEncoding.Encoder.MediaEncoder.StopProcess(ProcessWrapper process, Int32 waitTimeMs) in /home/pi/dev/jellyfin/MediaBrowser.MediaEncoding/Encoder/MediaEncoder.cs:line 785
[2019-12-22 20:48:14.790 +01:00] [INF] Killing ffmpeg process
[2019-12-22 20:48:14.795 +01:00] [ERR] Error killing process
System.InvalidOperationException: No process is associated with this object.
   at System.Diagnostics.Process.EnsureState(State state)
   at System.Diagnostics.Process.EnsureState(State state)
   at System.Diagnostics.Process.Kill()
   at Emby.Server.Implementations.Diagnostics.CommonProcess.Kill() in /home/pi/dev/jellyfin/Emby.Server.Implementations/Diagnostics/CommonProcess.cs:line 95
   at MediaBrowser.MediaEncoding.Encoder.MediaEncoder.StopProcess(ProcessWrapper process, Int32 waitTimeMs) in /home/pi/dev/jellyfin/MediaBrowser.MediaEncoding/Encoder/MediaEncoder.cs:line 799
[2019-12-22 20:48:14.808 +01:00] [ERR] Error in "ffprobe"
System.Text.Json.JsonException: The JSON value could not be converted to System.String. Path: $.streams[0].start_pts | LineNumber: 32 | BytePositionInLine: 26.
 ---> System.InvalidOperationException: Cannot get the value of a token type 'Number' as a string.
   at System.Text.Json.Utf8JsonReader.GetString()
   at System.Text.Json.Serialization.Converters.JsonConverterString.Read(Utf8JsonReader& reader, Type typeToConvert, JsonSerializerOptions options)
   at System.Text.Json.JsonPropertyInfoNotNullable`4.OnRead(JsonTokenType tokenType, ReadStack& state, Utf8JsonReader& reader)
   at System.Text.Json.JsonPropertyInfo.Read(JsonTokenType tokenType, ReadStack& state, Utf8JsonReader& reader)
   at System.Text.Json.JsonSerializer.HandleValue(JsonTokenType tokenType, JsonSerializerOptions options, Utf8JsonReader& reader, ReadStack& state)
   at System.Text.Json.JsonSerializer.ReadCore(JsonSerializerOptions options, Utf8JsonReader& reader, ReadStack& readStack)
   --- End of inner exception stack trace ---
   at System.Text.Json.ThrowHelper.ReThrowWithPath(ReadStack& readStack, Utf8JsonReader& reader, Exception ex)
   at System.Text.Json.JsonSerializer.ReadCore(JsonSerializerOptions options, Utf8JsonReader& reader, ReadStack& readStack)
   at System.Text.Json.JsonSerializer.ReadCore(JsonReaderState& readerState, Boolean isFinalBlock, ReadOnlySpan`1 buffer, JsonSerializerOptions options, ReadStack& readStack)
   at System.Text.Json.JsonSerializer.ReadAsync[TValue](Stream utf8Json, Type returnType, JsonSerializerOptions options, CancellationToken cancellationToken)
   at MediaBrowser.MediaEncoding.Encoder.MediaEncoder.GetMediaInfoInternal(String inputPath, String primaryPath, MediaProtocol protocol, Boolean extractChapters, String probeSizeArgument, Boolean isAudio, Nullable`1 videoType, Boolean forceEnableLogging, CancellationToken cancellationToken) in /home/pi/dev/jellyfin/MediaBrowser.MediaEncoding/Encoder/MediaEncoder.cs:line 399
   at MediaBrowser.Providers.MediaInfo.FFProbeVideoInfo.ProbeVideo[T](T item, MetadataRefreshOptions options, CancellationToken cancellationToken) in /home/pi/dev/jellyfin/MediaBrowser.Providers/MediaInfo/FFProbeVideoInfo.cs:line 122
   at MediaBrowser.Providers.Manager.MetadataService`2.RunCustomProvider(ICustomMetadataProvider`1 provider, TItemType item, String logName, MetadataRefreshOptions options, RefreshResult refreshResult, CancellationToken cancellationToken) in /home/pi/dev/jellyfin/MediaBrowser.Providers/Manager/MetadataService.cs:line 815
```
2019-12-22 22:09:09 +01:00
Bond_009 0bf8bfbb0c Merge branch 'master' into mediaencoding 2019-12-10 23:00:59 +01:00
Bond_009 5cab79c839 Clean up Emby.Server.Implementations/LiveTv/EmbyTV/EmbyTV.cs 2019-12-04 21:39:27 +01:00
ferferga 94ef239de0 Add full Raspberry Pi hardware decoding support 2019-11-25 23:09:23 +01:00
Bond_009 cc5acf37f7 Make probesize and analyzeduration configurable and simplify circular
dependencies

Makes the probesize and analyzeduration configurable with env args.
(`JELLYFIN_FFmpeg_probesize` and `FFmpeg_analyzeduration`)
2019-11-25 12:07:59 +01:00
Joshua M. Boniface 48120d01dc
Merge pull request #1991 from Bond-009/transtemp
Don't append transcodes to transcoding temp path
2019-11-24 15:13:50 -05:00
Bond_009 3cf9313c86 Update deps 2019-11-21 17:08:06 +01:00
Bond-009 d4b438791f Don't append transcodes to transcoding temp path 2019-11-21 16:57:49 +01:00
Stanislav Ionascu 9989b7b68f Replace BDInfo plugin with nupkg and UHD/Atmos/DTS:X support 2019-11-17 20:56:13 +01:00
Andrew Mahone dee247453e Throw InvalidOperationException when attachment extraction exits abnormally or doesn't produce output. 2019-11-13 08:52:37 -05:00
Andrew Mahone 7ea05bb86b Merge branch 'media-attachments' of github.com:Unhelpful/jellyfin into media-attachments 2019-11-07 14:30:43 -05:00
Andrew Mahone 79858eb26c Remove use of ProcessFactory, as well as arbitrary timeout in AttachmentExtractor. 2019-11-07 14:24:49 -05:00
Andrew Mahone 3a9bf84e3b
Update MediaBrowser.MediaEncoding/Attachments/AttachmentExtractor.cs
formatting

Co-Authored-By: Bond-009 <bond.009@outlook.com>
2019-11-07 12:00:47 -05:00
Andrew Mahone 1eb3df1d6c
Update MediaBrowser.MediaEncoding/Attachments/AttachmentExtractor.cs
formatting / style

Co-Authored-By: Bond-009 <bond.009@outlook.com>
2019-11-07 11:59:54 -05:00
Andrew Mahone 380d023351 Merge branch 'media-attachments' of github.com:Unhelpful/jellyfin into media-attachments 2019-11-07 11:58:13 -05:00
Andrew Mahone 2f728fd2a1
Update MediaBrowser.MediaEncoding/Attachments/AttachmentExtractor.cs
formatting

Co-Authored-By: Bond-009 <bond.009@outlook.com>
2019-11-07 11:58:26 -05:00
Andrew Mahone 2338a53229 Don't user ILoggerFactory. 2019-11-07 11:55:39 -05:00
Andrew Mahone 492bbc9e13
Update MediaBrowser.MediaEncoding/Attachments/AttachmentExtractor.cs
String -> string

Co-Authored-By: Bond-009 <bond.009@outlook.com>
2019-11-07 11:25:44 -05:00
Andrew Mahone 92aae268a3
Update MediaBrowser.MediaEncoding/Attachments/AttachmentExtractor.cs
formatting

Co-Authored-By: Bond-009 <bond.009@outlook.com>
2019-11-07 11:24:53 -05:00
Andrew Mahone c09eb34708 Check for attachment file before trying to remove it during cleanup. 2019-11-07 08:56:12 -05:00
Andrew Mahone 4f3b883155 Clean up handling of missing source/attachment in AttachmentExtractor. 2019-11-06 09:46:31 -05:00
Andrew Mahone 349310787c
Update MediaBrowser.MediaEncoding/Attachments/AttachmentExtractor.cs
formatting

Co-Authored-By: Bond-009 <bond.009@outlook.com>
2019-11-05 08:16:46 -05:00
Andrew Mahone 6ca252ba5c Remove check for "[0]" in codec_tag. 2019-11-05 07:09:55 -05:00
Andrew Mahone 28a6718d8e Return path of extracted attachment, which is always a file, instead of AttachmentInfo with path and protocol. 2019-11-04 14:48:28 -05:00
Andrew Mahone 04a96788f9 Convert exceptions for missing MediaSource or MediaAttachment to ResourceNotFoundException with appropriate message. 2019-11-04 14:34:21 -05:00
Andrew Mahone 154fb1fe9b AttachmentExtractor code cleanup. 2019-11-04 11:45:31 -05:00
Andrew Mahone c7d303a6ae MediaExtractor logging cleanup. 2019-11-04 11:39:40 -05:00
Andrew Mahone 9eef5f860d AttachmentExtractor logging cleanup. 2019-11-04 11:16:57 -05:00
Andrew Mahone e9c893f07e Fail attachment extraction on non-zero exit code. 2019-11-04 10:58:56 -05:00
Andrew Mahone 1600d5b53f Merge remote-tracking branch 'origin/master' into media-attachments-clean 2019-11-04 10:03:18 -05:00
dkanada 3bfb36a67d
Merge pull request #1915 from Bond-009/hex
Rewrite hex encoder/decoder
2019-11-02 04:03:36 +09:00
Bond_009 3f7836d9eb Update deps and add MultiThreading analyzer 2019-11-01 17:55:44 +01:00
Bond_009 a245f5a0d4 Rewrite hex encoder/decoder 2019-11-01 17:52:29 +01:00
Andrew Mahone 12f752d8b1 FFMPEG extractor for attachments. 2019-10-22 11:50:07 -04:00
Andrew Mahone 321e5cba60 Add new MediaAttachment to store attachments found during media probing. 2019-10-22 10:30:55 -04:00
Bond_009 3e1aab6b29 Fix ffmpeg version check for unknown versions 2019-09-29 13:43:47 +02:00
Bond_009 1b01a6ece1 Add tests for EncoderValidator
* Add support for ffmpeg 4.2
* Parse the complete ffmpeg version instead of only the first 2 digits
* Make max and min version optional
* Remove max limitation (for now)
* Style improvements
2019-09-28 19:41:34 +02:00
Bond_009 c9820d30ed Fix multiple mistakes and warnings 2019-09-23 20:32:44 +02:00
Bond-009 2919cf28ea Update deps (#1735) 2019-09-11 13:31:35 -04:00
Bond_009 1616f24cee Fix more warnings 2019-09-01 18:39:23 +02:00
dkanada bb04545068
Merge pull request #1614 from Bond-009/docs2
Document all public/internal members of Emby.Drawing
2019-08-15 21:01:44 -07:00
Bond_009 838e5d05d5 Document all public/internal members of Emby.Drawing
Forces all new public/internal members to be documented.
Enables TreatWarningsAsErrors for Emby.Drawing
2019-08-11 16:52:37 +02:00
Bond_009 003238ef5e Update deps + document startup project
* Fixed the release build
* Documented all public/internal members of Jellyfin.Server
* Enable TreatWarningsAsErrors for debug builds for Jellyfin.Server

This will ensure that any new public/internal members of Jellyfin.Server
are documented
2019-08-11 15:11:53 +02:00
Khinenw 59518ec87e Fixed SMI to SRT UTF-16 Encoding bug 2019-07-15 12:20:59 +09:00
dkanada dbc2cda9d4
Merge pull request #1369 from teacupx/master
Enable Exynos MFC encoder and fix transcoding bitrate control
2019-06-20 16:55:09 -07:00
Bond_009 5554595255 Update deps 2019-06-14 18:49:57 +02:00
Tristan McCann 5c1fbfca03 Stop path substitution in SubtitleEncoder
This fixes jellyfin/jellyfin#1446. I am not an expert in this section of
code, but I cannot think of a need to do path substitution during
subtitle encoding.
2019-06-11 21:36:42 -04:00
JMCC 5d85076ad5 Enable Exynos V4L2-m2m HW encoder 2019-05-11 17:17:32 +02:00
Bond-009 91cd7d2f6b Limit amount of ffmpeg processes extracting images at once 2019-04-30 23:35:39 +02:00
Phallacy a7e31ef31f applied changes to just also search jellyfin base dir 2019-04-09 00:27:41 -07:00
redSpoutnik 480a6607e2
Merge branch 'master' into subtitle-display-title 2019-03-16 17:54:57 +01:00
redSpoutnik 427688a0a0 Change subtitles DisplayTitle behavior 2019-03-14 22:31:51 +01:00
Erwin de Haan 21cc38fcf4 Adjusted AssemblyCopyright attribute values. 2019-03-14 22:17:56 +01:00
Erwin de Haan ee7bf86e0f Adjusted the Product Name so the User Agent is correct/better. 2019-03-14 22:11:47 +01:00
Vasily 605bf0e8c3
Merge pull request #1100 from ploughpuff/rmprobeswitch
Finalise removal of --ffprobe switch
2019-03-13 01:42:07 +03:00
Vasily 89e2af6b57
Merge pull request #1096 from dkanada/opensubs
Remove open subtitles from the server
2019-03-13 01:22:55 +03:00
PloughPuff b864e9da2a Finalise removal of --ffprobe switch
Removed --ffprobe from src files and server/docker scripts.
2019-03-12 22:09:18 +00:00
Bond-009 3ddbda9aca
Merge branch 'master' into xml 2019-03-12 16:37:18 +01:00
dkanada 715ddbb3b0 remove open subtitles from the server 2019-03-11 18:10:31 -07:00
Bond-009 ab9859ecef Address comment 2019-03-07 21:42:56 +01:00
Bond_009 37ea50a572 Reduce the amount of exceptions thrown 2019-03-07 21:42:56 +01:00
Vasily a4b52b7264
Merge pull request #844 from ploughpuff/ffmpeg
Reworked FFmpeg path discovery and always display to user
2019-03-07 17:23:06 +03:00
Bond_009 ffd6dac03a Remove useless comments 2019-03-07 12:24:44 +01:00
Vasily 2242c8d793
Merge pull request #915 from cvium/remove_encryptionmanager
Remove IEncryptionManager
2019-03-06 15:56:15 +03:00
PloughPuff 2617a49b78 Renamed Init() to SetFFmpegPath() 2019-03-05 21:29:15 +00:00
PloughPuff 656bffbbb2 Remove --ffprobe logic 2019-03-05 21:29:15 +00:00
PloughPuff 8104e739d5 Address review comments from Bond 2019-03-05 21:29:15 +00:00
PloughPuff ed69e690b8 Review comments
Address review comments from JustAMan, Bond-009 and cvium.
2019-03-05 21:29:15 +00:00
PloughPuff 20775116f7 Reworked FFmpeg path discovery and always display to user
1) Reworked FFmpeg and FFprobe path discovery (CLI switch, Custom xml, system $PATH, UI update trigger).  Removed FFMpeg folder from Emby.Server.Implementations.  All path discovery now in MediaEncoder.

2) Always display FFmpeg path to user in Transcode page.

3) Allow user to remove a Custome FFmpeg path and return to using system $PATH (or --ffmpeg if available).

4) Remove unused code associated with 'prebuilt' FFmpeg.

5) Much improved logging during path discovery.
2019-03-05 21:24:54 +00:00
Joshua M. Boniface 5587dd8bfb
Merge pull request #900 from ploughpuff/validator
Implement proper FFmpeg version checking
2019-03-05 11:07:49 -05:00
Vasily f1086a72bf
Improve logic when determining return value
Co-Authored-By: ploughpuff <33969763+ploughpuff@users.noreply.github.com>
2019-02-28 15:58:41 +00:00
PloughPuff 7668ecf9c9 Use Version Class to ease comparisons 2019-02-27 18:20:48 +00:00
Claus Vium aafed63c3f Set EnableRaisingEvents to true for processes that require it 2019-02-24 16:33:05 +01:00
Claus Vium 139807719c Add missing base64 conversion 2019-02-20 11:09:10 +01:00
Claus Vium 1e2050f106 Rename functions to match functionality 2019-02-20 11:09:10 +01:00
Claus Vium a23f04623e Remove IEncryptionManager 2019-02-20 11:09:06 +01:00
PloughPuff 69ea15f73a Use string interpolation
Two further review comments from JustAMan.
2019-02-16 00:47:38 +00:00
PloughPuff d8d237f6f2 Review comments
Addressed review comments from JustAMan.  Removed code to determine experimental version.  Store major and minor as two ints.  Allow control of a min and max recommended version.
2019-02-15 23:51:22 +00:00
PloughPuff a6bde0943e Implement proper FFmpeg version checking
Three routes to determine FFmpeg version:
1) Grab the 'ffmpeg version x.y' from from the -version output.  This should work for all pre-built binaries.
2) Compare the library versions against known contents of FFmpeg versions.  This is fallback aimed at custom builds.
3) Compare libavcodec version to determine if newer than latest known release.  This suggests user is running within latest/HEAD/master build.
2019-02-14 22:08:48 +00:00
Bond_009 1cdcace061 Remove dead code 2019-02-02 15:58:39 +01:00
Bond_009 95ee3c72e3 Properly dispose Tasks 2019-02-02 15:56:54 +01:00
Bond_009 66eabcdd39 Minor changes to encoding code
* Don't wait in intervals of 100ms for the file to exist
2019-02-02 15:56:54 +01:00
Bond-009 1ea219bf3f
Merge branch 'master' into culture 2019-01-30 16:57:15 +01:00
Vasily 91e99effc9
Apply suggestions from code review for flipped conditions.
Co-Authored-By: EraYaN <EraYaN@users.noreply.github.com>
2019-01-29 14:45:07 +01:00
Erwin de Haan b9a111432a Unwrapped all /(Write|Read)All(Text|Bytes)/ functions. 2019-01-28 22:10:50 +01:00
Erwin de Haan 581a7fe078 Unwrapped MoveDirectory, DirectoryExists, FileExists & removed MoveFile 2019-01-28 22:10:00 +01:00
Erwin de Haan a430568082 Unwrapped OpenRead and CopyFile 2019-01-28 22:09:58 +01:00
Erwin de Haan d7c6d16250 Unwrapped CreateDirectory and DeleteDirectory 2019-01-28 22:09:56 +01:00
Erwin de Haan 3a831994f6 Unwrapped GetDirectoryName and DirectorySeperatorChar 2019-01-28 22:06:34 +01:00
Bond_009 a709cbdc64 Fix more analyzer warnings 2019-01-27 12:12:44 +01:00
Tthecreator 0b80902cc8 Set EnableRaisingEvents correctly for SubtitleEncoder 2019-01-22 16:52:26 +01:00
Andrew Rabert d16f38dbe1 Merge pull request #623 from wtayl0r/inject-logger-factories
Replaced injections of ILogger with ILoggerFactory
2019-01-20 18:12:50 -05:00
Andrew Rabert a1fcf4ea0d Merge pull request #613 from MatMaul/mediaencoding-dev
Update MediaEncoding
2019-01-20 18:11:51 -05:00
Mathieu Velten da16de48aa Revert back to 10e57ce8d21b4516733894075001819f3cd6db6b for MediaEncoding
Remove some duplicate code that were causing warnings
2019-01-20 22:50:09 +01:00
William Taylor 65cd3ed597 Replaced injections of ILogger with ILoggerFactory
This makes resolving dependencies from the container much easier as
you cannot resolve with primitives parameters in a way that is any
more readable.

The aim of this commit is to change as little as possible with the end
result, loggers that were newed up for the parent object were given the same
name. Objects that used the base or app loggers, were given a new logger with
an appropriate name.

Also removed some unused dependencies.
2019-01-20 21:05:12 +00:00
Claus Vium e8cf72e925 Change CanExtractSubtitles to true to allow conversion during direct streaming 2019-01-20 21:03:18 +01:00
Andrew Rabert 3a6624f701 Merge pull request #629 from cvium/fix_subtitleencoder
Fix subtitle converter misinterpreting 0 valued endTimeTicks
2019-01-20 11:35:20 -05:00
Claus Vium 2b47006662 Remove unneeded variable 2019-01-20 17:06:40 +01:00
Claus Vium 2dc14aa85d Remove CodePages from csproj 2019-01-20 11:41:33 +01:00
Claus Vium 26e20d1cd5 Fix subtitle converter misinterpreting 0 valued endTimeTicks 2019-01-20 08:17:31 +01:00
cvium 790266d314 Add package ref for codepages 2019-01-20 06:30:52 +01:00
cvium b35dcbb9f0 Remove MediaBrowser.Text since it violates licenses and is overall hacky 2019-01-20 06:30:50 +01:00
Erwin de Haan c5430f86b0 Fixed csproj and xml identation. 2019-01-19 15:01:16 +01:00
Erwin de Haan 38f96af079 Reformat JustAMan review pt2 changes
Refs #575
2019-01-17 20:24:39 +01:00
Erwin de Haan e867446437 ReSharper format: conform inline 'out' parameters. 2019-01-13 21:46:33 +01:00
Erwin de Haan 65bd052f3e ReSharper conform to 'var' settings 2019-01-13 21:37:13 +01:00
Erwin de Haan a36658f6f0 ReSharper Reformat: Properties to expression bodied form. 2019-01-13 21:31:14 +01:00
Erwin de Haan 9fa60ec934 Find+Sed BOM removal all toher files, except test files. 2019-01-13 21:20:44 +01:00
Erwin de Haan 089ad8e7c2 Find+Sed BOM removal *.xml,*.csproj,*,json,*.sln,*.txt 2019-01-13 21:10:15 +01:00
Erwin de Haan 8f41ba4d3a Find+Sed BOM removal *.cs: MediaBrowser.LocalMetadata-MediaBrowser.Model 2019-01-13 21:02:23 +01:00
Erwin de Haan 742bef5b5f EditorConfig reformat: Non-CS files. 2019-01-13 20:45:51 +01:00
Erwin de Haan f2e50f50bd Visual Studio Reformat: MediaBrowser.MediaEncoding 2019-01-13 20:26:04 +01:00
Erwin de Haan e2751d42e8 Merge branch 'dev' into code-cleanup 2019-01-11 12:50:36 +01:00
Andrew Rabert e5c2dbdf23 Merge pull request #540 from joshuaboniface/api-keys
Update Emby API keys to our own
2019-01-10 23:02:29 -05:00
Joshua M. Boniface 15c89d281e Merge pull request #506 from hawken93/linting
Removing tabs and trailing whitespace
2019-01-10 19:54:18 -05:00
Erwin de Haan ec1f5dc317 Mayor code cleanup
Add Argument*Exceptions now use proper nameof operators.

Added exception messages to quite a few Argument*Exceptions.

Fixed rethorwing to be proper syntax.

Added a ton of null checkes. (This is only a start, there are about 500 places that need proper null handling)

Added some TODOs to log certain exceptions.

Fix sln again.

Fixed all AssemblyInfo's and added proper copyright (where I could find them)

We live in *current year*.

Fixed the use of braces.

Fixed a ton of properties, and made a fair amount of functions static that should be and can be static.

Made more Methods that should be static static.

You can now use static to find bad functions!

Removed unused variable. And added one more proper XML comment.
2019-01-10 20:38:53 +01:00
Anthony Lavado 5900ab8c68 Update OpenSubtitles User Agent to our own 2019-01-10 13:26:52 -05:00
Bond_009 f520ddc966 Remove useless properties from IEnvironmentInfo 2019-01-08 17:35:56 +01:00
hawken bd169e4fd4 remove trailing whitespace 2019-01-07 23:27:46 +00:00
Andrew Rabert 237187bfc0 Merge pull request #456 from Bond-009/subencoder
SubtitleEncoder: stop using tuples for clarity
2019-01-06 18:29:12 -05:00
Anthony Lavado 0a715f9196 Merge pull request #435 from Bond-009/ffmpeglogs
Reduce log spam from ffmpeg info
2019-01-06 16:59:37 -05:00
Bond_009 73fd0cd8c6 SubtitleEncoder: stop using tuples for clarity
* Replace Tuples with a ValueTuple or a struct
2019-01-06 21:02:25 +01:00
Bond_009 abddc4786c Reduce log spam from ffmpeg info 2019-01-05 22:40:33 +01:00
Bond_009 59d8d9a82c Fix nullrefexception in SubtitleEncoder 2019-01-04 18:52:04 +01:00
Anthony Lavado a06a5c8d18 Merge branch 'dev' into project-updates 2019-01-02 14:02:48 -05:00
Bond_009 ec47c5b0f7 Remove unused FontConfigLoader 2019-01-02 15:12:52 +01:00
Bond_009 f3030812ea Use static regex 2019-01-02 16:21:24 +03:00
Bond_009 d6f3ca859e Change regex to multiline
ex: https://regex101.com/r/bn9IOy/12
2019-01-02 16:21:24 +03:00
Bond_009 c05e8088d6 Remove extra capture group from regex
https://regex101.com/r/bn9IOy/11/
2019-01-02 16:21:24 +03:00
Bond_009 12c43cd769 Use regex to check if ffmpeg output contains codec
Demo of the regex: https://regex101.com/r/bn9IOy/10/
2019-01-02 16:21:24 +03:00
Bond_009 0042b96c80 Use ValueTuple and Linq 2019-01-02 16:21:24 +03:00
Bond_009 96ad22a009 Reduce log spam and clean up EncoderValidator 2019-01-02 16:21:24 +03:00
Anthony Lavado 87812d1e7f Fix spacing to C#/Visual Studio standards
- This is a fix automatically applied by Visual Studio
2019-01-02 01:22:21 -05:00