Wednesday, February 28, 2007

Bug in Vista Media Center?

Quick edit at the bottom.

Every now and then (say every few days) Vista Media Center starts acting weird. Put in mind here that it's a completely clean install with all valid hardware. It's my testing machine and it only has Visual Studio and the VMC SDK installed on it.

The reason its grieving me is not because I have to restart the application. No. As a Windows user I'm pretty used to that. The big bummer is that I don't know that it has started acting weird so I keep on chasing bugs that do not exist, I do not know how many times I've hooked up a debugger only to find that there is just nothing wrong with my code. Very frustrating. And also seemingly impossible to reproduce or get more information on because it never actually crashes, I have to manually kill it.

But, I've finally found out something that will give me a hint when things are about to go a little wrong and it's this: When the sorting of the application thumbnails in "More Programs" act up, then I just know that my own applications will hang, or render wrong, or ... well, whatever.

But god, this bug has been driving me nuts a few times.

I've been looking around for more information on this one, with no luck. Reporting something as vague as this back to developers is kind of pointless too. Has anyone else seen this one? Does anyone have any information about it?

Edit: It just happened again and I noticed that when the sorting of programs in "programs by name" borks, the first program (top, left) does not show a description when focused but the rest do. I know, not much details -- but for completeness.

Thursday, February 22, 2007

Any pixel artists out there?

If so, you might be interested in a post I made over at DeviantArt looking for some help with Aufero. The post can be found here, but in case it gets deleted or whatever:

Hi,

I've been working on a project for some time now and it's getting to the point where it's time for an alpha release candidate (eg. does installer, deployment, etc work).

Now, the project itself is something I started on when Windows Vista was merely in beta stage and it takes its shape as a Media Center application (see it as a TiVO competitor). It gives users the ability to manage their media library and read reviews/previews and other various information coupled with fetching said media through peer2peer technology (whether this is legitimate or illegitimate material is up to the user).

There seems to be a bit of interest in the application even though only a few screenshots were released to the public so I am guessing it will be decent exposure on peoples TV's around the world.

The project as it is now needs: A set of uniform icons (200-256x200-256 png's). I've been looking into free (as in money) icon sets but no matter how I twist and turn it will be a big mish-mash of graphics which, simply put, makes the application looks thrown together. At the moment the application uses a mish-mash like this and that's probably how it will stay until some brilliant pixeller digs into it. :)

The application will be completely free, hence no money involved (sorry!).

If you are interested, please drop me a mail at aufero.vmc@gmail.com with a link to some of your work and whatever other information you think I/we would need to share.

The information that is out there at the moment can be found at [link] -- just browse through the blog entries and you'll probably come out with enough information to determine whether you'd like to invest some time in this project or not :-)

Tuesday, February 20, 2007

Aufero: XP vs Vista

I got a question the other day and up to that point I hadn't spent a second thinking about it. The question was: "Why not Windows XP?"

I was a bit stumped at first since I never considered writing Aufero for XP. Yeah, so why not? It's an easy answer: It just not fun to develop Media Center applications for Windows XP. I tried writing a few applications way back then and I always got stuck when I got to the point of User Interface because it always turned out so hideous that I got uninspired and just went back to do whatever I was doing before.

Now, after the initial (rather steep?) learning curve of managed code + MCML in VMC I must conclude that Microsoft did a good choice here. Kudos to the development team of Media Center.

This will eventually mean that there will be heaps of applications for VMC. A few years down the line we might see Microsoft being charged with being anti-competitive (probably here in EU) due to the fact that they ship Media Center with their OS. Isn't it a lovely world. :)

Monday, February 19, 2007

To Floss or Not

I've been trying to find where I stated that Aufero was was Open[*], Shared[*] or Closed[*] source. But I can't find it. Still I heard that some people blogged it. Thing is, I intentionally avoided making a statement on this topic. And I will not do it now either.

Don't get me started on open or closed source -- you should know how good I am at ranting by now. :)

But, flossing in combination with toothbrushing can prevent gum disease, halitosis, and dental caries.

Flame away.

Thursday, February 15, 2007

Murder, Rape and Robbery on the High Seas

Your spontaneous thought when seeing the word piracy is hardly what you just read in the title. And now you're already thinking it; oh god, another Jane Blogger that is going to defend her wrong-doings with some twisted view on reality.

Wrong.

