После обновления vlc до версии 2.0 выяснилось, что $ vlc http://server/file.m3u больше не воспринимается как список каналов и в в плейлисте появляется просто как один медиа-ресурс, который никак не открывается. Причины обнаружить не удалось.
прямо сейчас вижу обратное. что видно в curl -v http://server/file.m3u >/dev/null ? что в самОм m3u ? что происходит при попытке проиграть непосредственно один из каналов ?
(В ответ на комментарий №1) > прямо сейчас вижу обратное. > что видно в curl -v http://server/file.m3u >/dev/null ? $ curl -v http://westhome.spb.ru/files/westcall_tv.m3u >/dev/null * About to connect() to westhome.spb.ru port 80 (#0) * Trying 84.52.81.75... % Total % Received % Xferd Average Speed Time Time Time Current Dload Upload Total Spent Left Speed 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0* connected * Connected to westhome.spb.ru (84.52.81.75) port 80 (#0) > GET /files/westcall_tv.m3u HTTP/1.1 > User-Agent: curl/7.24.0-DEV (x86_64-alt-linux-gnu) libcurl/7.24.0-DEV OpenSSL/1.0.0j zlib/1.2.5 libidn/1.24 libssh2/1.3.0_DEV > Host: westhome.spb.ru > Accept: */* > < HTTP/1.1 200 OK < Server: nginx < Date: Mon, 28 May 2012 14:08:42 GMT < Content-Type: audio/x-mpegurl < Connection: keep-alive < Last-Modified: Mon, 04 Oct 2010 07:58:41 GMT < ETag: "12b8001e-8c6-491c5e99fee40" < Accept-Ranges: bytes < Content-Length: 2246 < { [data not shown] 100 2246 100 2246 0 0 185k 0 --:--:-- --:--:-- --:--:-- 313k * Connection #0 to host westhome.spb.ru left intact * Closing connection #0 > что в самОм m3u ? $ curl http://westhome.spb.ru/files/westcall_tv.m3u #EXTM3U #EXTINF:0,Первый канал Петербург udp://@233.99.64.1:1234 #EXTINF:0,Телеканал "Россия" Петербург udp://@233.99.64.2:1234 #EXTINF:0,5 Канал Петербург udp://@233.99.64.7:1234 #EXTINF:0,Культура Петербург udp://@233.99.64.11:1234 #EXTINF:0,НТВ Петербург udp://@233.99.64.4:1234 #EXTINF:0,Рен-ТВ Петербург udp://@233.99.64.5:1234 #EXTINF:0,СТО Петербург udp://@233.99.64.10:1234 .... > что происходит при попытке проиграть непосредственно один из каналов ? Всё играет. Если подозрения к формату файла, просьба проверить у себя http://westhome.spb.ru/files/westcall_tv.m3u, хоть будет куда копать.
поскольку это multicast, я этого всего не увижу. можно поиграть в угадайку: что будет, если переименовать этот файлик в file.m3u8 и скормить vlc ? (внутри должен быть utf-8, если вдруг не)
(В ответ на комментарий №3) > поскольку это multicast, я этого всего не увижу. Речь идёт о том, что не открывается список. При чём тут multicast? Воспроизводить ничего не надо. > можно поиграть в угадайку: что будет, если переименовать этот файлик в > file.m3u8 > и скормить vlc ? (внутри должен быть utf-8, если вдруг не) Хм... Если скачать файлик и открывать его, то всё работает. А если указывать URL, то не открывает. Другими знаками: Так - не работает: $ vlc http://westhome.spb.ru/files/westcall_tv.m3u Так - работает: $ wget http://westhome.spb.ru/files/westcall_tv.m3u $ vlc westcall_tv.m3u
в начале westcall_tv.m3u мусор, что не даёт его распознать как valid utf-8. видимо, для случая m3u over http это критично.
хотя нет.
в общем, в начале плейлиста стоит BOM (byte order mark) и портит всю малину. если перекодировать туда-обратно и убрать его, то всё работает. я подумаю, что с этим сделать.
Это виндовая фишка, на которой что-то в линуксе в разных местах спотыкаются. Но уже здорово, что проблема выявлена, и обходной путь есть. На всякий случай повторюсь, что до 2.0 эти файлы нормально воспринимались (хотя остаётся доля вероятности, что в этот же момент файл на сайте стали по-другому формировать.
vlc-2.0.1-alt2 -> sisyphus: * Tue May 29 2012 Sergey Bolshakov <sbolshakov@altlinux> 2.0.1-alt2 - treat m3u playlist with BOM at start as utf8-encoded (closes: #27373)
Спасибо, работает!