Weblog

Here is the most up to date information regarding SpearNZB. Subscribe to the RSS feed to get the latest on what's happening regarding changes, bug fixes and other happenings.

Version 1.1.10

L Fixes date parsing error with NZBClub

Fixes error when items are not found on NZBClub

Only updates TVDB database once a day. When a series is being updated on TheTVDB it can be marked as updated various times. If we only update once a day this will mean we will usually update the information only once and not with each episode search.

If an episode air date is greater than seven days and the episode is not found it is marked as downloaded to avoid searching in the future.

This fixes an issue where shows are selected to downloaded that aren't available, plus lots of episodes that won't exist. DVD extras, Web Episodes are usually marked as season zero. Every unfound search on NZB Matrix takes a minute due to their API waiting 30 seconds between calls. 

Known issues. 

Have multiple search selections that are no longer valid (SpearNZB search, TVNZB) can't remove them due to crashing the database if they are in use. 


Version 1.1.9

A few people have noticed another issue with NZBMatrix. NZBMatrix is returning found search results for NZB files that have been removed. 

When this happens there are multiple results returned, so each one is checked. 

Also speed in searching for new episodes is quite slow. This is not due to SpearNZB being busy but with waiting 30 seconds between each call to NZBMatrix. 

For each episode that is checked both the formats s01e01 and 1x01 are searched. If there are no matches this will take a minute. If you decide to search for lots of episodes that aren't found then it could take hours. 

This is not ideal of course. I recommend that you don't use SpearNZB to search for episodes that don't exist in anticipation that they will show up someday. Various web sites have features to handle that. 

I understand NZBMatrix is a victim of their own success and they have to take measures to keep their web site responsive. 

I"ve not added one more free option in searching. http://www.nzbclub.com/ can now be used as an alternative. 

This hasn't been highly tested since I just completed it today, but is working in the test that I have done. 


Version 1.1.8

Just a quick update to handle when invalid XML is returned from TheTVDB via Asian characters in this case. 


Version 1.1.6

This version addresses changes with NZBMatrix. 

NZBMatrix will reject more than one API call per minute. The fix for this is two fold.

If NZBMatrix returns a wait message, then SpearNZB will wait the number of seconds specified. 

The second part is that Episodes are downloaded one at a time. If an episode is found it is downloaded and as soon as it finishes it checks to see if there is another one.

This means that NZBMatrix will not get called more than once in a minute, unless episodes are not found and a second one is searched...




NZBMatrix and Newzbin

It has been a couple of weeks of a lot of changes in the NZB world.

First the usefulness of Newzbin has been greatly reduced, and second NZBMatrix has updated their API due to performance issues. 

Their API is being used to the point of slowing down their site, so they did a quick change to reduce the API load. 

Only 1 query is allowed every 60 seconds. SpearNZB will go through a list of download candidates and search NZBMatrix one a time, downloading the ones that it finds. 

This is not bad in the sense that you download maybe five episodes a day and they are found. But if select every season of Cheers and it is not available with the hope that some day it will be, this could cause 192 queries per hour. And that is only one series and one user.

I don't know if that is actually happening, but it could, which means that I need to address it.

I have also noticed my cost on my own database usage has tripled in the last month, so the querying of new episodes needs to be allot more efficient. 

In the mean time you might have noticed that only one episode is being download per search due to this issue.

I'm working on a solution, but the API works the way that it does. 

One idea is to only search for one show, download it and then search again. Still not a perfect solution because if it isn't found you still need to wait 60 seconds to search for the next one. 


Kraig.....






Version 1.1.5

Fixes update problem when episodes are entered in TVRage without dates.


Version 1.1.4

Hello SpearNZB Users

The updates keep coming. This version has some updated libraries, and some small tweaks from user request. 

1. Updated synth library

2. Option to hide alerts. Alerts can be annoying if your watching something and SpearNZB decides to notify you of downloaded content. Suggestion was to use Growl, but since this runs on Windows as well not an option at this time.