I bumped into some speculation as to whether Aufero was intended for legitimate or illegitimate downloads. At first I was going to just ignore it and roll my eyes at it but as I started thinking about it it slowly became a concern. But let's start with sending the speculation on its merry way: Personally I will of course never use it for any illegitimate purpose, what you do with it is up to you. That said, the code is very versatile and could easily be adapted to do ... anything related.

Now, I am not a lawyer but I dare say that writing this software can hardly be considered a wrong-doing. Anyone with half a keyboard could dig up exactly the same information that Aufero uses. But what made me concerned was the fact that they might think I am, for instance, using Aufero to retrieve media for which I do not have a license (I am not of course). I do not intend to make any money from Aufero. What kind of case would any organization have? Organization being MPAA, RIAA, legal authorities, whatever?

I bring up MPAA, RIAA tongue in cheek really, this is exactly the kind of paranoia they want everyone to have and they are slowly getting there. Good on them. I wish them luck.

But honestly, if you are older than 18 I bet you'd stop getting bootlegs or rips off the net if you could get it legitimately and it had the following properties:
  1. Decent price (tricky one, think about it)
  2. Not DRM infested
  3. Quality at level of your average Xvid DVDrip
  4. Available at about the time when DVD's hit stores
  5. Available online
I know, I know. If all of those were true the whole industry would have to change, video rental business as we know it would be out the door. In fact, most of what they have built their business model on in the last fifty years would be out the door. It's outdated. So I kindly ask them: Please, deal with it.

By the way, bootlegging originally meant hiding liquor in the legs of your boots during the prohibition era. How it came to mean making an unauthorized recording is unclear. [*]

It might be a remarkably stupid question, but what are the legal implications for a developer here? If any?

Wednesday, February 14, 2007

The future, already

So, Aufero is moving along and will sooner or later reach a version 1 status. But, to be totally honest I am working on a future version (two?) of Aufero as well. The reason for this is simple: I don't think it is feasable to make Aufero do what I really want it to do in a near future (no dates said).

Joost dot com
So what's in it for this future version then? In order to tell you that I'll have to give you a bit of history. Quite frankly I had my hopes up on a somewhat hyped project called "The Venice Project", later on renamed to "Joost" (www.joost.com). It has gotten a lot of good press/bloggage but I wonder how much of that is because Niklas Zennström and Janus Friis is behind it (the guys that founded Skype). What they're basically doing is P2P'd TV and the money will come from advertisement. Now, we all agree this is the way to go down the line (even if Bill Gates thinks so too), at least to some degree.

It describes itself like this:
... uses secure peer-to-peer technology to stream programmes to your computer. Unlike other TV and video-based web applications, it does not require users to download any files to their computers or browse through complicated websites.
The programmes you can watch are a predefined set by Joost.

I got curious since I was working on Aufero and signed up for alpha/beta to see what it was about. This was during fall/early winter 2006, I think. Some time later (January?) I got into the beta and the first impression is what one would expect from beta-software. I'm probably under some kind of NDA or whatever so I won't go into any details -- my point doesn't depend on that anyway. The underlying concept I like, you know, peer2peer media into your living room.

Why!
But why create a new platform? This breaks the entire deal for me. Completely. For something like Joost and it is not available for my platform of choice (eg VMC right now -- who knows tomorrow?) I want open API's. That is if I can't have open source. I want to be able to integrate the backend into my smooth looking start-menu in Vista Media Center.

So I started poking around a bit and realized there is GPL'd code in there (or was at least) which made me slightly excited. I figured the source must be available on the beta-site where you can download the client. Alas. But I won't hold that against them, it is a beta product. I know that the license is pretty unforgiving. And... maybe it was LGPL'd code.

I mailed Joost some time back asking about API's, I did not get a response. I can only assume that they intend to keep it closed and weed out the GPL'd code. Even though I can't for the life of me figure out why (well, I can... money). And to top that off; let's face it, if you are going to open your API's and hope on a developer community around the software, boy are you going to have to struggle if you want to compete with... say, a similar product written for Media Center. Microsoft may do a lot of bad things, but one thing they do know how to do is Development Tools and create an interest in their technologies.

Of course, developing the software and create a huge hype, then selling it to Microsoft could be an option. But all in all, I am not overwhelmed by the technology or the entire package. I'm all for making money, but you can make more money by doing things different.

There is some speculation and I hope I will be corrected. But this blog is not about Joost. Nor about media in general, this is first and last bloggage about Joost. On to what the blog IS about:


Aufero Next Generation
If you haven't guessed it yet, I want to see a p2p based streaming product on top of Aufero's V1's functionality. It was never a far-fetched scenario. Additionally it will also include meta data sharing (more below on that).

