Philipp Schafft
2021-Dec-10 11:45 UTC
[Icecast] Prefered way to check if mountpoint is in use
Good morning, On Fri, 2021-12-10 at 12:02 +0100, tyctor wrote:> hi, thanks for hints > > On Fri, 2021-12-10 at 00:27 +0000, Philipp Schafft wrote: > > This is the 'correct' way. There is no point in checking first > > beside > > creating an extra race condition and more ways for the check to go > > wrong. ;) > > > > understand, no check, just to try to run ezstream, while mount point > is not in use, am i right?yes. Maybe it also has a auto-reconnect option.> > > Generally I would suggest to have a look at <on-disconnect>, > > "mount_remove" option for URL auth, as well as the "source- > > disconnect" event (Icecast 2.5.x). > > > > Those can provide triggers. > > <on-disconnect> should be the best way, but it seems not working in > version 2.4.4-1 which we are usingI'm not aware of any bugs regarding it for 2.4.4. However: * Please note that the option takes the path to what is to be executed. This is not passed to a shell so you can not include any commandline arguments. A set of standard arguments and a basic ENV is passed to the binary/script. * (Not the case for you) IPC functionality such as this may be limited on Windows systems.> this seems is latest version in ubuntu 18.04 > > $ apt-cache policy icecast2 > icecast2: > Installed: 2.4.4-1 > Candidate: 2.4.4-1 > Version table: > *** 2.4.4-1 500 > 500 > http://download.opensuse.org/repositories/multimedia:/xiph/xUbuntu_18.04 > ./ Packages > 100 /var/lib/dpkg/status > > > or is there 2.5.x package, for ubuntu 18.04?We are currently working on changing infrastructure here a bit. There is this repo you could have a look at: https://download.opensuse.org/repositories/home:/stephan48:/branches:/multimedia:/xiph:/beta/xUbuntu_18.04/ /!\ However it is at your own risk: it contains non-released code as well as repo URL can/will change later on. /!\> > I just wonder why not just send the backup signal to the fallback > > all the time. > > probably i am not clearly understanding how you mean this :o) > could you please describe it more?I understand your setup this way: When there is no "master signal" you want some kind of fallback signal that is provided by ezstream. And you already have some source that provides a fallback: Why not let ezstream run all the time and provide the fallback? This would make the setup much less complicated. With best regards, -- Philipp Schafft (CEO/Gesch?ftsf?hrer) Telephon: +49.3535 490 17 92 L?wenfelsen UG (haftungsbeschr?nkt) Registration number: Bickinger Stra?e 21 HRB 12308 CB 04916 Herzberg (Elster) VATIN/USt-ID: Germany DE305133015 -------------- next part -------------- A non-text attachment was scrubbed... Name: signature.asc Type: application/pgp-signature Size: 228 bytes Desc: This is a digitally signed message part URL: <http://lists.xiph.org/pipermail/icecast/attachments/20211210/aee8af0e/attachment.sig>
thanks for your reply On Fri, 2021-12-10 at 11:45 +0000, Philipp Schafft wrote:> Good morning, > > On Fri, 2021-12-10 at 12:02 +0100, tyctor wrote: > > hi, thanks for hints > > > > On Fri, 2021-12-10 at 00:27 +0000, Philipp Schafft wrote: > > > This is the 'correct' way. There is no point in checking first > > > beside > > > creating an extra race condition and more ways for the check to > > > go > > > wrong. ;) > > > > > > > understand, no check, just to try to run ezstream, while mount > > point > > is not in use, am i right? > > yes. Maybe it also has a auto-reconnect option. >ok, i will try newer version of ezstream, if it have auto-reconnect option we are using 0.5.6 and there is already 1.0.2> > > Generally I would suggest to have a look at <on-disconnect>, > > > "mount_remove" option for URL auth, as well as the "source- > > > disconnect" event (Icecast 2.5.x). > > > > > > Those can provide triggers. > > > > <on-disconnect> should be the best way, but it seems not working in > > version 2.4.4-1 which we are using > > I'm not aware of any bugs regarding it for 2.4.4. > However: > * Please note that the option takes the path to what is to be > executed. This is not passed to a shell so you can not include any > commandline arguments. A set of standard arguments and a basic ENV > is passed to the binary/script. > * (Not the case for you) IPC functionality such as this may be > limited > on Windows systems.good to hear that it should work i checked setup and i found, that owner of that file wasn't icecast2 user so maybe that was point why it not working, we will se now> > > this seems is latest version in ubuntu 18.04 > > > > $ apt-cache policy icecast2 > > icecast2: > > Installed: 2.4.4-1 > > Candidate: 2.4.4-1 > > Version table: > > *** 2.4.4-1 500 > > 500 > > http://download.opensuse.org/repositories/multimedia:/xiph/xUbuntu_18.04 > > ./ Packages > > 100 /var/lib/dpkg/status > > > > > > or is there 2.5.x package, for ubuntu 18.04? > > We are currently working on changing infrastructure here a bit. > There is this repo you could have a look at: > https://download.opensuse.org/repositories/home:/stephan48:/branches:/multimedia:/xiph:/beta/xUbuntu_18.04/ > > /!\ However it is at your own risk: it contains non-released code as > well as repo URL can/will change later on. /!\ > > > > > I just wonder why not just send the backup signal to the fallback > > > all the time. > > > > probably i am not clearly understanding how you mean this :o) > > could you please describe it more? > > I understand your setup this way: When there is no "master signal" > you > want some kind of fallback signal that is provided by ezstream. And > you > already have some source that provides a fallback: Why not let > ezstream > run all the time and provide the fallback? This would make the setup > much less complicated. >our setup is like this: - mountpoint radio - main mount point where all clients are connecting, here we are streaming live shows, it has fallback-mount loops - mountpoint loops - when is brodcast day, we streaming here jingles and loops, so when next live show is preparing, this is what clients listening, while next live show is started, it has fallback-mount archive - mountpoint archive - here we are nonstop streaming our old shows, so when no live stream is available and no loops is available this is what clients are listening so we have live DJs show, and we also have prerecorded DJs shows if DJ cant came to studio, it can send prerecorded DJ set, and it will play in exact time, when his show was planned prerecorded DJ sets are playing automatically by ezstream but if broadcast day is mixed from live and prerecorded shows sometimes happens that live show last little bit longer and when ezstream starts planned prerecorded show, it need to wait while previous live show will release mount point so this is the cause why i want to start streaming exactly when mount point is released but if newer version of ezstream wll have auto-reconnect option it will solve this best regards tyctor