Feature #2476
Ability to play WebM, NSV and Ogg Theora video streams over icecast (icecast plugin)
Status: | Accepted | Start date: | 01/09/2015 | |
---|---|---|---|---|
Priority: | Normal | Due date: | ||
Assignee: | % Done: | 0% | ||
Category: | Video playback | |||
Target version: | 5.2 |
Description
You can find those streams in Icecast plugin->Formats->WebM or Ogg Theora or NSV
ST can look at the Content-Type: video/webm
Content-Type: video/webm
but interesting question is how is should be with OGG Theora as by RFC3534 Content-Type: application/ogg could be presented for both audio and video streams so it needs additional probing. But by RFC5334 it is set explicitly as video/ogg and audio/ogg correspondingly.
Interesting thing is - ST already plays WebM and NSV direct links if you pase them via WebUI. But fails if you supply m3u link via icecast route. So changes could be minor.
WebM:
navigator [INFO ]: Opening icecast:formats icecast [DEBUG]: Opening route ^icecast:formats navigator [INFO ]: Opening icecast:filter:/by_format/WebM:WebM icecast [DEBUG]: Opening route ^icecast:filter:(.*):(.*) icecast [DEBUG]: Page argument 1 : /by_format/WebM icecast [DEBUG]: Page argument 2 : WebM HTTP [DEBUG]: Connected to dir.xiph.org:80 (id=3) HTTP [DEBUG]: > GET /by_format/WebM HTTP/1.1 HTTP [DEBUG]: > User-Agent: Showtime Linux/x86_64 4.9.46.g5134a.dirty HTTP [DEBUG]: > Connection: keep-alive HTTP [DEBUG]: > Accept: */* HTTP [DEBUG]: > Accept-Encoding: identity HTTP [DEBUG]: > Host: dir.xiph.org HTTP [DEBUG]: http://dir.xiph.org/by_format/WebM: Response: HTTP [DEBUG]: < HTTP/1.1 200 OK HTTP [DEBUG]: < Date: Fri, 09 Jan 2015 07:14:31 GMT HTTP [DEBUG]: < Server: Apache/2.2.16 (Debian) HTTP [DEBUG]: < X-Powered-By: PHP/5.3.3-7+squeeze19 HTTP [DEBUG]: < Cache-Control: max-age=1800 HTTP [DEBUG]: < Expires: Fri, 09 Jan 2015 07:44:31 GMT HTTP [DEBUG]: < Vary: Accept-Encoding HTTP [DEBUG]: < Connection: close HTTP [DEBUG]: < Transfer-Encoding: chunked HTTP [DEBUG]: < Content-Type: text/html HTTP [DEBUG]: < HTTP [DEBUG]: Chunked transfer HTTP [DEBUG]: Disconnected from dir.xiph.org:80 (id=3) Request destroyed HTTP [DEBUG]: Disconnected from showtime.lonelycoder.com:80 (id=1) Keep alive expired HTTP [DEBUG]: Connected to dir.xiph.org:80 (id=4) HTTP [DEBUG]: > GET /listen/1027103/listen.m3u HTTP/1.1 HTTP [DEBUG]: > Icy-MetaData: 1 HTTP [DEBUG]: > User-Agent: Showtime Linux/x86_64 4.9.46.g5134a.dirty HTTP [DEBUG]: > Connection: keep-alive HTTP [DEBUG]: > Accept: */* HTTP [DEBUG]: > Accept-Encoding: identity HTTP [DEBUG]: > Host: dir.xiph.org HTTP [DEBUG]: http://dir.xiph.org/listen/1027103/listen.m3u: Response: HTTP [DEBUG]: < HTTP/1.1 200 OK HTTP [DEBUG]: < Date: Fri, 09 Jan 2015 07:15:11 GMT HTTP [DEBUG]: < Server: Apache/2.2.16 (Debian) HTTP [DEBUG]: < X-Powered-By: PHP/5.3.3-7+squeeze19 HTTP [DEBUG]: < Content-Disposition: inline; filename="listen.m3u" HTTP [DEBUG]: < Content-Length: 34 HTTP [DEBUG]: < Connection: close HTTP [DEBUG]: < Content-Type: audio/x-mpegurl HTTP [DEBUG]: < HTTP [DEBUG]: Opened in streaming mode Radio [DEBUG]: http://dir.xiph.org/listen/1027103/listen.m3u content-type: audio/x-mpegurl HTTP [DEBUG]: Disconnected from dir.xiph.org:80 (id=4) Connection-mode = close Radio [DEBUG]: http://dir.xiph.org/listen/1027103/listen.m3u is an .m3u playlist according to content-type Radio [DEBUG]: http://dir.xiph.org/listen/1027103/listen.m3u guessed to be an m3u based on content HTTP [DEBUG]: Connected to g2.euer.tv:8000 (id=5) HTTP [DEBUG]: > GET /erde.webm HTTP/1.1 HTTP [DEBUG]: > Icy-MetaData: 1 HTTP [DEBUG]: > User-Agent: Showtime Linux/x86_64 4.9.46.g5134a.dirty HTTP [DEBUG]: > Connection: keep-alive HTTP [DEBUG]: > Accept: */* HTTP [DEBUG]: > Accept-Encoding: identity HTTP [DEBUG]: > Host: g2.euer.tv:8000 HTTP [DEBUG]: http://g2.euer.tv:8000/erde.webm: Response: HTTP [DEBUG]: < HTTP/1.0 200 OK HTTP [DEBUG]: < Server: Icecast 2.3.99.3-euerradio HTTP [DEBUG]: < Date: Fri, 09-Jan-2015 07:15:12 GMT HTTP [DEBUG]: < Content-Type: video/webm HTTP [DEBUG]: < Cache-Control: no-cache HTTP [DEBUG]: < Expires: Mon, 26 Jul 1997 05:00:00 GMT HTTP [DEBUG]: < Pragma: no-cache HTTP [DEBUG]: < HTTP [DEBUG]: Opened in streaming mode HTTP [DEBUG]: http://g2.euer.tv:8000/erde.webm: Refusing to seek to END on non-seekable file Radio [DEBUG]: Starting playback of http://g2.euer.tv:8000/erde.webm audio [DEBUG]: Codec changed to vorbis (0x15005) PA [DEBUG]: Context ready PA [DEBUG]: Created stream float32le 2ch 44100Hz [front-left,front-right] (tilesize=8184) Audio [DEBUG]: Converting from [stereo 44100Hz fltp] to [stereo 44100Hz flt]
NSV:
navigator [INFO ]: Opening icecast:filter:/by_format/NSV:NSV icecast [DEBUG]: Opening route ^icecast:filter:(.*):(.*) icecast [DEBUG]: Page argument 1 : /by_format/NSV icecast [DEBUG]: Page argument 2 : NSV HTTP [DEBUG]: Connected to dir.xiph.org:80 (id=6) HTTP [DEBUG]: > GET /by_format/NSV HTTP/1.1 HTTP [DEBUG]: > User-Agent: Showtime Linux/x86_64 4.9.46.g5134a.dirty HTTP [DEBUG]: > Connection: keep-alive HTTP [DEBUG]: > Accept: */* HTTP [DEBUG]: > Accept-Encoding: identity HTTP [DEBUG]: > Host: dir.xiph.org HTTP [DEBUG]: http://dir.xiph.org/by_format/NSV: Response: HTTP [DEBUG]: < HTTP/1.1 200 OK HTTP [DEBUG]: < Date: Fri, 09 Jan 2015 07:18:13 GMT HTTP [DEBUG]: < Server: Apache/2.2.16 (Debian) HTTP [DEBUG]: < X-Powered-By: PHP/5.3.3-7+squeeze19 HTTP [DEBUG]: < Cache-Control: max-age=1800 HTTP [DEBUG]: < Expires: Fri, 09 Jan 2015 07:48:13 GMT HTTP [DEBUG]: < Vary: Accept-Encoding HTTP [DEBUG]: < Connection: close HTTP [DEBUG]: < Transfer-Encoding: chunked HTTP [DEBUG]: < Content-Type: text/html HTTP [DEBUG]: < HTTP [DEBUG]: Chunked transfer HTTP [DEBUG]: Disconnected from dir.xiph.org:80 (id=6) Request destroyed HTTP [DEBUG]: Disconnected from g2.euer.tv:8000 (id=5) Request destroyed HTTP [DEBUG]: Connected to dir.xiph.org:80 (id=7) HTTP [DEBUG]: > GET /listen/985424/listen.m3u HTTP/1.1 HTTP [DEBUG]: > Icy-MetaData: 1 HTTP [DEBUG]: > User-Agent: Showtime Linux/x86_64 4.9.46.g5134a.dirty HTTP [DEBUG]: > Connection: keep-alive HTTP [DEBUG]: > Accept: */* HTTP [DEBUG]: > Accept-Encoding: identity HTTP [DEBUG]: > Host: dir.xiph.org HTTP [DEBUG]: http://dir.xiph.org/listen/985424/listen.m3u: Response: HTTP [DEBUG]: < HTTP/1.1 200 OK HTTP [DEBUG]: < Date: Fri, 09 Jan 2015 07:18:23 GMT HTTP [DEBUG]: < Server: Apache/2.2.16 (Debian) HTTP [DEBUG]: < X-Powered-By: PHP/5.3.3-7+squeeze19 HTTP [DEBUG]: < Content-Disposition: inline; filename="listen.m3u" HTTP [DEBUG]: < Content-Length: 76 HTTP [DEBUG]: < Connection: close HTTP [DEBUG]: < Content-Type: audio/x-mpegurl HTTP [DEBUG]: < HTTP [DEBUG]: Opened in streaming mode Radio [DEBUG]: http://dir.xiph.org/listen/985424/listen.m3u content-type: audio/x-mpegurl HTTP [DEBUG]: Disconnected from dir.xiph.org:80 (id=7) Connection-mode = close Radio [DEBUG]: http://dir.xiph.org/listen/985424/listen.m3u is an .m3u playlist according to content-type Radio [DEBUG]: http://dir.xiph.org/listen/985424/listen.m3u guessed to be an m3u based on content HTTP [DEBUG]: Connected to jay.krivanek.org:8000 (id=8) HTTP [DEBUG]: > GET /mst3k.nsv HTTP/1.1 HTTP [DEBUG]: > Icy-MetaData: 1 HTTP [DEBUG]: > User-Agent: Showtime Linux/x86_64 4.9.46.g5134a.dirty HTTP [DEBUG]: > Connection: keep-alive HTTP [DEBUG]: > Accept: */* HTTP [DEBUG]: > Accept-Encoding: identity HTTP [DEBUG]: > Host: jay.krivanek.org:8000 HTTP [DEBUG]: http://jay.krivanek.org:8000/mst3k.nsv: Response: HTTP [DEBUG]: < ICY 200 OK HTTP [DEBUG]: < icy-notice1:<BR>This stream requires a media player HTTP [DEBUG]: < icy-notice2:Steamcast Distributed Network Media Server/1.0.0 decennium (Windows 64-bit)<BR> HTTP [DEBUG]: < icy-name:Mystery Science Theater 3000 - Powered by ShoutCheap.com HTTP [DEBUG]: < icy-genre:video HTTP [DEBUG]: < icy-url:http://www.shoutcheap.com HTTP [DEBUG]: < content-type:video/nsv HTTP [DEBUG]: < icy-pub:1 HTTP [DEBUG]: < icy-br:128 HTTP [DEBUG]: < icy-metaint:8192 HTTP [DEBUG]: < HTTP [DEBUG]: Opened in streaming mode Radio [DEBUG]: Starting playback of http://jay.krivanek.org:8000/mst3k.nsv audio [DEBUG]: Codec changed to aac (0x15002) PA [DEBUG]: Created stream float32le 1ch 32000Hz [mono] (tilesize=16368) Audio [DEBUG]: Converting from [mono 32000Hz fltp] to [mono 32000Hz flt]
Ogg Theora:
navigator [INFO ]: Opening icecast:filter:/by_format/Ogg_Theora:Ogg Theora icecast [DEBUG]: Opening route ^icecast:filter:(.*):(.*) icecast [DEBUG]: Page argument 1 : /by_format/Ogg_Theora icecast [DEBUG]: Page argument 2 : Ogg Theora HTTP [DEBUG]: Connected to dir.xiph.org:80 (id=9) HTTP [DEBUG]: > GET /by_format/Ogg_Theora HTTP/1.1 HTTP [DEBUG]: > User-Agent: Showtime Linux/x86_64 4.9.46.g5134a.dirty HTTP [DEBUG]: > Connection: keep-alive HTTP [DEBUG]: > Accept: */* HTTP [DEBUG]: > Accept-Encoding: identity HTTP [DEBUG]: > Host: dir.xiph.org HTTP [DEBUG]: http://dir.xiph.org/by_format/Ogg_Theora: Response: HTTP [DEBUG]: < HTTP/1.1 200 OK HTTP [DEBUG]: < Date: Fri, 09 Jan 2015 07:23:22 GMT HTTP [DEBUG]: < Server: Apache/2.2.16 (Debian) HTTP [DEBUG]: < X-Powered-By: PHP/5.3.3-7+squeeze19 HTTP [DEBUG]: < Cache-Control: max-age=1800 HTTP [DEBUG]: < Expires: Fri, 09 Jan 2015 07:53:22 GMT HTTP [DEBUG]: < Vary: Accept-Encoding HTTP [DEBUG]: < Connection: close HTTP [DEBUG]: < Transfer-Encoding: chunked HTTP [DEBUG]: < Content-Type: text/html HTTP [DEBUG]: < HTTP [DEBUG]: Chunked transfer HTTP [DEBUG]: Disconnected from dir.xiph.org:80 (id=9) Request destroyed Radio [ERROR]: Playback error: Operation not permitted (-1) HTTP [DEBUG]: Disconnected from jay.krivanek.org:8000 (id=8) Request destroyed HTTP [DEBUG]: Connected to dir.xiph.org:80 (id=10) HTTP [DEBUG]: > GET /listen/919922/listen.m3u HTTP/1.1 HTTP [DEBUG]: > Icy-MetaData: 1 HTTP [DEBUG]: > User-Agent: Showtime Linux/x86_64 4.9.46.g5134a.dirty HTTP [DEBUG]: > Connection: keep-alive HTTP [DEBUG]: > Accept: */* HTTP [DEBUG]: > Accept-Encoding: identity HTTP [DEBUG]: > Host: dir.xiph.org HTTP [DEBUG]: http://dir.xiph.org/listen/919922/listen.m3u: Response: HTTP [DEBUG]: < HTTP/1.1 200 OK HTTP [DEBUG]: < Date: Fri, 09 Jan 2015 07:23:24 GMT HTTP [DEBUG]: < Server: Apache/2.2.16 (Debian) HTTP [DEBUG]: < X-Powered-By: PHP/5.3.3-7+squeeze19 HTTP [DEBUG]: < Content-Disposition: inline; filename="listen.m3u" HTTP [DEBUG]: < Content-Length: 35 HTTP [DEBUG]: < Connection: close HTTP [DEBUG]: < Content-Type: audio/x-mpegurl HTTP [DEBUG]: < HTTP [DEBUG]: Opened in streaming mode Radio [DEBUG]: http://dir.xiph.org/listen/919922/listen.m3u content-type: audio/x-mpegurl HTTP [DEBUG]: Disconnected from dir.xiph.org:80 (id=10) Connection-mode = close Radio [DEBUG]: http://dir.xiph.org/listen/919922/listen.m3u is an .m3u playlist according to content-type Radio [DEBUG]: http://dir.xiph.org/listen/919922/listen.m3u guessed to be an m3u based on content HTTP [DEBUG]: Connected to modulix.org:8000 (id=11) HTTP [DEBUG]: > GET /libre.ogg HTTP/1.1 HTTP [DEBUG]: > Icy-MetaData: 1 HTTP [DEBUG]: > User-Agent: Showtime Linux/x86_64 4.9.46.g5134a.dirty HTTP [DEBUG]: > Connection: keep-alive HTTP [DEBUG]: > Accept: */* HTTP [DEBUG]: > Accept-Encoding: identity HTTP [DEBUG]: > Host: modulix.org:8000 HTTP [DEBUG]: http://modulix.org:8000/libre.ogg: Response: HTTP [DEBUG]: < HTTP/1.0 200 OK HTTP [DEBUG]: < Content-Type: application/ogg HTTP [DEBUG]: < icy-br:1152 HTTP [DEBUG]: < ice-audio-info: bitrate=1152;channels=2;samplerate=44100;quality=1%2e0 HTTP [DEBUG]: < icy-description:Diffusion en broadcast de toutes informations qui concernent le Logiciel Libre ainsi que des créations vidéo sous Licence Libre. HTTP [DEBUG]: < icy-genre:WebTV, Libre, France, Bordeaux HTTP [DEBUG]: < icy-name:WebTV - Télévision Libre HTTP [DEBUG]: < icy-pub:1 HTTP [DEBUG]: < icy-url:http://modulix.org:8000/libre.ogg HTTP [DEBUG]: < Server: icecast 2.3.3 HTTP [DEBUG]: < Cache-Control: no-cache HTTP [DEBUG]: < HTTP [DEBUG]: Opened in streaming mode HTTP [DEBUG]: http://modulix.org:8000/libre.ogg: Refusing to seek to END on non-seekable file HTTP [DEBUG]: http://modulix.org:8000/libre.ogg: Refusing to seek to END on non-seekable file HTTP [DEBUG]: http://modulix.org:8000/libre.ogg: Refusing to seek to END on non-seekable file Radio [DEBUG]: Starting playback of http://modulix.org:8000/libre.ogg audio [DEBUG]: Codec changed to vorbis (0x15005) PA [DEBUG]: Created stream float32le 2ch 44100Hz [front-left,front-right] (tilesize=8184) Audio [DEBUG]: Converting from [stereo 44100Hz fltp] to [stereo 44100Hz flt]
Related issues
History
#1
Updated by Leonid Protasov over 8 years ago
- Related to Bug #2071: Live OGG video stream is probed forever added
#2
Updated by Leonid Protasov over 8 years ago
I missed Content-Type: video/nsv
#3
Updated by Andreas Smas over 8 years ago
- Status changed from New to Need feedback
If it plays ok without icecast: why do you add icecast: ?
icecast: is for radio (audio only) playback, trying to play video in there just won't work.
#4
Updated by Leonid Protasov over 8 years ago
Those video icecasts are in m3u and to know that it is video - you need to know that it's content type is video (on the link request from m3u).
#5
Updated by Andreas Smas over 8 years ago
- Target version deleted (
4.10)
#6
Updated by Leonid Protasov over 5 years ago
- Status changed from Need feedback to Accepted
- Target version set to 5.2