There are a few things that needs to be dealt with in order to apply directly on top of current media sharing. Packing with RAR would become a no-no, I am peering at QuickLZ for packing if anything. What encoding? Public or private tracker? Bandwidth for backup-seeding (this is where money rears its ugly head)? The best way to approach these questions would be to sit down with a bunch of clueful people that have an interest in creating an open platform for this, then push for de-facto. Maybe there is one that would fit like a glove -- point me to it!


Sharing Aufero Meta Data
But more within reach is the following, and this is where I am at: Sharing Data and Aufero Meta Data using BitTorrent (or other; should BT vanish in a poof of abuse -- unlikely).

This would include
  • Configuration and fine tuning; this is user-selected data: could be trackers, feeds, ...

  • Refined match-sets are shared; this would include torrent statistics and relation-kills, and similar, ... (A relation-kill is a match that is wrong)

  • Historical data from original sources (read: feeds, scrapes etc) is shared. Reasons for this to exist would be to get new users up to speed right away, since you have such a small dataset when you first start out. This also has the advantage that it will not put any load on other services out there. I picture monthly datasets and daily. The daily datasets would probably have a pretty short lifespan on a public tracker; this would create temporary gaps. In theory a user could rely on these datasets for all data-gathering. Disadvantage is delay in the information you get; but I imagine that it's quite irrelevant if you get information within the hour or within the day (in fact, I could argue that it's better to get it slightly late due to behaviour of torrent-swarms).

  • I'm not too interested in creating any kind of "social networking community" here; there are plenty of good sites for that already. So voting-and-chat-like functionality is not something I am too interested in. What I want is something that maintains itself just by users doing what users would normally do. So, scrap 'social' and make it 'networking community'.

  • It'd strive to be as anonymous as it can technically be.

This was quite the rant but I like the idea of a semi-dynamic data flow like this. There's really no way of knowing if this will work out, but damnit, I'd like it to.

Is there anything out there that relies on public peer-2-peer technology to share data and configurations? Anyone know? Anyone reading?


But first things first. Back to MCML for this author. I will revisit this topic.


Aufero, aufero.vmc@gmail.com

Tuesday, February 13, 2007

Analyzing Torrents

A part of the development of Aufero is inevitably analyzing torrents and naming of them. This means being able to guess what is tagging and what is actually a relevant part of the name during runtime. For instance, common words like the, is, go, have, from should be disregarded in many cases. Then we have what I call "torrent noise" which among a lot of other words can be r00, release, version. We also have a bit more interesting things that is tagging of a Torrent: xvid, dvdrip, r5, proper, pal, ntsc... Then of course, the title -- which is essentially what we want to get at.

The hardest thing in Aufero is undoubtedly finding which word falls into what category seeing as words come and go pretty rapidly. Aufero relies on other ways of finding the one torrent after this initial analysis, but that is out of scope for this post.

