Comments (8)
First thing to do is find out what is actually happening in the cases you are referring to. Does icecast see a connection from the second tab, if it does then does it respond by sending data without issue. Icecast does not not any control over what playback is actually done by the receiver but they may react differently depending on if say range requests are sent.
karl.
from icecast-kh.
As I understand, browser doesn't send the second request, but I don't know why.
About the range requests - Chrome makes 2 requests in each tab - first without the range, then aborts it, the second one is with Range:bytes=0-
, but I'm not sure it has any connection to the problem.
from icecast-kh.
not sure if you are looking any further into this, from the description, particular combinations are being stopped for playback. Obviously an application taking 2 streams and mixing them is one thing, opening 2 separate connections to the same stream may be determined as silly and not attempted. If icecast is not seeing the request then it is out of our control. I'll leave this open for a few days, let me know if you have something to add.
karl.
from icecast-kh.
It looks like we'll have to live with this behavior and Icecast can do nothing about it. I'll add more info here if I find something. Thanks for your support, Karl!
from icecast-kh.
It's a nice feature of these browsers to prevent unwanted multiple html5 audio playing the same instance of a sound.
You can easy avoid this limit in chrome adding a parameter in the url...
E.g. i can play your streams 2 times in parallel if i open:
http://mp3.nashe.ru/best-128.mp3?foobar=1
http://mp3.nashe.ru/best-128.mp3?channel=2
from icecast-kh.
And one connection seems to remain pending because it implement a queue, if you use it from javascript Audio() it start playing just after you close the tab with the playing connection
from icecast-kh.
Thanks Stefano! I would say it's a misfeature, but now at least I know what to do with it.
from icecast-kh.
yes is a bit strange also me thought at a bug at first time, but now it find it useful because i'm lazy and i used it to implement a mobile webradio using soundmanager2 that uses html5 audio() api, i can call it onpageload and this behaivor prevents my listeners from strange things when they open a new tab (the webradio also has some webpages for djs and they navigate it) anyway i know i can't rely only on this so i implmented also a cookie/localstorage state tracking for the player, but this is a strong layer of protection for me
from icecast-kh.
Related Issues (20)
- kh22 Icecast crashes HOT 7
- Server: header does not honour server-id HOT 1
- Infinite redirect with Safari and very long URLs since kh21.7
- now-playing info in icecast > kh17 broken on iOS devices HOT 3
- KH22: Choppy playback on iOS 17 HOT 4
- What is the command I use for an http request to reload the icecast, without having to take it down? HOT 2
- socket leak with local nginx proxy used by listener_add
- kh22 (rev ea3554b) crashes (segfault) when serving XSL files protected using htpasswd authentication. HOT 2
- kh22 (rev ea3554b) unexpected error messages using htpasswd auth on mount points
- KH22 (KH >= 21.7) Reverse Proxying Broken HOT 3
- I can't accept https stream, what am I doing wrong
- Characters in Now playing
- burst of static after preroll (formats match)
- accesslog keeps growing even if loglevel is 1
- Safari 302 redirects in kh21.7 causing CORS errors due to missing access-control-allow-origin header HOT 2
- wrong version returned from icecast --version HOT 1
- Icecast YP Directory
- Metadata with auth url enabled HOT 2
- unknown node "ssl"
- No SSL capability on any configured ports HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from icecast-kh.