Commit Graph

1411 Commits

Author SHA1 Message Date
Matthew Haughton
bec432f57b Remove unused PlayRequestQuery interface 2024-11-07 20:49:04 +11:00
Matthew Haughton
c1bbcc733c Migrate getLiveStream to jellyfin-sdk-typescript 2024-11-07 20:48:40 +11:00
Niels van Velzen
a5db014c63
Merge pull request #681 from 3flex/patch-4
Migrate stopping active encodings to jellyfin-sdk-typescript
2024-11-07 10:40:34 +01:00
Matthew Haughton
70d9c17052 Migrate stopping active encodings to jellyfin-sdk-typescript 2024-11-07 20:34:41 +11:00
Niels van Velzen
f46690e306
Merge pull request #678 from jellyfin/renovate/typescript
Update dependency typescript-eslint to v8.13.0
2024-11-07 09:00:36 +01:00
renovate[bot]
b5cc89f7b1
Update dependency typescript-eslint to v8.13.0 2024-11-07 07:58:54 +00:00
Niels van Velzen
a31be60f0b
Merge pull request #680 from 3flex/patch-3
Migrate transcoder pinging to jellyfin-sdk-typescript
2024-11-07 08:57:42 +01:00
Niels van Velzen
9bf4443d70
Merge pull request #682 from jellyfin/renovate/node-22.x
Update dependency @types/node to v22.8.5
2024-11-07 08:56:20 +01:00
renovate[bot]
9c3596801c
Update dependency @types/node to v22.8.5 2024-11-07 06:43:31 +00:00
Matthew Haughton
073f5c2978
Migrate transcoder pinging to jellyfin-sdk-typescript 2024-11-07 13:24:06 +11:00
Niels van Velzen
2990a569df
Merge pull request #679 from 3flex/patch-2
Some checks failed
Lint / Lint TS and CSS (push) Has been cancelled
Publish / Build (push) Has been cancelled
Test / Jest (push) Has been cancelled
Publish / Publish (push) Has been cancelled
Publish / Deploy (push) Has been cancelled
Fix new prefer-nullish-coalescing issue from ts eslint v8.13
2024-11-06 07:26:59 +01:00
Matthew Haughton
0f1e735c3b
Fix new prefer-nullish-coalescing issue from ts eslint v8.13 2024-11-06 09:43:14 +11:00
Niels van Velzen
aa92991485
Merge pull request #677 from jellyfin/renovate/typescript
Some checks are pending
Lint / Lint TS and CSS (push) Waiting to run
Publish / Build (push) Waiting to run
Publish / Publish (push) Blocked by required conditions
Publish / Deploy (push) Blocked by required conditions
Test / Jest (push) Waiting to run
Update dependency typescript-eslint to v8.12.2
2024-11-05 19:05:51 +01:00
Niels van Velzen
22d1404fbf
Merge pull request #676 from jellyfin/renovate/node-22.x
Update dependency @types/node to v22.8.4
2024-11-05 19:05:39 +01:00
renovate[bot]
7ece3d1554
Update dependency typescript-eslint to v8.12.2 2024-11-05 17:54:24 +00:00
renovate[bot]
f4e96eb2dc
Update dependency @types/node to v22.8.4 2024-11-05 17:54:07 +00:00
Niels van Velzen
f1d788c310
Merge pull request #650 from 3flex/axios-poc
Some checks are pending
Lint / Lint TS and CSS (push) Waiting to run
Publish / Build (push) Waiting to run
Publish / Publish (push) Blocked by required conditions
Publish / Deploy (push) Blocked by required conditions
Test / Jest (push) Waiting to run
Start using generated Typescript API for API calls
2024-11-05 08:54:31 +01:00
Niels van Velzen
7da50299e4
Merge pull request #675 from 3flex/patch-2
Simplify retrieval of subtitle track
2024-11-05 08:54:00 +01:00
Niels van Velzen
5283f149b0
Merge pull request #673 from jellyfin/renovate/typescript
Update dependency typescript-eslint to v8.12.1
2024-11-05 08:21:51 +01:00
Matthew Haughton
96d0aa196a
Simplify retrieval of subtitle track 2024-11-05 16:21:18 +11:00
renovate[bot]
ce65446c58
Update dependency typescript-eslint to v8.12.1 2024-11-05 01:44:36 +00:00
Niels van Velzen
4dde65ade2
Merge pull request #672 from jellyfin/renovate/node-22.x
Some checks are pending
Lint / Lint TS and CSS (push) Waiting to run
Publish / Build (push) Waiting to run
Publish / Publish (push) Blocked by required conditions
Publish / Deploy (push) Blocked by required conditions
Test / Jest (push) Waiting to run
Update dependency @types/node to v22.8.2
2024-11-04 22:07:29 +01:00
renovate[bot]
a8a31c6d5d
Update dependency @types/node to v22.8.2 2024-11-04 20:59:03 +00:00
Niels van Velzen
47ece69398
Merge pull request #671 from jellyfin/renovate/typescript
Update dependency typescript-eslint to v8.12.0
2024-11-04 21:58:26 +01:00
renovate[bot]
1e62f07d2f
Update dependency typescript-eslint to v8.12.0 2024-11-04 19:39:32 +00:00
Niels van Velzen
5c51cdf213
Merge pull request #668 from 3flex/stop-on-media-finished
Some checks are pending
Lint / Lint TS and CSS (push) Waiting to run
Publish / Build (push) Waiting to run
Publish / Publish (push) Blocked by required conditions
Publish / Deploy (push) Blocked by required conditions
Test / Jest (push) Waiting to run
Report playback stopped when media finishes
2024-11-04 16:03:27 +01:00
Niels van Velzen
bad34400ed
Merge pull request #670 from jellyfin/renovate/vitest
Update dependency vitest to v2.1.4
2024-11-04 16:02:51 +01:00
renovate[bot]
d977d1de8f
Update dependency vitest to v2.1.4 2024-11-04 14:09:40 +00:00
Niels van Velzen
1659262114
Merge pull request #669 from 3flex/display-item-on-idle
Some checks are pending
Lint / Lint TS and CSS (push) Waiting to run
Publish / Build (push) Waiting to run
Publish / Publish (push) Blocked by required conditions
Publish / Deploy (push) Blocked by required conditions
Test / Jest (push) Waiting to run
Display content only if player is idle
2024-11-04 08:41:55 +01:00
Matthew Haughton
3cd9151ce8 Don't report stopped playback if changing stream 2024-11-04 13:32:28 +11:00
Matthew Haughton
6591f61185 Display content only if player is idle
This ensures content is not displayed on screen if player is buffering.
2024-11-04 12:33:52 +11:00
Matthew Haughton
1a59aa2bb3 Report playback stopped when media finishes
This consolidates the logic for reporting stopped playback to the server.
The MEDIA_FINISHED event is fired when:
* End of stream is reached
* Error encountered
* Playback has been stopped
* Playback was interrupted because a new item was loaded

