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.

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







Finding Episodes

Most of the time SpearNZB can find episodes for your series without any problems. However there are certain series titles that can cause a problem. 

How the search works is that SpearNZB queries RSS feeds or uses its internal database for the title of the series, and a season episode number.

This is how you might look for something on a Web Site like Newzbin. You would time something like CSI s09e01 to find CSI season 9 episode 1. 

Where we run into problems is the actual show is CSI: Crime Scene Investigation. Most of the time the release will just have CSI. Or if it's a spin-off it will have the entire series name. 

The trick is that for a few special cases, like this one you need to tweak the series name to matches for the file names that get posted. 

This also works differenty depending on what you use to search episodes (Newzbin, NZBMatrix, TVNZB or SpearNZB)


For NZBMatrix the title needs to be set to what we expect to find in a search. So we rename to CSI


Screen shot 2009-10-14 at 8.28.46 PM


Screen shot 2009-10-14 at 8.29.11 PM


Now SpearNZB will search for CSI and the season episode number. Also don't forget to set the category for NZBMatrix to get the resolution that you desire.


TVNZB and SpearNZB-Database works by giving you a list of all of the names that make up a series. 

Highlight the series and press settings.


Screen shot 2009-10-14 at 8.37.52 PM


In this case we want to remove everything but CSI and press the add button to add x264. So when SpearNZB goes to search for this episode it will find files that have 

CSI s##e## and x264. 

We could also add more text to narrow down a search if that was needed as well.


With Newzbin you first need to create an RSS Feed that will return valid items to search. We would create an RSS feed for CSI x264 in the TV Section. 

Here we actually want the title CSI: Crime Scene Investigation because on Newzbin they have wonderful moderators that use proper names.


Screen shot 2009-10-14 at 8.44.31 PM


90% of time you don't have to worry about this, but if your not finding episodes for your favorite shows this should help in finding an answer. 

Happy Watching.....


Changes from Beta 2 to Beta 3

Beta 1 was quite the effort. It was a real shocker but also the first time anyone other than I ran the app. 

Beta 2 was a lot more stable. The issues found were quite unexpected but very much needed to be found, like enhanced SSL certificates. 

I thought I would provide a change log for the differences between 2 and 3. 


    • Rename of Series. Series can be renamed if the name from TheTVDB doesn’t quite match the name of files posted.
    • Extended SSL Certificates (Newsdemon)
    • Presets for file locations. Allows to set default locations to copy files. This way you don’t have to navigate to the same location for every series.
    • Change database location (not sure if this is a good idea). This was going the the users default or home directory. It is still the default.
    • Removed the NZB tab from settings. Wasn't needed.
    • Fixed bugs where extra spaces were being pasted into connection settings, and then not able to connect.
    • Deleting RAR files after a successful unrar
    • Resizing of the RSS dialog. The RSS dialog location and size are saved. This is nice for being able to size the dialog to see the RSS contents on the left.
    • Not using serialization for window locations. Causes problems when new builds are released
    • Option for a series to use the date as the episode number. This is for shows that air daily like the Daily Show.
    • Fixes with par. Adding execute permissions on .par2
    • Return of the NZB database that exist somewhere in the cloud to provide NZB file links for SpearNZB. SpearNZB does not host files, just keeps a database of the article ID’s on Usenet
    • Added episode checker (like Newzbin, NZBMatrix RSS) using the SpearNZB database.
    • Added Speed Limit
    • Reorder Que/Tabs
    • Logos and Splash Screen
    • Using the index of the file when downloading temp files instead of a variation of the nzb file. Avoids invalid file name bugs.
    • Changed table highlighters to have the mac color.
    • Minimum column widths in the table.
    • Bug fixes with invalid character names
    • NZB Matrix category not getting set. Finds the first item, not looking at the category
    • Table sorting bugs
    • Bugs with not downloading the first file. Downloads whatever is the last file loaded which is unpredictable with threading.



Beta 3

Beta 2 was by far the most successful beta. A lot of issues were found that I never would have found on my own including 

1. Enhanced SSL certificates. Thank you NewsDemon

2. Category not getting correctly set with Newzdemon

3. Spotlight trying to search the contents of the download thus killing performance. 


Some new features, most notability the NZB database is back, not on your system but in the cloud somewhere. 

This means your system is not downloading and indexing the NZB entries, that is done elsewhere. 

You can also use this database for episode searches, so you don't need the RSS feeds. 

Keep in mind however that RSS feeds are still a great way to get NZB files and they are usually reviewed by members of the web sites. There is no review in the SpearNZB database at this time, but I've personally haven't had any problems.

There will be more videos and instructions in the days to come, but I had to get this out due to the current version timing out on Oct 1st so no time at the moment. 

