karlheyes / icecast-kh

KH branch of icecast
GNU General Public License v2.0
300 stars 107 forks source link

./icecast.exe -v Doesn't work in Windows (2.4.0-kh20.5) #412

Closed Docteh closed 1 year ago

Docteh commented 1 year ago

Icecast from icecast.org for reference:

$ icecast.exe -h
Icecast 2.4.4

usage: icecast [-b] -c <file>
or   : icecast {-v|--version}
options:
        -c <file>       Specify configuration file
        -v or --version Display version info
        -b              Run icecast in the background

With icecast-kh -h and -v give similar errors, even asking for background mode with -b it doesn't like image

./icecast.exe . -c icecast.xml gets image

This works: ./icecast.exe -c icecast.xml

karlheyes commented 1 year ago

probably needs a clean up on the calling convention, the issue for windows is that there is a need for a way to install as a service as the primary way for windows. You can start with the normal way from a console as well. There is no background option with windows, so that message from 2.4.4 is some generic messaging for all platforms.

With the kh tree it is

icecast install icecast remove icecast -c ...xml

It's not really geared up for multiple service installs on windows without some work, although the app can run concurrently. I can re-arrange the top level to show the usage cases better

karl

Docteh commented 1 year ago

Thanks for the info. I've been running icecast from a console, so I noticed the lack of the -v flag because I modified icecast-2.4.4's icecast.bat and stuck it in the 2.4.0-kh20.5 directory. They're doing .\bin\icecast.exe -v followed by echoing some information about default port, and finally .\bin\icecast.exe -c .\icecast.xml

Another issue I noticed that seems to be just 2.4.0-kh20.5 is that with a single relay configured on-demand after I use it once and the run-on timer elapses, the Mount Point disappears from the status page, and when I try connecting again the server dies. kh-20.3 works fine. I guess if I was running it as a service, it'd immediately restart. But I'm preferring to run this only when I actually need it.

karlheyes commented 1 year ago

I've done a rearrangement on the initial routine to report the usage more, the actual acceptable parameters is the same.

Regarding the run-on relay. I've done a test here with run-on and it restarts the stream here ok. There has been a fair bit of change in the xsl handling which had some issues and that could have a knock on effect on a restart of a relay. For clarity in such cases, the relay on run-on expiry shuts down to a inactive relay status, so the stats will be flushed out (not appear on xsl) then it will re-establish with some stats ready to go (appears). It may trigger a delay between those latter 2 stages if the stream was not active for about a minute.

raise a report of this is still a problem in the next update, it may be down to some combination not immediately apparent. One thing that I think now applies is that the minimum version of windows is higher just because some of the dependent DLLs have changed their requirements. So win7 won't work unless a DLL is distributed. At this point though I don't know what a reasonable version of windows expectation is.

karl