The pain of downsizing

So as I said before, I’m moving to Dublin. Indeed, I got my flight ticket, I’ll be leaving Italy for good on April 6th, 2013, hoping to return here only on vacation. From one point of view I”m sad because it means I won’t be seeing my friends as often as before — but on the other hand I’ll meet new people, and it’s true I often consider closer friends people I almost never see in my life.

But there are major pains as well, and they are only partially on a sentimental plane. One of the problems is that right now I have what we can define a very big house, with a big bedroom, study room, and a garage for storage, beside the obvious kitchen and living room. I still haven’t found a permanent place in Dublin, but I’m pretty sure that it’s not going to be as big. If it was the size of only one floor of my current house. I might find something closer to this later on, if I decide to buy a house on the outskirts of the city, rather than renting an apartment within the city itself — but for the moment I’ll go with the latter.

Over time, I accumulated in this place a whole bunch of mementos, some important some less, and I’m now trying to figure out what to bring with me, and what to trash (among the stuff that has no value, and thus that cannot be sold or given away). This also means fighting with my mother who would like for me to keep all the possible school material from my childhood — myself I would trash almost all of them, but there are other things that have sentimental value attached, for me, such as the old numbers of The Games Machine, and even I know that I shouldn’t be bringing them with me because they are pointless for everything beside taking a dive in a sea of memories.

By the way, if some FLOSS hacker wants a Sun ULTRA5, an AppleTV, or an ION-based computer without an harddrive, let me know. I might be able to set them up to be shipped around.

One of the biggest problems with the downsizing is the media: I have shelves and shelves of books, DVDs, CDs, and so on. Books, is not a big deal – I went electronic a few years back and I’m very happy with my Kindle Keyboard, the only books I bought in dead-tree format last year were the two I got signed while spending my time in Los Angeles – I only wish I had more friends capable of reading English around Mestre to give my English books away; my mother is also stopping me from giving away my Italian books. The big problems are with the reset of the media. CDs, I also have a limited selection, all original, as whenever I can I buy digital directly; the only genre I have a wide collection of, at this point, is metal, simply because the AAC encoding never seems to do it any favour.

DVDs are a mess because I have tons — entire TV series, and a long list of movies. I have left some of them in the TV cabinet for my mother to watch if she feels like it, mostly those that I already bought again in Bluray, but they are still physical and take space. Going digital with these, is harder, mostly because they are all DRMd one way or the other, and I have not found a single provider I can rely on: iTunes and Amazon Instant Video both have their advantages and disadvantages.

Interestingly enough the biggest pain seems to be in the plugs! Moving from Italy to Ireland means that my devices need to either change plugs or use adapters, as we use europlugs, Schuko and two Italian specific plugs while in Ireland they use the British plugs. Funnily enough, it turns out that a dozen devices I have the British plugs for; mostly thanks to buying lots of hardware from Amazon UK and the fact that a number of suppliers nowadays, including Dell and Western Digital, provide you with power adapters with a replaceable plug head, both europlug and British.

The bigger problem is bringing the kitchen appliances – my mother does not use most of them, I’m the only one who doesn’t leave them collect dust in the cupboards – as they almost all have Schuko connectors, but for that I think I’ll just use a single Italian powerstrip with a British plug at the end, similar to the one I’ve been using here (British powerstrip with Italian plug).

Really, can’t we just get a standard plug? Please?

DVD access libraries and their status

I’ve noted when I posted suggestions for GSoC that we’ve been working on improving the DVD-related libraries that are currently used by most of the open-source DVD players out there: libdvdread and libdvdnav — together with these, me and the Other Diego have been dusting off libdvdcss as well, which takes care of, well, cracking the CSS protection on DVDs so that you can watch your legally owned DVDs on Linux and other operating systems without going crazy.


Yes I did take the picture just to remind you all that I do pay for content so if you find me taking about libdvdcss is not because I’m a piracy apologist because I’m cheap — whenever I do resolve to piracy it’s because it’s nigh impossible to get the content legally, like for what concerns J-Drama.