3. Fix for shows not in the database. If a series is not in the the database it can't be added. All shows listed from TVRage (US) Prime Time are added automatically. If another series not added via TVRage an error occurred. Fixed.

4. Not able to change look and feel. Fixed.

5. Various fixes with the SpearNZB episode search. This is the search that uses it's own database. Not Newsbin or NZBMatrix.

http://nzbmatrix.com/forums.php?action=viewtopic&topicid=25865&page=1

And speaking of that, NZBMatrix started to refuse connections and now is not returning from queries. 

Hopefully this is a glitch that is being fixed. 

Maybe checking for shows every hour is taxing their system, so it's possible that I need to get smarter about how often episodes are checked. Or maybe it has nothing to do with SpearNZB.....

Version 1.1.2

A quick update for anyone who has seen the JDBC batch update error. 

This happens when an episode with an id from TVDBID changes season or episode number. 

Pretty annoying. 

Also there has been a fix for the server updating. If you've noticed that episode season and or episode numbers not getting updated that should be fixed now as well. 


Version 1.1.1

Over the last few weeks since the last version I've been going over database updating. 

Version 1.1.0 also moved where settings are located which resulted in a few bugs which are fixed in 1.1.1

Look and Feel along with Copy Videos to where not working. 

One major bug was the app not starting up due to zero getting placed in the check interval setting. Thanks to the SpearNZB user who helped in fixing this. 

One known issue are shows that air two episodes in one night (The Office, Smallville ext..) When this happens TheTVDB is usually wrong, which causes SpearNZB not to update. Probably minor in that it's usually fixed the next day, but TVRage is usually correct so possibly I can work around it. 

I think that SpearNZB is pretty stable in it's current state, so I'm more experimenting on using a web browser and video playback in the application. 

The sales of SpearNZB has been great and thanks to all of the license users. 

Thanks again,

Kraig



The Future of TV

Check out this nice article on using Plex with SpearNZB to get you a better than DVR experience. 

It's nice to see someone sing the praises of SpearNZB (unsolicited of course). 






Version 1.1.0

Version 1.1 of SpearNZB is mostly about databases and bug fixes. 

About a month ago TheTVDB was going up and down on a daily basis. More and more web sites and applications are relying on their great service and they are also in the process of moving to other technologies. 

Since this application relies so heavily on their database I started to think about how I decouple SpearNZB from them. If they decided one day to shutdown, or they revoked the key used to connect with their service, I would have allot of upset users. 

On top of this was the fact that the information is provided by the community and so if a volunteer doesn't add the show information, then it will not get downloaded. 

The answer seemed to be adding TV show information to the SpearNZB database. Currently this database gets information from both TheTVDB and TVRage. The idea is getting the best of both worlds. If there is another source to draw on in the future that can also be done without changing the application. 

This was quite a bit of work, and by using the application you shouldn't even know that it's happening. 

What's in the database at the moment are current series that are airing in the United States. If someone searches for a Series that is not yet in the database then it is added at the same time that it is added locally. 

Information is synced between TVRage and TheTVDB once a day. 

This also means that the load of SpearNZB on TheTVDB should be much lighter. Instead of every user synching every time they check for episode, it should only happen once a day on our server. 

I also want to encourage people to update TheTVDB, if you know that series that you are concerned about isn't getting updated on TheTVDB. Even though SpearNZB should still download, your media center won't update if it uses TheTVDB.


Java 6 Update 18

This version of Java has some changes that breaks Show Settings during downloading, and possibly other features. 

Windows Users might have noticed this, Update 18 is not available on the Mac currently. 

Bug Fixes / Changes

  • Spaces not searched correctly in Series Search
  • Settings are now stored in the .spearnzb settings folder. Passwords are encrypted. 
  • par2cmdline has been updated. Hoping for better par fix results
  • Java 6 Update 18, breaks settings dialog when downloading due to SwingWorker changes.
  • Problems downloading NZB files from the SpearNZB database when NZB files are made up of multiple segments
  • Newzbin episode search 
  • Not saving NZBMatrix quality setting
  • Overwriting names when series is updated. Causes issues for series like CSI which needs the name to be trimmed in order to work correctly.



