MADMEN Bittorrent Edition
April 14, 2012 4:22 PM   Subscribe

 
Excellent. Have never seen this show, but this is how my mind's eye sees bits of things.

glitch tag wanted
posted by shoesfullofdust at 4:29 PM on April 14, 2012 [1 favorite]


The advent of LSD was a paradigm shift
posted by East Manitoba Regional Junior Kabaddi Champion '94 at 4:31 PM on April 14, 2012 [1 favorite]


That is strangely captivating, like the smell of silk or sticking your hands in a bowl of marbles.
posted by iamkimiam at 4:32 PM on April 14, 2012 [6 favorites]


This is what happens when Peggy's friend Joyce doses the coffee pot.
posted by The Whelk at 4:32 PM on April 14, 2012 [12 favorites]


NUKED
posted by Foci for Analysis at 4:36 PM on April 14, 2012 [6 favorites]


Inspired by rollbiz's excellent recent post, I spent the last several days downloading a bunch of hip-hop records to add to my extensive collection.

So it is with no suggestion of judgment that I say, while I make no apology for infringing copyright, I wouldn't think to make art about it.

That said, this was passable as art. It had a pleasant J.G. Ballard flavor.
posted by Trurl at 4:38 PM on April 14, 2012 [2 favorites]


Video codec decompression in action! BitTorrent works by copying bits of the file in random order, so you have little holes left in the movie before the download is complete. Didn't realize that the video decompression algorithm's effort to reconstruct would be so beautiful. I'm sure some expert could tell at a glance what codec it is.

"It also avoids infringing the copyright of Madmen as it is incomplete" is a well meaning idea.

(To the via notation; it's only been a week and I'm already tired of the New Aesthetic as a category. Bah!)
posted by Nelson at 4:49 PM on April 14, 2012 [4 favorites]


As I have a crappy cable TV provider and some kind of wiring problems in my neighborhood, I'm pretty accustomed to seeing this sort of thing whenever it's windy. So, this primarily evokes annoyance in me rather than aesthetic bliss. But I'm glad the effect can be fascinating to people who haven't seen it before.
posted by XMLicious at 5:09 PM on April 14, 2012 [5 favorites]


Some technical mumblings:

BitTorrent breaks up a file into a series of pieces (for a file like this, probably about 256KB each) and downloads them in random order, based on availability. This means that if you try to view the file while it's downloading, the player has to deal with random holes of various sizes where data is missing because those pieces haven't arrived yet.

This file was likely encoded in a format called MPEG-4 Part 2 Advanced Simple Profile or MPEG4 ASP for short. That is the name of the official specification that gives the rules for how encoding works, but doesn't actually provide any software to implement it. Various parties implement that standard by writing software. One such project started out in life named DivX 3 which was a hacked up version of a Microsoft MPEG 4 encoder, but it soon became apparent that a new from-scratch implementation was needed, called DivX 4. This was supposed to be open source but it eventually went commercial, prompting interested parties to start over with a true open source implementation that they named XviD as a poke in the eye to the company that they saw has having stolen their work. As it was Free Software and high quality, it became the standard MPEG4 ASP encoder, leading to a sort of software synecdoche where the name of the specific implementation started to replace the name of the format itself.

.avi files were the common choice of container format to go with this video format, likely owing to the maturity of support on Windows, and to the fact that this format traced back to an original Microsoft MPEG4 encoder, albeit now with a FourCC of its own. However, it's important to realize that container formats are designed to hold many kinds of various audio and video data formats, which is why they are called that. It's again some kind of perverse software synecdoche to refer to MPEG4 ASP encoded video as ".avi format" when that just happens to be one common usage pairing -- you could put MPEG4 ASP video in many containers, such as .mp4, .mkv, .ogm, etc.; and .avi files need not contain MPEG4 ASP.

Anyway, MPEG4 ASP and many other video codecs use two techniques that give rise to the effect seen here in this video. The first is that they don't just store video as a series of independent images. There are a number of types of frames: i-frames, p-frames, b-frames. I-frames (short for "intra") really are standalone frames, frames which describe a complete image like a JPEG would. P-frames (short for progressive) store only the difference between a previous frame and the current frame, and thus it's necessary to have seen both to decode the current frame. Since they can record only the visual aspects that have changed, and since a lot of the frame tends to be static, this means they are much smaller than I-frames. B-frames are like p-frames except they depend on both previous and future frames, making them even more space efficient but harder to decode.

