Comments (8)
The issue here is that calling GetProperties
on jsonrpc through TCP, immediately after a video is started, always returns the Time
as (near) 0, ignoring the video resume point.
The sequence of events is (calling jsonrpc through TCP):
- Start a video that has a resume point, and select to start it from that resume point (note: this shows a dialog box on Kodi, which might be interfering with the TCP listener thread?);
- Kodi issues a
Player.OnPlay
notification; - Kore gets the notification and immediately calls
GetActivePlayers
followed byGetProperties
(withTime
as one of the params); - The
Time
returned fromGetProperties
doesn't reflect the correct time of the video. It's not 0, the milliseconds field usually has some value, so it seems to be counting from the moment when the video was started (?), but it's not the correct time of the video (which should be with the resume time); - Subsequent calls to
GetProperties
return the correctTime
; - If a slight delay is included before the first call to
GetProperties
(like 0.5s for instance), it returns the correct time, so this issue only occurs if it is called immediately after starting the video.
@Montellese do you have any insight into this? I can try working around this on Kore, though it will be ugly.
from kore.
I don't know the internals of the player either @FernetMenta might be able to give some insight here.
Are you asking for the current playback time only once and then only update the progress locally until the next notification or user interaction?
from kore.
does this apply to current master?
from kore.
According to the report this is with Kodi 14.0 Dec 12 2014 so no.
from kore.
@Montellese That's correct: if connected through TCP the remote only updates the info on a user action/notification/exit. Through HTTP it keeps polling kodi about what's playing (every 3s iirc), so this issue doesn't persist for long.
@FernetMenta I've tested it with the current master and it also happens.
I don't think this is something serious, but it is a curious one. Small differences in timing have different results.
from kore.
the problem is that application wrongly interprets the return value of m_pPlayer->GetDisplayTime(). A value of zero means undefined. It takes some time for player to get started, during this time it returns zero.
from kore.
@FernetMenta: Why does the player execute the OnPlaybackStarted()
callback if playback hasn't actually started yet. Because that's what JSON-RPC uses as a trigger to send the Player.OnPlay
notification.
from kore.
Seems the definition of "playback started" is ambiguous. Playback has started but that does not mean that we have a first frame on screen.
from kore.
Related Issues (20)
- TV/EPG tab missing HOT 3
- Fdroid version
- Wear version
- EventServer detection doesn't work if mute is remapped
- Kore is able to detect lib
- Missing skip buttons in notification HOT 1
- option: add media to favourites
- Missing BACKWARD and FORWARD buttons in lock screen HOT 1
- 30 sec skip (configurable)?
- Timeout when updating the Movie list
- Slow to load albums from Artist view
- Playback position when starting playing new album not updated
- [Feature request] Viewing Player Debug Info, Player Process Info HOT 1
- Kore will disconnect from Kodi on a local network if WiFi and mobile data are active (Android 12) HOT 1
- Kore volume control needs to be larger HOT 1
- Android Auto
- Add support for the Invidious add-on when sharing YouTube URLs HOT 1
- Option to have a persistent notification HOT 2
- Abandoned? HOT 7
- Cannot connect to Kodi by IP (but same Kodi works on another phone) HOT 12
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from kore.