TheTVDB and the Future

Most people that use SpearNZB and other applications that use TheTVDB have noticed that it's been up and down for the last couple of weeks.

It's possible that it's not scaling to the load being put on it, and they are also in the process of moving it to another server. 

Since version 1.0.3 I've been developing my own TV database that combines information from TheTVDB and TVRage that will scale to whatever the load becomes. 

What has slowed this down is the uptime of TheTVDB along with some significant changes to the app along with writing a sync utility.

I hope to have a new version out soon.....

Thanks,

Kraig


Feature Request?

I can't say enough nice things about the users of SpearNZB. Everyone has been helpful in making it a successful project. 

Since the release of version 1 the question comes to mind on where to go from here. 

Some ideas. 

1. IPhone application. Allowing scheduling, RSS ext from the IPhone.

2. Integration into ITunes.

3. Movie search ability, similar to how Episode scheduling works. 

4. Add TVRage scraper. 

5. Online web page scheduling. Allow RSS selection and selecting an NZB file from a remote location. 

6. Show episodes downloaded in a media center kind of view and allow watching. 

Comment on these features or ask for your own. 


Version 1.0.3

This release has some bug fixes and some highly requested features. 

Bug Fixes

1. Not able to change email settings once they were entered. Even though the code sets the email settings each time, they were not being replaced. 

2. App would hang if email could not be sent. If the settings were incorrect, after a file was copied it would just hang with the status set to copying. 

3. After canceling during a download, and then restarting the download files were being corrupted.

4. Empty line being placed into the log would then cause the app not to startup, due to not handling the empty line.

New Features

1. Que added. All files that are open when the app closes will be re-opened when SpearNZB opens.

2. Settings window rearranged to fit with smaller screen resolutions. All server settings are in the first section. There is a tab for each server. 

The Options and Episode sections haven't changed. This window is resizable which can be nice for episodes.

server_settings

















3. Estimated time left. Now the progress meter will show how much time is left based on how many bytes are left to be downloaded and the current download speed.

estimatedtimeleft














4. Default look and feel is now Blackeye

5. Alert popup window. Similar to Microsoft office email notification, or Growl. Nice little animation when certain events happen. Basically anything that goes into the log causes the alert popup. This can be helpful when the app can't do things like send email. This shows that something is wrong without the app stopping. 


Version 1.0.2

Thanks to all those who have purchased SpearNZB!!!! 

I hope that you find it useful, and look forward to enhancing it, making it the best NZB binary news reader on the market.


I'm constantly  blown away by the nice constructive feedback, that helps make this a better application. 

On that note there is a new version. Do I plan on doing a version every week? Not necessarily but I've made some improvements that I would like to get out there. 


1. No longer uses the working directory when downing the temp segment files. They are placed into the temp directory, decoded and placed in the working directory. This is done to avoid Spotlight from indexing these files.

2. Performance has been a thorn in my side, but it is now even better. Turn out it is not the downloading but updating the user interface that eats up much more of the CPU. 