The result is a repeating series that looks generally like IPPPPBPPIPPPBPPPPIPPPBPP. If B-frames are allowed, they tend to be limited to a run of at most 1 for compatibility reasons, as a series of more than one B-frame becomes complicated to decode. Anyway, one of the main jobs of the encoder is decide when to use an I frame and when to use a P frame. I-frames are larger, so ideally you'd use as few as possible. But if the scene changes completely, it could be more efficient to encode as a I-frame than a P-frame. And I-frames allow seeking, since they can be decoded without having to consider surrounding frames, which means you want to emit I-frames regularly on some schedule (e.g. every 10 seconds) if you haven't detected a scene change in the source material.

The second aspect is that video encoders break the scene into portions that they call macroblocks. In MPEG4 ASP macroblocks are fixed 16x16 pixels, but in some other formats their size can vary. Note that the "360p" resolution (480x360) that these files are typically offered at is not divisible by 16, and so for this reason you'll usually see MPEG4 ASP encoded files at a slightly different resolution, usually 624x352 which is 39x22 macroblocks. (The file on vimeo was transcoded to MPEG4 Part 10 AVC aka h.264, which allows for a mixture of 16x16 and 8x8 macroblocks, and therefore resolutions like 480x360 are fine.)

The encoder uses the macroblock as the basic unit of encoding -- it applies the discrete cosine transform (DCT) to it to turn it into a series of visual frequencies, and then discards the higher ones according to a schedule called quantization. Doing this allows it to selectively choose to remove detail from the scene to save space, but in a way that preserves as much of the "essence" of the scene as possible.

Macroblocks also form the basis of motion estimation. When computing a P-frame, the encoder takes the two frames and tries to estimate a motion vector for each macroblock. If a car is moving across the screen for example, then instead of representing the car fully in each frame it can describe it as a movement; this is one of the reasons that P-frames are much smaller than I-frames. Of course this can't completely describe the delta, because motion is often more complex than a simple distance and angle of a 16x16 tile. The encoder therefore does its best to estimate motion for each macroblock, and then the resulting difference is encoded as usual. (The fact that this residual has less information entropy allows it to be encoded with fewer bits.)

So, we can now talk about why the video looks like it does. You can see the 16x16 macroblocks quite often, because with missing pieces of the file the encoder only gets part of the scene. You'll sometimes see a foreground object moving but with no background -- this is because the decoder has seen some P-frames (so it can display the parts of the frame that have changed) but it's missing the I-frame that described the frame as a whole, including the static background. Often you'll see a frame suddenly "jump" into full view with a background, which happens when the encoder gets a complete I-frame. This also explains why you'll sometimes see the foreground of the next scene overlaid on the background of the last scene, because again the I-frame that described the scene change was missing but some of the P-frames were recovered, allowing it to display the foreground objects (i.e. the non-static things in the frame) as deltas against the previous backgrounds.

As to the repeating tics, I believe that's just the decoder trying to do its best with what it has. Rather than showing nothing or a static image (as the corresponding portion of the file is all zeros), it uses the previous input. I would imagine this behavior is very decoder-specific. If you look in the options of e.g. ffmpeg/ffdshow there's a section about error recovery where you can select how hard it should try.
posted by Rhomboid at 5:18 PM on April 14, 2012 [163 favorites]


[this is good]

What is the song?
posted by pxe2000 at 5:36 PM on April 14, 2012


I think this is nifty! We've had a few examples here before. For more corrupted video compression artifacts as art, the keywords I know of are datamosh or datamoshing.

pxe2000: The credits at the end say Silje Nes, "Opticks."
posted by Pronoiac at 5:45 PM on April 14, 2012 [1 favorite]


(Oh, and re: macroblocks, MPEG4 ASP can technically deal with any resolution as long as it's a multiple of 2, but I believe that doing so introduces a slight inefficiency, such as 16x16 macroblocks that are only partially filled, and so therefore the "scene" prescribes a resolution choice that will best maintain the square pixel aspect ratio while also being a factor of 16 in both dimensions.)
posted by Rhomboid at 5:46 PM on April 14, 2012


no digital effects were used and all jump cuts and repeats are in the corrupted file. -- Really?
posted by crunchland at 5:53 PM on April 14, 2012


Yeah, song is Grass Harp from Silje Nes' last album, Optiks. The whole record is terrific and even better than her excellent debut, Ames Room.
posted by You Should See the Other Guy at 5:59 PM on April 14, 2012 [1 favorite]


MADMEN Usenet Edition

(comment deleted)
posted by PapaLobo at 6:13 PM on April 14, 2012


Reminds me of Martin Arnold
posted by Horizontally a Champion at 6:20 PM on April 14, 2012


Oh holy crap that is good. 3:15 forward for about a minute is incredible.

I just sat down and watched all the episodes of Mad Men for the first time, in a marathon session over about 4 days. I would have watched them in about 2 days if 720p videos downloaded faster. So this is perfect timing. I have recently seen such glitches in Mad Men and my software just crashes instead of doing this sort of reconstruction.
posted by charlie don't surf at 6:48 PM on April 14, 2012


The other funny thing about corrupt or incomplete video files on a hard drive can occur where your playback software seeks to a position in a larger file where that part of the video has not yet been written to the hard drive, but another video using a sufficiently compatible encoding scheme has been written to that portion of the drive and has been "deleted" by removing references to it in the file system.

Take a look at comments on popular movie downloads on e.g. ThePirateBay; there's always somebody who has hit 5% completion and has come back with a comment insisting that the latest episode of Game of Thrones is in fact last week's SVU episode and the scene is horrible and how dare you provide me with incorrectly labeled pirated content.

but I believe that doing so introduces a slight inefficiency, such as 16x16 macroblocks that are only partially filled, and so therefore the "scene" prescribes a resolution choice that will best maintain the square pixel aspect ratio while also being a factor of 16 in both dimensions.

Additionally, broken decoders sometimes perform oddly with non mod-8 resolutions. There was a period of time in which the DXVA decoder bundled with Media Player Classic Home Cinema passed X number of corrupt lines at the bottom of each frame to the renderer, where X was the padding needed to make the video mod16. If the OSS stuff can go through that sort of phase, you can imagine how bad the proprietary decoders were for a while.

There was also a period of time in which using MPC-HC in conjunction with an MPEG-2 decoder bundled with older versions of PowerDVD would stack interlaced fields rather than weaving them...two half-height Master Shakes delivering a grand oration are funnier than one regular Shake).
posted by Inspector.Gadget at 6:50 PM on April 14, 2012 [1 favorite]


Heh heh. I did this with some golden age science fiction text files. It turned pulp into Burroughs.
posted by infinitewindow at 7:01 PM on April 14, 2012 [2 favorites]


I like the part where it looks like he's peeing his pants (@1:05).
posted by R. Schlock at 7:03 PM on April 14, 2012


The other funny thing about corrupt or incomplete video files on a hard drive can occur where your playback software seeks to a position in a larger file where that part of the video has not yet been written to the hard drive, but another video using a sufficiently compatible encoding scheme has been written to that portion of the drive and has been "deleted" by removing references to it in the file system.

If that's happening, it means your filesystem itself is badly corrupted, or your operating system is buggy. When a torrent client creates a file and then writes its blocks in random order, the sections that haven't been written yet are still reserved for that file, and from an application's perspective they just look like null bytes. You'll never see random chunks of other files.

At least, that's the way Windows and Linux handle it, and doing anything else would be a huge security hole.
posted by teraflop at 7:40 PM on April 14, 2012


"It also avoids infringing the copyright of Madmen as it is incomplete" is a well meaning idea.

Yeah people's notions of Copyright can be quaint.
posted by stbalbach at 7:44 PM on April 14, 2012


At least, that's the way Windows and Linux handle it, and doing anything else would be a huge security hole.

uTorrent on Windows doesn't do it that way, unless "Pre-allocate all files" is enabled in the torrent client.
posted by Inspector.Gadget at 7:49 PM on April 14, 2012 [1 favorite]


I stand corrected. Apparently uTorrent takes advantage of admin privileges when it can to tell the OS to give it uninitialized data. And this is enabled by default, with the option to disable it hidden in the "Advanced" menu, even though Microsoft explicitly says it's not secure. Go figure.
posted by teraflop at 8:09 PM on April 14, 2012


So, no hot chicks on Mad Men?
posted by cjorgensen at 8:17 PM on April 14, 2012


Most of what Rhomboid said is correct, but I should point out that you can get much better then 360p Xvid AVI files on bittorent these days.

The popular codec these days is x264, and the container is likely to be an mkv file, not an avi. 480 and 720p versions are available, depending on how you feel like balancing resolution and download times.

they all do the keyframes/motion frames thing.

Also, for anyone who doesn't know, intentionally messing up digital files like "thing" now, called data moshing
posted by delmoi at 8:24 PM on April 14, 2012 [1 favorite]


