Gospelled in MP3 under spotlight

Je fais de la musique depuis longtemps, sous licence creative commons CC(by). Pour obtenir un public plus large, je diffuse gratuitement depuis mon site et j’essaye d’être sur un maximum de services, et pour être suivi, j’ai mis en place une page podcasts toute simple et utilisée.

L’autre jour je suis allé sur Apple Podcasts Connect (https://podcastsconnect.apple.com) pour y constater que les stats ne sont pas disponibles alors que mon serveur vois bien plein de requêtes avec comme user agent « iTMS ». Bref, passons. Je vois en moyenne de 100 à 500 episodes par jour, écoutés au travers du podcast.

Parlant avec des utilisateurs de Spotify, je me dis qu’il doit y avoir un moyen d’être présent là aussi. Spotify est un gros player, ils acceptent les podcasts et j’ai cru comprendre qu’ils diffusaient de la musique. Gros potentiel pour moi.

Je me diffuse moi-même. Je vais sur Spotify for Creators, je crée un compte, j’indique l’URL de mon feed (http://habett.net/tracks.rss) et, alors que tout se passe bien jusqu’au bout, je finis par être inondé de messages « An episode of your podcast has been removed » !!!

En détail, chaque message indique que tel épisode est jugé comme non conforme à leur « content policy »:

Spotify for Creators supports the distribution of audio and video podcasts. Content that appears to be exclusively or primarily music is automatically taken down.

Si je comprends bien, de la musique, des podcasts, mais surtout pas le mélange des deux. Le pain, le beure mais surtout pas la tartine gratuite. J’imagine qu’ils font cela pour forcer les créateurs à passer par un organisme de gestion et/ou se blinder sur les questions de droits d’auteur en se déchargeant sur des opérateurs tiers. Techniquement, je ne vois aucune explication. Bref, cela ne vas pas avec les tout petits diffuseurs autonomes.


Gospelled in MP3 under spotlight

Waveform

Il n’échappera à personne que je fais par ailleurs de la musique et que je la publie sur un de mes sites (http://habett.net). Pour avoir par ailleurs mis de la musique sur soundcloud j’observe que les formes d’ondes sont bien utiles pour comprendre et apprécier la structure du morceau. Reste que les waveforms de soundcloud sont extrêmement peu parlantes. J’ignore leur algorithme mais il est vraiment lénifiant et donne un résultat tellement peu expressif que je me suis très rapidement dit que je pouvais faire beaucoup mieux.

L’outil pour y procédé vas être un script bash avec quelques dépendances : sox, gnuplot et imagemagick. Le paramètre est le nom du fichier .wav à traiter sans son extension. Vous pouvez observer que je fais en fait deux waveforms que je combine à la fin dans  un composite, pour obtenir un représentation différentielles des fréquences utilisées par la musique en question, waveform plus sombre pour les basses et claire pour les aigus dominants.

#!/bin/sh

WAV=${1%.wav}
sox "$WAV" /tmp/test.wav lowpass 500

sox /tmp/test.wav --rate 1k /tmp/test.dat

rm /tmp/test.wav

grep -v '^;' /tmp/test.dat >/tmp/test.clean

perl -pe 's/.*/0 1 1\n0.0001 -1 -1/ if $. == 1' /tmp/test.clean > /tmp/test.norm

rm /tmp/test.dat

rm /tmp/test.clean

CMD="set terminal png transparent size 6400,1600; set noxtics;set tmarg 0;set bmarg 0;set lmarg 0;set rmarg 0;set noytics; set noborder;set nogrid;set nokey;set output '/tmp/test.png';plot '/tmp/test.norm' with impulses notitle lt -1"

 echo $CMD | gnuplot

rm /tmp/test.norm

convert /tmp/test.png -scale 1600x400 "$1.low.png"

rm /tmp/test.png

sox "$WAV" /tmp/test.wav highpass 300

sox /tmp/test.wav --rate 1k /tmp/test.dat

rm /tmp/test.wav

grep -v '^;' /tmp/test.dat >/tmp/test.clean

perl -pe 's/.*/0 1 1\n0.0001 -1 -1/ if $. == 1' /tmp/test.clean > /tmp/test.norm

rm /tmp/test.dat

rm /tmp/test.clean

echo $CMD | gnuplot

rm /tmp/test.norm

convert /tmp/test.png -negate -scale 1600x400 "$1.high.png"

rm /tmp/test.png

composite -compose difference "$1.low.png" "$1.high.png" "$1.png"

rm "$1.low.png"

rm "$1.high.png"

 

Waveform