 We're glad he's here. Our next talk in the Debian Multimedia track is given by Christopher Rose, and it's about Debian as a home TV multimedia management system. Christopher, please. We'll see what it's about. We'll see what it's gonna be about in the end. I don't know how this can fit anybody. You can hear me, right? Good. So, I'm Christopher Rose, as you can see. My day job is for IBM, but I've been with Debian longer, actually. All right. Since 1993, actually. So, and one of the things I've been using at Debian for all this time is as a television system. So, I'm gonna talk about that a bit. This is the app that you probably saw already in the description. Because I work for IBM, I have to show you this slide, which basically says that, you know, you can't go outside afterwards and say, now, IBM has promised to deliver something. All right. So, I started with, in 2002, with this television stuff. With a system called Myth TV, that probably many of you know. And it was already working quite nicely at that time. You could probably get a really, really small computer to, you know, do the job. So, already then, you know, a 600 megahertz computer was a really slow computer at that time. And you could, you know, get standard television programs recorded and you can show them on a normal TV with S-Video. And it all worked really nicely. I should have my pointer. And for several years, I was happy like this with just recording from the antenna and showing things. But of course, you get ambitious as time goes on. And so, I upgraded it a little bit in 2004. So, you see, the big thing, of course, is space, right? So, now I'm at 600 gigs at that point. And it just keeps growing, right? You get cable TV, then you get these sort of set-top boxes that come with the subscription. Then you have to get the signal out of those. So, that's always interesting. But the Myth TV always seemed to have good ways of doing it. And of course, running Debian underneath meant that I could control how everything was going on. So, one of the things, for example, that we've done really nicely is the way you integrate all these separate systems. So, for example, the remote control system is this thing called LIRC. LIRC, the remote control system is a system called LIRC, I don't know how you say it, L-R-I-C. And that means that the remote control goes in through the low-level interface in the kernel and can then control everything and pretend to be a keyboard or anything you want to do. So, all these things make this nice and the whole idea with Myth TV wants to be mythical. So, you know, the impossible box you can construct that does everything for you. But it doesn't quite get there in the end. And I'll get to that later. Well, let me just go through the history, right? So, in 2006 I then got really serious and split the Myth TV system up in front-end and back-end, which you're really supposed to do always, but I waited a bit. So now I used a projector, you know, to show things. I had got real surround sound. You can get digital audio out, of course. And this all happened primarily because the cable boxes were now able to feed a fire wire. So I feed a digital signal directly into the computer, which of course is great because then there's no decoding involved in the capture. That fire wire I think doesn't work very well though. So, as you'll see if you try and do this or talk to people who do it, it's super unreliable. Mostly because the cable companies make it so. Of course, they don't like this fact that you can take a digital signal straight out of their cable boxes and put it onto a computer, so they make it not work. And even though there's a whole legal thing that Congress has ordered that you must support it and stuff like that, but in practice they don't. So of course, a few years ago we got really serious because I had to go to HD now. So now I got one of these things, a 1080 display. And so now I needed to upgrade the front-end. And that was actually a mixed experience. There were these new Intel chips coming out called Atom, or from NVIDIA too I think, right? And they supposedly supported good video, but the drivers were really lousy. And I don't know why, but on some displays I still get really strange flickering and stuff. And you know, there's no explanation for why that happens. So at this point I moved to Mythbuntu which was a derivative of Debian, of Ubuntu as well, which automates some of the installation of the Myth TV setup, but only the sort of, the formal parts of it. And it's not really useful as I'll try and talk about later. And then of course a back-end became a real server. Now I'm at two terabytes. And the system I'm building right now is actually at eight in a rate. And it's already almost full. So, you know, this is the thing you realize with HDTV that it's about six to 10 gigabytes per hour of recordings. And that's a lot of space when the family don't want you to throw anything away ever. And then you know there's interesting things like now we wanna go to multiple front-ends and that includes one of these evil things here. And then the Zotac, then an old IPMS50 that I got my hands on and stuff like that. And this is really nice. It's very, very easy to put the system together with a few things that don't work. That are, you know, the reason why I'm trying to have this discussion here. Or anyway, so now I'm up to handling three HD signals and two premium HD signals at the same time. One thing I had to do is I had to revert to going analog here. So the cable boxes are actually feeding these new things from whole page called HDPVRs which are decoder boxes that take the analog signal back to digital. So it's really crazy, right? The signal arrives over the cable in digital. Then I make the cable box convert that to analog just to send it one foot across to another box which converts it back to digital. And then I can put it in the computer, right? Just because they don't want me to tap the digital signal directly and you really can't. So that's the pity, but that's life in DRM land. And so yeah, you see that's the one red thing here that's, you know, for some reason, the motherboard in this new computer crashes hard when this card is put into it. You know, like nothing happens, right? So I had to put that in a separate computer to get it to work. So you can, there are many interesting ways to use more power for no reason. All right, so this gets to the discussion. So that's good news which is that I could actually get to this kind of a system and it works. And you can record lots of television and it skips the commercials for you and all these things, it works really nicely. And there's lots of software in Debian and in our world that does video and audio and images. But everyone lives in a little island. So each of them does some things well and some things bad. Like for example, Myth TV does the recording of TV really well and the indexing of those. But it also has handling of your images and handling of your home videos and that's miserably bad. I mean, you know, really bad. But then there are other programs that do the other things really nicely. Like fSpot for example has gotten to be a favorite for me because the way the photo indexing works is really nice. Very easy to explain to people and you can tag and everything works. And all the data goes into the pictures so you don't lose it. It doesn't sit in a secret place where you can get to it. But there's no way for me to use fSpot from within with TV in any reasonable kind of way. And these things just not integrated and I hope we can talk about how we could get towards fixing that. So you can actually, these things because they're all running on Unix, right? We do have our advantage that we have the shell system command basically interface, right? Anything can execute anything else which is really good. You can even, you know, at a slightly lower level talk to other things. But I don't think that for applications like this that we don't really need other mechanisms for interfacing than the command execution one. Because on these systems that run on really small boxes that actually works really nice. Even on my phone, you know, just running a shell command inside an application to do something else works just fine. It has almost no overhead because the shell is already in memory. You just call it and it happens. And I think that's underused. Everybody wants to do their own application programming interface, right? You know, have a dedicated connection to a database or something. And so it all becomes in a sense proprietary, right? In practice, proprietary because it sits inside source code that is quite opaque to get into. Where, for example, in Myth TV, they use SQL, so they use MySQL as the storage for all the information. And then the SQL statements are scattered throughout the C code. So you have C code that contains SQL statements. It's really difficult to find those. And you can't, there's no systematic way to manipulate these things. It's really bad in that sense. So, yeah, that's some work to do there somehow. Some virtualization that needs to happen. And again, you know, for music it's even worse, right? Because we have some nice applications, but they're all sort of very focused on providing a particular user interface and a particular desktop experience. And I don't know any good music software that runs in a sort of home media setting. That's a question, I guess, for everybody. So we could do it, but we are not doing it right now. And we do have things like Windows, Windows managers and stuff like that that allows you to give an experience on the display, which is TV-like. Menus, use the remote control or something like that to control the menus. And that's very nice. There are some user interfaces that are really, really sexy and cool, like that's one called Linux MCE, which is sort of a media center clone, which is this fantastic user interface, but it only runs on two particular graphics cards, sort of. And it doesn't, it's just a really sad situation that we're in this, we haven't been able to do it better. And so yeah, so here's all the differences, all the things that were really hard. The first one is actually an interesting one because we talked about this already 15 years ago, but we've never done anything about it, right? Or maybe somebody has and I don't know about it, which is the home cluster situation, right? You have five computers in your home and they've been installed on all of them. And then all the automatic user IDs, for example, including the one from Myth TV, it's gonna be different on each computer because the installation sequence is slightly different of something. And then Myth TV is 150 on one and 148 on the other one. And that means that the system can't, the Myth demons can't read the files on the other machines if you use NFS, which is sort of sensible to do. I don't know if a solution to that, that works well. But it would be nice if we could figure out one. And I mean, it could be as simple as having just the, a layer where the add user and remove user primitives, we even use taping specific ones, right? Where they would have an option to go and look in some kind of database somewhere to get the numbers that they should be using. Something like that. That would make a huge difference for this kind of installation. Because basically that's what makes the difference, right? Myth Buntu comes with this great shiny interface, but if you just use it on two computers, it's just not gonna work because all these things go wrong. Network shared databases are tricky, especially when you're, if you're talking directly to something like MySQL over the network, it's always very difficult to get by it because these programs are gonna issue sort of magic SQL statements into MySQL just by hand. And it's very, very easy for one program to completely mess up the setup inside the MySQL database for everybody else. And it's very easy for a program to leave some cruft inside MySQL that never goes away. So like, for example, I have a particular frontend in my system that because there's some old stuff for that frontend in the database, it's impossible for me to set it up because whenever it tries to connect, it first gets that old stuff, it thinks everything's fine and it crashes. So, you know, there's no way for me to get that out. Without, you know, knowing the database really, really well, I go in through the database administrator interface and remove really, really carefully some rows and columns that shouldn't be there. It's almost impossible. And then when I talk about the interoperability, right, you know, we have UPnP, right? But the media profile is really, really basic, right? Like, for example, you have to choose when you open up UPnP, whether it's gonna show your home videos or your TV recordings over UPnP. You can't do both. It has to pick, you have to pick one or the other, right? So, you can then ask, why is there a difference in the first place between the videos in one category and those in the other? There's no real reason for that, right? They're all videos. They could all just be indexed in the same way, but that wasn't designed that way. So, and then as I mentioned, Mith uses this internal database schema, which is even version-sensitive, right? So, if you use a wrong version of the front-end against, then it's even cases where just once connecting a higher level front-end to the database, then goes in and updates the database to this new schema that it now knows it needs to be using. And then suddenly all your other front-ends stop working because they don't know that new schema, that Mith, you know, it's things like that, really stupid things, which are all happening because the application is trying to be really clever about doing something, and that's not described anywhere how it's going on, there's no standard line. So, of course, it goes wrong. So, we have other things, right? We have things like LTAC for sort of distributed databases. And we can define services in various standards. Web services are usually would try to avoid because web services are so heavyweight, but there are similar ways to do things. Can I use this one instead? Can I use? Oh, yes, by the way, please interrupt. I really prefer that, two questions at the end. Oh. Sorry about that. So, I'm guessing you don't have like some sort of fancy streaming HTML5 video page that you can just log into and watch all your recorded video from? I do, yes. Oh, they do? They have, Myth TV has something called Myth Web, oh, which works really nicely. And when I have to show it, unfortunately there's no network right here, but when I was going to show that page, so you can see my recordings, right? Well, there is Wi-Fi. Yeah, well, okay, I'll try and get on that at the end. But anybody who has a connection, we can do it on their computer. The thing here is that Myth Web tries to then be clever in its own way. So, it does an ASX stream, right, you know, stuff like that. Wait, ASX? Yes. The Microsoft standard? Yeah, because the people who did that web thing realized that most of the people who are going to use the web to get to that will know how to read an ASX stream, right? Then you can also get the raw file as MPEG or whatever, which is what works on Linux, right? But so, you know, it's all messed up in different interesting ways, right? And there's no way to, there's no standardized way that you will know how to get each particular video by a URL or something. There's no, because it's all in a database, the URL you get is sort of one of these long, hexadecimal kind of stupid things, right? That, you know, then, by magic, we'll give you the right video, but you lost the good stuff, right? Yeah, that sounds really bad. So, it's just, it's very well done, again, as an application, but the inside, they didn't think, you know, scalable and they didn't think structured in the way that I think Demian does well. And of course, there's always hardware issues, that's just the generic. Linux thing right there, whenever you're at the edge of graphics drivers, and this is gonna happen very soon, very bad again, because now 3D TV is coming and nobody's gonna have 3D drivers for nothing, for Linux, for a long time, because they really wanna squeeze the box out of selling spatial equipment. So, this is going to be a real problem for this kind of a setup, right? But, I don't know whether anybody knows about what's going on with that, but then that's an interesting one. I mentioned that my new server crashes hard when I put this particular card into it, for no good reason, except I know it's in Linux, I know it's a Linux driver that does it, because it gets to a certain point and then that's it. And then, of course, your house needs to have real cables, gigabit ethernet for this to be realistic at all, but that's another question. So, this is the end, so to speak, of the talk. What I wanted to do is discuss interactively, I hope, how we do these things, right? And it's, I mean, one thing that I would really like to try myself is this last point. So, there are, I see, some open source XML storage environments available, one is called Exist. I've seen it, but anyway, so, I didn't check yet whether they're open source enough that we think it's real, but that would be worth investigating. But the thing is that, what's interesting is that, if you had a, if you virtualize the storage of all the media to follow some kind of structured standard, then instead of having an API to talk to the storage the way myth and other things do today, where within five minutes, it has diverged into being a private protocol for how you talk. That always happens. You could have the media client send programs over to the other side that would do the changes that need to be done. So, in that way, you know, you have to identify how the manipulation of the data storage happens in a standardized way because you have to send the program across, right? It's a little bit of what's going on with SQL in myth and such programs in the sense that they have embedded, the queries are pieces of code that are sent across to the database and then executed there. But no change of the database can be done in this way. Changes are always done, you know, on the side with magic. And that's because databases have this idea from the old days that the types of things has to be completely static. You can't change the types of things while the database is running. You have to sort of stop the world and then go in and change the structure of things and then you can start again. So that's just, sorry? Yeah, unless you're using SQLite, which is just so happy to return, sorry. Yeah, unless you're using SQLite, which is just so happy to return a string from an integer column if you write one. Yes, but then that's not solving the problem. Of course not. That's just, you know. I just wanted to make a pass. Living with it. At SQLite. Yeah, so, but again, most of these applications that do use a database are written to directly use MySQL. And then they have lots of MySQL magic inside the code embedded all over the place. So that means you can substitute the database reasonably later. So again, the only sort of, the only game in town for being truly virtualized is this UPNP protocol. It's just so ghastly, primitive. It just doesn't do anything properly. So that's an open space there basically, why we, I mean, you know, then you have people like Gstreamer, right? Who try and sort of define interfaces for how to interact with video. And that's an audio and other things. And that's all cool, but that's just creating yet another silo where you're doing things in a different manner. And you have to code C or any some kind of low level mechanism in order to talk to that kind of infrastructure. So it's just the same problem all over again in a sense. It could be perhaps virtualized, but I don't know how to do it well. So on the, so in listening to you talk as a user, so I'm Rocky Bernstein. I wrote libcdio, which is used in myth. Okay, and I have exactly the same frustration from somebody developing software as you have from the other end, okay? And the people in the middle then would be Gstreamer, Zine, VLC, Mplayer, okay? So I started libcdio in response to the Digital Millennium Copyright Act. So when was that, 2000? Is that when that came out? Okay, and that was extracted from another, from a standalone called DCVimager, okay? But the point was that is, none of the, when I thought I would just create this nice library, or extract this library from something in DCVimager, and then everybody and Zine and Player, VLC, this was before Gstreamer, they'd all just jump in, okay? There was a lot of, there was a lot of, was and maybe still is. I haven't been following that, of competition between VLC, Zine, and Mplayer. And to some extent, Gstreamer and all that, okay? VLC, they were early adopters because they just didn't want all that CD, low level stuff. But Mplayer and Zine, they loved to have. So you talk about having SQL code in here, this was the same thing except with CD, you know, IO control, IO controls, and nobody at that time was using multimedia commands, okay? Or so, recently in the live CD IO, at least, I've been trying to push towards using, the industry standard for controlling this, as opposed to the OS standard, which would be, so in Linux, you have IO controls, right? But the industry standard is this MMC, multimedia commands, or SCSI, or something like that. So, they were the case of early adopters because they really wanted to rip out the code, they wanted their code to be clean and pure, okay, Zine, on the other hand, there was one person there who said, and there wasn't even a developer who said, I don't want to have to install another package. Well, okay? Yes, yes, yes. In order to just turn on the CD, or a DVD, okay? And so, the library had to get enough adoption, and there had to be enough bugs, again, so what Zine did was they had a copy of the code, and it's probably still, it's still in there, you can configure it without live CD IO, and then it, for VCD support, it pulls in an old, buggy copy of it, and then we play the game that, so now they disappeared in dead, and then the DBN, initially it was configured, and many other distributions configured not to use the library version, it was configured to use the internal version, and then when there got to be enough support, and then enough bugs logged against the un-maintained version, because even though Zine copied it, they weren't maintaining it. Yes, of course. Okay, then they finally switched the other, but for example, in-player was now on the scale where they really want to do everything in tests, okay? So, you know, in some, it's not just a problem, I have a frustration from a library writer that you can't, that if somebody were to write one of these things, okay, this would be like a five or six year journey, just to get it adopted somewhere, and that there are, for example, hardware standards like SCSI or MN3 or whatever, which typically are not generally exposed, in Linux I guess you'd have HAL, right, or IO controls, okay, but there is no, except for, so maybe there's a plug for Live CDL, except for Live CDL, there is no interface to running MNP commands, anyway. Yeah, so it's a different issue though, right, because that's the multi-media level issue. I'm talking about the storage and indexing issue as the, as the- So are you talking about always- Yes. So do you just use the G-streamer? It's just a hard way. Yeah, I'm sorry. Okay, so I haven't followed, recently, I know it does use Live CDL and if you use G-streamer, that's what you're using, but so between M-player, VLC and, you know, and Rhythmbox and, Zine, what do you use? Do you use any of them? I use Rhythmbox, but I don't have any music. I've not yet tried to, I got a family member who pushes that we should use iTunes, because it's a mess. So that's the situation, right? When that's the case, you know it's bad, right? So, you know, this is, you know, fight iTunes, right? That's really what I'm saying, yeah. A question on a little different topic. Programming information, do you pay, I know there's some subscription services in the US, which you mentioned like FridgeTV, how do you know what's coming on and how do you get the whole DVR sort of experience? There's a company called Schedules Direct, which I subscribe to, which is an open source-based company that came out of the Myth Developers and a few others. And so they have a, you know, not-for-profit kind of organization that you pay 20 bucks per year for scheduled information. And I don't, so it's all using the XML-TV standard mechanism for doing this. Are you satisfied with it? Yes, I'm basically satisfied with it. I think that the mistakes that come out of using it are really MythTV mistakes and not actually Schedules Direct mistakes, because the database updates sometimes make mistakes in the lesser areas of the database, like the description of the programs. And so sometimes you get really strange descriptions and you know, it doesn't figure out whether it's HD or not, that kind of stuff. But I actually think it's MythTV that's failing more than Schedules Direct. I have actually two questions. The first question is, I just checked that MythTV does not seem to be in WM proper right now. Can you perhaps lose some words of that? Are you working on integrating it? Well, I'm not working on MythTV for now. So it could be done. I mean, the reason is that most of the work of Debian integration has been done by Ubuntu people. And so there's a very tight integration with Ubuntu called MythBuntu. And I am of old enough that I cannot care about the difference between Debian and Ubuntu. One is the derivative of the other. That's fine with me. If it's not available in Debian as such, sure, it will be a question of getting the source and compiling the same packages in the Debian environment, which would not be a problem in my opinion. Okay, the next question is, could you perhaps lose some words to compare MythTV with VDR, which is actually already in Debian? Yes, so VDR is even more closed than MythTV, in a sense, as far as I've only tried it a few times. So I don't know much. But VDR has, it does less. It only, it uses media, which is already stored on your system. It has a recording facility, so it can put more stuff. But it's not as developed as a manager of your stored recordings. That's why MythTV really shines. It's very, very good at maintaining, systematic, you can look at your things by date or show or all sorts of interesting ways. And it's very, very good at planning ahead how it records. So in the little experience I have with VDR, which was several years ago, that was not the case. It may be different, but again, it shouldn't be, we're making a mistake when we're trying to make a war between VDR and MythTV really, because we should be building the componentry. MythTV tries a little bit to have a backend which can be used by other people. So the MythTV backend presents its material using UPNP in the best way it can, which is very primitive, but it does. So that means people actually use, there are new frontends that have been developed. The next MCE was the most successful one, which are frontends to MythTV, so you don't see that there's MythTV at all. And you know, this is open source, that's how it should be. So, you know, the whole closed system, which VDR also subscribes to as an idea, is not really the right way to go. So, a quick point about listings is that if you're using DVB-T or similar in a lot of countries, you get some amount of listings information over the channel. It's about a week's worth, which actually I find is perfectly reasonable. So I haven't bothered setting anything else up yet, and you just get that for free. The actual main point I want to make, I agree, the integration for stored video music is quite poor. I've got to the point a while ago that I have a sufficiently large collection of music and video, which is, whilst it's only a few hundred gigabytes, which is not that much these days, it's well past the point, particularly with music, that MythTV can cope. And so for the music side, it would be really nice if there were integration, if, as you say, we aren't trying to do everything, every program is trying to do everything themselves. And NPD is a very nice program, which has a nice separation between the back end and the front end. And that's actually what I use, and I've written a very, very basic front end to allow me to pause and play and stop for MythTV by running the command line applications from the front end. But it would be nice if that was actually properly integrated. Can you repeat the name of that? NPD, music player demon. And every time I go and have a look on the MythTV website, I find a very, very old plug-in that's meant to do something with it, which is even more basic than the set of commands that I've put in as menu options. But yes, making MythTV a front end, which you can navigate more nicely than the current system is, because it's just impractical for using it to go and find a music and a sufficiently large collection. And on the video side, I use MythTV to browse the video. And having written a script that goes through and manually populates MythTV's database with a bunch of useful information, then that works reasonably well. The IMDb scripts, they have forgetting information from IMDb also work. I have my own command line tool does it. But the problem with MythTV ones is if you have several hundred videos, going through every one of them once a time to bootstrap, this is incredibly tedious. Whereas for a lot of them, it'll get the right thing automatically and it should be able to just say, please scan all of my stuff, get it all from IMDb for me. And if there are a few where you're not sure, because my file names are a bit odd, then let me do those by hand. So yeah, those two things are the things which I'm mainly missing in MythTV. But I mean, if you wrote scripts that update the MythTV database, then you have to maintain those and keep them relative to the original. Then they're at the point that I can use them but I don't think anybody else should. Right, so again, I mean, you know, that's, there's a difference between the sort of, when the same people do the database schema and the application, then invariably the database schema will be low level in the sense that that application happens to need, right? So you'll basically find that the displays that you have in the application correspond to how the schema looks. Not the structure of the information, the way you would really think about them if you just thought about it separately. One quick point though, about having XML Bouldersaw, this stuff is, manual setup to make this work aside, having a MySQL instance, which can be accessed from all of my front ends, which contains all this information is quite useful and you have to find some other method of getting the XML distributed if you're doing that. Well, if you have an XML store, it would be in the same way. So the XML would sit in a store, which is the database, just like a database. And then you would send queries to it instead of SQL, it would be in, you know, XML query and then that's, it would work the same way. But the recent XML is nice in this context because a lot of the formats that are already in place here have standards in the XML space. So impact four has a lot of XML information and tagging and stuff that already is defined. The program listings, XML TV is already in XML as well. So that means there's not, there's much less to have to think about to get it to bootstrap the process. That's why I think this is interesting. By the way, this is always the case with XML format because so many people already thought about the problems then typically XML is a good choice for this kind of stuff. For that reason that all the problems were already thought through by somebody else. So I don't have to invent anything. Yes. So I've been playing this game for about four years as well, not the less seriously than you have been. And I guess the answer to your question is the Debian multimedia selection of packages works just fine. You know, if you install the standard Debian multimedia miss TV on top of Debian, it works. More or less. Modulo quite a lot fiddling about and setting up, which I think you can to some degree avoid by going myth-bunty way. Well, not the cluster, right? Most people still only work at a very tight installation, not the cluster, which is what we really need to get to. So I've had a lot of trouble making things go fast enough. I'm using DVBT, but in order to have a quiet box under the TV, which is both the front end and the back end because I don't like having lots of computers on, it's quite a struggle to make things work well. And in fact, I can't upgrade to current myth TV anymore because it tries to do too many things too slowly, which is unfortunate, I guess. At some point you have to buy some new hardware. There's a significant premium to playing this game over just going out and buying a box, of course. You can get fundamentally the same functionality for a lot less money if you haven't bought a proper computer or two, you know, but it's not free software and you don't get the same flexibility. I did think some of the things to say, Jonathan said quite a lot of them actually. I used, on the music front, I used DAAPDARP, which seems to work very well indeed. It works much better than sharing with your files over NFS or SAMBA or whatever, but as far as I can tell, Rhythm Box is the only client for that. Maybe there's more, but that's brilliant and should clearly be supported everywhere. Right. Yeah. And I've had problems with trying to use it for more than one box, as you say, for versioning reasons. If you install current myth TV on another box, it just says, your database is the wrong version. You can't watch any TV. That's when you're lucky. If you're not, it says, I updated the database for you. Right, okay. Now your TV is screwed, yeah. I didn't get that. It did the right thing, but it seems unfortunate, as you say. Clearly there should be some intermediate model, so I guess that's the problem we have to solve. I guess that's the message, right? That's what that is. You're right. So anybody who's tried this agrees with you. You're right, we have a problem and we need to tear this apart, and I guess... Hi, yeah, I just want to make a few comments about my own experiences here. You said the firewire stuff didn't work well for you and I found that to be the case with various people, but for me, I have no problems with it at all. I'm using, I have a Comcast box from the Motorola ones and after I fiddled around with it for a little bit, it works great. Also on the performance end, I've had to make some changes as well as I went to HD. I've always been stuck with a proprietary Nvidia card because I have a really slow box. It's not able to do decoding on itself. And I was hoping to switch over to Nouveau, but it turns out I get a lot better performance if I use the VDPAU support and some of the newer Nvidia cards. So until Nouveau has that, I'm gonna use the proprietary driver and that's got my fan going down. Like it's completely silent now, it's really nice. I think I have one other comment but I don't remember it right now. Hi, my name's Mike. I've been running MythTV at home for three or four years and I'm still running on analog and I was hoping maybe you could give me a little insight on what I'm gonna be getting into when I switch to HD because I'm a little scared about going to that. Well, the first thing is that as you know, just like you just said, you have a hard time finding a quiet box that can be used as the front end box because now the front end has to decode the HD video. And so the one solution I had that sort of worked was to get one of these Nvidia Zotac boards which have on board the VD power actually thing but then you have to use the proprietary driver with it. That's the way it is and then, but then actually you can get those boards in fanless version so that they don't make any noise. But again, and the other thing to say is that you'll discover that it's actually nice to have a sort of workstation class computer for your back end because what it does all the time is just move bits, right? Because HDTV is more bits than usual. So they have to all go on the disk and if you wanna record like three, four things at the same time, then it actually starts using your disk to store disinformation. So typically on my server, the CPU is 3% doesn't do anything but the disk drives are saturated. They are running all the time. What about changing the channels? Because right now everything's happening all on the analog and that seems to be fine but I think I'm gonna have to be going through the box and using something like IR Blaster. So with, I used IR Blaster for a while and that works fine. The slightly expensive but much superior solution that I'm using now is these boxes called HD-PVR from Hockpage which are component cable decoder boxes. So that means it's not using digital actually, right? It's taking the analog signal out of a cable box and then the HD-PVR is decoding it. Now the nice thing about the HD-PVR is that it can actually control the, it has a Blaster built into it so you can use that to control each box individually. What I'm doing right now actually is slightly tricky. I'm actually using FireWire to change the channel on the boxes which you can also do, that works much more reliably on all the boxes that I've seen than using it to actually download channels. So that's another way. So then you still also don't need the Blaster. But again, there's lots of setup involved and we would have to build large databases of configurations to get to a point where that would be automated which is not done by Miss.2 for example. I just remembered the other things I was gonna say. So the other thing I think that's missing is iPlayer support. So I guess maybe you don't have that in the US, but in the UK all our TV comes over the internet from the BBC these days. At least it would if you run the right version of Flash because they're a pain in the arse for a public entity. But I haven't seen anything that integrates that properly with Miss TV. So it's brilliant at recording stuff over the airwaves live but there seems to be no interface whatsoever to all the stuff which you just missed over the last week. And I don't know if anyone had a solution to that. And the other thing before I forget is on the video front, so one way to deal with the box power and the decoding and things is lots of marvelous new ARM based kit which is coming out with high power video chips in for exactly this sort of thing. Boxes under your TV. But none of those chips are gonna have free drivers. So we will have this problem for ages. It's going to be a total nightmare. And when 3D happens. So we have a choice of three different GPUs on various ARM boards. NVIDIA, Mali and Imagination. And they're all utterly non-free. So we have a problem. There was some stuff for iPlayer and whatnot but it got pulled because of support from. Well, no, there was some argumentation. Yeah, I mean in the US the major networks have websites that use flash as well. The most known, the best known one is called Hulu which is NBC, right? But they control the flash including the commercials. So you just, I don't know of a way to get a high quality off out of that. We do, all right, good. I didn't know that. Actually one thing about Hulu is that they are really picky about what actually connects to their servers. You may have noticed about a year ago or so there was a huge fight between them and Boxy which is another piece of software which is apparently branch from XBMC which tried to add Hulu support and then they had to go through all sorts of different workarounds and such changing UA strings and crap just to get it to display because Hulu is controlled by network execs who want to control the experience and they don't want to be competing with cable. And then apparently it was revealed that they want to sell you the ability to use their website on devices like say, well actually the first thing that they show you is someone on an iPad using Hulu because you know everyone thinks the iPad is gonna save their business model. Yeah I just remembered the third thing Pahal and I wanted to make. I think it was Wookie who was saying something about how you can buy the same box cheaper and pretty much get the same functionality these days and I've had a discussion with a lot of people. The one thing that keeps me running myth box other than it being mostly free software is that it does the internal commercial skipping which I find invaluable. Once I go back to watching TV with commercials in it, it's frustrating to all in but yeah it works really well. Yeah and for me that was that when I was a European moving from a country where commercials were only between programs to the US there wasn't possible you couldn't and so I had to find a way. So it seems there are no further questions. Time is up anyway. I would like to thank the audience for the really constructive question and answer session. I would also like to thank Chris Rose for his presentation and yeah see you in five minutes.