graph_fast_forward

Authors | Vladimir Viro and Brian McFee |

Code | https://github.com/bmcfee/graffw |

We implemented a “smart” fast-forward for audio playback that uses beat-level feature similarity to determine jump points for non-uniform accelerated playback.

Given a target playback rate, the method builds a graph over beats in the song, where edges between beats (s, t) are weighted according to continuity (feature distance between t and s+1) and conformance to the acceleration rate. All shortest paths to the end of the song are computed, allowing the interface to quickly jump forward in the song.

More precisely, for rate $r$ and balance parameter $\alpha$, the graph is constructed as

$$ A_{s,t} = \begin{cases} \|X_t - X_{s+1}\|^2 + \alpha (e^{r} - (t - s) )^2 & t > s\\ \infty & t \leq s\\ \end{cases} $$

Note: this is still in progress, and we may not finish before demo time is over! This hack was conceived at 3pm on Sunday.

graph_fast_forward.txt · Last modified: 2014/10/26 05:37 by bmcfee