mirror of
https://github.com/jellyfin/jellyfin-web
synced 2025-03-30 19:56:21 +00:00
Additional cast params
This commit is contained in:
parent
424718b05a
commit
3f50019539
4 changed files with 27 additions and 19 deletions
26
ApiClient.js
26
ApiClient.js
|
@ -3846,7 +3846,7 @@ MediaBrowser.ApiClient = function ($, navigator, JSON, WebSocket, setTimeout, wi
|
|||
* @param {String} userId
|
||||
* @param {String} itemId
|
||||
*/
|
||||
self.reportPlaybackProgress = function (userId, itemId, mediaSourceId, positionTicks, isPaused, isMuted) {
|
||||
self.reportPlaybackProgress = function (userId, itemId, mediaSourceId, params) {
|
||||
|
||||
if (!userId) {
|
||||
throw new Error("null userId");
|
||||
|
@ -3862,25 +3862,29 @@ MediaBrowser.ApiClient = function ($, navigator, JSON, WebSocket, setTimeout, wi
|
|||
|
||||
var msgData = itemId;
|
||||
|
||||
msgData += "|" + (positionTicks == null ? "" : positionTicks);
|
||||
msgData += "|" + (isPaused == null ? "" : isPaused);
|
||||
msgData += "|" + (isMuted == null ? "" : isMuted);
|
||||
msgData += "|" + (params.positionTicks == null ? "" : params.positionTicks);
|
||||
msgData += "|" + (params.isPaused == null ? "" : params.isPaused);
|
||||
msgData += "|" + (params.isMuted == null ? "" : params.isMuted);
|
||||
msgData += "|" + (mediaSourceId == null ? "" : mediaSourceId);
|
||||
|
||||
msgData += "|" + (params.audioStreamIndex == null ? "" : params.audioStreamIndex);
|
||||
msgData += "|" + (params.subtitleStreamIndex == null ? "" : params.subtitleStreamIndex);
|
||||
msgData += "|" + (params.volumeLevel == null ? "" : params.volumeLevel);
|
||||
|
||||
self.sendWebSocketMessage("PlaybackProgress", msgData);
|
||||
|
||||
deferred.resolveWith(null, []);
|
||||
return deferred.promise();
|
||||
}
|
||||
|
||||
var params = {
|
||||
isPaused: isPaused,
|
||||
isMuted: isMuted
|
||||
};
|
||||
////var params = {
|
||||
//// isPaused: isPaused,
|
||||
//// isMuted: isMuted
|
||||
////};
|
||||
|
||||
if (positionTicks) {
|
||||
params.positionTicks = positionTicks;
|
||||
}
|
||||
////if (positionTicks) {
|
||||
//// params.positionTicks = positionTicks;
|
||||
////}
|
||||
|
||||
if (mediaSourceId) {
|
||||
params.mediaSourceId = mediaSourceId;
|
||||
|
|
|
@ -89,7 +89,7 @@
|
|||
|
||||
// v1 Id AE4DA10A
|
||||
// v2 Id 472F0435
|
||||
var applicationID = 'AE4DA10A';
|
||||
var applicationID = '472F0435';
|
||||
|
||||
// request session
|
||||
var sessionRequest = new chrome.cast.SessionRequest(applicationID);
|
||||
|
@ -420,7 +420,7 @@
|
|||
};
|
||||
}
|
||||
|
||||
function getCustomData(item, mediaSourceId, startTimeTicks) {
|
||||
function getCustomData(item, mediaSourceId, startTimeTicks, audioStreamIndex, subtitleStreamIndex) {
|
||||
|
||||
return {
|
||||
|
||||
|
@ -429,7 +429,9 @@
|
|||
userId: Dashboard.getCurrentUserId(),
|
||||
deviceName: ApiClient.deviceName(),
|
||||
//deviceId: ApiClient.deviceId(),
|
||||
startTimeTicks: startTimeTicks || 0
|
||||
startTimeTicks: startTimeTicks || 0,
|
||||
audioStreamIndex: audioStreamIndex,
|
||||
subtitleStreamIndex: subtitleStreamIndex
|
||||
};
|
||||
|
||||
}
|
||||
|
@ -613,7 +615,7 @@
|
|||
|
||||
var castMediaInfo = new chrome.cast.media.MediaInfo(streamUrl);
|
||||
|
||||
castMediaInfo.customData = getCustomData(item, mediaInfo.mediaSource.Id, startTimeTicks);
|
||||
castMediaInfo.customData = getCustomData(item, mediaInfo.mediaSource.Id, startTimeTicks, audioStreamIndex, subtitleStreamIndex);
|
||||
castMediaInfo.metadata = getMetadata(item);
|
||||
|
||||
if (mediaInfo.streamContainer == 'm3u8') {
|
||||
|
|
|
@ -950,7 +950,7 @@
|
|||
|
||||
function sendProgressUpdate(itemId, mediaSourceId) {
|
||||
|
||||
ApiClient.reportPlaybackProgress(Dashboard.getCurrentUserId(), itemId, mediaSourceId, self.getCurrentTicks(), currentMediaElement.paused, currentMediaElement.volume == 0);
|
||||
ApiClient.reportPlaybackProgress(Dashboard.getCurrentUserId(), itemId, mediaSourceId, { positionTicks: self.getCurrentTicks(), isPaused: currentMediaElement.paused, isMuted: currentMediaElement.volume == 0 });
|
||||
}
|
||||
|
||||
function clearProgressInterval() {
|
||||
|
|
|
@ -349,7 +349,7 @@
|
|||
|
||||
// don't display the current session
|
||||
sessions = sessions.filter(function (s) {
|
||||
return s.DeviceId != deviceId && s.SupportsRemoteControl;
|
||||
return s.DeviceId != deviceId && (s.SupportsRemoteControl || s.Client == "Chromecast");
|
||||
});
|
||||
|
||||
var elem = $('#selectSession', popup);
|
||||
|
@ -403,6 +403,8 @@
|
|||
self.showMenu = function (options) {
|
||||
ApiClient.getSessions(sessionQuery).done(function (sessions) {
|
||||
|
||||
console.log("showMenu", sessions);
|
||||
|
||||
showMenu(sessions, options);
|
||||
|
||||
});
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue