PDA

View Full Version : SHOUTcast DNAS 2 (Build 29) 07/31/2011


DrO
25th July 2011, 15:23
This build is our latest GM release candidate and introduces new features as listed in the “Changes” section below, as well as addresses bugs reported in the previous RC builds.

This release is now available for the following platforms: Windows 32-bit (Windows 2000 and up)
Windows 64-bit (Windows XP64 and up)
Linux
Linux 64-bit
Mac OS X (Intel)
BSD 8.x

Downloads

You can download the updated version of the DNAS v2 from the direct downloads for the operating system version you require: Windows (32-bit) (http://download.nullsoft.com/shoutcast/tools/sc_serv2_win32_07_31_2011.exe)
Windows (64-bit) (http://download.nullsoft.com/shoutcast/tools/sc_serv2_win64_07_31_2011.exe)
Linux (32-bit) (http://download.nullsoft.com/shoutcast/tools/sc_serv2_linux_07_31_2011.tar.gz)
Linux (64-bit) (http://download.nullsoft.com/shoutcast/tools/sc_serv2_linux_x64_07_31_2011.tar.gz)
Mac OS X (Intel) (http://download.nullsoft.com/shoutcast/tools/sc_serv2_mac_os_x_intel_07_31_2011.tar.gz)
BSD 8.x (32-bit) (http://download.nullsoft.com/shoutcast/tools/sc_serv2_bsd_8_x_07_31_2011.tar.gz)

Changes

Build 29 (07/31/2011): Changed SHOUTcast 2 client header to show the DNAS's actual version instead of just 'SHOUTcast 2.0'
Fixed SHOUTcast 2 compatible clients only allowed to connect as a SHOUTcast 1 client (build 27 / 28 specific)
Fixed more config files being shown than allowed on non-Windows versions when no configuration file specified

Build 28 (07/25/2011): Added listen.asx to the /listen* playlist options available (so now pls, m3u and asx are available on a stream)
Added detection of sc_serv.ini if no configuration file was passed on loading (detects v1 configuration files)
Added 'type=xml' parameter to the 'updinfo' action to allow for v2 style XML metadata titles to be manually done
Changed streampath handling to allow '/' to be used again (was disabled in build 27)
Fixed kicking of listeners failing to respond / taking multiple attempts to react
Other miscellaneous code changes, improvments and related documentation updates
Everything else listed since the first v2 beta release (build 7)


Getting Started

If you already have a running instance of the DNAS v2 then there should not be any issues with replacing your current version with this new version.

If this is a new install then make sure to read through the information in 'docs\getting_started.txt' along with the example configuration files provided in this new version which should make it easier to get started. Alternatively you should consider looking at the configuration builder which is included in the 'config_builder' folder.

Finally, all copies of the documentation can also be found online at http://wiki.winamp.com/wiki/SHOUTcast_Broadcaster


Reporting Issues

If you do come across an issue with the DNAS v2, then please do post in this thread with as much information as possible about what you're doing at the time, the system you are using and anything else which will make it easier to understand what is or isn't going on with your install.

Posts relating to authhash management issues will be ignored as this is not the thread for posting such issues.


knownKnown Issues

The following are known issues with the v2 DNAS raised in previous releases but not currently fixed / fully confirmed as needing to be fixed (i.e. intended behaviour): If the external IP is bound to a different device than the primary on the machine then the server will not work as expected (e.g. eth1 instead of eth0). This can cause the YP to fail to see the stream correctly even when destip has been correctly specified with it usually testing against the main IP of the machine. This is fixed for the next public release.
Listing a relayed stream when using the YP2 mode is known to not work and will return a 474 error code from the attempt to connect to the YP. Setting the server as non-public or using the v2 DNAS in legacy mode (yp2=0) will allow the stream to be listed but means you lose all of the YP2 features. This is fixed.
Some characters in titles (usually below ascii value 32) will cause the DNAS to drop the source connection as the title is processed. This will not be changed in the DNAS and will instead require sources to ensure they send titles without invalid titles. The Transcoder and Source DSP will be receiving these updates soon.
On non-windows versions, it is possible for the DNAS to crash with a segfault due to invalid or corrupted metadata updates. This is fixed for the next public release.
Depending on the platform version used, the realistic upper limit of client connections is currently ~300 before the DNAS begins to struggle & / or crash randomly. It is recommended to set maxuser=300 and use an additional DNAS / relay if you want to serve the stream to more listeners. This is fixed for the next public release.
Some client connections (predominantly those using the RTMP protocol) can cause the DNAS to crash due to incomplete handling in the DNAS of this protocol. The only solution is to determine the IP address of the connection and ensure it is saved to the DNAS's ban list or attempt to add it to the system's firewall for inbound connections not allowed (depending on the OS being used). This is fixed for the next public release.
When using a v1 source connection and setting the DNAS to be listed, in some cases the now playing information will not appear on the site's listing and will just show 'Now Playing:'. This is fixed for the next public release.
The w3c log output does not contain the appropriate header values and can also output blank lines in-between the lines in the files' output. This is fixed for the next public release.
The in-stream metadata as well as intro files (if specified) will cause issues with some flash player implementations leading to the stream stuttering when played back such as once the intro file has been played. This primarily comes from how the intro file works and most flash player implementations not coping with variations in the mp3 stream data compared to dedicated media players which can re-sync to the stream data correctly. This is partially fixed for the next public release.
Some configurations will appear to loose the authhash which has been specified for a stream or the authhash is generated and not recognised. This is due to the streamid configuration option not being correctly written to the configuration file by the DNAS. See http://forums.winamp.com/showthread.php?p=2779532#remember on what is need to resolve this issue with the current release. This is fixed for the next public release.
Non-Windows builds can terminate when receiving a metadata update from the source where it contains characters in the range of 128 to 160 with an error like the following shown:

terminate called after throwing an instance of 'std::runtime_error'
what(): XML parser error: not well-formed (invalid token) at line 3

The work around is to remove those characters from the file tags or disable metadata updates or use a source which strips those character codes for you or use the Windows version of the DNAS. This is fixed for the next public release.
If a / is not specified at the start of a streampath entry e.g. streampath_1=stream instead of streampath_1=/stream then the DNAS will only provide the first stream running on the server. This is fixed for the next public release.
If running the DNAS in the Program Files folder on Windows and you do not have write access to the folder (e.g. due to UAC on Vista and higher), when selecting a config file on the command-line the DNAS may crash. The workaround is to run the DNAS in a different folder which has write permissions or specify the configuration file to use directly (drag + drop the config file onto sc_serv.exe or create a batch file e.g. sc_serv sc_serv.conf and run that). This is fixed for the next public release.


Additional Information

Windows versions of the DNAS v2 are built with a dependency against the Microsoft Visual C++ 2008 SP1 Redistributable Package. If sc_serv is unable to start due to a dependency issue then you will need to install the correct version of the package so it can run which depends on the version of sc_serv you are attempting to run:

32-bit - http://www.microsoft.com/en-us/download/details.aspx?id=5582
64-bit - http://www.microsoft.com/en-us/download/details.aspx?id=2092


Discussion about the previous version of the server including changelogs can be found in the following threads
SHOUTcast DNAS 2 RC2 (Build 28) (http://forums.winamp.com/showthread.php?t=333071)
SHOUTcast DNAS 2 RC (Build 27) (http://forums.winamp.com/showthread.php?t=332575)
SHOUTcast DNAS 2 Beta (Build 18 + 19) (http://forums.winamp.com/showthread.php?t=327489)
SHOUTcast DNAS 2 Beta (Build 17) (http://forums.winamp.com/showthread.php?t=327792)
SHOUTcast DNAS 2 Beta (Build 13 + 14) (http://forums.winamp.com/showthread.php?t=326248)
SHOUTcast DNAS 2 Beta (Build 10) (http://forums.winamp.com/showthread.php?t=324842)
SHOUTcast DNAS 2 Beta (Build 7) (http://forums.winamp.com/showthread.php?t=317230)-daz

SC_faisal
29th July 2011, 15:58
Amazing milestone! This is essentially our GM / release build. This is the result of more than 1.5 years of hard work! The work continues but this is our 2.0 GM release.

Awesome work Darren and thanks to countless beta testers for sending in bug reports and being patient thru the months... Hope your patience pays off in what is a great release.

Cheers
f.

DrO
31st July 2011, 10:53
quick update of the build available (now at build 29) to resolve an issue found over the weekend by DaWolfey (see the build 28 thread for more details). otherwise enjoy!

-daz

DaWolfey
1st August 2011, 16:33
I can confirm that the winamp always connecting as shoutcast1 bug is fixed.

DigiBC
1st August 2011, 20:25
The latest build 29 seems to work well! :up:
(I'm using the 64-bit version with Windows 7.)

However, I've discovered an issue when using the (new) "Playing Artwork" option with the Winamp DSP Plug-in v2.2.3.
When enabled each track change causes audible desyncs at the beginning of the new track - no matter if I use Windows Media Player v12 or Winamp v5.621 as client software. Winamp also displays a high number of desyncs. (As expected no problems with "Stream Artwork".)

My source audio files (FLAC) contain 256 x 256 px artwork (JPG), the SHOUTcast stream is AAC LC at 128 kbps.

Any idea...? :confused:

DrO
8th August 2011, 12:45
DigiBC: artwork of that size shouldn't even be sent to the DNAS so shouldn't be leading to any issues like that happening. especially as WMP12 is a v1 client whereas Winamp 5.621 is acting as a v2 client so it seems a bit weird - i'd have possibly expected it when played in Winamp but not WMP. will look into it though sounds like it's probably the issue with the DSP thinktink's been seeing for a while which i've not been able to reproduce.

-daz

DaWolfey
8th August 2011, 23:31
There is a bug when using this build and Shoutcast 2 clients together, but there are several variables I am not sure of - but I can tell you this for sure.

If you use ices0.4 (which uses the Shoutcast 1 protocol) as the Source, and stream a song with UTF8 tags to DNAS 2, if you have a Shoutcast 2 Client two things happen:

1. The artist/title display is messed up
2. When the client disconnects, DNAS crashes.
DNAS debug log:

2011-08-09 00:28:53 I msg:[DST 192.168.202.10:59654 sid=1] SHOUTcast 2 client connection accepted. WinampMPEG/5.62, Ultravox/2.1
2011-08-09 00:28:53 D msg:state_InitiateStream
2011-08-09 00:28:53 D msg:resetReadPtr readPtr=97116 amt=4103
2011-08-09 00:28:53 D msg:state_InitiateStream sending metadata Z9<?xml version="1.0" encoding="UTF-8" ?>
<metadata>
<TIT2>¸ýqÎD (·ë¯íüÉ{1) - HVn^kHð~ØÏ [blame user]</TIT2>
</metadata>

2011-08-09 00:28:53 D msg:state_SendCachedMetadata
terminate called after throwing an instance of '2011-08-09 00:29:00 E msg:[DST 192.168.202.10:59654 sid=1] Socket error while waiting to send data. err=Broken pipe(32)
2011-08-09 00:29:00 D msg:[THREADRUNNER] Removing protocol_shoutcast2Client from thread 0
2011-08-09 00:29:00 D msg:~protocol_shoutcast2Client
2011-08-09 00:29:00 I msg:[DST 192.168.202.10:59654 sid=1] SHOUTcast 2 client connection closed (7 seconds) [Bytes: 114884] Agent: `WinampMPEG/5.62, Ultravox/2.1'
2011-08-09 00:29:00 D msg:[STATS] System wide client total now 0
std::runtime_error'
what(): XML parser error: not well-formed (invalid token) at line 3
Aborted


A Shoutcast 1 client (Foobar in this case) doesn't crash on disconnect, but the artist/title display is also messed up.

Also, if the Source is the Transcoder (build 51 tested), DNAS doesn't crash on either version client. (but the tags are messed up)

DigiBC
9th August 2011, 00:06
@DrO:

According to the notes of the DSP the filesize of artwork is restricted to 511 KB.
I would assume that filesize is more relevant than the actual resolution of the embedded pictures.

The FLAC files I've tested so far contain artwork which is less than 75 KB (JPG) or 170 KB (PNG). So that's well below the mentioned limit.
The artwork is displayed without problems when I access the admin pages of the DNAS in "artwork mode" (admin.cgi?sid=#&mode=art&art=playing). Still it's not showing in Winamp v5.621; maybe the artwork feature isn't implemented yet...

I will do some more tests with different configurations, filesizes and bitrates. Also AAC and MP3 streams may show a different behaviour...

Anyway, I wonder if I will actually use the neat artwork feature if there will remain some incompatibility issues with (the majority of) v1 clients...

DrO
9th August 2011, 09:21
DigiBC: ignore my prior comment about the size as i tried to do it in my head and messed up.

Winamp doesn't support showing of the artwork as i've not had the time to implement it into the client.

Anyway, I wonder if I will actually use the neat artwork feature if there will remain some incompatibility issues with (the majority of) v1 clients...it most likely is an issue with the DSP but i'm not sure until i can check it out i.e. i've got a load of other things to look into from my week off before i can look into such things. either way as long as i can reproduce the issue when i get around to looking into it then it will be fixed in whichever of the tools is causing the issue (as has been done with the other issues reported and reproduced). you just have to bear with things a bit as any new code will have some quirks no matter what testing is done.

-daz

DrO
9th August 2011, 09:28
If you use ices0.4 (which uses the Shoutcast 1 protocol) as the Source, and stream a song with UTF8 tags to DNAS 2, if you have a Shoutcast 2 Client two things happen:

1. The artist/title display is messed up
2. When the client disconnects, DNAS crashes.what you've posted contains invalid utf-8 characters from what i can tell (appears to contain SOH and STX control characters). if you can provide an example file with the actual tag that is present then i'll try to look into the issue and see what can be done to improve things though i'm not sure what at the moment since there's already a number of checks in place in the DNAS to attempt to sanitise titles sent from v1 sources.

Also, if the Source is the Transcoder (build 51 tested), DNAS doesn't crash on either version client. (but the tags are messed up)that is because the Transcoder will clean up any xml from the source before it is sent to the DNAS which is something added to the recent DSP and Transcoder builds.

-daz

DaWolfey
9th August 2011, 09:32
I emailed you early this morning with two example mp3s.

I wouldn't trust the quoted text here, look at the tags of the mp3s I have sent.

DrO
9th August 2011, 09:34
got it, hadn't checked my email until now. and from a quick look at the tags, it's ID3v1 and ID3v2.4 in them. will have a play with them when i've got a moment to see what is / isn't going on, thanks.

-daz

dannyy94
10th August 2011, 13:50
ROSERVER] Could not call accept() on socket because Too many open files
2011-08-10 17:49:32 E msg:[MICROSERVER] Could not call accept() on socket because Too many open files
2011-08-10 17:49:32 E msg:[MICROSERVER] Could not call accept() on socket because Too many open files
2011-08-10 17:49:32 E msg:[MICROSERVER] Could not call accept() on socket because Too many open files
2011-08-10 17:49:32 E msg:[MICROSERVER] Could not call accept() on socket because Too many open files
2011-08-10 17:49:32 E msg:[MICROSERVER] Could not call accept() on socket because Too many open files
2011-08-10 17:49:32 E msg:[MICROSERVER] Could not call accept() on socket because Too many open files
2011-08-10 17:49:32 E msg:[MICROSERVER] Could not call accept() on socket because Too many open files
2011-08-10 17:49:32 E msg:[MICROSERVER] Could not call accept() on socket because Too many open files
2011-08-10 17:49:32 E msg:[MICROSERVER] Could not call accept() on socket because Too many open files
2011-08-10 17:49:33 E msg:[MICROSERVER] Could not call accept() on socket

I keep experiencing console flood of the above error. Server is running with around 300+ listeners on a 1GB ram VPS running centos linux 32 bit

Thanks Danny

DrO
10th August 2011, 13:59
you've hit the socket limit for what is being allowed in your VPS. you could check what the current limit is set as using ulimit -a and then try to use ulimit -n xxxx to increase it. but it's probably likely it's been limited on purpose and would be something best discussed / checked with your hosting provider.

-daz

MrSinatra
12th August 2011, 07:11
since the DSP and DNAS can now stream artwork, when will the client be able to display it?

also, if i have build 19 or 23, can i just install build 29 (or newer) over the top of it without needing to redo my config files?

thx for the great progress being made!

DrO
12th August 2011, 10:07
since the DSP and DNAS can now stream artwork, when will the client be able to display it?when i get some time to do it :)

if i have build 19 or 23, can i just install build 29 (or newer) over the top of it without needing to redo my config files?you can replace sc_serv.exe directly and there shouldn't be any need to change anything in the DNAS config files (unlike with the Transcoder where a re-basing of the multi options was needed). you can run the installer over the top and it should backup the example config files incase they've been edited so they won't be lost.

-daz

diversity
27th August 2011, 15:22
Hey guys,

For my SHOUTcast v1 station I'm parsing the XML obtained from /admin.cgi?sid=1&mode=viewxml so that I can display some meta info on my station's homepage.

The script that I have to parse the XML is crashing occasionally due to malformed XML. I have attached the .xml that caused this error. If you open in Firefox it should point you to the Line and Column # where the error occurs. Note that this is an issue that has come up in the latest GC builds and wasn't occuring in older beta builds. Hopefully we can get some traction on this issue because I bet a bunch of us rely on this data obtained from the XML file.

Cheers,
diversity

xml: 49077

jaromanda
27th August 2011, 15:53
would that be the invalid characters in the song title (hex 0x1c and 0x1d) causing the problem?

diversity
27th August 2011, 16:54
would that be the invalid characters in the song title (hex 0x1c and 0x1d) causing the problem?
Yes, the problem is definitely occuring because of 0x1c and 0x1d. Here is the offending track as seen by sc_trans:

2011-08-27 09:46:41 I msg:[SHOUTCASTMETADATA] Metadata string [Pantha Du Prince - XI versions of Black Noise - Efdemin version of “Stick To My Side”]

So how do those quotes get translated into those hex characters?

aktiveradio
27th August 2011, 21:04
I see a Know issues: If the external IP is bound to a different device than the primary on the machine then the server will not work as expected (e.g. eth1 instead of eth0)

I think this could be the problem I am seeing, I have SC on a Amazon EC2 instance and they way they do IP on EC2 is that there is a internal IP 10.x.x.x and then a translation to a real IP.

everything is running source connected but when I try and click the listen link I get the internal IP 10.x.x.x in the listen.pls file. If I edit the file and put in the public IP I still don't get any music so not sure if this is a miss configuration or part of this known issue.

DrO
28th August 2011, 19:35
diversity: it's because they're not basic quotes like " and with some character mappings, things don't go to what would be taken as a valid utf-8 character.

the DNAS will only parse out potentially invalid utf-8 if the source passed it invalid characters to begin with. the official tools have been changed (with a further update for the Transcoder) to not send invalid characters to the DNAS, but there's not too much which can be done about invalid characters coming from other sources to begin with.

there is a change for the next release of the v2 DNAS which fixes an issue with such invalid characters which causes it to crash on non-Windows versions, otherwise, it'll just ignore the title received.

or am i missing the point on what you're trying to report?

-daz

DrO
28th August 2011, 19:38
aktiveradio: it sounds like the point you've quoted from the known issues. there are changes being made as it requires the YP and DNAS to be changed to work. the YP change has been pushed live as part of the fixes pushed in to production during the last 2 weeks of issues with the platform (now resolved i hope). the DNAS change was only implemented into the internal build on thursday and that still needs some more testing.

so hopefully, once testing has been completed and tested, you'll be able to run it in the manner that you (and others) are wanting to do so.

-daz

diversity
28th August 2011, 19:47
or am i missing the point on what you're trying to report?
-daz


No that's basically it. I guess I'll just have to write a script to fix some of my ID3 tags... What characters are considered invalid?

DrO
28th August 2011, 20:22
it's basically ascii and extended ascii control characters which is basically the following decimal values:

0 - 31 (excluding 9 (tab), 10 (carriage return), 13 (new line))
128 - 159 (half of these can be valid but depends on font quirks, etc, so just not supporting them)

-daz

diversity
11th September 2011, 18:53
Hey guys,

When running with the yp1 protocol, I am able to set displaymetadatapattern=%R[ - ]%A[ - ]%N in sc_trans.conf. This means that the <TITLE> element in song history xml (/admin.cgi?sid=1&mode=viewxml&page=4) is formatted as specified by displaymetadatapattern.

However, when running the yp2 protocol, I am unable to get the album (%A) to appear inside <TITLE>. The title always displays as %R[ - ]%N. E.g.,

<SONG><PLAYEDAT>1315765655</PLAYEDAT><TITLE>Tekniq - Slamdown</TITLE></SONG>

I realize that I can get the full metadata info from page=5, but this is only for the current and upcoming tracks. The song history (which I'm mainly interested in) does not have the full metadata, only the artist and song title . Is there a way i can configure sc_trans to set how the song history metadata is displayed?

Thanks,
diversity

DrO
12th September 2011, 13:47
diversity: what is shown in the song history is created from the metadata received (v2 mode) or the title (v1) from the source.

back in build 17, the default client title format was changed back to be artist - title instead of artist - album - title (with a similar default change in sc_trans afterwards) as it was causing client title issues and due to all of the v1 platform working against artist - title. as such it made more sense to revert it to the v1 format.


so as you're seeing, the DNAS is taking the metadata received v2 mode and attempting to create artist - title for it for when it's shown on the song history and now playing views.

so as you can see, there's nothing in sc_trans which can change the displayed title in v1 mode. i'll have to think about it all since i don't think the current / next titles should be changed if there was an option to customise the song history (which is currently all coming from the same formatting function) so that on the summary / admin pages it would look like how clients will see it.

the other option (which would save having to add a new config option to keep the option bloat complaints happy) is to make the DNAS use the <title seq=x></title> info if there is now playing information (which will be formatted in the way required from sc_trans) and store that for the song history whilst leaving everything else for the clients running as is.

-daz

DrO
12th September 2011, 15:40
as a followup on the prior post, the DNAS will be changed in the next version to use the title provided from the source in v2 mode if it provides the now and next song titles otherwise it will fallback to the current behaviour of basing it on the metadata provided.

the change also means that /currentsong will show the fuller title (from the scenario covered) if it is available in the same manner so it better matches with the next and history (seeing it in use made it look like a bug in the DNAS despite not being). that will not affect what is sent to clients however which will still be provided 'artist - title' or the title received if running in v1 mode.

so hopefully that will cover what's being asked for without causing issue for the majority of people running things at the default settings.

-daz

diversity
12th September 2011, 19:58
Thanks daz :)

bputney
17th September 2011, 17:46
I'm sure this has been covered somewhere. Forgive the newbie question...

Has Solaris/Sparc fallen off the supported list. I see in references on the SHOUTcast web site that Solaris is a supported server platform but I don't see a download for it anywhere.

We're a small community FM NCE station and we'd like to stream. I have a Sparc/Solaris 10 server that is in a very well connected site with lots more bandwidth than we can ever use. I can't really change that server for a number of reasons hence my question.

Thanks, Bill Putney
KPTZ 91.9 FM Radio Port Townsend, WA

DrO
17th September 2011, 17:53
had just replied to your other post asking about this at http://forums.winamp.com/showpost.php?p=2802854&postcount=14 but to summarise, there is no Sparc support anymore (you're the first person to even mention Sparc that i've read about in a long long time either here or elsewhere).

-daz

bputney
17th September 2011, 18:28
Oh bother!

I'm not as worried about "support" but since the sources are closed, it doesn't look like compiling DNAS for this environment is an option either.

Do you have any suggestions for streaming server software that runs on Sparc/Solaris 10 that is available. I guess I'm not all that hung up on SHOUTcast though it would be nice since my transmitter can use it as an audio source if the Studio Transmitter Link goes down.

Thanks, Bill

DrO
17th September 2011, 22:01
nothing else comes to mind and even from a quick look, i cannot find any of the old sparc compiles (which i thought were still around somewhere in cvs, etc).

-daz

WizardX
25th September 2011, 17:03
Is there any expected availability for build 30? Still waiting to have a version which solves the usages of different ip addresses. From that point we can put it into production in our opinion.

DrO
25th September 2011, 17:07
build 30 is long gone internally.

there isn't any eta on a new release especially as certain features aren't completed / finished testing like the one you're referring to which is pending feedback from a tester at the moment (as it requires DNAS and YP changes - the YP changes have been deployed but may need to be tweaked pending test results).

-daz

WizardX
25th September 2011, 17:24
I'm willing to contribute. I own a bunch of machines in a owned environment/network. If you'd like me to setup a test machine, let me know.https://lh6.googleusercontent.com/-4OAiW2SrYfA/TiNa-7YrbLI/AAAAAAAAAB4/wwgHgrNQzMQ/s144/2011-06-29%25252022.18.51.jpg

DJ_MELERIX
28th September 2011, 06:40
will SHOUTcast 2 include a "official" GUI someday ?

like in SHOUTcast 1

MrSinatra
28th September 2011, 08:17
i believe DrO has said he is considering it, but hasn't yet decided. (i'd like it too tho).

DrO
28th September 2011, 09:52
there is little benefit in a gui wrapper like the v1 DNAS had on windows unless it's done for all platform versions of the DNAS i.e. not really worth it over consistent behaviour over all of the supported platforms imho. as why should the Windows version (as i assume that's what the request is for) should get special handling over the other versions.

the one the windows version of the v1 DNAS offered nothing beneficial than a windows themed console window - yes i know there are the menu options but opening notepad or something to click instead of using ctrl+c in the console window isn't that hard to do itself. also since the DNAS allows for specifying the config file to use - the prompt in the DNAS to do it handles that and also does keep the window open which confused people just expecting to double-click and go with the earlier v2 DNAS beta builds. when working with a different tool then some adjustments do need to be made in how things work as the windows gui version before was out of place with the rest of the versions provided which isn't good imho.

i have looked at making a wrapper but to be something useful then it needs to offer proper management / control of the DNAS on all platform versions (which my brief attempt was not going to achieve).

really most of the controlling needs to be done via the web admin pages which is what i've been trying to push into the newer builds e.g. like the /setup option (screenshot attached) that i've been tinkering with so i'm not having to do weird and wonderful platform specific coding.

-daz

mixfm99
5th October 2011, 20:09
Hello. Listing a relayed stream when using the YP2 mode is still not working... We are a major station and we need the relay system. Also we want to be ONLINE on the shoutcast directory. How can we do that?

DrO
6th October 2011, 09:57
the relay is only meant to be listed in the playlist of the main tune-in pls returned. are you saying that's not working? if so i'd need some details of your listing so i can look into what the system is doing with your streams.

Also we want to be ONLINE on the shoutcast directory. How can we do that?i don't understand what you mean by that. listing a station as public is the only way to be listed in the directory.

-daz

MikeRiverra
17th October 2011, 09:13
-daz

Hi Dro,

I've sent you one PM regarding one auth hash, please help me ... because my station is down since yesterday :) and i'm loosing listeners ...

I don't know what happened, but now it does not recognize my auth key for one of my stations.

Later Edit: sorry for posting here this problem, I have solve it right now by searching the answers on forum :)

Best Regards,
Cosmin

DrO
17th October 2011, 15:30
MikeRiverra: i'll check out your pm's in the next few hours (along with all of the other ones i've received from being on holiday all of last week - had hoped my signature change made that obvious).

---------------------------------------

@anyone else who posted in this thread in the last few days: the posts made by / relating to the user 'pools' have been removed. said user has a lifetime forum ban (*) (and i will not personally help after previous run-ins) and should not be replied to unless you're happy to do so privately. and just to note, this user has caused the same issue on other forums, even causing the codemasters forum to stop accepting new user registrations for a while due to his anti-social behaviour.

(*) the only reason for keep this account alive is bryan007/pokemons/pools/insert 100+ other ban evasion, will just keep posting / making new accounts and wasting everyone's time - hence one of the reasons there is no specific eta on a new v2 DNAS release.

-daz

rsg
23rd October 2011, 16:58
Hello,

I have been experimenting with the 64-bit V2 DNAS and Transcoder 2. I am able to broadcast and things will generally run smoothly - that is until people begin to connect from external IPs, which then crashes the server. The crash, however, is never immediate, and I have been unable to finger the culprit.

I do not believe it is my ISP, as V1 works fine.

I do not think it has to do with the audio files, as I ran through a long playlist with V2 yesterday while connected via 127.0.0.1 with Winamp and there were no problems.

I do not think it is the transcoder because, again, no problems with V1 DNAS + transcoder 2.

I have tried a great number of config options and these made no difference.
The only thing that appears to be somewhat related is that the crashes seem to begin when people connect with the SHOUTcast web player. I have spent days reading through the forum and numerous posts, as well as Googling the tips of my fingers off, but all to no avail.

I will attach the transcoder and server logs for the last crash event.

Thanks

Win7 64-bit/Intel Core II Duo/6 gig ram

DrO
23rd October 2011, 20:52
rsg: can you confirm what versions of the tools you are using please (i.e. that you're on DNAS build 29 and Transcoder build 54 - the current versions at the time of this reply).

i assume you are referring to the DNAS crashing? also as you're using Win7, i'd hope there's something in the system event logs about the crash since there's nothing of use in the log file to do with any sort of crash.

-daz

rsg
24th October 2011, 12:55
Hi DrO,

DNAS build 29 / Transcoder build 54 affirmative.

Yes, it appears to be the DNAS crashing first.

There are a number of items in the system event logs pertaining to both the DNAS and Transcoder. I will go through and see if there is anything revealing. However, scanning such things is not my area of expertise, so to speak. Is there anything in particular that you might want me to send/post?

I will be trying a few other ideas in the meantime.

Thanks for your reply - I know you are busy.

Cheers,

rsg

DrO
24th October 2011, 13:08
rsg: pm sent with a link to a test build to try out.

-daz

WHITELIONX
16th November 2011, 03:14
Nevermind I got everything working as to exactly how I want/need it to work :)

GeorgeT
2nd January 2012, 22:27
Hi I have a problem, the client cannot connect to the server. The program writes a bad password Even if the password is correct. When you enter the ip and port to the browser indicates that the server is ok. What is it?
Sorry for my english :-)
sc_serv.log
2012-01-03 00:19:35 I msg:[MAIN] Logger updating log file to use
2012-01-03 00:19:35 I msg:[MAIN] Loaded config from sc_serv.conf
2012-01-03 00:19:35 I msg:[MAIN] Calculated CPU count is 2
2012-01-03 00:19:35 I msg:[MAIN] Starting 2 network threads
2012-01-03 00:19:35 I msg:[MICROSERVER] Listening for connection on port 9040
2012-01-03 00:19:35 I msg:[MICROSERVER] Listening for connection on port 9041
2012-01-03 00:19:49 I msg:[SRC 92.243.xxx.xxx:31433 sid=1] SHOUTcast 1 source connection.
2012-01-03 00:19:49 E msg:[SRC 92.243.xxx.xxx:31433 sid=1] connection denied. Bad password.
2012-01-03 00:19:58 I msg:[SRC 92.243.xxx.xxx:31435 sid=1] SHOUTcast 1 source connection.
2012-01-03 00:19:58 E msg:[SRC 92.243.xxx.xxx:31435 sid=1] connection denied. Bad password.
2012-01-03 00:19:59 I msg:[SRC 92.243.xxx.xxx:31438 sid=1] SHOUTcast 1 source connection.
2012-01-03 00:19:59 E msg:[SRC 92.243.xxx.xxx:31438 sid=1] connection denied. Bad password.
2012-01-03 00:20:00 I msg:[SRC 92.243.xxx.xxx:31440 sid=1] SHOUTcast 1 source connection.
2012-01-03 00:20:00 E msg:[SRC 92.243.xxx.xxx:31440 sid=1] connection denied. Bad password.
2012-01-03 00:20:00 I msg:[SRC 92.243.xxx.xxx:31442 sid=1] SHOUTcast 1 source connection.
2012-01-03 00:20:00 E msg:[SRC 92.243.xxx.xxx:31442 sid=1] connection denied. Bad password.
2012-01-03 00:20:00 I msg:[SRC 92.243.xxx.xxx:31444 sid=1] SHOUTcast 1 source connection.
2012-01-03 00:20:00 E msg:[SRC 92.243.xxx.xxx:31444 sid=1] connection denied. Bad password.
2012-01-03 00:20:01 I msg:[SRC 92.243.xxx.xxx:31446 sid=1] SHOUTcast 1 source connection.
2012-01-03 00:20:01 E msg:[SRC 92.243.xxx.xxx:31446 sid=1] connection denied. Bad password.

DrO
3rd January 2012, 12:26
well the DNAS keeps getting the wrong password from the source which is trying to connect (clarification of what you are using as the source would be useful), so either it is wrong in the source you're using or you've found a new bug in the DNAS (which i doubt).

-daz

GeorgeT
3rd January 2012, 23:45
well the DNAS keeps getting the wrong password from the source which is trying to connect (clarification of what you are using as the source would be useful), so either it is wrong in the source you're using or you've found a new bug in the DNAS (which i doubt).

-daz

I uninstalled the shoutcast server, cleared the registry and deleted the remaining files, but it still writes bad password :-(

DrO
4th January 2012, 08:50
i can only go on what you've posted and without _any_ of the information i've asked for in my prior reply, there is _nothing_ i can do to aid in tracking down your issue which i still think is due to the wrong details being entered in the source (whatever that is) that you are using.

-daz

GeorgeT
4th January 2012, 16:47
I'm sorry :-) So I use Virtual DJ 7 PRO

sc_serv.conf
;DNAS configuration file
;Made with the SHOUTcast 2 Configuration Builder

password=f3ntM2Cx
adminpassword=administrator
portbase=9040
requirestreamconfigs=1
logfile=sc_serv.log
w3clog=sc_w3c.log
publicserver=never
banfile=sc_serv.ban
ripfile=sc_serv.rip

streamid=1

Sorry, but I do not understand. What source? :-(

DrO
4th January 2012, 17:21
Sorry, but I do not understand. What source? :-(
So I use Virtual DJ 7 PROthat would be the source you're using. Not one i'm frequented with so i'd have to assume that it's working as a v1 source.

from the config file, it should just require 'f3ntM2Cx' to be set as the password and that should be it. if not, remove the requirestreamconfigs=1 part from the file as that will lessen some of the checks made when a source connects.

-daz

dz0ny
20th February 2012, 12:52
Hi, am using monit to monit shoutcast server service status for client. However when performin http request to stat file I've got error indicating that http response is malformed.
HTTP error: Illegal Content-Length response header 'Content-Length:549' Using browser it works just fine(no error there).

Host uses SHOUTcast Server v2.0.0.29/posix(bsd).

monit codecheck host shoutcast with address stream.xxxxxxxxx.xx
if failed url http://stream.xxxxxxxxx.xx:8000/stats?sid=1
and content != ".*<STREAMSTATUS>0<\/STREAMSTATUS>.*"
timeout 10 seconds for 1 cycles then alert

status page xml is(its nonexistent stream for purpose of testing, however it also does't work for proper stream)<?xml version="1.0" encoding="UTF-8" standalone="yes" ?><SHOUTCASTSERVER><CURRENTLISTENERS>0</CURRENTLISTENERS><PEAKLISTENERS>0</PEAKLISTENERS><MAXLISTENERS>60</MAXLISTENERS><UNIQUELISTENERS>0</UNIQUELISTENERS><AVERAGETIME>0</AVERAGETIME><SERVERGENRE></SERVERGENRE><SERVERURL></SERVERURL><SERVERTITLE></SERVERTITLE><SONGTITLE></SONGTITLE><NEXTTITLE></NEXTTITLE><STREAMHITS>0</STREAMHITS><STREAMSTATUS>0</STREAMSTATUS><STREAMPATH>/stream/2/</STREAMPATH><BITRATE>0</BITRATE><CONTENT></CONTENT><VERSION>2.0.0.29 (posix(bsd))</VERSION></SHOUTCASTSERVER>

DrO
21st February 2012, 10:46
never having heard of monit before, i can only assume from what you've posted it doesn't like how things are returned since if it's ok in a browser then it cannot be completely broken. would probably say this is more something to direct towards monit to better advise than here (as it's not something i'm in a position to look into for some time to come).

-daz

endrogeri
24th February 2012, 10:05
Hi!

Please help me, I have Segmentation fault at more then 500 user. Last msgs this:

2012-02-24 11:54:05 D msg:[YP2] pvt_update key=1
2012-02-24 11:54:05 D msg:[YP2] pvt_update key=2
then connect and die:
2012-02-24 11:54:05 I msg:[YP2] Connecting to yp.shoutcast.com

I use linux, stable debian version. I can send debug if you need. 64bit version, 1.8 core2duo and 4gb ram.

DrO
24th February 2012, 10:25
all i can direct you at is the suggestions made in point #4 at http://forums.winamp.com/showthread.php?p=2790357#known (which is the first post of this thread...) and set the maxuser limit to ~500 and run a secondary DNAS instance until the issue is fully investigated and fixed (i.e. when i get the proper time to look into a fix for whatever is going on).

-daz

DrO
22nd March 2012, 23:55
as people seem to have a complete issue with reading the log files and / or noticing the error (and warning) messages, i'm considering making the console output like in the attached screenshot (at least for the Windows builds - still need to sort out changes for the non-Windows builds).

my point really is, is this going to really annoy people (since it won't be able to toggled on/off) or is it actually going to make things easier to identify if there is a problem when using console output? since it passed the gf test as she's little knowledge about such things but at least recognised there was an issue even without knowing what things meant.

-daz

MrSinatra
23rd March 2012, 05:17
do u mean a wrapper like v1 was? i liked the way i could watch connections in v1.

DrO
23rd March 2012, 08:15
this is just showing the output shown in the Windows console window. i've no plans to bring back a v1 wrapper like the Windows build had. the emphasis now is more on using the web interfaces for the management and viewing of information about what is going on.

not saying there isn't a chance of an external wrapper but as i've not done linux gui programming in years, it's not too high up on things i want to work on since i'd prefer to provide something which is consistent across all platforms as is done with the v2 DNAs in it's console form now.

-daz

zetaf
23rd May 2012, 01:31
am just curious, when can we see a stable release of this script?

DrO
1st June 2012, 16:01
what script?

-daz

NitrofishRadio
2nd June 2012, 01:52
LOL @ DrO... Pretty stable once you get it setup correctly. My server does not come down unless I shut it down.

I did have some problems at first, but this was due to bad ID3 tags and invalid configuration. With the help of these forums and some pretty nice people, it's all sorted out and running rock solid delivering my stream.

smfrockstation
20th June 2012, 11:11
Hi I have a problem, the client cannot connect to the server. The program writes a bad password Even if the password is correct. When you enter the ip and port to the browser indicates that the server is ok. What is it?
Sorry for my english :-)
sc_serv.log



I found same error when I start DNAS 2 B.29 64bit

Shoutcast Log :
********************************
2012-06-20 17:09:15 I msg:[DST 61.63.39.74:59109 sid=1] SHOUTcast 1 client connection accepted. Java/1.6.0_29
2012-06-20 17:09:16 E msg:[DST 61.63.39.74:59109 sid=1] Socket error while waiting to send data. err=Broken pipe(32)
2012-06-20 17:09:16 I msg:[DST 61.63.39.74:59109 sid=1] SHOUTcast 1 client connection closed (1 seconds) [Bytes: 13032] Agent: `Java/1.6.0_29'
2012-06-20 17:09:16 I msg:[DST 61.63.39.74:59130 sid=1] SHOUTcast 1 client connection accepted.
2012-06-20 17:09:16 I msg:[DST 61.63.39.74:59129 sid=1] SHOUTcast 1 client connection accepted. Lavf53.13.0
2012-06-20 17:09:16 I msg:[DST 61.63.39.74:59131 sid=1] SHOUTcast 1 client connection accepted. NSPlayer/4.1.0.3856
2012-06-20 17:09:16 I msg:[SRC 61.63.39.74:59133 sid=1] SHOUTcast 1 source connection.
2012-06-20 17:09:16 E msg:[DST 61.63.39.74:59131 sid=1] Socket error while waiting to send data. err=Connection reset by peer(104)
2012-06-20 17:09:16 E msg:[SRC 61.63.39.74:59133 sid=1] connection denied. Bad password.

********************************

messages log :
********************************
Jun 20 17:09:16 metal kernel: sc_serv[7141]: segfault at 0000000000000000 rip 000000320dc60694 rsp 0000000042a4c7b0 error 4
********************************

Then my shoutcast will crashed and stopped. It crashed twice a day.
Please help !!!

My Machine > CentOS 5.x 64bit

DrO
20th June 2012, 11:17
/me bangs head on desk

smfrockstation: this has been covered in you previous thread -> http://forums.winamp.com/showthread.php?t=345581 though at least you've now provided actual information which confirms it as issue #6 from the known issues.

the fix is to block 61.63.39.74 by doing something like is described in http://forums.winamp.com/showpost.php?p=2828090&postcount=5 until an updated DNAS is released.

-daz

smfrockstation
20th June 2012, 11:26
Thank you very much.
Now I have just blocked the ip 61.63.39.74 from iptables.

nwgator
21st July 2012, 02:29
It's done something like this for the past couple days... is it a metadata issue causing it to do this? The server connection isn't dropping when this happens.

Edit:

This is when using the most up-to-date version of sc_serv and sc_trans.

I looked in the sc_trans log as well, but there's not really anything of interest in there.

AOL_logger::message&) Error writing to console - write issue
2012-07-20 21:42:41 D msg:gotResponseRequest key=13 cmd=2
Response body=[
<yp version="2"><resp seq="1"><updatefreq>600</updatefreq><publicip>199.15.252.149</publicip></resp></yp>
]
Response code=[200]
2012-07-20 21:42:41 E msg:virtual void AOL_logger::consoleLogger_element::log(const AOL_logger::message&) Error writing to console - write issue
2012-07-20 21:43:25 D msg:[YP2] pvt_update key=15
<?xml version="1.0" encoding="utf-8"?>
<yp version="2">
<cmd op="update" seq="1">
<id>122123</id>
<authhash>HIDDEN</authhash>
<source>Promo Only</source>
<stats>
<listeners>0</listeners>
<avglistentime>0</avglistentime>
<newsessions>0</newsessions>
<connects>0</connects>
</stats>
<metadata>
<title seq="1">The Cab - La La (Feelgud Remix)</title>
<title seq="2">Shelly E. Johnson - All Things Beautiful</title>
<title seq="3">Travis Ryan - Fearless</title>
<title seq="4">City Harbor - Somebody Tell Them (Radio Version - Cold Ending)</title>
<soon>Shelly E. Johnson - All Things Beautiful</soon></metadata>
</cmd>
</yp>
2012-07-20 21:43:25 E msg:virtual void AOL_logger::consoleLogger_element::log(const AOL_logger::message&) Error writing to console - write issue
2012-07-20 21:43:45 E msg:[YP2] [YP2] Could not resolve host address yp.shoutcast.com Restarting in one minute
2012-07-20 21:43:45 E msg:virtual void AOL_logger::consoleLogger_element::log(const AOL_logger::message&) Error writing to console - write issue
2012-07-20 21:45:05 E msg:[YP2] [YP2] Could not resolve host address yp.shoutcast.com Restarting in one minute
2012-07-20 21:45:05 E msg:virtual void AOL_logger::consoleLogger_element::log(const AOL_logger::message&) Error writing to console - write issue
2012-07-20 21:45:30 D msg:[SRC 199.15.252.149:50313 sid=1] Cacheable metadata received
2012-07-20 21:45:30 E msg:virtual void AOL_logger::consoleLogger_element::log(const AOL_logger::message&) Error writing to console - write issue
2012-07-20 21:45:30 D msg:[SRC 199.15.252.149:50313 sid=1] Cacheable metadata reset due to span change
2012-07-20 21:45:30 E msg:virtual void AOL_logger::consoleLogger_element::log(const AOL_logger::message&) Error writing to console - write issue
2012-07-20 21:45:30 I msg:[SRC 199.15.252.149:50313 sid=1] Got complete metadata message type=3902 [780 bytes] id=1 span=1 content=
<?xml version="1.0" encoding="UTF-8" ?>
<metadata>
<COMM language="eng">Promo Only - www.promoonly.com - Distribution of this file is strictly prohibited.</COMM>
<TALB>Contemporary Christian July 2012</TALB>
<TBPM>73</TBPM>
<TCON v1="12"></TCON>
<TENC>Promo Only</TENC>
<TIT2>All Things Beautiful</TIT2>
<TMED>008058</TMED>
<TPE1>Shelly E. Johnson</TPE1>
<TPUB>Maranatha!</TPUB>
<TRCK>9</TRCK>
<W000>nolan@wnolfm.com______________</W000>
<extension>
<title seq="1">Shelly E. Johnson - All Things Beautiful</title>
<title seq="2">Travis Ryan - Fearless</title>
<title seq="3">City Harbor - Somebody Tell Them (Radio Version - Cold Ending)</title>
<title seq="4">Kaci Battaglia - Body Shots (feat. Ludacris)</title>
<soon>Travis Ryan - Fearless</soon>
</extension>
</metadata>

DrO
22nd July 2012, 23:47
nwgator: what am i meant to be looking at in the above log snippet? the 'Error writing to console - write issue' messages?

-daz

DrO
23rd July 2012, 13:23
attached (with my details removed, heh) is something i'm toying with for Windows users (it will not officially be part of the DNAS).

as something which will start / stop a v2 DNAS and show the different messages highlighted according to their level (which the console output on internal DNAS builds has been doing for a few months) then it's doing what is needed.

there are other things which need to be implemented (like tracking of the source connections and configuration of the DNAS to use, the ability to filter by message type, etc) which is why i'm not putting out a test / preview build until a) i'm happy with it not going to blow up and cause me complaints (this is unofficial so is done off my own back) and b) needs the newer v2 DNAS since it expects the slimmer log output it provides.


i may also look into a non-Windows version but that is low on my priorities and seems to be less of a 'complaint' compared to the wonderfully vocal Windows users who've repeatedly complained.

and in all honesty, i'd be more tempted to try to make a Windows 8 / Metro style interface though i really don't know if that even allows for redirection of console output (i doubt it) so that may not be viable / requires a different way of trying to do things.

-daz

MrSinatra
23rd July 2012, 15:49
dumb question:

is this the v1 style terminal wrapper? will it have easy access to edit config txt?

DrO
23rd July 2012, 16:11
is this the v1 style terminal wrapper?it's an equivalent of what the v1 DNAS natively provided but is targeted at the v2 DNAS only (is no point in trying to develop something for a DNAS which is not under development).

it's no more different than the few other wrappers which have been created, just i'm aiming for something which is small and just does what it's supposed to do i.e. just embeds the DNAS's output in a Windows themed window with similar log output highlighting to the DNAS's upcoming output and allows for starting / stopping it without having to use the (seemingly deemed evil) command-line.

will it have easy access to edit config txt?i still haven't decided what i am or am not going to implement in it (especially for starting off on things). though making it open the config file in the associated text editor is just a one line call (and is what the v1 wrapper did anyway - when it worked). i am toying with the idea of an integrated editor (well just embedding an edit control) so then things can maybe be a bit more automated.

as so far the only thing other than start / stop actions is a menu action which allows for going directly to the DNAS's server admin summary page (/admin.cgi?sid=0) since that seems to be one of those things which keeps coming up as something people struggle to find (especially from Windows users).

-daz

nwgator
23rd July 2012, 19:00
nwgator: what am i meant to be looking at in the above log snippet? the 'Error writing to console - write issue' messages?

-daz

Not exactly sure... I set all the log files to 777 and see if the stream disconnects. It seems at times almost if the shoutcast server times out for a few seconds and is inaccessible, then comes back later... I know it's not the server dropping connection, because on the same box, I have an IRC eggdrop that doesn't lose connection throughout the process.

EDIT: The only thing of interest in the log I posted really was
2012-07-20 21:43:25 E msg:virtual void AOL_logger::consoleLogger_element::log(const AOL_logger::message&) Error writing to console - write issue
2012-07-20 21:43:45 E msg:***91;YP2***93; ***91;YP2***93; Could not resolve host address yp.shoutcast.com Restarting in one minute

Not exactly sure why it would do that.

DrO
23rd July 2012, 20:49
it could be the DNAS maxing out on the file descriptors it's able to use (if you're getting more than 300 concurrent clients then things can get a bit 'quirky' in relation to "the shoutcast server times out for a few seconds and is inaccessible, then comes back later".

with the yp resolution issue, it's not ideal but try setting ypaddr=64.12.96.225 and see if that makes a difference (it should resolve but either the DNAS is caching something incorrectly or the host isn't getting the correct DNS record for things).


and with the logger write error, setting screenlog=0 will sort that out as the shell the DNAS was started to run in seems to have expired so it'll keep spamming that out.

-daz

nwgator
24th July 2012, 02:19
I've turned on debugging for everything and if it happens again I'll let you know.
The problem doesn't happen that often.

DrO
24th July 2012, 02:25
in all honesty i don't think that's going to help out too much in trying to determine the cause but hopefully i'll be proved wrong (though will be fun if it does happen especially in trying to match a b29 log output to what the internal builds generate).

-daz

nwgator
24th July 2012, 06:39
I'm seeing a few of these as I look through the log... any ideas? This is on Debian 64-bit.


2012-07-24 01:59:25 E msg:[DST 186.89.69.88:57071 sid=1] Socket error while waiting to send data. err=Connection reset by peer(104)
2012-07-24 02:09:27 E msg:[DST 208.20.225.130:53615 sid=2] Socket error while waiting to send data. err=Connection reset by peer(104)

DrO
24th July 2012, 11:27
that is generally normal when a connection ends, without context of what those messages relate to it's hard to say if it's a true error or not, though it is most likely not.

most of those sort of messages will be hidden away whenever the next release happens since they are mainly for debugging and are just the raw codes reported when the underlying socket connections close (hence why it is normal to see them).

-daz

nwgator
24th July 2012, 17:40
that is generally normal when a connection ends, without context of what those messages relate to it's hard to say if it's a true error or not, though it is most likely not.

most of those sort of messages will be hidden away whenever the next release happens since they are mainly for debugging and are just the raw codes reported when the underlying socket connections close (hence why it is normal to see them).

-daz

I went back in the logs when I noticed the problem that I had mentioned up there occurred again. Those were the only things in the log that were errors.. weird. the content surrounding them looked normal to me. I don't have 300 clients connected at one point, but I am using port 80... could that pose any problems?

You were right about having debugging turned on for everything not helping. Now I just have a massive log file lol.

It's stable for the most part, just these little hiccups every once in a while are irritating. Could something like this be fixed with an update to the DNAS?

DrO
25th July 2012, 01:10
I went back in the logs when I noticed the problem that I had mentioned up there occurred again. Those were the only things in the log that were errors.. weird. the content surrounding them looked normal to me. I don't have 300 clients connected at one point, but I am using port 80... could that pose any problems?it shouldn't make a difference what port things are running on unless there's some external aspect affecting how things like DNS resolution are happening. i've never directly seen the issue happen let alone for anyone to have it happen reliably that it could be debugged against so i'm really not sure what is the cause. it could even just be the timing of the those connections to the YP coincided with us doing updates on it or the load balancer not handling things properly, just don't know.

You were right about having debugging turned on for everything not helping. Now I just have a massive log file lol.that's why so much is hidden via the debugging options, though i think i've almost halved the amount of log output that happens under normal usage for what will become the next public build.

It's stable for the most part, just these little hiccups every once in a while are irritating. Could something like this be fixed with an update to the DNAS?i'm aware that a new public build needs to be released (if only to stop the insane number of new authhash that people keep re-making because they've not read the docs / example configs), but doing that has been dependent upon initially a whole slew of YP updates making it publically (which is now done). but there are some remaining issues which need to be resolved (mainly against relaying and the associated backupurl handling) as well as the documentation + setup process being re-done (the docs alone is a weeks work).

since in all honesty there's no point from my side of the fence in giving out what is a notably improved build (as there are a lot of newer builds being used out in the wild via our partners which has validated that being the case) when people still cannot install it or have the doc updates to know what can be done with the new features or get their heads around editing 2 things in an example config file and going to one page at the most basic to get things up and listed (hence having to make a more integrated setup UI for it).

yes there probably should have been more incremental updates instead of what is now at a 101 line changelog (and that's me being frugal on what i've added to it). but then most people seem to be adverse to frequent updates and actually it's probably worked out better in this case to just wait longer so that i do catch and fix all of the issues which i can and provide one large update addressing them all in one go so it is more appealing as something for people to install or actually use to update a v1 setup and without needing people to keep updating their DNAS (as i've been repeatedly told from a lot of people that they don't like doing since they then loose their peak numbers and uptime).

-daz

nwgator
25th July 2012, 01:26
Thanks for the response. I understand. Let me know if I can help out in any way, especially if you need more testers :)

It's sad that people are ignorant of the documentation/examples. I understood them fine.

DrO
25th July 2012, 01:46
a lot of the people who have complained generally just want to click and go and don't want to have to do anything (which i can see that appealing but even the v1 DNAS wasn't like that). and really to get better adoption of the DNAS (irrespective of the version), things need to be somewhat easier to get going, or at least be more intuitive on what to run or what to enter, etc.

as for the documentation, the wording of parts is not as clear as it could be or could be better described such as with images, etc as there is a lot of text and navigation maybe isn't as nice as it could or should be (as the plain text file version is likely to be dropped as the main type provided and will shift over to a html like version so it's easier to navigate between aspects).

-daz

nwgator
25th July 2012, 01:50
What gets me is the amount of stream providers who don't even support Shoutcast 2 yet. It's been out for quite a while now, yet they refuse to move forward.

I manage my own setup, but there are a lot of people who don't.

DrO
25th July 2012, 02:11
there's some out there but there's a number of issues which i think are causing them as well as normal stations to hold off. so in no particular order:
stability issues (i.e. all of the known (http://forums.winamp.com/showthread.php?p=2790357#known) issues
not being quite the same compared to the v1 DNAS (no 7.html for example even though there's the /stats xml equivalent and there will be a DNAS wide /statistics coming as well as JSON/JSON-P response support on all access methods so it should be easier to pull information from the DNAS for reporting, etc)
lack of v2 compatible DNAS management software which is related to the above point (though that is changing like Centova is doing a v3 public beta and radiotoolbox actually works with a v2 DNAS now)
lack of resources & / or interest to work on things when the v1 does what they want i.e. don't have to do anything and can still make money off people
a lack of understanding that it can be used in place of a v1 DNAS (though the first point does make that not as smooth as it could be but that is something which has been worked on)
general apathy to updating since there have been some troublesome issues but most of them were in the beta phase or from a lack of people trying out the beta and then things have slipped through the net to end up in the non-beta release (hence the massive changelog the next build will have from fixing a lot of things that should have been better or worked correctly but time constraints hindered that)it's a horrible balancing act since in some areas the current v2 DNAS build is better than the v1 DNAS but then stability issues kill it being applicable for a lot of people (though the v1 DNAS would have gone through the same teething issues in its early days).

i just hope that when v2.2 comes out (as v2.1 is designated as internal / test builds) that it does stand the v2 DNAS in a better light than has been the case with the prior builds. though i fear that the delay in a new build which has stemmed from adding in a number of new and useful things like JSON/JSON-P support, the means for a stream to have a backupurl to keep it going if the primary source fails and all of the bug fixes and refinements, the bad experiences some had during the betas and even with the current build has probably put them off for good :(

-daz

nwgator
25th July 2012, 02:21
Valid points. I love trying new things. I think already that v2 is much better than v1.

I recall reading somewhere that album art support for v2 was removed, even though it was originally planned. (or did I misread somewhere?)
Any plans to bring that back?

DrO
25th July 2012, 09:52
there still is in-stream albumart support - you might be referring to it being dropped from sc_trans but that was only due to changes in the protocol specification to make things saner (as sending the artwork as base64 encoded inside the normal metadata updates wasn't ideal) and sc_trans hasn't been updated to the newer method yet.

the key issue is a) the implementation has been somewhat buggy (both in the Source DSP and DNAS as they are ones which do support it) and b) there are no clients which support it to my knowledge (i've got an in-progress Winamp update that works but isn't stable and doesn't do what is expected when used with some skins).

-daz

nwgator
25th July 2012, 23:05
Not sure why I never asked earlier, but any plans to implement IPv6 for the DNAS/transcoder?

DrO
26th July 2012, 09:37
it probably should happen at some stage and some of the code is in place to do it but there's no formal plans on my schedule currently.

-daz

DrO
24th August 2012, 10:09
possibly helpful DNAS setup made easier thought of the day....

i'm considering adding in the means for the DNAS to automatically generate an authhash for a stream when a source is connected for it and the stream is set to be public and there is no authhash present.

assuming the source provides enough information to be able to generate an authhash correctly, then this i think may resolve most of the "authhash sucks" complaints and with other pending changes / fixes, it's simple enough to change the authhash details without dropping.


so does this seem like a yes / no / i don't care i'm just going to stick with v1 cos you suck, etc ?

and if i do go ahead with it, there would be a configuration option to disable the feature as i can see in specific hosted setups this causing issues with pre-generated configurations.

-daz

diversity
24th August 2012, 15:51
Hi daz,

I think that automatically generating authhashes would improve the dnas admin experience and silence some of the v1 haters. I would say go for it, but I'm sure you have lots on your plate already. Great work on v2 so far - it took me a while to get a stable setup but all the new features make it worthwhile.

Cheers,
div

nwgator
27th August 2012, 18:53
possibly helpful DNAS setup made easier thought of the day....

i'm considering adding in the means for the DNAS to automatically generate an authhash for a stream when a source is connected for it and the stream is set to be public and there is no authhash present.

assuming the source provides enough information to be able to generate an authhash correctly, then this i think may resolve most of the "authhash sucks" complaints and with other pending changes / fixes, it's simple enough to change the authhash details without dropping.


so does this seem like a yes / no / i don't care i'm just going to stick with v1 cos you suck, etc ?

and if i do go ahead with it, there would be a configuration option to disable the feature as i can see in specific hosted setups this causing issues with pre-generated configurations.

-daz

Hi Daz, sounds like a good idea, would eliminate a lot of problems with multiple generated authashes.

DrO
27th August 2012, 20:13
have already implemented it (was 90% done at the time of posting) so it'll be in the next release (does push things back a bit to finish off testing but i think it's worth a bit more of a delay).

-daz

ThiefMaster
3rd September 2012, 13:00
Is there any ETA for the new release?

DrO
3rd September 2012, 13:19
when it's done which is the case it has _always_ been. i'm not going to give a reply to your other post as it doesn't warrant wasting my time.

nwgator
10th October 2012, 02:13
I see that most of the Known issues are to be resolved with the next build. I'm excited :D

Godspeed, DrO.

Robster400
11th October 2012, 00:41
Hi DrO, hoping you can enlighten me a little here, I've been trying to get a Javascript now playing working with 2.0.0.29, after unsuccessfully getting it to work, and some sleuthing, I've discovered that Wavestreaming are running SHOUTcast Server v2.2.0.88/posix(linux x64)....

So, a couple of questions if I may...
Any chance of 2.2.0.88 'nix x86 be made available to me so I can test against it?
If no :( Could you confirm if there was any changes that improve javascript polling of the json?
If so, I understand reluctance to confirm any release dates due to the 'you said it would be out last week' crowd, but can you narrow it down a little, so I can either shelve the javascript json puller and implement a php solution, or wait it out for the new release.

Thanks

Robster400
12th October 2012, 21:35
Unable to edit my last post, but I thought I should have been more forthcoming, and just ask,

Can the version that Wavestreaming are using (SHOUTcast Server v2.2.0.88/posix) be made available please?

nwgator
14th October 2012, 02:23
Unable to edit my last post, but I thought I should have been more forthcoming, and just ask,

Can the version that Wavestreaming are using (SHOUTcast Server v2.2.0.88/posix) be made available please?

The build they're going to release might be a newer build than that one :). We shall see!

DrO
15th October 2012, 12:39
build 88 is old (was up to 91 before i went on holiday) and there are still issues which need to be resolved. so no, i'm not going to give out a build based on that version. if i had an eta then i would but as issues still keep cropping up during testing, those have a repercussion and so push things back further than i'd like but as was seen from the v2.0 release, pushing to a fixed date didn't help anyone.

as for the other questions, build 29 doesn't support JSON anyway so it's no wonder that isn't work for you. when v2.2 is finalised and released then it will have JSON support.

and as an overall comment, it saddens me how many stations snoop on each other to find out such things.

-daz

Robster400
15th October 2012, 13:12
The only reason there has been any 'snooping' is because the JavaScript 'now playing' provided by wavestreaming on github failed to work, & like anyone else, I wanted to know why it worked for them, and not me.

There is no great conspiracy. your users are just keen for new code, as always.

DrO
15th October 2012, 14:37
users are just keen for new code, as always.i know all too well about that need (from both sides of the fence).

-daz

AmatureDJ
15th October 2012, 23:02
Can we have the bugs worked out please? It's aggravating for the most part!


A new build should be on it's way ( wake up developers) :eek: as it's been over a year since the last build. :rolleyes:

DrO
15th October 2012, 23:08
i am working out the bugs! that is why it's been over a year as between other things, i want to make it as stable as possible - as you would know if you'd bothered to read the prior posts and not bumped a 3+ year old thread about the site design.

AmatureDJ
16th October 2012, 00:22
i am working out the bugs! that is why it's been over a year as between other things, i want to make it as stable as possible - as you would know if you'd bothered to read the prior posts and not bumped a 3+ year old thread about the site design.

Well that's great news and I am glad that your working hard on this! :up:

Let me ask you a question, would you happen to have a time frame to when we might see this newly improved Shoutcast Server?

So far I have read a lot on this forum, a lot is earthier outdated, old news or scripts that don't even work with anything in the last year or so.

What I have gone through and yes you have also noticed, I do prefer or rather reply to an old thread then open up a brand new one or duplicate one that already exists.

DrO
16th October 2012, 00:50
i suggest you read a few posts up for the answer to your eta question.

Robster400
16th October 2012, 00:53
lol DrO, you are stubborn, I suspect you're a Yorkshireman at heart ;)

DrO
16th October 2012, 00:57
maybe but i doubt it as i'm constantly reminded i'm still a southern jessie despite having moved north of the watford gap (and ironically i did drink a lot of yorkshire tea last week so maybe that's what's made me more terse than normal :p).

-daz

Robster400
16th October 2012, 01:11
Ahhh, Yorkshire tea. Its like Granite in a cup. You'll soon be a Wildman of the North at this rate.

nwgator
17th October 2012, 01:02
Bah, UK Speak. Care to translate? :P

Oh, and I forgot to mention, let me know if you need testers DrO :). I'd be happy to help if you need it.

i93sme
18th October 2012, 08:24
Well now,

It is not a pleasant sight to see your shoutcast server blown away by:

terminate called after throwing an instance of 'std::runtime_error'
what(): XML parser error: not well-formed (invalid token) at line 3

[SHOUTcast] DNAS/posix(linux x64) v2.0.0.29 (Jul 31 2011) starting up...

So, questions arise:
- is there a new release fixing it?
- is at least a workaround (I don't really need metadata, can it be turned off if it is the cause of this)?
- can at least _don't kill the process due to metadata_?

DrO
18th October 2012, 09:41
see http://forums.winamp.com/showthread.php?p=2790357#known and point #11

-daz

nwgator
24th October 2012, 00:18
Can I make a feature request? for logs, instead of E, can you make it say ERROR? It's a lot easier to search through ERROR than it is E.

DrO
24th October 2012, 01:39
i assume you mean something like the attached image?

-daz

burnetto
24th October 2012, 02:08
i assume you mean something like the attached image?

-daz
:cool:
A Screenshot from the new version :up::up::D:D:):)

nwgator
24th October 2012, 03:40
i assume you mean something like the attached image?

-daz

EXACTLY. Thank you.

Edit: The bandwidth usage and uptime is new! We'll see this on the Linux version too, right? :D

ThiefMaster
24th October 2012, 05:26
Regarding logging, it would be really nice if SC did not dump title-update-related XML into the logfile when relaying. At least not when debug logging is disabled.

DrO
24th October 2012, 09:15
ThiefMaster: the log output has been drastically cleaned up so what you've mentioned has long since been hidden away in the internal builds.

nwgator: yes it would also be like that for the non-Windows builds (why would i make a platform specific change to the logging :weird: ).

-daz

nwgator
30th October 2012, 23:31
So, DrO, what all is left to do on the new release? Only curious :D

ram130
28th November 2012, 23:51
Only small bugs and stability tests from what he's been saying..I would make a feature request but don't want it to get push back..:D ..December, where art thou..

DrO
29th November 2012, 00:03
you can make feature requests, that's not being stopped (and such things often drive what will be considered). my reason for my signature is to stop having to answer that question when i don't have an eta as there are things in motion which mean there is no date i can commit to.

-daz

ram130
29th November 2012, 02:16
Well I wasn't asking for the release date at all. Anyway thanks for clarity on making feature requests.

nwgator
2nd December 2012, 02:48
I'm currently getting a lot of these....
2012-12-01 18:41:19 I msg:[DST 208.20.225.130:61599 sid=2] SHOUTcast 1 client connection accepted. Mozilla/5.0
2012-12-01 18:41:19 E msg:[DST 208.20.225.130:61599 sid=2] Socket error while waiting to send data. err=Connection reset by peer(104)
2012-12-01 18:41:19 I msg:[DST 208.20.225.130:61599 sid=2] SHOUTcast 1 client connection closed (0 seconds) [Bytes: 35040] Agent: `Mozilla/5.0'
2012-12-01 18:41:21 I msg:[DST scdp-m01.websys.aol.com:7774 sid=1] SHOUTcast 1 client connection accepted. SHOUTcast Metadata Puller
2012-12-01 18:41:21 E msg:[DST scdp-m01.websys.aol.com:7774 sid=1] Socket error while waiting to send data. err=Connection reset by peer(104)


I'm not able to tune in via my second stream, but the stream on sid 1 is working fine... any ideas?

DrO
2nd December 2012, 21:05
i don't know about the first connection, the second one is used by the site when people are playing your stream via the site player.

as for stream #2 not working, is anything shown on the admin pages in the DNAS as they may give a clue as those 5 lines give me nothing to base things on. the only other things i can suggest is if you're using streampath that there is a / at the front (as per the docs).

-daz

nwgator
3rd December 2012, 18:51
For some odd reason, AAC+ streams aren't opening on Windows Media Player on Windows 8, when they did previously... They still open on Windows 7 machines, however.

DJ_MELERIX
3rd December 2012, 22:53
for that you have to contact directly with M$

DrO
3rd December 2012, 23:50
well i can confirm that AAC streams (using ADTS-AAC) no longer play in WMP12 on Windows 8 yet a local file using the same format will work.

all i'm seeing is suggestions to install codec packs (not something i recommend unless you can absolutely trust them) though i'm not sure if that is appropriate or not.

the only thing i can otherwise think off is that the AAC data needs to be wrapped in a mp4 container (aka m4a) but that's still some way off happening (and is something i believe with some other changes would help in improving support with flash and html5 based players).

-daz

nwgator
7th December 2012, 01:10
Yeah, that would definitely work better for things such as flash players. Haven't seen one that supports this format AAC yet. But it's been quite some time since I've looked.

It's just odd, because I could have sworn at [Windows 8] launch it worked, and now it doesn't. Maybe I'm going crazy lol.

DrO
7th December 2012, 01:27
AAC is supported by Flash as long as it's in an MP4 container or it's a local file from what i remember. it's just that for SHOUTcast we use ADTS-AAC which is the raw AAC frame with a 7 byte header from what i remember which helps for streaming it (dunno why that was chosen other than it was as doing AAC in MP4 containers seems to be the norm - can only assume it was due to the overhead being less as it's only 7 bytes away from the raw AAC) which in hindsight maybe wasn't the best of things for accessibility but alas that's where we are now.

other than trying things out on Win8, that's as far as i got in trying to work out what / why it's not working, unless it's some licensing issue or something inane like that.

-daz

nwgator
29th December 2012, 20:06
Hey DrO, what would be the best workaround for Issue #1 for the time being? That seems to be all that was causing me the most issues.

Thanks for all your support thus far :)

DrO
30th December 2012, 16:20
you might be able to do something with iptables but i'm not 100% sure.

-daz

stepway
31st December 2012, 21:06
I still waiting for the next plublic release.

DrO
1st January 2013, 14:28
and i gave you a solution for how to resolve the issue you reported. clearly you don't seem to have understood the hint i made.

-daz

burnetto
1st January 2013, 17:40
@stepway

You cant wait ? JUST WAIT !!!! The team works hard for the release. And look at Dr0s Siganture: "***everytime someone asks about a dnas release date... it will be pushed back a month even if it was ready to be shipped***"

So please dont ask !

stepway
6th January 2013, 08:39
I cant wait, im lossing custommers for that. If you want, I can pay you for these fix.

DrO
6th January 2013, 20:09
and i cannot give out a new build. that is why i told you how to fix it for the issue you are having. if you're still not following what i said to do then revert to use the v1 DNAS until a public build with the fix is released.

blaming us for loss of revenue when there is an alternative is not something that we can be held accountable for as per the TOS you agree to by using the DNAS.

i'd love to have a new version available but what is needed to resolve all of the issues is not done yet and until that is then there is not going to be a new DNAS version however much people complain and keep pestering as pushing things out before they were 100% ready has led to issues like you have having made it into the releases. and based on other things i've seen, most people don't want to upgrade as they're so stuck on preserving 'peak' listener values rather than running safe and stable software (which nether of the public DNAS builds currently are able to do both aspects).

-daz

stepway
7th January 2013, 03:45
So you dont want money?

DrO
7th January 2013, 09:29
fine, as you completely seem to not have bothered to read the instructions i posted to work around the issue with build 29, i'll give you a fixed build 29 at cost. but i don't know what OS version of the DNAS you're using so until i know that there is nothing i can provide you. am now waiting on your response...

-daz

nwgator
8th January 2013, 00:23
Well dang, I didn't know we could do that! Lol, only kidding. From my experience with this build it's not all that unstable, aside from issue #1. I haven't got 'round to messing with iptables yet.... As the issue only occurs rarely - maybe once a day, but not every day (Honestly, there's no pattern at all as to when there's a problem...) - I'm not too concerned. If it happened every 10 minutes maybe I would be.

As for the listener peaks and such, could there be a way the yp stores all that based on the auth hash? Just a thought. Even then, if the station was popular, they shouldn't have an issue meeting their peak again. -.-

DrO
8th January 2013, 00:38
Well dang, I didn't know we could do that! Lol, only kidding. From my experience with this build it's not all that unstable, aside from issue #1.modifying the DNAS program file isn't allowed. however, since it'd be me doing it then i can. i only mentioned what to do in order to save me work but if stepway wants to pay for it to be done then who am i to say no (even though it could have been done a month ago by whoever but not knowing the OS version has hindered that).

you'd love the build i've got at the moment, uses less cpu and is more responsive with large numbers of listeners for the linux builds. only issue is it randomly locks up and stops processing network connections *joy* this is one of the things that needs to be resolved before a new release as this should put the v2 DNAS on a better footing with v1 / Icecast with the handling of larger listener numbers.

As for the listener peaks and such, could there be a way the yp stores all that based on the auth hash? Just a thought. Even then, if the station was popular, they shouldn't have an issue meeting their peak again. -.-i keep hearing this cropping up how people want to preserve their 'peak' listener number even if it was from a few years prior. though i guess this stems from trying to blag-it on advertising by going "ooh we max out our server so give us $$$+++" (cynical i know but it sadly seems true in a lot of cases).

either way, i've put some thought into it but my main issue is it could be open to abuse by being edited when it shouldn't, etc (and storing in the YP isn't ideal unless we start requesting the DNAS send it plus it doesn't cover off private DNAS). so restoring of the peak listener total for streams _may_ happen but i'm not guaranteeing it.

-daz

nwgator
8th January 2013, 04:49
modifying the DNAS program file isn't allowed. however, since it'd be me doing it then i can. i only mentioned what to do in order to save me work but if stepway wants to pay for it to be done then who am i to say no (even though it could have been done a month ago by whoever but not knowing the OS version has hindered that).

you'd love the build i've got at the moment, uses less cpu and is more responsive with large numbers of listeners for the linux builds. only issue is it randomly locks up and stops processing network connections *joy* this is one of the things that needs to be resolved before a new release as this should put the v2 DNAS on a better footing with v1 / Icecast with the handling of larger listener numbers.


Hmm... Is that the only thing that's left is that issue? That's sort of the issue I'm having, actually. Is it frequent or just once in a day or so?


i keep hearing this cropping up how people want to preserve their 'peak' listener number even if it was from a few years prior. though i guess this stems from trying to blag-it on advertising by going "ooh we max out our server so give us $$$+++" (cynical i know but it sadly seems true in a lot of cases).

either way, i've put some thought into it but my main issue is it could be open to abuse by being edited when it shouldn't, etc (and storing in the YP isn't ideal unless we start requesting the DNAS send it plus it doesn't cover off private DNAS). so restoring of the peak listener total for streams _may_ happen but i'm not guaranteeing it.


Not a big deal to me, but I'm sure others will be happy to hear. I'll take a stable product over a stupid number any day. And plus, all they have to do is write down the number.... most advertisers aren't going to check the DNAS status page to find the number. :/

stepway
8th January 2013, 06:25
fine, as you completely seem to not have bothered to read the instructions i posted to work around the issue with build 29, i'll give you a fixed build 29 at cost. but i don't know what OS version of the DNAS you're using so until i know that there is nothing i can provide you. am now waiting on your response...

-daz

Centos 6 x86_64
how much you want?

DrO
8th January 2013, 10:02
Hmm... Is that the only thing that's left is that issue? That's sort of the issue I'm having, actually. Is it frequent or just once in a day or so?that's the main issue i've got for it currently. though what i think you're seeing is a variation since this is from using new code and it's not the DNAS crashing as such as it'll still accept external signals to reload configuration files, etc, is just that it stops accepting any network connections.

whereas the issue which i think you're likely having is due to a memory corruption which then causes the DNAS to completely fail after an indeterminate number of connections (typically after handling large numbers of client connections (> 300) continuously for extended periods of time).

Not a big deal to me, but I'm sure others will be happy to hear. I'll take a stable product over a stupid number any day. And plus, all they have to do is write down the number.... most advertisers aren't going to check the DNAS status page to find the number. :/well i put in place logging of the peak #'s for the streams on exit into the log output over the weekend so it is trackable from the logs in a more simple-manner.

-daz

nwgator
8th January 2013, 19:58
that's the main issue i've got for it currently. though what i think you're seeing is a variation since this is from using new code and it's not the DNAS crashing as such as it'll still accept external signals to reload configuration files, etc, is just that it stops accepting any network connections.

whereas the issue which i think you're likely having is due to a memory corruption which then causes the DNAS to completely fail after an indeterminate number of connections (typically after handling large numbers of client connections (> 300) continuously for extended periods of time).

well i put in place logging of the peak #'s for the streams on exit into the log output over the weekend so it is trackable from the logs in a more simple-manner.

-daz

Thing is, I don't get that number of connections at any one time.... 'twould be nice if I did but alas I don't.

DrO
8th January 2013, 20:07
that's how i generally replicate it but it can still happen at lower numbers (10s of listeners) but it's never consistent which is why some seem it and others don't.

-daz

DrO
9th January 2013, 01:41
Centos 6 x86_64pm sent so is over to you now...

-daz

nwgator
9th January 2013, 02:42
that's how i generally replicate it but it can still happen at lower numbers (10s of listeners) but it's never consistent which is why some seem it and others don't.

-daz

Ah, I see. Well... Keep up the good work :up:

burnetto
10th January 2013, 20:18
Dr0 is doing a great job! Keep it up :winamp::) #Greetings from Germany

mavmike
11th January 2013, 19:05
Is there a fix yet for DNAS 2 with using different IPs?
We're still using 1.99 DNAS since customers require using the same port (such as 80 or 8000) on different IPs.

DrO
11th January 2013, 21:00
assuming you mean the binding of the DNAS to a different IP address via 'destip' (i.e. point #1 from http://forums.winamp.com/showthread.php?p=2790357#known) then to my knowledge the internal build will handle it correctly to the point that if the bind cannot be done then it'll just revert to what it can achieve on the machine.

if that's not what you mean then you're going to have to give me a reminder of the issue.

-daz

mavmike
12th January 2013, 02:24
The issue is about #1 and I don't see a fix for it yet.
Say you have eth0 as IP 1.2.3.4 and its port 8000 is already in use, so you bind DNAS 2 to use eth0:1 as IP 5.6.7.8 and still port 8000, it doesn't work. (destip = 5.6.7.8)
This is because when DNAS 2 is started up, it has some hard coded elements that try to look up at 1.2.3.4:8000 (in use) when you specifically told it to use 5.6.7.8:8000
This causes it to not work, thus limiting the use of DNAS 2 to only function correctly on 1 IP (eth0 main IP), making it impossible to sell more than one of the same port.
Nomatter what IP you tell it to use, it has that hard coded element that THINKS it is at eth0 1.2.3.4 IP address

DrO
12th January 2013, 02:48
of course there's not a fix for it for you to use as there's not been an updated public build released! the note in the known issues list clearly indicates it is fixed for the next public build.

to the best of my knowledge (based on my own testing and testing with a few users specifically having the issue who were able to test a number of builds quickly a few months ago), under the scenario of issue #1 the internal builds work correctly so whenever an update happens, it should work to bind to what is set for destip (unless there's something already bound - and it better handles it's own binding to resolve some of what you've covered).

-daz

mavmike
14th January 2013, 00:58
Problem Date: SHOUTcast DNAS 2 (Build 29) 07/31/2011
Today: 01/13/2013

1 year, 5 months and 14 days...

official answer is, keep waiting for build 30. Thanks, I just wanted to know that you guys have done nothing to fix the major issue in that lengthy period, as I asked back then.
So, forgive me if I expected a fix in nearly 18 months :)

I'll check back after 3 years have passed

DrO
14th January 2013, 01:06
if you want to wait for build 30 then go ahead but that'll never solve your issue as we're internally on build 95 at the moment and seeing as i only resolved those issues around the 8x builds a few months back, then build 30 would have done nothing for you anyway.

as for there being so long since the last public release i'm not going to go into that again - i've already explained everything numerous times so i suggest you look at my last posts about this just after christmas day (i.e. it's out of my control) and also the post a few up about what is being waited on.

or do you want me to put out a new build that fixes the destip issue but completely screws up the networking code??? as that's what you'd get right now.

ibenarobeno
27th April 2013, 14:23
I am having a problem with Known Issue nr 5 probably. I have set up the DNAS 2 and it acts weird. I am having around 350 simultaneous listeners and when I start the server it works just fine for some time (an hour or two) and consumes about 1-2% of CPU. Then suddenly it starts using about 40-50% of cpu (I am having 6 cores running 64bit Linux). I have to kill it and restart again. Then it all happens again - works just fine for some time and then goes mad. At night when there is smaller number of listeners it works just fine but on daytime with increased number of listeners things go bad again.

I need to support up to 2000 simultaneous listeners. How can I achieve it? Is there some kind of workaround (players have to get 1 link to the source)?

DrO
27th April 2013, 15:37
the only work around currently is to use extra DNAS and cluster them together to get up to the capacity of listeners you need / expect.

ibenarobeno
28th April 2013, 11:18
Thank you so much for the reply. How can I create a cluster of multiple server instances? Can this then be accessed via one link for (web) players?

dicion
28th April 2013, 20:44
Thank you so much for the reply. How can I create a cluster of multiple server instances? Can this then be accessed via one link for (web) players?

The way I do it is have one main server, that all my relays connect to.

Then, on the main server, use apache or nginx rewrite rules for :8000/listen.pls to forward it to this php script:



<?php
$sid = (int)$_GET["sid"];
if (!$sid) {
$sid = 1;
}
$servers = array();
$servers[] = "http://relay1.server.com:8000/";
$servers[] = "http://relay2.server.com:8000/";
$servers[] = "http://relay3.server.com:8000/";

do {
$index = array_rand($servers);
$server = $servers[$index];
unset($servers[$index]);
}
while (count($servers) && !stream_available($server, $sid));

if (empty($servers))
die("No streams available!");

$pls = $server."listen.pls?sid=".$sid;

header('Content-Disposition: attachment; filename=listen.pls');
header("Content-type: audio/x-scpls");
@readfile($pls);

function stream_available($url, $sid) {
$xml = simplexml_load_file($url."stats?sid=".$sid);
if (!$xml)
return false;
if (!$xml->STREAMSTATUS)
return false;

return true;
}
?>


That will split the load up between the relay servers, you can put in additional qualifiers in there as well, etc, to remove servers as needed when you hit a certain capacity and such.

For a web-player, I run a bit different code, similar to the above, that pulls the xml from the server and verifies listeners and that the stream is up, then loads the player with the appropriate stream url.

Quick and dirty semi-load balancing.

I also have similar scripts for asx and m3u extentions.

ibenarobeno
29th April 2013, 03:40
Wonderful! Thank you so much! Would you mind sharing the *.m3u version as well if it is different. How does the nginx rewrite rule look like?

ibenarobeno
29th April 2013, 03:55
Also would be very grateful if you could share the code for web players. As how it works for me, is that I have web player that will have the direct link to the stream plus a link for desktop players to manually created m3u file pointing to the same link.

MyStEk
4th May 2013, 18:27
Are there any plans for new build-versions? Is it just the beta?

DrO
4th May 2013, 19:15
the current build is not classified as a beta (despite everyone referring to it as that). there were plans to have a new build out last year but other projects have taken precedence (and most of the issues can be worked around anyway). so once again, there is no eta on when there will be a new build (is completely out of my hands).

MyStEk
5th May 2013, 19:43
Ok, thanks for reply. And is there any c-library to connect SHOUTcast v1 server? mp3stream not working "broken pipe error"

DrO
5th May 2013, 19:58
not officially, there's probably some floating around but that error is usually from the connection dropping / aborted due to not handling / sending the information needed.

MyStEk
5th May 2013, 22:27
but I can use the mp3stream library? So how do you fix "broken pipe" ?

DrO
5th May 2013, 22:41
i have no idea how to fix your issue as you've provided zero context - really that is something you need to consult with the documentation for the library you're trying to use - that is not something that can be dealt with under the scope of this forum. as it's down to you if trying to connect to a stream to use the appropriate sockets connection and to be able to send all of the information which is required to initiate and maintain a valid connection with the DNAS.

dicion
30th July 2013, 01:32
Wonderful! Thank you so much! Would you mind sharing the *.m3u version as well if it is different. How does the nginx rewrite rule look like?


<?php
$sid = (int)$_GET["sid"];
if (!$sid) {
$sid = 1;
}
$servers = array();
$servers[] = "http://relay1.server.com:8000/";
$servers[] = "http://relay2.server.com:8000/";
$servers[] = "http://relay3.server.com:8000/";

do {
$index = array_rand($servers);
$server = $servers[$index];
unset($servers[$index]);
}
while (count($servers) && !stream_available($server, $sid));

if (empty($servers))
die("No streams available!");

$m3u = $server."listen.m3u?sid=".$sid;

header('Content-Disposition: attachment; filename=listen.m3u');
header("Content-type: audio/x-scm3u");
@readfile($m3u);

function stream_available($url, $sid) {
$xml = simplexml_load_file($url."stats?sid=".$sid);
if (!$xml)
return false;
if (!$xml->STREAMSTATUS)
return false;

return true;
}
?>


And the Rewrite rule for nginx:


split_clients "${remote_addr}" $relayserver {
34% "relay1";
33% "relay2";
33% "relay3";
}



server {
listen 80;
listen 5800;
server_name radio.server.com www.server.com *.server.com *.server.net *.server.org;


access_log /var/log/nginx/server.com.access.log;
error_log /var/log/nginx/server.com.error.log;
root /server/home/www;


rewrite /$ http://everfree.net$1 last;

rewrite /listen.pls$ http://radio.server.com/getpls.php$1 last;
rewrite /listen.m3u$ http://radio.server.com/getm3u.php$1 last;
rewrite /listen.asx$ http://radio.server.com/getasx.php$1 last;
rewrite /stream/1/$ http://$relayserver.server.com:8000/stream/1/$1 last;
rewrite /stream/2/$ http://$relayserver.server.com:8000/stream/2/$1 last;
rewrite /stream/3/$ http://$relayserver.server.com:8000/stream/3/$1 last;
rewrite /stream/1/(.*)$ http://$relayserver.server.com:8000/stream/1/$1 last;
rewrite /stream/2/(.*)$ http://$relayserver.server.com:8000/stream/2/$1 last;
rewrite /stream/3/(.*)$ http://$relayserver.server.com:8000/stream/3/$1 last;
rewrite /stream/$ http://$relayserver.server.com:8000/stream/1/$1 last;



location / {
index getpls.php;
}



And some important bits of the Flash Player code. It's PHP, and if you don't know PHP, I'm not going to explain how it works. Go learn PHP and it will make more sense.



function stream_available($url, $sid) {
$xml = simplexml_load_file($url."stats?sid=".$sid);
if (!$xml)
return false;
if (!$xml->STREAMSTATUS)
return false;
return true;
}


if ($streamUp) {
$servers[] = "http://relay1.server.com:8000/";
$servers[] = "http://relay2.server.com:8000/";
$servers[] = "http://relay3.server.com:8000/";

do {
$index = array_rand($servers);
$server = $servers[$index];
unset($servers[$index]);
}
while (count($servers) && !stream_available($server, 1));

if (empty($servers))
$streamUp = false;
}



So use the second condition there (Which I have run after a check to see if any streams are up) randomly picks a server, check to make sure that server's up, and if it is, assign it to the $server variable.

You can then use that variable to pass to a flash player of some kind

Tag
1st August 2013, 22:46
Have you fixed the 300 listener limit issue?

DrO
1st August 2013, 22:56
yes in the internal builds (as noted in the first post and the known issues).

WizardX
19th August 2013, 22:19
Really looking forward to see all fixes into a public release. When can we expect a new release? Can't wait, still running my production streams on oldskool SC1 :(

Arsimael_
19th September 2013, 05:22
Same here. Some of the bugs are very critical! When can we expect a new Main releas? I don't want to have to go back to SC1... Espechially if SC1 does not support YP2

WizardX
30th September 2013, 10:46
DrO any update yet?

djcenk
1st October 2013, 18:24
DrO We are waiting for uptade. Thank you

DrO
1st October 2013, 18:46
i know people are waiting for an update and the new DNAS is currently under going testing. that's my update so far on things.

and as a note, there will only be Windows, Linux and Raspbian builds provided as usage of the existing Mac and BSD builds is minimal and are not compile types generally tested against so for the coming release they will not be included. am sure that'll irk someone but the usage numbers i have available are driving things for which builds are provided.

Wauzi007
1st October 2013, 21:06
Mean that in next time no new release will come out for linux? So the bugs and not working release 2.0.29 will be for time X must wait?

Than it is the wrong software for me....but also no answer on question`s

DrO
1st October 2013, 21:24
Linux is the main version of the DNAS software used - i don't quite get your comment when i have said that there will "only be Windows, Linux and Raspbian builds" as part of the update which is coming. so that means, Windows builds, Linux builds and Raspbian builds will be released.

it is _only_ Mac OS X and BSD builds which will not be released for the update i am working on since that will add more time to the process in getting a release out when we don't typically test or use those builds (and neither do most people based on usage and download stats). so i am trying to do my best to target the time i have available to provide what is appropriate for the majority of users which is going to be Windows, Linux and Raspbian builds.


and i have not actioned anything with the most recent pm message you sent from the weekend since i'm doing what i can to get a working build of the DNAS for not only you but everyone else to be able to use. i appreciate that your users are very angry and that it is super urgent, but the same is the case for others and so it is better i spend the time over the next day or two to finish off and release something so everyone benefits (and that's now 15mins i've lost on doing the update in having to reply to this and other requests for updates).

burnetto
3rd October 2013, 22:22
I appreciate your work Dro and thank you for your statement on all things.

(and that's now 15mins i've lost on doing the update in having to reply to this and other requests for updates).

I think that is not a problem. Its very important to stay contact with the users - and the users with the dev.


Greetings, Steve

MrSinatra
4th October 2013, 00:20
wow, a new dsp AND a new DNAS? that's awesome :up:

looking forward to rockin em.

DrO
16th October 2013, 17:53
v2.2 Build 107 (http://forums.winamp.com/showthread.php?t=373139) released as a forums exclusive for the time being. any issues not fixed with or new issues with v2.2 need to be reported in the new thread.

closing this one so v2.0 can start to go away :lock: