Winamp plays MPEG Layer 2 (MP2) and Layer 3 (MP3) audio streams and combines extensive functionality with an intuitive interface. Winamp has a full-featured playlist editor and a 10-band graphic equalizer with user-definable presets that can automatically load specific files.The first major update of Winamp was Winamp3. It had video support, new skinning system, and a redesign of the plug-in system. Unfortunately, it was poorly received and widely criticized. To fix this embarrassment, Nullsoft decided to integrate Winamp3 skin and script support into the Winamp 2.x platform. Thus, Winamp 2 plus Winamp3 equals Winamp5 (released December 16, 2003). Upon release of Winamp5, Winamp3 was spun off as the Wasabi.player, an open-source equivalent to Nullsoft\\\'s Winamp. Wasabi is a mostly open-source (zlib-licensed), cross-platform application framework and skinnable GUI toolkit, developed by Nullsoft.New features in Winamp 5.0 include support for classic Winamp 1.x/2.x/2.9x skins and Winamp 3 (\\\"Modern\\\") skins, vastly more powerful media library, CD ripping support (AAC@2x in free version, MP3 at unlimited speeds in pro), CD burning support (limited to 2x in free version), advanced title formatting logic for file types that support it, huge AVS updates, support for playback of AAC and VP6 in NSV files/streams, global hotkey support, new Signal Processing Studio DSP plug-in, options to disable plugin exception handling for developers, new Winamp icon, added XP Manifest.xml to winamp.exe, made agent icon use configured winamp system tray icon, optimized winamp\\\'s load titles on demand logic, made faster, made winamp\\\'s internal submenu management more reliable, added skin font override preferences, and added spacebar shows current playlist item in playlist editor.Check out our blog piece on the history of Winamp.Pros: Free and very simple to use, fast compression and decompression of files.Cons: Doesn
testing Programas multimedia ejemplos illustrator ai descargas gratis bajar xbmc t clock windows 11 download archive games for pc download patch gratis juegos alternativas a spotify compatibles con android 2.3.6 lista de mp3 para winamp gratis blackberry desktop manager for windows 10 twiter archibe eraser full apk mp3 cutter for windows twitch leecher descargar descargar afinador de guitarra android 2.3.6 descargar cambiador de voz descargar sonido de inicio para windows 8
volume logic windows media player , Volume logic for Windows media player download , volume logic download windows media player , volume logic para windows media player , software como volumen logic , volumen logic para windows media player , instalar volume logic , volume logic for windows media player downlnod , volume logic , descarga volume multimedio
Too many changes to list or remember them all... New streaming protocol, partly based on the old one, but with a lot of changes. Better congestion control. Lossy connections are detected and throttled, and dumped if they don't recover well enough. Hosts with consistently poor upload gradually lose their reputation, and get shunted to the edges of the network. Congestion response paramaters for individual hosts can be tweaked, so for example a broadcaster with really bad wimax (20%-50% packet loss) can sucessfully broadcast. Much better tunneling / firewall / NAT traversal. Upnp is used if it is available on the router. Otherwise a several stage process detects the behaviour of the firewall/NAT, and one of several forms of multi stage port prediction and hole opening is used, depending on the NAT behaviour of both connecting users. The toughest it can manage is directly connecting two users who both have incremental symmetric NAT's. It can't do random-port NAT (yet, could do, but it would look like a port-scan). It is skinnable, by the broadcaster or user (with some patience). There is an example skin for guidance. All stations have a small list logo and a larger top-banner for when their stream is playing. The stream's embedded website is much better, can have multiple pages, all downloaded by p2p, no web server needed. Chat is essentially the same. It could do with being skinned too. The URI has changed, new uri is 'streamerp2p2://', instead of 'streamerp2pbeta://'. The old uri of 'streamerp2p://' still works for v1.47. Except for with firefox, the coders of whom, in their infinite wisdom, decided to ignore the uri-handler associations stored in the registry. Instead, firefox presents a list of candidate programs and asks the user to choose one, and generally the user won't know which one to choose, or that the 'winamp' option is really not going to work at all. Which leads directly to tech support issues. Bittorrent detection, attempts to detect if any other p2p programs are running on the pc, by looking at the titles of windows, and then warning the broadcaster. You can't torrent and broadcast at the same time if you want your broadcast to actually work, unless you really really know what you are doing. Video! It can handle HD video, so far we have tested it with up to 3Mbit h264 streams, and it looks perfect. It can do NSV video, with some messing about on the part of the user to play the stream in winamp. the NSV codecs are not yet in the LibVlc components installed with Streamer. It can to WMV video, using the WMP library for playback, that is built into most versions of windows. Most, but not all, due to an anti-competiton lawsuit in the EU, which ruled the removal of not just Windows Media Player the program, but also the WMP library that is essentially part of the OS. Playback is in a seperate window to the main Streamer window. I may change this sometime. WMV can either be relayed from an existing source, if you can find the raw stream URL (not just the asx file), but the source must be able to supply an 'mms-framed' stream by http. Or you can use Windows Media Encoder, which is a resource hog, and the download for which has been removed from the microsoft site. And best of all, it can do H264 video + aac audio, for proper HDTV. Playback uses LibVlc, which is part of VLC, now licenced under the LGPL which means it can be used in non-GPL programs. LibVlc gets installed in a 'vlc' subfolder, and is a stripped down version where I removed a lot of the plugin dll's, by trial end error and guesswork. It was 80M to begin with, I got it down to 12M. Encoding is done using FFmpeg, which is a GPL/LGPL project with some restrictive licencing. But, I am not actually linking to it with my code at all, or building it into Streamer, or even providing an interface, and I am not supplying a download of it. I am just using it as a stream source to feed a stream server, as other commercial TV broadcasters do. Youtube also use it. Previous versions:1.47 (17 Nov 06)When using streamer to serve unicast, the url can now be simply ip:port with no stream name. This only works with mp3 or aac(+) streams as ogg requires a mountpoint.Broadcast config wil now stay intact when upgrading versions.Stream relay now has both autostart and retry options.Changed the way Streamer detects if it is firewalled or on a LAN and thus needs a proxy. It is imperfect so check it to be sure it's set properly.. lock if necessary.Http connections are now handled better and will return 404 style error messages if appropriate.Station discovery should be a lot faster now, faster initial list population and faster updates.Fixed the 'sending to port 0' bug that alarms some firewalls and security softwares.Fixed the in-stream listener count. This is the value that gets posted to the YP, so all your AHQ graphs should be correct now. Also, listeners on the same lan are no longer counted as listeners. Most of these 'listeners' were not really listeners but casters trying to artificially inflate their listener counts.
Ok, it's been a while since the last version, and there are a load of new features. For listeners it should appear and work mostly as before. If you are just going to use it to listen to stations, read no further.There are a few bug fixes and tweaks to existing things, but I honestly can't remember them all.The GUI has changed a little bit, configuration options have moved around and are now on multiple tabs. More to come soon/eventually. (I tried skinning once, using a nice wood texture to make 'wooden radio', with different wood for buttons with brass inserts. But some parts of Window's windows are not very 'sticky' and veneers fall off easily)Tuning a station should always be fast now. I know it usually seems pretty instant anyway, but now the station info internal to Streamer contains a few IP's of other listeners, and replies to feed requests also contain a few IP's. This will allow a listener's Streamer to very quickly gather some initial IP's.AAC/+ is now supported, but can only be played using an external player.Broadcasting directly from line-in is now supported, in Ogg Vorbis format only. (I could probably 'borrow' Winamp's encoding dsp's to support more formats). There is currently no VU display though, which is not ideal. If you want to try this special line-in direct version, look for it in the Downloads section. It's just the Streamer executable file named StreamerW.EXE and will be posted soon.There is an ActiveX version of Streamer, which can be 'embedded' on a web page, to make listening very simple without anything having to be installed. This isn't strictly new in 1.42 having been originally published some time after 1.40.There is also now a Winamp plugin version. This also makes listening simpler, by allowing 'url's for Streamer broadcasts to be put in the standard '.pls' files that winamp uses. A .pls file can contain normal unicast url's and Streamer url's, and Winamp tries each url in turn until it finds one that works. So if you put a Streamer url after a bunch of unicast url's Streamer will act as an 'overflow' for a Shoutcast broadcast. Or by putting the Streamer url first and the unicast url's second, you have unicast act as a backup to Streamer if it fails or isn't installed. This 'Shoutcast overflow' function should be quite usefull, integrating Streamer with Shoutcast in a single url. Users without Streamer won't notice anything different.There are a couple of experimental swarming systems intended to supercede the old tree tolopogy. 'Phase swarm' almost works, but became too complicated in trying to prevent some problems happening and can still get into a logjam situation and fail, and I have abandoned it for now. 'Elegance swarm' is my second and more promising attempt, and is intended to replace 'tree' when it works properly, and will be able to do many clever and wonderfull things. I hope. Such as allowing 'bandwidth booster' servers that can provide extra feeds into many station's networks, etc. But just use 'tree' to broadcast with for now please because the swarming doesn't work properly yet.Streamer now has public key crypto (ography?, ology?), which is used to digitally sign various things to prevent them being altered. Stream blocks and station info's can be signed by optional 'station keys', which are generated by broadcasters. These are in turn signed by a 'network key' (owned by a network administrator, more later), or Streamer's own 'master key', (owned by me). Generation and signing are done through the broadcast 'security' tab, and the signing is done either by a Streamer 'superseed' or by the network's 'gatekeeper'. Signing of objects is checked by each Streamer, using the station's public key for stream data and station info's, and the signing of keys themselves is checked against the network public key or streamer's own built in master public key. Signing cannnot be done without the secret private half of a key, thus preventing forgery. Independent networks can now exist, seperately from the 'open' public network we have currently. The purpose of this is to allow organisations to have their own set of stations without all the rest showing up, and in the future to allow branding etc. The purpose is also so I can charge commercial broadcasters for the privilige :)These independent networks can be either open to all listeners, or require a login with a typed username/password or a token passed through a secure web page. This could be as part of a subscription system tied to an ecommerce server, or the usernames/passwords can just be in a static text file with no automation. The security is done using public/private keys again, and the 'network key' responsible is generated and signed by my master streamer, so only I can create them. These networks are not just intended for paying customers of course.The ability of the 'tuning url' to control how Streamer will appear has been extended a bit. You can force it to start minimised as just a systray icon, and lock it that way, or allow only a small simplified display (station name, song name, stop/volume), + various other options that will be detailed in the online help here soon. Forcing it minimized is an attempt to appease those who think it's too complicated for listeners when they see the main window. If a user has Streamer already open, these options are ignored.And finally, as a spin-off from the main Streamer, is an STL or 'Studio to Transmitter Link' system. The job of an STL is rather obviously, to get an audio signal from a studio to a transmission site, or to a set of affiliate stations, in an ultra reliable way. Streamer also does this with a configurable fixed delay, rather than the more usual 'minimum delay possible at all times' approach. The sensible minimum is about 3 seconds at the moment, allowing for some losses and resending. Restructuring the Ogg Vorbis stream, by not using Ogg and just sending the smaller Vorbis blocks, + some other tweaks, could reduce this to maybe 2 seconds.Streamer STL works with just software rather than with dedicated hardware, but a hardware system is not out of the question given that I developed this on a 300MHz PII, so it should run happily on something cheap you can stick in a rack. I believe a satellite link to do the same job costs rather a lot.1.41 (not released to the public)First Swarm Version1.40 (18 Sept 04)Hosts stuff: (hosts = other users in gnutellaspeak)Host gathering polling is now variable speed. It goes fast (500ms between polls) if replies contain all new hosts,and slows down to 5000ms if replies contain all already-known hosts. This will make it fill the hosts list fast whenfirst run, and then slow down when it has got them all. Current fixed-speed polling is about 2500ms, so it should halve the background traffic due to host polling. Background traffic is a bit high at the moment. There is also a 'coders corner' config option 'fast host polling', that makes it poll at 80ms for debug purposes.Removed a bug where the live hosts list used in host poll replies was only renewed once every 3.5 mins.It renews every 6 seconds now.Much better choosing of which hosts to send in host poll replies, more random and probably faster code. It picks randomslots in the live hosts list, instead of scanning the main hosts list, which has usually got a big empty space at theend.Removed the code that periodically scans all the hosts and counts the live/dead/not sure ones. Counting is now donewhen a host changes state, which is a much better way to do it. Next I will add a binary tree to the hosts liststructure, to vastly speed up searching for a host in the list. There may be a bug in the counting code though, the really alive count doesn't seem to change sometimes.Fixed a benign all hosts being marked as seeds bug.Added flags in host info for has answered a question and has asked a question. Info is not used yet.Added some code to gradually filter out hosts who are sending bad port reference hosts, then removed it again when Ifound the real cause of the problem (see proxying below).Removed host lookup for replies, as it is not actually needed. Added lookup and reply port update for proxied messageson proxy and for acked messages.Improved next host in list finding, so a null host is never returned unless there are genuinely no useful hosts.Previously a null host was retuned at the end of each list scan.Added a selected host in hosts display, and made hosts list keep the same entry at the top when redrawing. Did thesame for the stations list, but it doesn't seem to work.Stations stuff:Station gathering polling also varies its speed in a similar way to host polling. This will speed up list filling, butwill slow down propogation of changed station info.New station to forward chosing code in reply to a stations poll is much more random, and probably evenly distributednow. It was very uneven before, with one or two stations getting many many more forwards than usual. It is also biasedtoward rare (i.e. new) stations. A station that has not been seen much in a reply to a station poll request will besent in station poll replies more. This should speed up the initial propogation of new stations.Checking station age before sending. The bookmarked dead stations where still being forwarded, even though they whereold.Changed way station you are tuned to is marked as alive, so it doesn't get stuck alive on local display when it is notbroadcasting but you are tuned to it.Broadcast stuff:Fixed updates to broadcasting station info. Name change is immediate, bitrate change gets put to station info, (but mayget changed again by autolevel)Removed possible crash bug when stopping listening with no stream data received yet and then immediately transmitting.Added a warning when chosing not to auto detect stream type on broadcast config page, as doing this is the only way Iknow to make an mp3 stream that won't play, and a few broadcasters make mp3 streams that won't play.Misc stuff:Update button points to install.htm and not download.htm, and all the other web buttons point to the www.streamerp2p.com domain now. The saved url.txt also has the www. subdomain instead of the yp.one now. Changed the url for the default image in the web/view display. Changed the url's for my game to point to my newdomain for it, www.spheresofchaos.com.Chat buttons obey the config setting for flash for leavejoin. They should not flash for leavejoiin messages if the titlebaris set to not flash. Or they shouldn't, but this doesn't seem to work.Streamer version number is now added to questions/replies messages, so old versions of streamer can be excluded from thenetwork in the future, for when they cause problems. The version number in the replies isn't acted on yet.The version number is also optionally stored in hosts, so I can see what versions are in use.Revised all the quick index stuff. For all unknown quidx's scanning is done instead. Quick index is a way to speedup finding which particular thing out of several possible things is involved in a connection with aparticular host. Instead of scanning all the things until the relevant one is found, the messages from theother host contain the index of the thing that you gave it earlier, so you can get the correct slot instantly.Added a strict deshout that strips all non-alphanumerics in station names. But it needs improving so it is currentlydisabled.Made polling for feeds happen 8 times a second, much faster than before. Tuning in is now almost instant.Bug fixes:Fixed one of possibly several bugs in the proxying code, that caused the presence of bad-port aliases in the list. Thesender of a message through a proxy would be added to the target's host list with a random port, creating a dud entrycluttering the list up, and probably making the NAT/firewall tunneling stuff broken. This meant connections into NAThosts probably didn't work, and direct connections between NAT hosts almost definitely didn't work (and theyused to when the code was first added). The dud hosts are also one cause of the wacky listener counts inthe stations list.Messages to hosts needing proxies are now always sent to the host's reply port, even if it has timed out, as well as through theproxy, which should improve NAT tunneling a bit more.Fixed a small stream data block bug. Data blocks are supposed to be about 1370 bytes long. When the broadcastingstreamer reads the data coming from the stream encoding dsp (oddcast etc), it should wait until there is enough data inthe buffer to make one stream block. But this was not happening, and a stream block was being made when there was anydata at all available. The smallest blocks I saw were 170 bytes. Sending small blocks causes more bandwidth to be usedfor their headers, which are fixed size. It also causes more bandwidth to be used for acks, which is how I noticed theproblem in the first place. This bug did not affect Ogg streams.1.39 (10 Aug 04)Oops... Found another mistake in the Ogg handling code, which caused the header to be repeatedlysent incomplete, causing the stream not to play for a while.Fixed chat nickname entry so it works even if you have used the cursor-left key. It used to truncate the name.The 'get update' button now closes Streamer when clicked.1.38 (8 Aug 04)Complete rework of Ogg header capture and handling.Ogg has been a right pain since I first put it in Streamer, with it 'just not playing' far too often. This time I havethorougly gone over and rewritten much of the header parsing and handling code, and fixed lots of cases where thingscould go awry...The audio output code now waits for the header to be complete before sending it to the player.A header received at stream startup is buffered until complete before being copied into the main stream buffer.Headers in close sucession won't be missed. The correct most recent header should always be sent for any startposition in the stream.The 'serial number' hack is still being done by the broadcast Streamer, but since this makesfast forward and rewind of the playing data much simpler I'll leave it in.The broadcast Streamer will show an error if it sees no header within a certain time, or gets a deformed header. Thishappens if you use sam2 or the sam2 winamp plugin, and don't enable titles.All of these changes mean version 1.38 is not compatible with previous versions for Ogg Vorbis.There was more too...VideoIt's got Video now, using Nullsoft Streaming Video NSV format, and playing in Winamp 5. Enjoy.More formats to follow...ChatFixed the annoying click when pressing return to send chat.Added more chat channels, without needing to change protocol. You can't add your own yet.Changed 'Chat 2' to 'DJ Chat'. Forgot to change 'Chat 1' to something else, I just noticed. It now reopens the mostrecently displayed chat, or the chat channels list.A broadcaster auto-joing their stream chat, so I can tell them if something is wrong mostly. If no chat nick is set thestation name is used as the nick.Added 'ignore user', toggle it on/off by clicking a name.When a chat closed, the most recently displayed or created one is shown, except when detuning from a station.User count displayed in chat, as users/connections next to the 'leave' button.Changed the layout a bit, did a hack to make the font small for the buttons, added a row of buttons at the topto open each channel display.Added a chat message integrity check, to make sure the sub messages have sensible sizes etc, and can't be 'poisoned' byl33t h4k0r2.Made messages word-aligned within message block, to assist porting to future processor platforms.GuiSome error messages appear in the song title dsiplay area. The number on the left is a timestamp, so you can see ifthe same error is being repeatedly reported.Added a broadcast help web button, and changed the top help button to goto the web help page instead of the main page.Made the sub panes not resizeable, and put borders on some of them.The hosts display shows the last reply to a tuning request, for debugging.The currently highlighted station stays highlighted when the list is reopened. There is also now a right-click menu forthe stations list, which allows you to play, bookmark, or 'favorite' a station. A bookmarked station just has a *,and never vanishes from the list. The favourite station has a #, and automatically plays when streamer is run (unlessyou disable it in the config). This is part of the new 'click-to-install-and-play', see below.Reinstated and ad for my Psychedelic game Spheres of Chaos, on the configure page. make a donation and get a game!.Or just make a donation, there's a button for that too.Added a mini window that pops up from systray right clicks if the main window is not open, and just contains a volume control,the stream name, status, and current song.Removed the 'selected' dotted box from clicked buttons. Added 'owndc' to window template to maybe speed up drawing. Removedpainting background in main window. Changed 'EndDialogue's to 'DestroyWindow's (apparently it should have been usedthe way I used it, but it worked anyway). Added a bunch of 'UpdateWindow' calls after the 'InavlidateRect' calls,then removed them all again :)New 'Favourite Station' / 'click to download and tune' system.If you click the 'save url' button, and then look at the url.txt, you will see a chunk of html. Paste this intoa web page to show a button. When this is clicked, a custom install.exe will be downloaded, which installs streamer,which then automatically plays your stream. :-)It isn't quite one click yet, it's three clicks...NetworkFixed zombie looping (I hope). Dead receive and feed timeout is lower, and it never goes from 'reseeking' back to plain'seeking'. The situation where a dead station could have a lot of listeners all recirulating the last fewseconds of a broadcast should not happen now. Reseeking didn't seem to work before anyway.Fixed conventional stream relaying, at least for mp3.Sending a message through proxy a also sends the message direct, to open return hole if the sender is firewalled. ItShould always work for back-to-back firewalls now.NAT tunneling still needs improving, and supertunneling needs implementing.Put a timeout flag in all tcpin closes to prevent half closed connections hanging around forever.Changed resend/ping calculation. Now uses a 2nd order function with a faster time constant. The initial assumed ping is8 seconds, and the max is now 12 seconds. And I really did see a ping time of 10 seconds in the real world, betwen my pcand one halfway round the planet, running wine. Some of this delay is inside streamer, but only 2 seconds worth I think.Hosts now report that they have stream only if data has arrived recently, to stop zombie loops holding stations in thealive list.Port changes in config now happen immediately, no need to close and reopen Streamer. If the config port is unavailableStreamer searches for one that is, for up to 250 retries.'Question' buffers are now reused properly in 2-stage questions, which means a question won't stop halfway because it can'tfind a buffer for the second part.Changed the way a tuning url is sent between 2 copies of the same streamer. A sensible windoze message is used now, instead ofsending the url 4 bytes at a time.AudioHacked the internal mp3 playback bug. If the output freq drops to 0, it is reset to what it should be, every 150ms.This appears to be a bug in the fmod.dll I am using for the internal player.Enabled the forward/backward buttons. They move the playback position by approx 10 seconds, and sometimes go awry andjump it randomly by a long way. Iy you want to reduce the delay in the audio you are hearing, repeatedly click theforwards '>>' button. There is a delay between clicking >, and the actual change in what you hear, due to buffering.To reduce this delay when using the internal player, it's buffer is only ever filled to 60%, which is why the indicatorat the bottom hangs around 60%.If the playback is so far behind the fresh data that it falls off the end of the buffer, it gets bumped forward by10 seconds.Bandwidth testing(the current bane of Streamer)Test doesn't ask for an initial value, but defaults to 128k.If 'blocking' happens it just uses the amount of data sent when blocked. By blocking I mean when the net connectiontells windows it can't send any more data, as a modem does, instead of just merrily dumping the excess data, as anethernet connection does.A message is shown in the song title are when the test finishes, and it has a time limit to stop it hanging aroundforever.The modem 56k button defaults the upload to 24k and not 33k anymore.You can listen to a station while the test happens, which should ease a lot of the greif people have with thisStreamer weak point.The download speed is not allowed to be greater than 1.5 times the upload speed.Moved the 'skip bandwidth' checkbox to advanced config, to stop people using it!Yellow PagesStations should reliably appear on the YP list now.The IP is looked up through DNS properly.The size of the station blurb/streamer web page is now 1300-ish bytes, allowing for much more stuff than the previous400 bytes. I will finish the streamed web site stuff one day...Added a hack to prevent very long song names and blurbs without spaces from accidentally 'page widening' the YP web page.'Page widening' is a favourite hobby of slashdot trolls.There is an initial delay of 30 seconds before Streamer tries to list its station on the YP, to stop broken stationshammering the server when their dsp is set to auto reconnect. A broadcast has to work properly for 30 seconds beforeit even tries to list. Also put a minimum retry time of 4 mins when Streamer fails to connect to the YP.1.37 (17 March 04)Added an integrated player!.Streamer can now play back the audio itself, without the need for another player. No more problems with media players fighting over ownership of audio, or realplayer stealing the job of playback and then being unable to actually play Ogg streams. It works for ogg and mp3, but won't decode mp3pro yet, and I may have to remove mp3 support because of licencing issues. Ogg sounds better anyway.There are two config options to use the external player for ogg and mp3. Sometimes mp3 playback will just stop at the end of a song, so the internal player is disabled by default for mp3. The internal player is FmodRedesigned the display.It should now be simple enough to not scare the newbie listeners. On the top is the station info and tuning state (seeking stream etc), the current song title, and just 5 buttons for station list, chat, config, web help, and a -> button to show the advanced stuff and side status bar.On the bottom is a standard bunch of play, stop etc buttons, (two of which actually do something). Plus volume control, stream chat, and streamed station web site view. And some numbers so you can see what is going on internally: internal player state and buffer %, feeds in/out, data in/out, and average data in/out.The play button will tune to the currently selected station in the list if Streamer is not tuned to anything, or it will restart playback of the currently tuned station at the start of it's internal buffer if there is a currently tuned station, introducing a delay of up to 2 mins.If you use an external player and don't have auto start enabled, you will need to click it twice to start the player. The forward and rewind buttons will let you skip backwards and forwards (when I implement them). The currently selected station in the list now stays selected between redraws.The config screen is reorganised and simplified, basic stuff at the top, advanced stuff at the bottom. I was told some listeners are actually scared of all the config options, so I hid them, click 'advanced' to reveal.Edit IP has been removed because it was silly, and options added to choose the nic adapter to bind to, and the preferred LAN IP. Four nics are looked for now. Who has 4 nics?.Added a trayicon, and an option to hide the taskbar icon. This was often demanded for some reason. The taskbar icon doesn't hide when the window is open though, sorry.Hacked ogg so it will always play!. This is done by rewriting the serial number in the ogg header so it matches the following data and the player doesn't just dump the stream. And coming next, an even better hack so all the header and stream block have the same serial, so rewinding in the stream is easy. The fix for non-playing streams was to disable metadata, but no matter how many times I told people to do this, they left metadata on because 'it works on my pc'. Doh!Fixed YP dropouts (possibly), and song titles for ogg update on the YP faster.Fixed streamid=0 in pls files. Removed the empty fields in the stream header sent to the player.Now use ice protocol for ogg, icy for mp3.Put 'Host: hostname' in relay GET's. Relaying still doesn't work properly though.Optimised redraws a bit.Coming next-ish: Skinning. Mesh/Swarm network protocol to replace the tree system. Nat/firewall supertunneling. And more...1.36 (19 Feb 04)Found and corrected a bug that would sometimes cause a receiving Streamer to misreport a stream from behing NAT as being on port 0. This would cause the stream to keep stopping and reseeking.Fixed the bandwidth test bug, so it should give more sensible results than '0' and testing forever now, also reinstated the 'skip test' option. But only use it if the test is being silly please, as setting your upload bw too high and skipping the test causes other problems.Fixed mp3pro titles, for both reading from the dsp and sending to winamp. Fixed icecast2 protocol so the very well encrypted password is now checked properly. The 'allow icecast input' option is now redundant and has been removed.I seem to have broken dsp connections in a random sort of way, the random sort of way where it always works ok on my pc. Broadcasters should use version 1.35 if 1.36 gives problems. 1.35 has the NAT port 0 problem though.Do Not Use ogg with sam2. It may connect ok, but the stream is not sendable because the ogg headers seem to be marked differently to how other dsp's mark them, and Streamer can't parse the stream. And as always, Don't use metedata in ogg, because it makes the stream not play for your listeners. You have been warned...1.35 (3 Feb 04)Fixed problem with multiple lan adapters that would cause Streamer to crash on startup.1.34 (2 Feb 04)New hardwired seed hosts. Extra seeds can also be placed in a seeds.txt file, format is domain/IP:port, with ':port' optional.Dead stations are again sorted with the most recently alive at the top.Lan IP range 10.x.x.x is now recognised correctly. This should fix connectivity problems from/to these LAN pcs.Seperated the IP and bandwidth tests, they don' both get retested when you change something in config.Doesn't retest bandwidth when the IP has changed from last time it was run.It should detect loss of network connection, and a changed IP, to cope with when your underresourced UK ISP disconnects you every 2 hours 'incase you forgot to disconnect yourself'...IP should no longer keep toggling between two values like it didocassionally, and the LAN IP can only now contain genuine LAN IP's(i.e. in the unroutable ranges).Broadcasters auto-join their own chat channel, so I can tell them their stream is silent etc.Your identity in chat is now governed by a session random numberinstead of your pc's IP's, which should stop the repeated 'vanished'messages.Fixed the 'relay conventional stream' port bug. You should be able to relay from any port instead of just 8000.Proxy allocation improved. If it needs a proxy, and there is a streameron the same LAN that also has full un-NAT-ed net access, it will tryand use that one since it could give better incoming access.Connections to same-lan hosts now definitely don't try and use a proxy.Config option to un-capitalise 'shouted' station names in the stations list.Chat display options to hide join/leave/vanish, and to not flash for them.Changed 'web' button to 'help'.Show 'Testing Bandwidth, Please wait' on the titlebar.Added station info and bitrate updates on YP listing.Broadcast config opens large enough to see the 'save station info' button.Firewalled/need proxy status now kept between sessions if locked.The 'not enough bandwidth to send and receive stream' message now contains the station name and bitrate.Removed the skip bandwidth test button because people where using it and causing buffeing streams.Listeners using conventional client-server streaming should now be counted properly. 1.33 (9 Oct 03)Fixed the station list. 1.32 (8 Oct 03)Added message timestamps to the chat system and sorted them in the display.Old messages should not keep circulating now. The initial bunch you get whenfirst connecting seem to be sorted backwards though. There will also be someapparently corrupt messages whilst people change over from 1.32 to 1.32.Changed the way timestamps are held in station info, so the timezone settingon the PC doesn't matter anymore. It could cause no stations to be listedif it was wrong. 1.31 and 1.32 cannot see each other's stations. 1.31 (15 Sept 03)Improved the chat system, now mostly complete, but it does odd things sometimes.It has a userlist, and leave/join messages. It uses a gnutella-like networkto distribute the messages, which would seem to be an ideal method to doa decentralised server-less chat system. 1.30 (4 Sept 03).Added a simple chat system. There is a 'lobby' channel accessible from the'chat' button on the right. Each stream also has it's own chat channel, accessiblefrom the button that appears with 'play' etc. There is no online users list,or join and part messages yet. Broadcasters please open the chat for yourstream, so I can tell you when it's not working :)1.29 (29 Aug 03).Another big overhaul in lan/nat/firewall handling, and it actually works thistime!. Streamers without proper net access on seperate lans can connect directly,i.e. both are having the 'from' port translated by the nat on the way outof the lan. Both net adapter IPs are read if present and individual Streamersno longer get confused as to who they or other Streamers are, which was thecause of all the clones and silly listener numbers in 1.28. Port forwarding is no longer needed, but it can help if you can do it. LanPC's need a proxy that relays messages to them from other pc's who they arenot currently talking to directly. If one pc on a lan is accessing the outsidenet without port translation, then it is the best possible proxy for allother hosts on the lan.Streamer determines if it needs a proxy based on the 'from' port that otherStreamers are seeing in messages from it. If its not the configured portthen Streamer decides its on a lan and needs a proxy. If it is the configuredport then it doesn't need a proxy, even if it's on a lan. This test failsfor ordinary firewalls, so you have to lock the setting and change it yourself.But only if you are using a firewall that blocks incoming connections, andzonealarm for example can be set to not block.If a proxy is on a pc outside the client's lan it should theoretically beless able to open direct channels between pc's on seperate lans, becausethe port used by the connection-initiator in sending messages to the proxycould be different to the one it uses to send messages to the proxy's client.But it seems to work, probably because the initiator's nat is not matchingthe source ip with the target port in incoming messages, so its acceptingreplies from any IP on the port it originally used to send the message tothe proxy. I think...this is a badly explained guess here :)Streamers on the same lan no longer need to use different ports, but in somecases it can help as each streamer may in some cases get normal untranslatedport access to the outside net. It depends on the nat/router you are using.Your stream can now have a web page that displays in Streamer (or not ifyou are using w2k, sorry). This is the beginnings of some enhancements tomake it more than just audio. You could for example have your logo, web campics, or advertising banners to make revenue without having to resort tothose dreadful audio commercials.Images etc must be on a real web server because they are accessed from thereby normal http. Only the root page is embedded in the stream at the moment,but I intend to embed all the other files and pages in the stream as well.The root pages are cached locally so they display quickly for streams youhave recently listened to.Links to pages must have the '_target' tag so they open in a new window.The embedded web page will follow links, but it will keep resetting to theroot page once a minute. Its also limited to 400 characters at the moment.The embedded web code is provided by this library by Jeff Glatt. It crashes on w2k at the moment, so you will get a substitute plain text display instead.The gui has been simplified a bit, things have been moved around and theadvanced' stuff moved more out of sight. That was the intention anyway. Thenew status display shows some of what is going on internally, and the flowdisplay shows what individual feeds are doing in more detail. But it flasheshorribly and doesn't erase the lines at the bottom properly.Ogg may be working properly now, possibly. Every time that I announce I have fixed it, it breaks again.There is a speed test when you first run Streamer, or increase the configuredbandwidth. It asks some other Streamers to accept data from it, and thensends at various speeds to determine what the available upload bandwidthreally is. This is necesarry to ensure a streamer doesn't try and send datafaster than its net connection allows. Sometimes this test messes up becauseits a bit of a hack. You can repeat it, or skip it, but try not to skip itunless its being really silly. Sometimes it will sit there 'paused', thisis when there are not enough volunteers to accept the test data at the neededrate. You cannot tune in to a stream until this test has finished.Feeds to other Streamers are now speed managed better. The resend logic isnow much more sensible (and simple), based on a timestamp with variable resenddelay based on the ping time. All the feeds are put through a common bottleneckto smooth out the flow out. The congestion slowdown code was removed becauseit was silly, and Streamer muscles tcp out of the way. Or that's what seemsto happen anyway. Feeds that are lagging a lot get automatically closed.Test now happen for situations where Streamer can't relay a stream becauseof low bandwidth. Listeners get dumped (they should not be able to tune inin the first place really). Sometimes the bitrate of a stream will driftupwards and cause this. A broadcast will also stop if it can't be sent becauseof low bandwidth, instead of just being alive but unavailable. This is usuallythe cause of unobtainable streams. The broadcast will also end if the dspstops sending data for 2 minutes. This is the cause of streams that won'tplay and have a supposed 0 bitrate.There should not be much repeated buffering when first listening to a stream.This was caused by not waiting for missing data blocks for long enough.Auto-play when the stream first starts, and auto-retry when the player disconnects,are now seperate options. There's also an auto-view to display the stream'sembedded web page when the stream starts.Hope you like it :-) 1.28 (8 July 03)A big overhaul in the way IP's and ports are handled, which should now copewith evil address-mangling devices such as Routers, NAT (Network Address Translation), LAN's (Local Area Network) etc.Both the internet address and lan address of a host are propogated now. Same-lanhosts use the lan address to communicate, and outside-lan hosts open a channelin to a lan host by sending a 'push' message to an also-outside-lan proxythat maintains a permanent connection to the lan host. Messages emergingfrom lans usually have the 'from' port in them changed by the router/nat,and replies from outside must be sent back to this port or the address-manglerwon't know where to forward the massage to (this is why a proxy is needed).This translated port is now used properly and won't cause lots of aliasesof a host as happens in v1.27. These changes should mean lan hosts now connecttransparently, without needing to configure port-forwarding. Hosts on seperatelans may also be able to connect directly in some cases (like TCP can't,and this should improve in the next version)The reverse-firewall effect' has been patched by a little hack. This is wherea streamer seems unable to send any UDP messages until is has received one,which is a very silly thing for a firewall/etc to do, so it must be my bugbut I can't find it. If no messages are received at all for 30 seconds afterstarting streamer, it makes an http connection to one of the seed hosts andasks to be sent a UDP 'kick' message, which then fixes the problem.Broadcasts have their bitrate measured rather better than before. The totalsare counted over one minute periods, which should eliminate overestimatescaused by the dsp stream coming in bursts. 2b1af7f3a8