Thanks to the registered :) user who found that with large (100's) of files in a NZB file that SpearNZB would grind to a halt. 

You might not have seen this, but if you have you should notice the number of files not affecting performance. 

You also can expect better performance with all downloads.

3. Put logging back in. Logging is either on or off. It is recommended leaving it off unless you are experiencing an issues that you would like addressed. Also this is not the same as the logs under the open menu. This is more for debugging purposes, that  generally you shouldn't be concerned with.

4. NZBMatrix now looking for both episode formats. Usually episodes on NZBMatrix are in the format s00e00. It was noticed with Top Gear the format ##x## was used. Now it searches for both, using the first as the primary. 

5. Show Monitor option placed in the Settings Dialog. Sorry for the confusion that most people were not able to find it, in the status bar. 

6.Fixed bug with problem files being re-downloaded from the watch directory. If a file could not be downloaded and repaired, it was downloaded again from the NZB Watch directory. 


Showing the graph

In the next minor release you will be able to turn the graph off and on in settings but for right now you can turn it off or on by right clicking over the status text in the lower left and checking Show Monitor.

Sorry for the confusion,
Kraig

Screen shot 2009-12-04 at 4.33.29 AM

Version 1.0.1

Just a minor update today.

I noticed that on very large NZB files that there could be a very large slow down to where SpearNZB become unresponsive. 

This was not in the application code but in a build config setting. After changing this setting, I'm getting the same CPU usage (30-50% on 1 core).


This could have been the bug where over 100% CPU usage was reported. If so then hopefully it's the end of that problem. 


Happy Downloading,

Kraig



Version 1.0

Thanks to all of the great people that have helped with testing and ideas for this program. Out of 15 years as a programmer this has been by far the most fun and maybe the most work. 


This app started about two years ago when I was spending allot of time doing the manual process of finding an NZB file, downloading it, unraring it, paring if needed and copying.


I was using Newsbin (the windows app) which just got unraring, but even it was hokey and awkward. It just had the feel of an application that kept getting piled up, feature wise and I didn't care about 75% of the features. 


After looking around and not being able to find anything that would meet my needs I decided to start writing SpearNZB.


I have decided to charge $25.00 for the application to fund the next round of features. This license can be used on all of your computers (up to 10). 


I hope that most people will think that it's worth paying for. If there was an application that existed at the time I started this project I would have loved to pay for it. 


If you feel that you gave allot of feed back and helped with development give me an email and I'll send you a free license. 


It's been really great writing this application and I really hope that everyone enjoys using it. 


Kraig



A note on Performance

A few people have pointed out that the performance of SpearNZB could be better and I agree. I've noticed that downloading takes twice the CPU as say another product 'Unison'. I've spent allot of time trying different things, investing in profilers and the bottle neck seems to be in the Java runtime.


The reason why this seems to be so, is that the code that takes 95% of the CPU during download is the line to read from the network stream. There are different ways that this can be done, buffer sizes ext and it doesn't seem to make a difference. 


My experience however is that this doesn't cause myself as a user of SpearNZB much if any inconvenience. 

My media computer is a three year old PC running Vista with 2 Gigs of RAM, so not top of the line by any means. It is very common to be downloading at full speed (8 to 20 megabit) and watch a High res TV Show or movie via XBMC without noticeable side affects (Jerky Video, pauses ext...) Even during unraring/copying. 


If you can watch a high res video and download at 8 Megabit without any issues, then it would seem that you could surf the web, do email at the same time or whatever else. 


Now to be fair, the faster the download the more resources will be used, so at 50 Megabit this might not be true. I don't know because I can't test that. 


The screen shot below shows typical resource usage on my development machine (IMac 2.4 Intel Cure 2 Duo, 2 GB RAM)


Screen shot 2009-11-21 at 10.02.11 AM


At the beginning of a download CPU usage can go up to 120% (50% per CPU) and then stable out at around 30%. It does jump up to 50% depending on what it's doing, but 30-40 should be the average. 


Hopefully for most people this is acceptable. If not check in every so often, you never know....



Version 0.9.9


Changes in this version


Par Fixes


Big change in this version is the fix for multiple attempts to download when a post is incomplete and can't be repaired. 

Now if this happens the episode is marked downloaded to avoid retrying. 


Par fixing has also gotten allot better in this release. If SpearNZB doesn't repair it, it probably can't be repaired. 


SpearNZB Database


The SpearNZB database was finding too many nzb files with number/id's for names in alt.binaries.hdtv.x264. This is pretty much useless, so I updated the searching to match up the number in the NZB file to the rest of the post to find the actual title. 


Auto-Updating


I've added auto-updating. Once a week SpearNZB will check for updates, install the new version if there is one.


Threading-Decoding

Decode post in a separate thread from downloading so that the next file doesn't have to wait for the previous file to be decoded.


Monitor 

Added bandwidth to the system monitor

Screen shot 2009-11-05 at 10.37.46 PM

Bug Fixes


Multipart NZB file downloading (from the database) not working