Closed Fil closed 7 years ago
J'ai envoyé quelques correctifs dans le plugin soundmanager pour qu'il prenne en charge les fichiers ogg, cf http://zone.spip.org/trac/spip-zone/changeset?reponame=&new=100485%40_plugins_%2Fsoundmanager&old=99929%40_plugins_%2Fsoundmanager
Avec quelques modifs locales sur autoembed et le script seenthis.js j'obtiens bien un player pour les liens ogg, mais ça n'est pas encore satisfaisant amha. Sur les 5 urls que je teste, seules 2 fonctionnent avec le player cf :
http://autodefensepopulaire.net/IMG/ogg/plateau_vendredi15_30min.ogg / ko http://freshly-ground.com/data/audio/sm2/20130320%20-%20Po%27ipu%20Beach%20Waves.ogg / ok https://upload.wikimedia.org/wikipedia/commons/1/1d/Demo_chorus.ogg / ok https://archive.org/download/SDR028/SDR028_06_Telomelo.ogg / ok http://jplayer.org/audio/ogg/Miaow-01-Tempered-song.ogg /ko
La différence semble venir du content type déclaré pour chaque fichier application/ogg ou audio/ogg, étonnamment ce sont les fichiers application/ogg qui fonctionnent...
Les modifs locales que j'hésite à envoyer vu le résultat :
Index: autoembed.php
===================================================================
--- autoembed.php (révision 96495)
+++ autoembed.php (copie de travail)
@@ -102,6 +102,10 @@
$html = str_replace('{dewplayer}', $url_dewplayer, $html);
if ($html) $code_ae = "<div class='oembed-container'>$html</div>";
}
+ else if (preg_match(",^https?://[^\"\'\`\<\>\@\*\$]*?\.|ogg(\?.*)?$,i", $url)) {
+ $html = "<div class='audio'><audio controls><source src='$url' rel='enclosure'></audio></div>";
+ if ($html) $code_ae = "<div class='oembed-container'>$html</div>";
+ }
else {
require_once "AutoEmbed.class.php";
$AE = new AutoEmbed();
diff --git a/javascript/seenthis/seenthis.js b/javascript/seenthis/seenthis.js
index 60f12ae..60f8ce9 100644
--- a/javascript/seenthis/seenthis.js
+++ b/javascript/seenthis/seenthis.js
@@ -34,7 +34,7 @@ function switch_comments(id_me) {
$.fn.soundmanager = function () {
return $(this)
.each(function () {
- var url_son = $(this).find('source[type="audio/mpeg"]').attr('src');
+ var url_son = $(this).find('source').attr('src');
$(this).html('<div class="lecture"><button class="play">play</button></div><div class="controles"><div class="track sans_titre"><a title="Ecouter" rel="enclosure" href="' + url_son + '"><span class="fn"> </span></a></div><div class="progress_bar"><div class="position"></div><div class="loading"></div></div><div class="lesinfos"><div class="time"></div><div class="duration"></div></div></div><br style="clear:both;">');
sound_manager_init();
});
tu peux le mettre en test et puis on voit si ça pête autre chose :)
Done pour autoembed : http://zone.spip.org/trac/spip-zone/changeset/100487
Done pour seenthis.js avec #169 :)
Testé ici avec succès : https://seenthis.net/messages/224091#message541970
Amha on peut fermer le ticket maintenant, mais il serait intéressant d'en créer un autre spécifique à l'amélioration de la prise en charge des ogg par le plugin soundmanager (on devrait plutôt utiliser mejs fourni par le plugin medias quand on passera en 3.x).
suggestion d'@intempestive http://seenthis.net/messages/481627#message481628