Author Archives: admin

Moving to Digital

With most surviving cinemas rapidly going digital, a lot of perfectly good film projection and cinema sound equipment is being replaced with their all-digital counterparts. It’s to be expected, of course, but what most people don’t realise is that the new technology is not yet even close to the old one in terms of quality.

A 35mm film strip, so far, is superior to the digital technology in just about every respect, from resolution to contrast to colours. Yes, you will hear a lot of hype from the industry about scratch-free and dust-free images, HD and the perceived (low) line density of 35mm answer prints, much like the music industry once hyped the compact disc, but I suggest you to trust your eyes instead.

If you are lucky enough to have an art house in your area, go see an old movie, preferably something from the fifties, filmed in Technicolor and Vista Vision. A lot of the old westerns were filmed using these technologies, as were some Hitchcock thrillers; you should be able to find one. Then buy a ticket to your nearest multiplex with the latest in digital technology and see for yourself.

Now, I’m betting that you’ll find the latter scratch-free and dust-free, but I’m also betting that you’ll find the former alive in a sense that just cannot be done today.

I talked to a cinematographer during the last Göteborg Film Festival a few weeks ago. He was responsible for the cinematography of the opening feature and understandably anxious about every aspect of film projection before the first show. They had shot the film using digital cameras and we, of course, had just installed the latest in digital projection technology. I thought he would be pleased. Yet, the film production crew was very anxious to screen a 35mm print of the film, rather than a digital copy.

Why?

Well, the cinematographer told me that they had added grain to the digital print using a computerised process. This was done in order to simulate the grain inherent in a 35mm print and make the film look more natural and alive, but the problem was that the image was still dead in a way that could never happen on film, not even when the image had been transferred from a digital original.

I screened the 35mm print, of course, and everyone was happy. What’s really interesting, though, is that several other film-makers approached me and the festival with similar opinions and requests. If a 35mm print was available, they much preferred it to a digital copy on a hard disk. Some went to the trouble of producing a 35mm print for the festival only.

Which means, of course, that while film-makers may still consider 35mm superior and make a print for film festivals only, what the audiences now have to get used to is digital technology. They do it to save money, of course. It costs a fortune to make and distribute heavy 35mm prints, requiring skilled projectionists at cinemas instead of low-level ushers clicking on Play.
Not only will the quality be lower but the risk of something going wrong without anyone in the cinema being able to fix the problem will be higher.

Me, I think that this will eventually marginalise cinemas, because that same quality of presentation can be achieved at home, but with the added bonuses of Fast Forward and Pause buttons, cold beverages from the fridge and the ability to share that digital image with others.

What do you think?

Back from XML Prague

I’m back from this year’s edition of XML Prague, my favourite markup geek event. As always, there’s plenty to praise, from Jeni Tennison’s opening keynote to Michael Sperberg-McQueen’s closing one and pretty much everything in between, from the friendly organisers to MarkLogic’s demojam event at the social dinner, the city itself, and, well, everyhting.

But what really gives me my yearly high is the fact that the event is always so much more than simply the sum of the above. We get to interact and learn from fellow markup enthusiasts, we meet with some of our favourite tool producers (who also are markup enthusiasts, btw) and other pros in the field, and we are once again refuelled and energised and inspired, and ready to do more when back home. Every year.

Don’t you think that’s amazing?

I Lost

Or won, depending on who you ask. I sales person called me the other day and said that it was time to renew my mobile subscription and data plan. Well, he wasn’t quite as obvious about it but as a gadget geek I’m rather susceptible and my immediate question was “what kind of phones can you offer me as a part of the deal?”

“What kind of phone do you want?” was his reply.

I thought about it and realised that I want to try an iPhone. Yes, I know, you can’t get anything more locked down than an Apple product, but I tried my daughter’s and liked it. The interface leaves the HTC Desire‘s far behind and I think the alternative I’ve been thinking about, the Samsung Galaxy, feels like a fragile piece of plastic. And I’ve already tried a couple of other Android devices (including my work phone, the Sony Ericsson Xperia Mini Pro, that is the worst phone I’ve ever had the misfortune to use) but no iOS one.

So an iPhone 4S it is, for me. It’s supposed to arrive today or tomorrow.

Digital Movie Subtitles and XSLT

Turns out that digital movie subtitles are kept in an XML file. There’s time code, a couple of font elements, and there’s a subtitle element that contains the text. ghastly, but I suppose it works.

Well, most of the time. Something had happened with the English subtitles to the festival opening feature, Avalon. A test run revealed that every subtitle was included twice, one set with Font Id “Arial” and another with font Id “Arial0”.

Fixed this with an XSLT script, marking the first time I’ve used XSLT in my work as a projectionist.

Digital Shows, FML and XML

Ran my second DCP show at Draken, earlier. The film is stored and handled by a Dolby server running a modified Debian Linux with XCF as the window manager producing a lightweight interface with only the bare necessities, but very, very functional necessities. There is drag and drop to handle show components, there are ready-made cues, and it’s all reasonably well designed. Every time I use the touchpad/keyboard combo to build or run a show, I’m struck by how similar to my Film Markup Language concepts everything is. I presented my ideas at XML Prague in 2010 but after that, I couldn’t make much headway with the hardware so the project sort of died.

