Overwolf.media.replays.capture() with pastDuration parameter set to greater than 180000 doesn't work

Related app/team name (not a must if you want to keep it private): Insights Capture
Issue Description:
Calling overwolf.media.replays.capture(pastDuration, futureDuration, captureFinishedCallback, captureFinished) with a pastDuration > 180000 doesn’t seem to work. The resulting videos are roughly 180000 ms long (matching the duration in the capture finished result).

We want to create an instant replay feature where you just press a hotkey and records the last ‘x’ seconds users set to. Currently, this method will not allow you to record past 180000ms.

Can you reproduce it (exact steps to reproduce):
The attached file is a mini project that reproduces the bug.
instant-replay.zip (24.0 KB)

The steps are:

  1. Start game
  2. Wait for timer to read something sufficiently greater than 180
  3. Click “Save Replay” button
  4. Recording duration will be 180 seconds even though code specifies 600 seconds

Impact for my app: [e.g. x% of the users complained about it, it’s a show-stopper]
No impact but is blocking feature development.

Do you currently have a workaround?
No workaround as of yet.

Guessing here:
I think there is something like a stream buffer size that you can set in the turnOn call.
Maybe that is the limiting factor.
After all the data you want to capture needs to be held in memory somehow, so there needs to be a set limit.

Increasing it might have implications on use rmemory though I assume

Hi @jkorean,

I’m not familiar with the internals of the API, so I need to check it in depth to get you an exact answer, but in general, the overwolf.media.replays API is mainly used to capture short highlight video replays or auto-highlights. 180000 ms are 3 minutes. Longer than this, not considered “short,”… so maybe the streaming API is more suitable for your needs.

@Colorfulstan assuming that a bigger buffer size can work for you - makes sense. But as I mentioned - I need to check it in depth if that is the path that you want to take - but as he said - I don’t recommend this performance-wise.

Thanks

Adding a buffer_length: 10 * 60 * 1000 (10 minutes) still limited to 180 seconds.

Streaming API can’t record the past which is what the instant replay feature that we want to build is supposed to do. It’s supposed to mimic the Nvidia GeForce instant replay feature where you press a hotkey and saves the last 10minutes of your game footage. However, I do agree that this feature is definitely not for saving long recording, so possibly increasing the limit from 180 seconds to 10 minutes will be good (20 minutes is max for Nvidia Instant Replay).

I will check it.

Thanks

@jkorean Hey,

I will now change this ticket from “bug” to “feature request”. We will discuss that internally and let you know.

Thanks.