Enjoy...

Kraig


Beta 2

Beta 2 is a direct result of the valuable feed back that I received from beta 1 that went out last April. 

Allot was learned on what worked and what didn't. The biggest change has been the removal of the private NZB database and relying on RSS feeds instead. 

Depending on what happens in the world of Usenet the database might come back in latter versions, but for now the RSS feeds is more simple for the App and for the people that use it. 

The screen-cast have been redone to reflect the changes since beta 1. 

With RSS feeds it is a good idea to belong to either Newzbin or NZBMatrix. 

TVNZB is supported but their feeds are more limiting than the others. They do have the best logo

Thanks for all of the feed back.

Have fun,

Kraig

Goodbye DB Hello RSS

My original intent with SpearNZB was to have a desktop application that didn't rely on any external web sites. Allot of progress was made to that goal but I decided that for now I should pull out that feature. 

Configuration, bandwidth, speed and disk space was the main reasons that I removed it. 

If the Websites that offer the RSS feeds go away then rest assured it will be back. For now RSS feeds are just much more efficient.

Instead I've added much better support for RSS feeds, including Newzbin, NZBMatrix and TVNZB

Compression for Astraweb was also added, so I'm the second Usenet client to implement it. Good for me.

TV Shows can be auto-named. I didn't think that this would be all that useful, but after using it for awhile, it's nice to have consisent names with the Series, episode and episode title.

Season can be placed in their own directories for even more organization.

Linux build is also back for you true geeks. 


Version 0.5.26

Many bug fixes including SSL on Mac!!!!!!

You must be running the latest version of Java from Apple. If your not sure run an update and see if you need it.

The same version Java 6.13 that fixes SSL also had an issue with the portion that starts up SpearNZB. That fix is in version .26.

Enjoy,

Kraig

Episodes

When the beta went out a couple of months ago what seemed to be the feature that most people were excited about downloading TV Series and episodes. 

The biggest issues were that it took about a day to build the private NZB database from Usenet and the setup for selecting a TV Series and episodes was both problematic and confusing. 

The reason for the confusion was trying to make it more general like being able to select any newsgroup to look for episodes, but then a user would need to know what newsgroup to select. 

Well those dark days are over. First the newsgroups that are used for used for searching are downloaded from the SpearNZB web site. This means that the initial day or more to setup the database should take a few minutes. 

Also integration with TheTVDB makes episode so much cleaner. 

Picture 1


You simply add a series and select the episodes you would like to download. If an episode has not aired yet, then it will be downloaded after it does air.

If your a previous beta user, you should delete the database in your <UserDir>/newdb directory. 

The database will be built again fairly fast, but you will have to re-enter your RSS feeds. (Sorry)

I'll be posting better instructions and How To Videos as time permits.

Kraig....

Beta Update

I really appreciate all of the people who have looked at the current beta of SpearNZB. 

I do apologize that I didn't do enough testing before I announced to the world by posting it on Usenet. 

The biggest problem with this beta is that when I package it up to be in native file formats (.app, .exe ext...) There are bugs that manifest that I haven't seen while running it as I normally do.

The reason why I wanted to do a beta is that I've been using SpearNZB since the Fall with the basics of the program working. Meaning that every TV show that I'm interested, in being automatically downloaded and waiting. Based on that I felt it was time to see what would happen when other people got their hands on it.

I have to admit, that the communications I've received have been very positive despite the problem that people have had. 

One part of the app that has caused confusion is the NZB database that gets built. The thing to understand is this database is built by scanning headers in the newsgroups that are selected, so this can take some time. Once this database is built you essentially have your own private database of the NZB files found on Usenet, which is very powerful but the drawbacks are the bandwidth and time to scan for these files. 

Knowing this you should limit the newsgroups to what you think you will need. 

I have pondered ways to make this better, like choosing the dates your interested in. If you want to download new episodes only then you don't need to scan a years worth of NZB files for example. 

Also I'm sure the next Beta will have bugs, but I'll do a better job of testing on all platforms first to minimize what happened this time.

Thanks again and hang in there, it will be worth it...


First Beta actually released

Well I thought I would let the cat out of the bag and upload the first version of SpearNZB to Usenet. There seems to be quite allot of interest, but unfortunately there was a problem. 

First some newsgroups with extremely large post (boneless) was used that actually was to large to store in number fields in an external library that I use to communicate with News-Servers. 

The other bug was related to an issue that I don't see on my development machine. 

Actually I'm quite pleased that there were some very helpful people that pointed these issues out so that could get fixed.

Also there are some good ideas on feature additions and enhancements that I would like to consider, but I would like to get a stable version out first. 

Thanks to everyone and enjoy 0.5.10

Kraig