https://developers.google.com/cast/docs/reference/web_receiver/cast.framework.events#.EndedReason

The current position reported to the server will be the current time
reported by the Cast player which will be the most accurate representation.
If this is not available, it will fall back to the existing logic of
checking the current playback position from the receiver's playback state.
2024-11-04 11:00:44 +11:00
Niels van Velzen
c36bc05b1d
Merge pull request #667 from 3flex/remove-setBackdropPeriodMs
Some checks are pending
Lint / Lint TS and CSS (push) Waiting to run
Publish / Build (push) Waiting to run
Publish / Publish (push) Blocked by required conditions
Publish / Deploy (push) Blocked by required conditions
Test / Jest (push) Waiting to run
Remove unused function setBackdropPeriodMs
2024-11-03 14:00:29 +01:00
Matthew Haughton
ea7f0c0f7d Remove unused function setBackdropPeriodMs 2024-11-03 23:19:04 +11:00
Niels van Velzen
cfa3de832e
Merge pull request #666 from 3flex/patch-3
Some checks are pending
Lint / Lint TS and CSS (push) Waiting to run
Publish / Build (push) Waiting to run
Publish / Publish (push) Blocked by required conditions
Publish / Deploy (push) Blocked by required conditions
Test / Jest (push) Waiting to run
Remove a non-null assertion
2024-11-03 09:45:05 +01:00
Niels van Velzen
aa84761cf9
Merge pull request #665 from 3flex/playrequest-typing
Add PlayRequest typing
2024-11-03 09:44:51 +01:00
Niels van Velzen
200a91d1e3
Merge pull request #664 from 3flex/patch-2
Remove unused export
2024-11-03 09:43:45 +01:00
Niels van Velzen
34937c9936
Merge pull request #657 from 3flex/no-unnecessary-type-assertion
Enable no-unnecessary-type-assertion ts eslint rule
2024-11-03 09:43:35 +01:00
Matthew Haughton
6e27fc7096
Remove a non-null assertion 2024-11-03 17:54:15 +11:00
Matthew Haughton
dddb29b111 Add PlayRequest typing 2024-11-03 17:30:03 +11:00
Matthew Haughton
44476a3c61
Remove unused export 2024-11-03 09:11:05 +11:00
Matthew Haughton
9f9c456433 Enable no-unnecessary-type-assertion ts eslint rule 2024-11-03 09:00:42 +11:00
Niels van Velzen
6ac3432d27
Merge pull request #663 from 3flex/dont-limit-maxwidth
Some checks are pending
Lint / Lint TS and CSS (push) Waiting to run
Publish / Build (push) Waiting to run
Publish / Publish (push) Blocked by required conditions
Publish / Deploy (push) Blocked by required conditions
Test / Jest (push) Waiting to run
Don't limit max width for h264 streams to the window width
2024-11-02 10:34:06 +01:00
Niels van Velzen
1baac2d9c7
Merge pull request #662 from 3flex/mp4-hls-container
Request mp4 container when transcoding HLS video
2024-11-02 10:32:45 +01:00
Niels van Velzen
15a088cfdd
Merge pull request #660 from jellyfin/renovate/node-22.x
Update dependency @types/node to v22.8.1
2024-11-02 10:32:26 +01:00
Matthew Haughton
4b0b4a4cd9 Don't limit max width for h264 streams to the window width
Cast devices variously support video max widths of 1280, 1920 and 3840.
window.innerWidth returns the max width of the receiver page which is not
the same resolution and limits h264 streams to a max of 720p on most
devices.
2024-11-02 19:47:17 +11:00
Niels van Velzen
3ec76b25d4
Merge pull request #661 from 3flex/progressbar
Some checks are pending
Lint / Lint TS and CSS (push) Waiting to run
Publish / Build (push) Waiting to run
Publish / Publish (push) Blocked by required conditions
Publish / Deploy (push) Blocked by required conditions
Test / Jest (push) Waiting to run
Minor fixes for progress bar element
2024-11-02 08:41:55 +01:00
Matthew Haughton
2ebc6e96c5 Simplify boolean checks where HLS enabled 2024-11-02 18:05:37 +11:00
Matthew Haughton
46a94fa525 Request mp4 container when transcoding HLS video
Shaka player 4.8 and up always remuxes TS to MP4, while the Jellyfin Cast
client always requests a TS container. This means any transcoded MP4 stream
will be remuxed to TS on the server then remuxed again on the device.

As Cast clients (particularly older ones) are low-powered devices, it's
important to reduce load on the device when possible. It also avoids
unnecessary remuxing on the server in some scenarios.

In local testing the Shaka player version is 4.3.4 but this will be updated
automatically to 4.9.2 in future. This change is still useful for earlier
Shaka player versions since TS remuxing was identified as a problem area
anyway, so using MP4 should improve streaming reliablity to Cast devices
regardless of the Shaka version.
2024-11-02 18:05:04 +11:00
Matthew Haughton
769e83fbf0 Fix typing of itemProgressBar 2024-11-02 15:19:53 +11:00