Supposedly, the shows are indeed handled using XML files. I was planning something very much like Dolby’s interface so I’m dying to know if their XML is anything like my DTD. The components are all there so I’m half hoping it is. I bet they don’t use XLink, though.

Digital Images

Draken, the home of the Göteborg International Film Festival and my frequent point of existence, finally got a digital Barco projector and a Dolby server for handling digital features. As you may or may not know, cinemas around the world are moving to digital images while industry icons such as Kodak are crumbling, and in a matter of months or perhaps a year or two, 35mm film projection will only happen in film archives and art houses.

And, perhaps, film festivals. As I write this, only a week remains to the opening night of the 35th annual Göteborg International Film Festival, and at least half of the features I will screen there will be in DCP format. Yesterday, I ran my first all-digital show with the new equipment and today will be the second.

To people like me, this feels like the end. I’m hoping it’s not but I can’t help thinking that as a projectionist, I now belong to the museum together with the 35mm projectors and old cinema sound processors.

HTC Desire

I’ve been using my daughter’s HTC Desire, now that she’s moved up in the world, to an iPhone. I have to say, the Desire is a significant step up from my previous mobile, the Nokia N900.

Don’t get me wrong, the N900 is a fabulous device. It’s not a mobile at all, really, it’s a Debian Linux box that happens to have some phone functionality built in, the ultimate geek toy for the smartphone age. The hardware is superb and the software could have been amazing, had it not been for the fact that Nokia abandoned the product and its users twice (first, by moving from the Maemo OS to Meego and then from Meego to Windows Mobile). It’s a supplier error and what could have been a great, great product became another footnote in communications history.

For this reason, I will not buy a Nokia again, not because they don’t know how to make phones because they do, but because who knows when they’ll decide to abandon their customers again?

The Desire, according to my daughter who knows all about this stuff, is an old phone. It’s OK but seriously uncool and nothing when compared to an iPhone. Not knowing better, I think the Desire is user-friendly to a degree that I haven’t witnessed in a while. Also, I’m not really an app kind of person, but there are enough of them available to keep me busy for a while.

Semantic Profiles

Following my earlier post on semantic documents, I’ve given the subject some thought. In fact, I wrote a paper on a related subject and submitted it to XML Prague for next year’s conference. The paper wasn’t accepted (in all fairness, the paper was off-topic for the themes for the event), but I think the concept is both important and useful.

Briefly, the paper is about profiling XML content. The basics are well known and very frequently used: you profile a node by placing a condition on it. That condition, expressed using an attribute, is then compared to a publishing context defined using a similar condition on the root. If met, the node is included; if not, the node is discarded.

The matching is done with a simple string comparison but the mechanism can be made a lot more advance by, say, imposing Boolean logic on the condition. You need to match something like A AND B AND NOT(C), or the node is discarded. Etc.

The problem is that in the real world, the conditions, the string values, usually represent actual product names or variants, or perhaps an intended reader category. They can be used not only for string matching but for including content inline by using the condition attribute contents as variable text: a product variant, expressed as a string in an attribute in an EMPTY element, can easily be expanded in the resulting publication to provide specific content to personalise the document.

Which is fine and well, until the product variant label or the product itself is changed and the documents need to be updated to reflect this. All kinds of annoyances result, from having to convert values in legacy documents to not being able to do so (because the change is not compatible with the existing documents). Think about it:

If you have a condition “A” and a number of legacy documents using that condition, and need to update the name of the product variant to “B”, you need to update those existing documents accordingly, changing “A” to “B” everywhere. Problem is, someone owning the old product variant “A” now needs to accept documentation for a renamed product “B”. It’s done all the time but still causes confusion.

Or worse, if the change to “B” affects functionality and not just the name itself, you’ll have to add “B” to the list of conditions instead of renaming “A”, which in turn means that even if most of the existing documentation could be reused for both “A” and “B”, it can’t because there is no way to know. You’ll have to add “B” whenever you need to include a node, old or new.

This, in my considered opinion, happens because of the following:

  • The name, the condition, is used directly, both as a condition and as a value.
  • Conditions are not version handled. If “B” is a new version of “A”, then say so.

My solution? Use an abstraction layer. Define a semantic profile, a basic meaning for the condition, and version handle that profile, updating it when there is a change to the condition. The change could be a simple name change for the corresponding product but it could just as well be a change to the product’s functionality. Doesn’t really matter. A significant change will always requires a new version. Then, represent that semantic profile with a value used when publishing.

Since I like URNs, I think URNs are a terrific way to go. It’s easy to define a suitable URN schema that includes versioning and use the URN string as the condition when filtering, but the URN’s corresponding value as expanded content. In the paper, I suggest some simple ways to do this, including an out-of-line profiling mechanism that is pretty much what the XLink spec included years ago.

Using abstraction layers in profiling is hardly a new approach, then, but it’s not being used, not to my knowledge, and I think it should. I fully intend to.