Skip to main content

I have retrieved a number of streams from /activities/{id}/streams, including distance and time for an activity. The moving duration of the activity is 680 seconds and the total elapsed time is 719 as per the strava dashboard.

Each of the streams have 685 samples, but I cannot figure out how to interpret the time stream. It has 685 samples, with the first value being zero and the last value being 954. I cannot understand where the 954 comes from.

Is there any documentation on how to interpret the data. I would like to be able to say, for a specific number of seconds after start time what the distance was, but without being able to reconcile these values I am very unclear on how to do that.

 

Any help, really appreciated

 

 

can you provide us some more information… for example how many of the moving values = true? what is the series_type (distance or time)    Sending the first 20 values of the time and distance stream will probably clear some of this up or at least we can help point you in the right direction. 


Hi there and thanks for the reply.

I am not sure what you mean by how many of the moving values = true? There is a lot of pausing but I do not see that element anywhere in the json returned

The series_type is distance for each of the streams

The first 20 values of the time data array are simply 0-19

I am unclear as to how showing you only 20 will help? My problem is that the time array which has 685 elements, like all others, goes to 954. There is clearly a lot of paused time in this activity but not that give a total time of 954 seconds. It’s a short activity

This is the public link to the activity: https://www.strava.com/activities/10017206842

I have created a shared with the json here.

 

https://drive.google.com/file/d/1vuXJuKauClj7m_7ysrqGdyhSJndnh-4J/view?usp=sharing

 

 

 


cool… First, you should definitely always grab the “moving” stream… just add it to the list of data you request. It’s a bool and if it is true it means that time unit counts toward moving / active time and if false it means it only counts toward elapsed.  Without that it’s hard to fully understand.

If your device is simply paused it will keep recording (well depending the device but in theory) but strava (and other people if you’re trying to calculate active time with your own algorithm) will have a marker basically saying you’re stopped (moving = false).

If you’re device is stopped during activity and / or you power off… think turning off your device during lunch.  Then nothing is recorded so you get no data.  

So… in addition, garmin / strava always seem to have some weird nuances.  Can you make your garmin .fit file available?  in the .fit file itself you have record data which is your second by second by second data and you also get summary data… so if garmin is telling strava with summary data your elapsed time is different then your recorded time then strava might just take that and use it vs. caring what is in your record data.