To the point, I ran a little snippet of code today on a subset of some 3-4 months of torrents to see what is actually "popular" out there (popular in this case is what is "hot" and what was deemed worthy of being uploaded). The list below is kind of an inverted cloud, instead of what is being searched for, it says what is available (or maybe it falls under the category of cloud anyway -- I just couldn't be arsed to set fontsize on them)...

This is the top 100 list with a few of the filters above applied:

Pos Count Word
---- ------- -------------------------
1 1,214 pro
2 845 vista
3 755 windows
4 597 bt
5 595 colombo
6 499 xp
7 459 tntvillage
8 407 professional
9 388 games
10 355 tv
11 347 aio
12 334 office
13 321 converter
14 311 world
15 297 ultimate
16 291 live
17 286 info
18 262 speed
19 256 enterprise
20 248 man
21 247 diamond
22 243 studio
23 239 severedbytes
24 239 thepeerhub
25 237 ps2
26 227 http
27 223 antivirus
28 220 avithe
29 220 internet
30 220 player
31 214 stv
32 210 premium
33 209 black
34 208 collection
35 205 life
36 205 media
37 203 fs
38 200 int
39 197 last
40 197 war
41 196 night
42 196 royale
43 196 vs
44 195 pl
45 190 line
46 189 del
47 185 x264
48 183 pdtv
49 183 security
50 181 king
51 178 dead
52 178 deluxe
53 176 tus
54 171 online
55 166 ipodnova
56 164 best
57 164 jess
58 164 season
59 162 complete
60 161 image
61 161 platinum
62 160 es
63 159 italian
64 159 newpct
65 158 wars
66 157 dsr
67 157 good
68 157 manager
69 157 nds
70 156 md
71 155 men
72 150 microsoft
73 147 anti
74 147 museum
75 146 magic
76 144 balboa
77 144 doctor
78 144 gold
79 144 sp2
80 144 team
81 143 server
82 142 photoshop
83 142 warcraft
84 140 tc
85 138 elite
86 136 psxpsp
87 135 rmvb
88 133 casino
89 133 download
90 132 burning
91 132 suite
92 132 vegas
93 131 earth
94 131 evil
95 131 mvs
96 131 nero
97 131 virus
98 130 ipod
99 130 pepedivx
100 130 star

There are not many surprises in there to be honest, at position 245 in the list we find "Linux", which was a lot higher a few months back. Not sure why it dropped so far. Microsoft is on 150 as a comparison.

Anyway, this was just a funny little tidbit. I saw there were a few comments below, I haven't had a chance to respond to anything, but I will!


Aufero

PS. I got myself an email-address too (see profile)! Welcome me to 2007!

PPS. A late edit: Perhaps I should add this thing as a background effect on main-screen of Aufero or something? I'm not entirely sure what it shows yet, but I'm sure it shows something!

Monday, February 12, 2007

Aufero Progress

I'd like to say that there is no public download available. It's an application in development, but you might be pleased to hear that the backend is done and seems stable. What is left is the front-end (or user interface if you wish), and believe me when I say that it is a royal pain in the ass to write applications for VMC at this stage.

So give it a little time. I will post a request for mature alpha-testers in the not so distant future.

Oh, and I'd love feedback on what you'd want to see in Aufero (it doesn't matter if you post about something that is already implemented). Just reply below.


Aufero

Thrown Together Feature List

Seeing as there are very few Vista Media Center applications out there and people seem to be pretty starved, I figured I might as well start blogging about what I (prefer to remain anonymous for time being) am working on. To be honest, I have no idea if there even is any interest in anything like this - I wrote it primarily for myself.

I have thrown together some quick ramblings (subject to change) that tries to outline what Aufero is about, which you will find ... now (I must emphasize that it is rambling, but you can probably decipher it) :


  • Navigate and view collections of general information, previews, trailers, reviews, releases from scene to theatre to DVD and torrents related to your media or media you will be interested in.

  • Aufero uses about fifty sources for its information gathering, a lot of it is irrelevant but over time it gathers more relevant information about present and future. For instance it definitely is worth scheduling the download of "Magnum P.I. 'trailer'" (scheduled for release sometime in '07) already today.

  • Aufero is written completely from scratch with the sole purpose of being a Vista Media Center application.

  • Manage existing library of downloaded media.

  • Manage a Wish List of interesting videos that you would like to know about.

  • Automatic download of videos on your Wish List as Torrents becomes available (give it some hours to monitor activity after something is released)

  • Manual downloading of torrents.

  • Seemlessly play non-WMV (eg. XviD etc) on XBox360 using Aufero's media library (requires TVersity)

  • Subtle notification on your screen when something you had on your Wish List is found, downloaded, unpacked, indexed and moved into your library.

  • Notification of relevant events through mail when you are not in front of your TV.

  • Built using MCML/Media Center Managed code for that smooth look we all love :-)

  • The user interface tries to be simple to increase the Wife-Acceptance and make them schedule their own downloads. I apologize to any ladies that might be reading this, but I wonder how many times I've gotten the question: Can you get [some obscure movie from 1988]. Now I can just point at the remote control and if it isn't available now, it will be downloaded in the future. Does this sound sexistic? Unintended, I promise.

  • So, what's the catch? Let me get back to you on that one. :-)

Disclaimer
I do not endorse piracy, piracy is illegal. This tool uses information already available to everyone. It searches, indexes and filters relevant information into sets in its own database which can then be retrieved, viewed or downloaded (manually or automatically depending on what the user said).

And a few obligatory screenshots from latest Alpha-build (yes, it will hopefully be prettier):


Let's get this show started


What is Aufero?

Aufero is primarily an information-gatherer with a BitTorrent client written for use with Windows Vista Media Center (VMC). It also provide users with the ability to "wait for", schedule and view new or already existing downloads on your computer (or network). You do this using your remote control sitting in your sofa. You can see it as a broad-catcher on steroids.

- "Why leave the sofa if you don't have to?"

Tuesday, February 6, 2007

Aufero, indeed.

This is the blog.

This is where you will find updates and news. You will, however, find the download elsewhere.

Aufero