Commit Graph

79 Commits

Author SHA1 Message Date
Charles Ewert
b3008e045c Remove optional commas 2022-05-30 09:00:14 -04:00
Charles Ewert
9dabf4891b Add missing commas 2022-05-30 08:59:24 -04:00
cthelight
7ee5411095 Subtitles: Search by URL not assumed index
Currently, when populating subtitleTracks, we assume that the ordering
and list of populated subtitle tracks will not change when Roku moves
the list into availableSubtitleTracks. This causes an issue with some
videos as it is not always consistent.

This patch modifies the logic to no-longer inject assumed final indices
into our list of text-based subtitles, but instead search through the
availableSubtitleTracks array and locate the actual subtitle that
refers to the same URL as in our list. In this way we are guaranteed
to always tell Roku to play the subtitle we want, no matter how re-
ordered the options get.

NOTE: The URL gets mildly mangled in the process of copying from
subtitleTracks to availableSubtitleTracks, so we need so search via
substring, rather than doing a full string comparison.
2022-05-22 17:54:56 -05:00
cthelight
39dad7666c Subtitles: Auto-select default option
On other players (web/andriod app) the user perferences for
subtitle behavior are taken into account, and used to make an
assumption about subtitle behavior.

This patch ports most of that logic here. "Smart" selection is not
yet fully-featured, as it requires additional knowledge about audio
language preferences. Rather it uses the fallback mechanism, which
emulates the "Default" subtitle option.

The logic for the different options was based on the main jellyfin
repo (specifically sha 49d5fdb33fc9792147c1df03e1d1b051e6b7ec79 in
file Emby.Server.Implementations/Library/MediaStreamSelector.cs)

