Basically, this update is all about making it easier to work with the download zip. Specifically:
All projects now use “Latest” (OS X | iOS) as their Base SDK: We had been specifying old SDKs that are no longer included in Xcode 5.1, so some readers got hung up on what they needed to do to resolve the “Missing Base SDK” message.
All Foundation projects now use Automatic Reference Counting (ARC): Not as big a deal in our book as you might think, because the middle half the book is all Core Foundation and doesn’t even need ARC, but we had some readers insist the book was broken because they got build errors on
[foo release]and didn’t know what to do (either remove the manual memory-management lines or just turn off ARC). This has the unfortunate effect of making the download code no longer match the book text, and adding some nuisance
__bridgecasts, but ARC is so entrenched at this point, it’s for the best.
Each project now has a README.txt file If individual examples have to get updated in the future, we can log those changes here.
Re-colored the “piano key” buttons in
CH11_MIDIWifiSourceBecause iOS 7 made them look like poorly-colored labels
There are no errata fixes in this go-round, nor any content changes. It’s just about making the download more useful. Might be the last time we need to update it? We’ll see.
So, yesterday was the big random drawing for the privilege of buying WWDC 2014 tickets. I’ve argued this is the second time that Apple handled it as a lottery, only last year, the drawing was administered by the load balancer sitting in front of
apple.com, or the traffic routing going into it.
Last year was also the year that a substantial part of the OS X / iOS community started to become disenchanted with WWDC in its current form… when even developers with the “if you want it bad enough, you’ll find a way to get a ticket” bravado were finally crunched by the numerical reality of far too much demand for far too few seats. Daniel Jalkut moved past the Twitter mob butt-hurt to make a clear-eyed case to End WWDC.
Read the rest of this entry…
I’m speaking at three of the five CocoaConfs for early 2014, teaching an all-day AV Foundation Film School class and a regular session on Stupid Video Tricks, which is also all about AV Foundation. (In DC, I also reprised Get on the Audiobus to fill in for another speaker).
UPDATE: I’m also going to do “Stupid Video Tricks” at next week’s Ann Arbor CocoaHeads.
I first taught the class in Chicago, and then added one more project for DC and San Jose based on how the timing worked out. To speed things up, I created starter projects that dealt with all the storyboard connections and drudge-work, leaving big holes in the code that say
// TODO: WRITE IN CLASS for the stuff we do as a code-along. The class projects are:
- Play back a video file from a URL
- Capture into a video file (and play back in another tab, with the code from 1)
- Edit together clips and export as a new .m4v file, first as a cuts-only edit (easy), and then with cross-dissolved (quite painful and clearly marked as an hour of outright drudgery)
- Processing video frames at capture-time with Core Image
One of my grad school professors, the late Dr. Thomas Muth, told us that he was far less interested in analysis, whereby you grind ideas down to a smaller form, than synthesis, in which you combine parts of different ideas together to build something new. I’m bringing this up because the whole Comcast / Time Warner Cable merger has me thinking about the antitrust law I learned from another grad school prof, Dr. Barry Litman, and I’m smashing a few of those ideas together.
Actually, this starts with my previous blog post, where I mentioned in passing that Microsoft used to be very active in video codec development, getting WMV9 adopted as part of the Blu-Ray spec. You know what else Microsoft used to be? A convicted monopolist. It’s almost forgotten today, but the initial ruling in United States v. Microsoft was that the company had illegally used its market power and should be broken up. This was later partially overturned on appeal, and the DOJ effectively walked away from the case under the Bush administration.
Still, it’s remarkable to think that in barely over a decade, we’ve gone from contemplating the break-up of Microsoft, to the widely-held perception that the Comcast / Time Warner Cable merger will easily win approval. Regulatory capture, FTL.
Read the rest of this entry…
Streaming Media has a nice article from a few weeks back on how HEVC Innovation Has Been Fast, But Evolution Will Be Slow, that while it’s great that H.265 can cut bandwidth use by about 40%, it will take a long time to get adoption, since that’ll require encoders, end-user hardware, and so on. It doesn’t work until every step in the chain can use H.265. One frequently-cited application of H.265 is in delivery of 4K video, which will have hideous bandwidth requirements, but that deserves ample skepticism, and risks tying H.265 to the 4K rock… if people realize they don’t need a resolution difference they can’t actually see on home TVs, what’s the point of 4K?
That said, I did realize the other day one scenario where H.265 could really make a difference right now: livestream uploading. When I livestream from home, I have only 1.5 Mbps up (U-verse is the best I can do; the cable modem bandwidth on our cul-de-sac is really sketchy), so I run around 1 Mbps to account for overhead, and end up with a sub-SD picture. When I livestream from public wifi at a conference, I’m sharing the bandwidth with everyone and I’m lucky to get a stream out at all (this is why I’m crazy skeptical of wifi-only livestream cams — when can you ever count on having adequate wifi bandwidth in public?). So the prospect of nearly halving the bandwidth requirements has an immediate payoff: with my 1 Mbps ceiling, H.265 would effectively double my picture quality, so I’d be easily capable of doing 480 SD, and could get into HD the next time U-verse bandwidth improves.
Read the rest of this entry…