Anyway, the work we’ve been pouring into these libraries will hopefully soon come into fruition; on my part it’s mostly a build system cleanup task: while the first fork, on mplayer, was trying to replace autotools with a generic, FFmpeg-inspired build system, the results have been abysmal enough that we decided to get back to autotools (I mean, with me on board, are you surprised?) so now they have a modern, non-recursive, autotools based build system. Diego and J-B have been cleaning up the code itself from the conditionals for Windows, and and Rafaël has now started cleaning up libdvdnav’s code by itself.

One of the interesting part of all this is that the symbol table exposed by the libraries does not really match what is exposed by the headers themselves. You can easily find this by using exuberant-ctags – part of dev-util/ctags – to produce the list of exported symbols from a set of header files:

% exuberant-ctags --c-kinds=px -f - /usr/include/dvdread/*.h
DVDClose        /usr/include/dvdread/dvd_reader.h       /^void DVDClose( dvd_reader_t * );$/;"  p
DVDCloseFile    /usr/include/dvdread/dvd_reader.h       /^void DVDCloseFile( dvd_file_t * );$/;"        p
DVDDiscID       /usr/include/dvdread/dvd_reader.h       /^int DVDDiscID( dvd_reader_t *, unsigned char * );$/;" p
DVDFileSeek     /usr/include/dvdread/dvd_reader.h       /^int32_t DVDFileSeek( dvd_file_t *, int32_t );$/;"     p
DVDFileSeekForce        /usr/include/dvdread/dvd_reader.h       /^int DVDFileSeekForce( dvd_file_t *, int offset, int force_size);$/;"  p
DVDFileSize     /usr/include/dvdread/dvd_reader.h       /^ssize_t DVDFileSize( dvd_file_t * );$/;"      p
DVDFileStat     /usr/include/dvdread/dvd_reader.h       /^int DVDFileStat(dvd_reader_t *, int, dvd_read_domain_t, dvd_stat_t *);$/;"    p
DVDISOVolumeInfo        /usr/include/dvdread/dvd_reader.h       /^int DVDISOVolumeInfo( dvd_reader_t *, char *, unsigned int,$/;"       p
DVDOpen /usr/include/dvdread/dvd_reader.h       /^dvd_reader_t *DVDOpen( const char * );$/;"    p
DVDOpenFile     /usr/include/dvdread/dvd_reader.h       /^dvd_file_t *DVDOpenFile( dvd_reader_t *, int, dvd_read_domain_t );$/;"        p
DVDReadBlocks   /usr/include/dvdread/dvd_reader.h       /^ssize_t DVDReadBlocks( dvd_file_t *, int, size_t, unsigned char * );$/;"      p
DVDReadBytes    /usr/include/dvdread/dvd_reader.h       /^ssize_t DVDReadBytes( dvd_file_t *, void *, size_t );$/;"     p
DVDUDFCacheLevel        /usr/include/dvdread/dvd_reader.h       /^int DVDUDFCacheLevel( dvd_reader_t *, int );$/;"      p
DVDUDFVolumeInfo        /usr/include/dvdread/dvd_reader.h       /^int DVDUDFVolumeInfo( dvd_reader_t *, char *, unsigned int,$/;"       p
FreeUDFCache    /usr/include/dvdread/dvd_udf.h  /^void FreeUDFCache(void *cache);$/;"   p

You can then compare this list with the content of the library by using nm:

% nm -D --defined-only /usr/lib/
0000000000004480 T DVDClose
0000000000004920 T DVDCloseFile
0000000000005180 T DVDDiscID
0000000000004e60 T DVDFileSeek
0000000000004ec0 T DVDFileSeekForce
0000000000005120 T DVDFileSize
00000000000049c0 T DVDFileStat
000000000021e878 B dvdinput_close
000000000021e888 B dvdinput_error
000000000021e898 B dvdinput_open
000000000021e890 B dvdinput_read
000000000021e880 B dvdinput_seek
000000000000f960 T dvdinput_setup
000000000021e870 B dvdinput_title
0000000000005340 T DVDISOVolumeInfo
0000000000003fa0 T DVDOpen
0000000000004520 T DVDOpenFile
0000000000004d80 T DVDReadBlocks
0000000000004fa0 T DVDReadBytes

But without going into further details I can tell you that there are two functions that should be exported that are not, and the dvdinput_ series that shouldn’t have been exposed are. So there are a few things to fix there for sure.

As I said before, my personal preference would be to merge libdvdread and libdvdnav again (they were split a long time ago as some people didn’t need/want the menu support) — if it wasn’t for obvious legal issues I would merge libdvdcss as well, but that’s a different story. I just need to find the motivation to go look in the reverse dependencies of these two libraries, and see if the interface exposed between the two is ever used, it might be possible to reduce their surface as well.

Yes this would be a relatively big change for relatively small gain, on the other hand, it might be worth to get this as a new side-by-side installable library that can be used preferentially, falling back to the old ones if not present. And given the staleness of the code, I wouldn’t really mind having to go through testing from scratch at this point.

Anyway, at least the build system of the three libraries will soon look similar enough that they seem to be part of the same project, instead of each going its own way — among other things the ebuilds for the three should look almost entirely identical, in my opinion, so that should be a good start.

If you want to contribute, given that the only mailing list we have on videolan is for libdvdcss, you can push your branches to Gitorious thanks to the VideoLAN mirror and from there just contact somebody in #videolan on Freenode to get it reviewed/merged.

Update (2017-04-22): as you may know, Gitorious was acquired by GitLab in 2015 and turned down the service. So no more VideoLAN mirror or anything actually.

Why I’m upset by Mininova possible shutdown

I’ve been reading some worrisome news about Mininova being requested to filter down the torrent links (to the point that it’ll have no more sense to exist in the first place, I guess). This actually upsets me, even though not in the way most people seem to be upset.

First of all I have to say I don’t like copyright infringement (even though I dislike calling it piracy in the first place): Free Software licenses are based on the idea of respecting copyright and thus I don’t like being the kind of hypocrite who asks to abide to licenses and at the same time infringe on others’ copyright. On the other hand, I find myself thinking about double-standards pretty often. Mostly, when there is no real other option from doing something illicitly.

For instance, anime and, even more, Japanese drama are sometimes impossible to find without having to wait for years, or often have bad translation or some kind of “localization” that ruins the pretty much (usually watering them down with political-correctness, censuring and cutting down anything that might make them unsuitable for children — even when the original version was simply not aimed at children but rather at young adults, but I’m going down a different road now).

Now I don’t want to play saint, it happened to me, and sometime happens still, that I went to watch something that was illegally downloaded; on the other hand, I don’t do this systematically, and I spend a few hundreds euro each year in original content (DVDs, BluRay, games for PS3 and PSP, software — if I do count this year I guess I’m well over €1K thanks to software: between Microsoft Visual Studio 2008 and Microsoft Office 2007 I already reach €600), and these usually include more than a few things that I previously watched downloaded (The Melancholy of Haruhi Suzumiya I had seen fansubbed, but I bought the Italian original box set earlier this year, for instance).

But there is one thing I absolutely rely on Mininova for, nowadays, and I’d be pretty upset if it was shut down: Real Time with Bill Maher ! Yes I do like this show, I have seen a piece of this some time ago in relation to an article by Richard Dawkins and then went on to listen to it (in podcast form) and then watch it (when the audio podcast was obscured for a while, and had to work around the US-only limitation, and found the full-fledged video podcast), up to now that I actually watch it downloaded from torrents each weekend.

Now, I know this is illegal, but HBO does not really provide me any other mean to watch it. And mind you, I’d be happy to spend €5/month to subscribe to it; I could even live with downloading it with iTunes, and having it DRM’d (which would upset me a bit but would be bearable). It’s a friggin’ late night show, not a movie, and not some general show like Mythbusters, which actually gets translated, dubbed and aired in other places, like Italy, although an year after the original American airing (on a related note: finding DVDs in Italy is still impossible; and region 2 DVDs from Amazon UK are limited to the first season…).

So if this for some reason arrive on the screen of some HBO guy: please, think about us, Bill Maher fans on the other side of the pond, and give us the chance of legally follow the video episodes. I’m sure that I’m not the only one who’s going to pay for the subscription, if given the chance. Then we can stop illegally downloading this through Mininova…

Making everything a computer: an upgrade odyssey

We’re all used to software upgrades. Gentoo users has to update their tree daily and they’ll probably find something new, unless they are running a full stable system. Windows users have to upgrade their stuff regularly, too, and Mac users the same (almost, having all three operating systems in my office at the moment shows me that Windows update are the most painful, as they require a lot more restarts, and they appear gradually, like after I installed Nokia’s software, Windows Update decided to show me some more upgrades from 2006 and early 2007).

Nowadays a lot of “hardware” that we used to consider absolutely unconcerned with the idea of upgrades started to need those upgrades too, like they were jealous of computers and their operating systems that can upgrade. Or more likely because they started to move from being microcontrollers to full-fledged minicomputers.

So nowadays you update the firmware of your cellphones: Sunday I updated my brother-in-law’s Nokia E61i to the last version of the firmware, that solved a few problems it had. I had to update the firmware of my E61 last year, to fix a SIP connection problem, and to see if that helped my problem of self signed certificates (it didn’t). My VoIP phone also needed three upgrades since I bought it, the first right out of the box, and two later on. My router has had three upgrades (and its software still sucks, I keep it only because it has a nice hardware capable to connect me to the network with as much noise as I have here, which is something that I was unable to find from any other router).

Don’t even try to look at the MacBookPro! It required firmware upgrades to the machine itself, to the_keyboard_, the optical drive, and twice already to the battery! Still in Apple’s house, the Airport Express takes care of its upgrades on its own luckily, while the AppleTV would be quite easy to upgrade if only… let’s not get there now though, ok?

BIOS upgrades on workstation start to be quite common, especially to fix processors’ issues and to support new processors. And speaking of processors, microcode updates are also quite common nowadays, which is something nobody would have guessed when we were still stuck with 80486.

GPS navigation systems have obvious need to update their firmware and their maps but it starts to be ridiculous for me that I, although not owning any, have to keep three of them updated!

I was impressed by the way PSP updates its firmware by the way, just try to play a newer game and boom! it asks you to upgrade the firmware from the UMD itself. Nice way to force people not to limit themselves to older crackable firmwares, indeed.

And now this came to the area from which my considerations started to write this blog: the PlayStation 3 had a firmware upgrade today. A quite long one because I was messing with the network settings at the time and didn’t consider it would have restarted from the beginning to download the new firmware. The funny thing is that i bought it less than two weeks ago, and this is already the second firmware upgrade (the first was out of the box). Slick, uh?

Add to that the new router I’ve made a friend of mine buy today (his old router was a crappy 11b one, a very bad one in many aspects, and he wanted something nice and working): it needed a firmware upgrade right away or it was unable to forward ports through NAT. Ridiculous!

And in all this, I still haven’t been able to play with my DVD writer’s firmware .

I just wonder how much time I’ll have to spend upgrading and upgrading and upgrading.

VHS relics

Today I tried to make use of my time for some housekeeping; in particular I started packing some old VHS cassettes that were on a stand in the “hall”. This, beside reminding me a lot of my childhood, made me think a lot.

VHS was the standard when I was a child, in Italy there was basically no presence of Betamax at all. Also, beside a huge amount of empty VHS that we bought to record movies and shows on TV, we got a lot of original VHS for a few movies and a lot of Disney classics. Show White, Cinderella, 101 Dalmatians, Bambi, The Lion King, Pochaontas, and so on, plus some other cassettes like Duck Tales, Chip & Dale, Darkwing Duck, …

This now amounts to five cardboard boxes full of cassettes (he kind of boxes you buy A4 paper in). For at least one of them (Matrix) I also bought the DVD of, as I don’t have a VHS player anymore. The last one I bought lasted about four years and then broke on a faulty cassette.

Nowadays, the only media I buy movies into is DVD, as DVD players are quite less expensive, as well as the media, and the quality is certainly superior. The price of this evolution is that I can’t see VHS anymore in my TV, we still got a VCR at home, but we almost never use it. I’ll just give the Disney cassettes to my sister so that my nephew can watch them, she still has a VHS player (actually a combo VHS + DVD).

But what made me think a lot is the risk of losing home-made cassettes. When my sister married ten years ago, the video of her marriage was delivered on a VHS.. beside the quality degrading with time, we can’t watch it again now, we’d need to get a new remastered version of it on DVD. My other sister married two years ago, and she has it on DVD already, both mounted and raw, which makes it easier to handle. My mother also has a few VHS that were recorded on a few trips she made when she was with Avon.

I tried in the past of importing VHS through a TV card, but the composite input/output has a very low quality, most good VHS players use component through EuroAV/SCART connection, to make it better, but it’s difficult to find cheap cards with those connections. I wonder what hardware would be needed to make a good job out of this.

At least, in Cowboy Bebop both VHS and Betamax were lost technologies, the authors seen enough in the future for that.. the same can’t be said for Evangelion authors: Shinji is often seen playing music out of a DAT-based portable player.

Flashing a DVD Burner

Talking the other day with Caster about his problems with his own DVD burner, I’ve started wondering about that procedure; to be honest I never thought about it because with my current NEC burner I had no problem at all.

While most modern mainboards allows BIOS update without any Windows or DOS system, not even a boot diskette, by using a subsystem inside the BIOS itself and reading the upgrade image from a floppy or a CD (in my case the latter because I don’t have any floppy disk drive on Enterprise), almost every burner, as far as I can see, requires to run some program under Windows.

For my own model, I found an unofficial tool for Linux x86, proprietary and closed source, designed to load modified firmware images, in a notorious site for CD crackers (reason why I won’t link it here right away); unfortunately you actually has to trust the program not to do anything evil, as the page actually suggest you to run it as root. It also requires a binary image of the firmware to upgrade to, and NEC only provides the upgrading tool with the firmware inline.

What I was thinking was to find exactly how the cdfreaks tool work, and then reimplement it, eventually on top of libcdio, so that we had a FLOSS tool to upgrade NEC drives that works on any platform, not only x86. Unfortunately the license of that tool disallows me from decompiling or disassembling it, although it doesn’t speak about dynamic tracing.

Through strace I discovered that the tool uses ioctl() calls to send commands to the device to dump the firmware it has loaded; the problem is to understand those calls: there doesn’t seem to be any way to trace those calls in detail, and as the tool is statically linked, it’s not possible to just preload a library to hook those calls out.

There is one more problem: reverse engineering the tool will be a risk for the hardware, bricking the device is a more than likely result. So I tried the unlikely way out first and sent a mail to NEC asking them the specs of the device upgrade procedure. I don’t count on receiving an answer, kinda obviously.

If other users have NEC burners, and think implementing burners’ firmware upgrades with FLOSS is important, let me know, I’ll use that to consider the usefulness of such a task.

And for those wondering, I’m currently attaching labels to envelopes, that’s why I’m not developing anything particular. I have plans though, and I’ll try to follow them more closely in the next days, and blog about them more (to allow myself to blog more easily and on spare time, I’m currently using my E61 to email the entry to myself and post it as soon as I reach one of my terminals).

About libdvdnav and xine

Don’t worry all you people, I wasn’t killed in a bus accident yet; you are lucky, I actually go out quite rarely so I don’t suffer from this kind of problems very often, the worst that can happen would be a health problem, but I’m lucky enough to feel decently well at the moment :) Of course there is too much heat for my liking and I start to feel how annoying it is at this temperature, especially staying in my home office with two/three boxes online.

Anyway, as I promised, I started looking at the fork of libdvdnav lead by Nico, to import a newer version of libdvdnav in xine, and cleaning up the patches applied.

Unfortunately it wasn’t exactly straightforward to update the libdvdnav version; beside my will to move the sources into the contrib/ subdirectory as I already did for libmpcdec and ffmpeg, Nico started to replace autotools with a build system alike to FFmpeg’s (which is quite fine by me, as I can integrate it nicely enough into xine-lib), so I had to make sure that the build system was up to a minimum support for the features I needed. The main showstopper was the lack of a way to build in a directory different from the original sources directory, but that was quite easy to handle.

But luckily working with Nico is quite enjoyable :) All the patch I’ve sent for inclusion up to tonight (so excluding the one I sent less than an hour ago) were accepted and committed to the Subversion repository, which means that the build system is usable from xine-lib’s custom base system, that the compiler flags we inject are respected, that the library builds with -Werror-implicit-declarations (the change was needed to libdvdread, Nico took care of sending it up there).

Tonight I rebuilt xine-lib-1.2 with the new libdvdnav, and it’s working nicely. I suppose the reason why external libdvdnav is not working on seeking is that the code was present in cvs (for’s dvd project) but not released yet. I should probably also add support for .pc files for libdvdnav and then use those to check for its presence, so to require at least a new enough version that doesn’t have seeking problems, but that is not a priority until a release is done.

There is only one problem that has to be considered: the libdvdnav copy in xine-lib is patched with a patch from Bastien Nocera (Totem’s author) which is used to play invalid DVDs (non-encrypted ISO filesystem DVDs; proper DVDs have UDF as file system). That patch as it is won’t be accepted by libdvdnav authors, and sincerely I wouldn’t have accepted it for xine-lib either.

Why this? Well, the patch takes an opaque type, and makes it transparent, copying out of libdvdcss the structure definition. This is fine as long as the structure is not changed on libdvdcss, but the reason why a type is opaque, is just so that you don’t have to put its definition in the ABI, so you can change it without having to deal with software crashing because it was compiled against the previous definition. This patch breaks this assumption with xine, so it’s bad from a good practices point of view.

I’m not sure myself how much sense does it make to use such a stupid solution (sorry Bastien, but re-declaring an opaque type is a stupid solution) to consider invalid media. A better solution would be to always use the files if they are found, rather than using UDF access, with fallback to raw UDF instead. This should work, but I need first some media to test with, and then I have to understand libdvdnav code.

Anyway, the build framework changes are now committed to the xine-lib-1.2-newdvdnav branch, the “only” thing missing there is the libdvdnav code itself; the reason for this is that up to tonight I was still working with patched sources, not with upstream sources, and I wanted to avoid recommitting everything every time. I will probably wait as much as I can before committing the sources themselves, with this “as much as I can” representing ideally the time till I get to have committed to libdvdnav all the changes that make sense for xine-lib (revised Bastien’s patch, and the file descriptor leak patch).

I also want to thank Nico for the work being done toward adding an option to use external libdvdread in libdvdnav, which will certainly help Gentoo and other distributions: you wouldn’t have to duplicate the code between libdvdnav and libdvdread; you’d have one more dependency in the libdvdnav library, but that shouldn’t be much overhead.

And I want to say it officially: there is a lot of code in xine-lib that scares the hell out of me, and I would like to see it killed before it propagates too much; unfortunately overhauling all of it is difficult alone, especially since I might end up having repercussions that I don’t see (like the CDDA failure that didn’t fail for me when I tested – I was using by-extension detection in Amarok – and the DVD failure that still I was unable to reproduce till at least since Darren fixed it).

I start hating spending my time on xine, I hope to be able to continue working on it till it’s enjoyable to do so.


So, I’m rally enjoying this vacation, I was finally able to find time to watch a few DVD of movies I bought and didn’t watch yet, and I’ve started cleaning up my room by moving out stuff I don’t need and trashing stuff that is obsoleted or simply useless.

On the good news, yesterday I was also able to find Serenity’s DVD at a very good price (€8.90), I knew it was just matter of time for it to appear at budget price, the movie didn’t get much advertisement in Italy, or success either, as we haven’t had the FireFly series yet (while I’ve watched the series… “somehow”), and the original price for the DVD (€26.90) wasn’t going to get it into most shops, considering that it’s an end for a story almost nobody seen the start here. This was when I was shopping to find a (brr) Windows 2003 license, that I didn’t actually find yet, but I took the chance to buy House, M.D. DVDs too (for the first two season for now).

I also started sleeping; I woke up just 30 minutes ago after about 14 hours of sleep time. And all the readers of my blog know that I’m usually not sleeping at all. The result was achieved not through caffeine withdrawal, either; it’s just that luckily I don’t have new personal troubles (still got a few of old ones, but they, uhm, are plainly old now), and I don’t have any Gentoo trouble at all. It would be quite healthier for me to leave Gentoo, as I expected.

This is bringing me to think about this; nothing really stops me to leave Gentoo after these two weeks, beside my fidelity toward my users and that feeling of doing something for Free Software as other Free Software developers did/do for me. And I’m quite sure my hateclub will be even more noisy while I’m away (it’s one of the features of some people to be more vocal when the person they talk about is missing), and although that would be doing their game, I’d rather avoid wasting my time and health to show them wrong (even if I know that would be easy to obtain).

I suppose that I could fight for what I have my faith into, fight for a Gentoo that works, for a Gentoo without people slacking around, but really, to what result? There’s no way I can force out the people that I know are not doing anything good to the whole distribution, they have the right of staying there doing nothing, unfortunately.

We’re the same as Debian, no way around this, and it’s scaring me.

Proteggiamo i DVD

Come sapete sono un patito dei film in DVD, perché è possibile guardarli in lingua originale coi sottotitoli e sentire le vere voci degli attori, con le loro inflessioni, le loro emozioni e tutto il resto.

Per compleanno e Natale sono riuscito a farmi regalare i due cofanetti della prima stagione di CSI, per un totale di 6 DVD e 25 episodi.

Finalmente lunedì sono arrivati, e nel pomeriggio ho pensato bene di guardare il primo. Lo infilo nel lettore di Defiant, avvio Kaffeine, lancio il DVD, mi fa la solita schermata di legalese rompiscatole per 13 secondi (contati), e infine partono i loghi dei produttori.. ma che succede? Appare un popup che mi informa che non ho i privilegi per guardare il film. Ma com’è possibile? Riprovo un paio di volte e fa la stessa cosa. Se provo a skippare alla traccia successiva, Kaffeine crasha completamente.

Che fare?

Per fortuna ho sempre con me il mio fido Voyager, provo il DVD su questo, usando il lettore Apple ufficiale, et voilà, funziona. Peccato che se provo a saltare la schermata in legalese mi dica “Not Permitted”. Ok mi metto in camera a guardare i telefilm in santa pace, ma scopro con mio rammarico che i sottotitoli sono presenti solo in italiano (e non mi pongo neppure la questione che siano stati fatti bene o no, tanto so già che non saranno fatti bene.

Vabbé iniziamo. Come volevasi dimostrare i sottotitoli in italiano non riprendono correttamente le frasi in inglese. Ad un certo punto però mi stanco e per riposarmi vorrei tornare in lingua italiana. Provo a cambiare audio “Not Permitted”. Vabbé almeno tolgo i sottotitoli “Not Permitted”. Provo a muovermi tra i capitoli… “Not Permitted”….

Ora io potrei ancora ancora capire la cifratura dei DVD (ma non riesco ancora a capire il modo in cui sono assegnate le licenze per il CSS); non riesco a capire la divisione per zone, ma la rispetto; ma proprio non riesco a capire questa diamine di protezione che mi impedisce di accedere ai capitoli, di cambiare audio e sottotitoli, che mi impedisce dunque di usufruire in modo ottimale del prodotto…

Peccato che non abbia voglia ultimamente di combattere, altrimenti avrei chiamato qualche unione dei consumatori per far presente questa cosa.