JPlayer mp3 не работает (хром)

Я пытаюсь настроить JPlayer на веб-сайте в Chrome.

У меня есть файлы mp3 и ogg на сервере с именами: test.mp3 и test.ogg.

Если я установлю носитель в формате mp3 и путь к mp3, это не сработает. Если я сделаю то же самое для файла ogg, это сработает. Я также могу нажать www.website.com/test.ogg, и он воспроизведет звук. Однако, если я нажму на www.website.com/test.mp3, звук в формате mp3 не будет воспроизводиться.

Вот мой HTACCESS: AddType audio/mpeg mp3

Похоже, что сервер принимает запросы диапазона: Источник ответа Заголовки ответа Accept-Ranges:bytes

Что-то незначительное не так с моим htaccess, или я что-то упускаю из виду? Я изучил почти все решения, которые нашел до сих пор, но безрезультатно.

Веб-сайт: radiosmasher.com (radiosmasher.com/test.ogg и т. д.)

РЕДАКТИРОВАТЬ: похоже, что запросы на MP3 отменяются, если они имеют определенный размер. Они отменяются после загрузки около 2 МБ песни размером 10 МБ. Любая подсказка?


person kclem06    schedule 12.05.2012    source источник
comment
Ваш заголовок Content-Type в порядке, так что в этом нет ничего плохого.   -  person Brad    schedule 12.05.2012
comment
Есть ли причина, по которой вам нужно использовать JPlayer? Существует множество хороших руководств по использованию тега audio, и я успешно использовал его в некоторых проектах.   -  person Miles    schedule 13.05.2012
comment
В основном я ищу аудиоплеер, который может воспроизводить MP3 и хорошо работает в кросс-браузерной среде. JPlayer, казалось, соответствовал критериям. Есть ли что-нибудь, что вы порекомендуете?   -  person kclem06    schedule 13.05.2012
comment
@ kclem06 Теперь у меня все работает нормально.   -  person Tyilo    schedule 13.05.2012
comment
Только что отредактировал основной пост - кажется, что-то еще происходит.   -  person kclem06    schedule 13.05.2012
comment
@Miles, тег audio отлично работает в новых браузерах. Причина, по которой я использую MediaElement, заключается в изящной поддержке дрянных старых браузеров. :-)   -  person Rick-777    schedule 01.10.2012


Ответы (4)


У меня была такая же проблема как с jPlayer, так и с MediaElement. Благодаря комментариям на этой странице я обнаружил, что порядок имеет значение для Chrome, но не для Firefox. Возможно, это ошибка в Chrome.

Чтобы быть более конкретным, это работает в обоих браузерах:

<audio controls="controls" preload="auto">
    <source type="audio/ogg" src="clips/clip1.oga" preload="none"/>
    <source type="audio/mpeg" src="clips/clip1.mp3" preload="none"/>
</audio>

но это работает только в Firefox:

<audio controls="controls" preload="auto">
    <source type="audio/mpeg" src="clips/clip1.mp3" preload="none"/>
    <source type="audio/ogg" src="clips/clip1.oga" preload="none"/>
</audio>

Единственная разница в том, что у Chrome, кажется, есть проблема с MP3 (не знаю почему), и если сначала поставить ogg, эта проблема будет скрыта.

[Использование Firefox v15 и Chromium v20 в Ubuntu 12.04]

person Rick-777    schedule 01.10.2012
comment
Спасибо, что опубликовали это. Я не проверял это, но звучит многообещающе. - person kclem06; 30.11.2012

MP3 не поддерживается в Chrome.

Однако вы можете предоставить файлы .ogg и .mp3 в jPlayer.

Поместите это в свой файл http://radiosmasher.com/js/main.js вместо текущей реализации jPlayer:

$("#jquery_jplayer_1").jPlayer({
    ready: function () {
        $(this).jPlayer("setMedia", {
            mp3: "http://www.radiosmasher.com/test.mp3",
            ogg: "http://www.radiosmasher.com/test.ogg"
        });
    },
    swfPath: "/js",
    supplied: "mp3, ogg",
    cssSelectorAncestor: "",
    cssSelector: {
        play: "#play",
        pause: "#pause",
        stop: "#stop",
        mute: "#mute",
        unmute: "#unmute",
        currentTime: "#currentTime",
        duration: "#duration"
    },
    size: {
        width: "320px",
        height: "180px"
    },
    errorAlerts: true
});
person Tyilo    schedule 12.05.2012
comment
У меня нет проблем с использованием элемента audio с MP3. - person Miles; 13.05.2012
comment
@Miles Какую версию вы используете? - person Tyilo; 13.05.2012
comment
Я использую 21, самый последний ;) - person Tyilo; 13.05.2012
comment
Вы уверены, что Chrome не поддерживает MP3? w3schools.com/html5/html5_audio.asp — W3 говорит, что да. - person kclem06; 13.05.2012
comment
@ kclem06 В настоящее время это так, но рано или поздно он будет удален, поэтому глупо полагаться на него. - person Tyilo; 13.05.2012
comment
На самом деле, вы даже можете отредактировать этот пример, чтобы он заработал: w3schools.com/html5 /tryit.asp?filename=tryhtml5_audio_all - person kclem06; 13.05.2012
comment
Только что отредактировал основной пост - кажется, он загружает 2 МБ песни размером 10 МБ, после чего запрос GET отменяется. Я не уверен, почему это происходит. - person kclem06; 13.05.2012

Я только что столкнулся (и, к счастью, решил) именно с этой проблемой. Оказывается, медиа-ключ, который jPlay ожидает для поддержки OGG, — это oga (для OGG Audio), чтобы исправить это, я изменил свой код инициализации jPlayer на этот (демо):

$("#jplayer_1").jPlayer({
  ready: function() {
           /*My site specific init code*/
         },
  swfPath: "/js",
  supplied: "oga, mp3"
});

И мой набор медиа-кода для этого:

$("#jplayer_1").jPlayer("setMedia", {
  "mp3": "/song.mp3",
  "oga": "/song.ogg"
}).jPlayer("play");

Я тестировал это на сборке Chrome версии 36.0.1985.125 для OSX, и пока это работает достаточно хорошо :)

person Jason Sperske    schedule 21.07.2014

Я столкнулся с проблемой, когда Chrome иногда проигрывал наше аудио (mp3), а иногда нет. Работал нормально в Safari, FireFox и т.д.

Мне помогло настроить {solution: "flash,html"} в конфиге. Заимствование из .js, опубликованного @Tyilo:

$("#jquery_jplayer_1").jPlayer({
    ready: function () {
        $(this).jPlayer("setMedia", {
            mp3: "http://www.radiosmasher.com/test.mp3",
            ogg: "http://www.radiosmasher.com/test.ogg"
        });
    },
    swfPath: "/js",
    solution: "flash,html",
    supplied: "mp3, ogg",
    cssSelectorAncestor: "",
    cssSelector: {
        play: "#play",
        pause: "#pause",
        stop: "#stop",
        mute: "#mute",
        unmute: "#unmute",
        currentTime: "#currentTime",
        duration: "#duration"
    },
    size: {
        width: "320px",
        height: "180px"
    },
    errorAlerts: true
});
person Will Lanni    schedule 27.05.2014