Comment lire une vidéo depuis l’api de Subsonic

Petit rappel pour ceux qui ne connaissent pas, Subsonic est un clone de Deezer qui permet, une fois installé sur votre serveur, de lire des musiques et aussi des vidéos depuis une interface web.

Pour moi, utiliser l’api de Subsonic pour lire des vidéos en Streaming a été un peu compliqué. Je voulais simplement lire le flux renvoyé par Subsonic quand on appel la méthode http://your-server/rest/stream.view mais la documentation à ce sujet est quasi inexistante…

Voici donc une petite démo pour parvenir à lire ce flux.

Fichier HTML ou va être placé le lecteur. N’oubliez pas de changer la valeur des variables par les vôtres!

<html>
	<head>
		<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
		<script type="text/javascript" src="/subsonic_api/script/swfobject.js"></script>
		<script type="text/javascript" src="/subsonic_api/script/prototype.js"></script>
		<script type="text/javascript" src="/subsonic_api/script/subsonic.js"></script>
		<script type="text/javascript" language="javascript">
			var subsonicServer ="http://yourserver";
			var videoid="subsonic file id";
			var subsonicUsr ="subsonic_usr"
			var subsonicPsw = "subsonic_password";
			var player;
			var position;
			var maxBitRate = 1000;
			var timeOffset = 0;
		</script>

	</head>

	<body onload="init();">
		<div>

			<div id="placeholder1"><span class="warning"><a href="http://www.adobe.com/go/
getflashplayer">Obtenir Flash player</a></span></div>
		</div>
	</body>
</html>

Pour le reste je vous laisse télécharger ce fichier zip qui contient tout les éléments nécessaires à la lecture de la vidéo. Pour cela rendez-vous ici: subsonic_api_demo.

Référez-vous à la documentation de l’api Subsonic pour récupérer l’id de la vidéo et sa longueur.

Dernière info sur les méthodes changeTimeOffset() et changeBitrate() présentes dans le fichier subsonic.js: elles permettent respectivement de changer la position dans la vidéo et de changer la qualité de celle-ci. Elles sont donc très utiles 😉

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *