Modeling the Compatibility of Stem Tracks to Generate Music Mashups


  • Jiawen Huang Queen Mary University of London
  • Ju-Chiang Wang ByteDance
  • Jordan B. L. Smith ByteDance
  • Xuchen Song ByteDance
  • Yuxuan Wang ByteDance




A music mashup combines audio elements from two or more songs to create a new work. To reduce the time and effort required to make them, researchers have developed algorithms that predict the compatibility of audio elements. Prior work has focused on mixing unaltered excerpts, but advances in source separation enable the creation of mashups from isolated stems (e.g., vocals, drums, bass, etc.). In this work, we take advantage of separated stems not just for creating mashups, but for training a model that predicts the mutual compatibility of groups of excerpts, using self-supervised and semi-supervised methods. Specifically, we first produce a random mashup creation pipeline that combines stem tracks obtained via source separation, with key and tempo automatically adjusted to match, since these are prerequisites for high-quality mashups. To train a model to predict compatibility, we use stem tracks obtained from the same song as positive examples, and random combinations of stems with key and/or tempo unadjusted as negative examples. To improve the model and use more data, we also train on "average" examples: random combinations with matching key and tempo, where we treat them as unlabeled data as their true compatibility is unknown. To determine whether the combined signal or the set of stem signals is more indicative of the quality of the result, we experiment on two model architectures and train them using semi-supervised learning technique. Finally, we conduct objective and subjective evaluations of the system, comparing them to a standard rule-based system.




How to Cite

Huang, J., Wang, J.-C., Smith, J. B. L., Song, X., & Wang, Y. (2021). Modeling the Compatibility of Stem Tracks to Generate Music Mashups. Proceedings of the AAAI Conference on Artificial Intelligence, 35(1), 187-195. Retrieved from



AAAI Technical Track on Application Domains