Reminded me of this Chairlift video, which I believe was posted here before.
posted by orme at 9:01 PM on April 14, 2012 [1 favorite]


This is awesome.
posted by shakespeherian at 9:47 PM on April 14, 2012


I'm not so sure that's the "bittorrent edition" so much as the "online streaming of pirated tv shows" edition.

I also just don't get how this is lovely at all. It's rather annoying. Why anyone would voluntarily watch that is beyond me, this is the sort of thing that happens on rainy days to satellite subscribers, or when Netflix is being shitty.
posted by Malice at 11:06 PM on April 14, 2012 [4 favorites]


Sometimes you get the coolest results just by throwing some binary data through a virtual cement mixer. Reminds me of this post from 2010.
posted by The Lurkers Support Me in Email at 11:14 PM on April 14, 2012


My problem with Mad Men is that, the moment a character is viewed out of the office, I expect them to be revealed as a drunken woman-abusing smackhead Klansmen. Mad Men (Bittorrent Edition) removes that worry.
posted by The River Ivel at 2:51 AM on April 15, 2012


I should point out -- in case anyone didn't get this -- that this isn't showing what the video looks like if you get it from bittorent, rather he's showing what it looks like if you play all the pieces of the video as they are downloaded (out of order)
posted by delmoi at 5:27 AM on April 15, 2012 [1 favorite]


(or actually, the order they're uploaded, more likely. Since that would explain the duplicate blocks)
posted by delmoi at 5:27 AM on April 15, 2012


Opticks is available on eMusic for $5.39.
posted by eustacescrubb at 5:59 AM on April 15, 2012


The video is supremely annoying, and I could only watch 30 seconds or so before I felt like I needed to start checking some settings on something or other.

But Rhomboid's comment answers questions I've always had but never been able to figure out. Thanks!
posted by Big_B at 7:00 AM on April 15, 2012 [1 favorite]


Seriously, rhomboid's comment was so edifying. It puts together so many odd things that I noticed about a format that on the surface should be relatively straightforward.
posted by legospaceman at 11:11 AM on April 15, 2012


I started watching this because I thought there was going to be some sort of point to be made here, (the song juxtaposed to key scenes 'melting' into one another, repeating glitches used to highlight themes in the show: i.e. women walking away from Don, an odd focus on his crotch, followed by him being sick and lonely) or perhaps it was one of those things like "What if Facebook had been in the 90s?" or "Breaking Bad for NES".

But I could only make it about a minute in before skipping ahead and coming here, only to discover that it's just someone fascinated with incomplete data, which I guess is cool in the same way that Lens Flare is cool if you've never seen it before, but to each their own I suppose.

Also, good on Rhomboid for his comment, because someone once asked me why video files sometimes do that, and I tried to give what I presumed to be the explanation, and it turns out I was pretty close! Now I know... The Rest of the story.
posted by Uther Bentrazor at 11:21 AM on April 15, 2012


But I could only make it about a minute in before skipping ahead and coming here, only to discover that it's just someone fascinated with incomplete data, which I guess is cool in the same way that Lens Flare is cool if you've never seen it before, but to each their own I suppose.

Well I agree with the 'to each their own' sentiment but I think you're missing what the draw is here for some folks, myself included. One of the ways that art functions is to draw attention to the overlooked, to find weird little spaces in common experience that people tend to skip over impatiently when they're looking for the Real Meat Of Life, and to say: What if we just look at this one little thing? What if, instead of skipping over it, we acknowledge its commonality, we indulge it in the things we recognize about it, we allow it to play out and examine what it has to offer? Is there anything it can reveal, any way its random parts can accidentally work in concert to make something interesting? This process that so many of us participate in-- torrenting episodes of a glossy-looking teevee show-- what alternative results can spring from that same activity, and what happens if we just look at those results as if that was what we were trying for?

Again, sure, YMMV, but I think it's pretty interesting.
posted by shakespeherian at 11:49 AM on April 15, 2012 [6 favorites]


Now we know how they make the upcoming episode trailers.
posted by frecklefaerie at 9:38 PM on April 16, 2012 [1 favorite]


I ain't Mad at that.
posted by Uther Bentrazor at 12:37 PM on April 18, 2012


« Older Give a fuck whatcha heard / Yeah fuck whatcha...   |   The U.S. Government’s Top-Secret Town Newer »


This thread has been archived and is closed to new comments