Additionally, this implementation specifically prefers text-based
subtitles (assuming they match the user's preference) as they are
the only ones natively supported by Roku.

Also, the subtitle changing mechanism is reworked slightly to make
use of the new implementation herein
2022-05-22 17:08:54 -05:00
Neil Burrows
395b6153bb Move MPEG 2 support from system setting to user setting, and into new setting screen 2022-05-01 11:53:39 +01:00
Neil Burrows
2cf45677c6 User setting screen 2022-05-01 11:51:28 +01:00
whiteowl3
dbf2c3c5c5
add profile for .sub subtitles
otherwise they are encoded into directstreams
2022-03-29 15:54:46 -04:00
whiteowl3
1c268ff2a7 check if we can decode hevc before we say we can 2022-03-29 02:21:02 +01:00
whiteowl3
cdc7939a09
add h265/hevc to deviceCapabilities.tsVideoCodecs
fixes #513
2022-03-28 15:40:34 -04:00
Jimi
1e1b396f85 Fix to alternate version playback 2022-03-13 08:22:55 -06:00
Neil Burrows
96bd2ccada Get correct video node now that it is nested 2021-12-23 07:51:53 +00:00
Neil Burrows
6d239cd671
Merge branch 'master' into group-stack 2021-10-17 10:59:47 +01:00
Neil Burrows
f86bc56673 formatting 2021-10-12 08:21:39 +01:00
Neil Burrows
f27c5e206a Add Max Audio Channel condition to supported codecs 2021-10-12 08:13:25 +01:00
JD Layman
6eb283de1b Abstract remaining overhang functionality with groupStack so overhang is never accessed directly 2021-10-09 21:14:32 -05:00
JD Layman
6c03736e41 Apply focus after attaching node to scene
This fixes problems where focus was not properly applied to videos resulting in lack of controls
2021-10-09 21:14:31 -05:00
JD Layman
be24a19c8f Add groups to stack to manage active group for main scene 2021-10-09 21:14:31 -05:00
JD Layman
a7c6737e1f Support MPEG2 codec when available
Support playing video using the MPEG-2 codec when supported by the device. Enabled
by option since MPEG-2 requires high bandwidth and some users report issues with
MPEG-2 decoding on some Roku models.
2021-08-31 19:56:49 -05:00
Neil Burrows
568e81c040 Support AEC3 in mp3 and direct audio containers 2021-08-01 12:33:07 +01:00
Neil Burrows
2224e08a10 Fix hvec transcoding when not required 2021-08-01 11:45:32 +01:00
Bronley
43b4ac3fc9 Format all brs files 2021-07-28 06:51:15 -04:00
Bronley
acdb635f7a Fix lint issues. 2021-07-09 15:16:43 -04:00
Bronley
fa2452c037 Merge branch 'master' of https://github.com/jellyfin/jellyfin-roku into ssdp-scan 2021-07-09 06:53:16 -04:00
Bronley
ebd49cefb3 Finished with initial flow 2021-07-09 06:17:04 -04:00
Anthony Lavado
ec4177eaa3
Remove then from IF line 2021-06-28 20:17:34 -04:00
Anthony Lavado
ba1a8f649d
Merge branch 'master' into add-brightscript-linter 2021-06-28 20:15:34 -04:00
Neil Burrows
6d757653da Linter: Consistent IF statement format
No parentheses.  Use THEN if it's a one line statement.  Don't use THEN if it's a block statement
2021-06-26 14:52:16 +01:00
Neil Burrows
13c2391ba7 Linter Fixes: Use of unassigned variables 2021-06-26 14:51:19 +01:00
Neil Burrows
579475a34c Linter: Code style: remove parenthesis around conditions 2021-06-26 11:24:38 +01:00
Neil Burrows
da54bc86fe Linter: Change any function that doesn't return a value to a sub 2021-06-26 11:18:09 +01:00
Neil Burrows
38fa383b4d Linter Warnings
Variable Capitalization, Unused Variables, Unreachable Code
2021-06-26 11:04:32 +01:00
Neil Burrows
2bc6c7923d Correct typo in variable name 2021-06-26 08:09:59 +01:00
Neil Burrows
b4c09a6700 Fix incorrect selection when pressing back in subtitle dialog 2021-06-12 16:30:32 +01:00
Neil Burrows
2fd45dddc9 Move subtitle code to Subtitle.brs file 2021-06-12 16:09:41 +01:00
Neil Burrows
4a51923816 Remove unused functions 2021-06-12 16:04:21 +01:00
Neil Burrows
d8d1745720 Rework Subtitle Code 2021-06-12 16:03:47 +01:00
Kenny Wottrich
b6374f52dd Fix issues identified by Eclipse Brightscript linter 2021-04-30 20:09:33 -05:00
Neil Burrows
96520c40c0 Enable basic deep linking 2021-04-14 08:03:15 +01:00
Neil Burrows
bf6a9090d2 Remove updated focus logic from all but TV Channel selections 2020-12-06 22:57:56 +00:00
Neil Burrows
e5a60414de Revert change in #311 which causes loss of focus 2020-12-06 16:32:41 +00:00
Neil Burrows
f94d56ffd3 Live TV Schedule / Guide 2020-11-23 17:13:57 +00:00
Neil Burrows
10d0e9edcd Ensure MaxAudioChannels is set to a string for updated API 2020-09-22 15:33:53 +01:00
Neil Burrows
6acb0e4f0e Use CanDecodeAudio() instead of depreciated GetAudioDecodeInfo() 2020-07-22 20:30:13 +01:00
Neil Burrows
a4a98d3fba Build Device Capability Dynamically 2020-07-11 08:52:52 +01:00
Neil Burrows
7cea54b489 Better way to check for supported Codecs 2020-06-06 08:32:36 +01:00
Neil Burrows
f2fad94158 Add mkv & h265 (if 4k) support to Device Profile 2020-06-05 12:44:42 +01:00
Neil Burrows
ea245d2abc Initial LiveTV Support
Most of the work from Alex Gonzales (@Musi13)
2020-05-31 16:05:22 +01:00
Neil Burrows
f993b204ba Register Roku Device Capabilities with JF Server on Login 2020-05-31 16:05:21 +01:00
Neil Burrows
b313d57515
Store release issues (#180)
* Remove TrackerTask

* Change deprecated BookmarkPosition to PlayStart

* Accept (print & ignore) roInput commands

* Updated icon image sizes

* Added InputData Task (Not hooked up)

* Added signal beacons for Roku Performance Measuring

* Reverting ineffective roInput code

* Manually recreated changed channel poster images

* Use app_loaded global variable to control when performance beacons are sent

* Sorting missed performance signal beacon
2020-04-29 12:26:12 -04:00
Neil Burrows
050aa0bcea Display clock format in 12/24hr based on Roku Clock setting 2020-04-10 09:04:48 +01:00