[00:00.920 --> 00:07.720] This project is called Captur, or however you want to pronounce it more conveniently. [00:11.920 --> 00:19.720] It is trying to get captions off of VHS tapes, since there aren't really that many more analog signals that are out there. [00:21.020 --> 00:23.900] Funny enough, drone cameras still output NTSC. [00:23.900 --> 00:33.600] But anyway, so here's the description of the talk, which took me longer than I thought to actually get into words. [00:33.600 --> 00:35.480] But every word is meaningful. [00:36.080 --> 00:43.740] I did choose on purpose to try and put in as many words that GPT uses, like over uses. [00:44.080 --> 00:45.420] But I already talk like this. [00:45.560 --> 00:46.340] I already say delve. [00:47.560 --> 00:49.340] You know, like it's normal. [00:49.640 --> 00:50.380] But anyway. [00:53.500 --> 00:55.100] So, what are the captions? [00:55.460 --> 00:56.940] It's text on screen. [00:57.480 --> 01:00.180] You can turn them on or off if they're closed captions. [01:00.500 --> 01:05.560] Which is, if they're open, it's usually hard matted or projected, such as at an opera. [01:06.280 --> 01:11.120] Or, New York City actually has a law about open captions on movies. [01:11.220 --> 01:13.760] And there's some percentage that have to be there. [01:14.880 --> 01:18.440] In the U.S., we call subtitles for these. [01:18.440 --> 01:22.540] Sometimes, if there's like words in other languages, you can still hear it, but you might not understand it. [01:24.220 --> 01:26.540] Sometimes for other languages, they'll just burn it into the image. [01:28.260 --> 01:32.320] But, in other countries, they don't make a distinction between subtitles and captions. [01:32.320 --> 01:33.200] It's all just the same. [01:33.600 --> 01:34.920] So, we have the standard. [01:37.040 --> 01:45.100] I don't remember what those means, but those are the Line 21 vertical blanking interval caption standard. [01:45.300 --> 01:49.840] It is just above the visual area on an analog television signal. [01:52.500 --> 01:56.340] In DVDs and Blu-rays, the captions are actually images. [01:56.540 --> 01:59.560] They're not binary text type data. [02:00.000 --> 02:02.740] Although, I don't think anyone has used that creatively. [02:02.980 --> 02:06.420] Usually, it's just images that they can put whatever language they want. [02:06.520 --> 02:10.060] They don't have to care about binary formats or Unicode. [02:10.660 --> 02:11.200] Things like that. [02:11.620 --> 02:12.600] But, it's a picture. [02:12.600 --> 02:15.940] Somebody should make fun drawings or something. [02:16.080 --> 02:17.640] Instead, I've only seen text. [02:17.820 --> 02:18.480] But, whatever. [02:21.540 --> 02:27.220] So, I'm sort of interested in accessibility in sort of an abstract way. [02:27.500 --> 02:36.640] But, if you hurt your arm and you have to put it in a sling, you will appreciate being able to type with one hand. [02:36.640 --> 02:40.420] Or, you know, now you have to switch your mouse buttons or something. [02:42.180 --> 02:43.840] Or, other sorts of input. [02:46.000 --> 02:46.440] Whatever. [02:47.500 --> 02:50.120] If you live long enough, you will become disabled in some way. [02:50.460 --> 02:52.540] And, I know, sounds terrible. [02:52.720 --> 02:53.460] Beats the alternative. [02:53.940 --> 02:57.500] But, you know, you... [02:57.500 --> 03:01.100] It would be nice if the world has a place for you when you get older. [03:02.520 --> 03:03.080] Anyway. [03:04.300 --> 03:06.880] There have been a few articles written. [03:07.040 --> 03:08.260] Like, why is everyone using captions? [03:09.720 --> 03:13.140] The current flat panel TVs don't always have the best speakers. [03:13.620 --> 03:17.960] Sometimes people are mixing things for, like, cinematic, you know, wide range. [03:18.240 --> 03:22.000] And, the dialogue gets all... [03:24.800 --> 03:27.860] The dialogue gets, you know, a little muddled. [03:27.860 --> 03:31.080] So, one interesting thing that I came across. [03:31.180 --> 03:36.460] Archive.org has a database of searchable TV clips. [03:36.740 --> 03:38.820] I don't know how they captured that. [03:39.220 --> 03:46.980] Apparently, certain intelligence and monitoring services have, you know, stuff that monitors what's going on in different countries. [03:47.460 --> 03:48.560] TV broadcasts. [03:50.800 --> 03:59.440] When I say transfer to other visual media, mostly, I mean, you know, my screenshots are done by watching TV and then holding my phone up. [04:03.440 --> 04:11.680] But, if you watch YouTube with the captions on, sometimes people will put, you know, some fun Unicode stuff for, you know, sound effects. [04:11.680 --> 04:18.340] They'll make it, you know, crazy looking or they will put little notes like, you know, hey, say where you're from, whatever. [04:19.360 --> 04:21.740] Also, something that I found very useful. [04:22.240 --> 04:24.540] I don't know if MTV plays music videos anymore. [04:24.840 --> 04:27.100] Even saying that is 20 years out of date. [04:27.340 --> 04:30.860] But, the music videos would often have captions on them. [04:30.940 --> 04:32.540] And so, you'd have accurate song lyrics. [04:34.420 --> 04:41.660] I guess one sort of more sentimental thing is that people put a lot of work into getting these captions to you. [04:42.120 --> 04:44.600] It is an accessibility issue, too. [04:44.840 --> 04:47.440] But, if we can, why not? [04:47.440 --> 04:48.520] Why not check them out? [04:48.720 --> 04:51.120] Why not preserve them, capture them? [04:54.620 --> 04:58.920] So, as I also say, there's a lot of stuff that you get for free by being digital. [05:00.120 --> 05:03.240] So, VHS is clunky, it's mechanical, it's a cassette. [05:04.140 --> 05:05.340] It's got a bunch of parts. [05:07.360 --> 05:12.460] You know, if you're lucky that your signal is good when it comes in, you'll have a good recording. [05:13.400 --> 05:16.060] But, they can wear out, et cetera, et cetera. [05:18.080 --> 05:21.480] I hope I didn't forget anything on the fifth slide already. [05:21.480 --> 05:32.140] But, this is sort of an interesting thing that I thought of is that the captions are sort of the first digital incursion into an analog space. [05:32.380 --> 05:36.420] So, they're just kind of hanging out above the visual picture area. [05:38.460 --> 05:41.480] And, you know, eventually people use them and things like that. [05:45.440 --> 05:46.620] But, it's digital. [05:46.840 --> 05:47.620] It went into the TVs. [05:47.920 --> 05:49.000] It became part of standards. [05:49.280 --> 05:50.040] It became part of laws. [05:51.300 --> 05:52.640] And we just kind of went with it. [05:54.480 --> 05:58.440] So, because it's digital, you can just do some thresholding or whatever on the signal. [05:59.240 --> 06:05.520] And even though your video might not be coming in great, the captions might still survive a little bit. [06:09.670 --> 06:10.770] But, this is great. [06:10.850 --> 06:13.610] Seven minutes in and I'm already tired of talking. [06:13.910 --> 06:18.570] Because I was telling everybody about this project for the past, like, two, three weeks. [06:18.830 --> 06:19.390] But, anyway. [06:19.810 --> 06:20.670] So, here's a... [06:20.670 --> 06:21.930] I know, I know. [06:25.840 --> 06:27.780] The great thing is you only need to listen to it once. [06:29.840 --> 06:31.400] But, so there was a... [06:32.140 --> 06:35.980] There was an experiment with captioning Julia Child, the French chef. [06:38.580 --> 06:39.800] It was successful. [06:40.400 --> 06:42.500] At this point, I think it was still a black and white program. [06:42.600 --> 06:43.160] I could be wrong. [06:45.660 --> 06:51.820] But, you know, people who may not want to have the volume on or can't hear, maybe they want to cook as well. [06:52.100 --> 06:54.500] But, the complaints were a little bit weird. [06:54.500 --> 06:58.420] Saying like, oh, it'll burn out the picture tube faster. [06:59.960 --> 07:03.340] Or, you know, it's distracting to people who can hear. [07:04.060 --> 07:07.480] Just very, very strange complaints that I came across. [07:07.700 --> 07:10.880] But, 1973, they... [07:10.880 --> 07:11.880] ABC... [07:11.880 --> 07:14.720] And ABC seems to be at the forefront of this. [07:15.100 --> 07:18.720] They seem to be early adopters of the Line 21 standard. [07:20.780 --> 07:23.880] And they just sort of, like, keep improving it and go all in with it. [07:24.080 --> 07:28.120] But, they were rebroadcasting the news with a five-hour delay. [07:28.620 --> 07:30.520] But, with captions included now. [07:31.800 --> 07:32.320] WETA... [07:32.320 --> 07:33.480] I forget where that is. [07:34.120 --> 07:34.640] D.C.? [07:34.860 --> 07:35.040] Okay. [07:35.740 --> 07:37.220] It's not WBGH. [07:37.980 --> 07:38.500] Yep. [07:40.600 --> 07:43.600] Is that more or less esoteric than knowing area codes? [07:49.680 --> 07:50.800] Ah, interesting. [07:52.140 --> 07:59.160] The only one that I remember is WPVI for Philadelphia 6. [07:59.380 --> 08:00.280] And they are still on... [08:00.280 --> 08:03.120] They are still on UHF Low Channel 6. [08:04.540 --> 08:05.580] But, anyway. [08:05.860 --> 08:09.420] So, in 1976, the FCC reserves this part of the caption... [08:09.420 --> 08:12.240] Part of the television signal, Line 21, for captioning use. [08:12.700 --> 08:18.280] And, in 1979, the National Captioning Institute was founded. [08:18.620 --> 08:21.880] And, it was a little bit funny to come across this person's name. [08:22.520 --> 08:25.060] Also, I just learned it's pronounced Okrand. [08:25.760 --> 08:27.760] But, does anyone recognize him? [08:29.300 --> 08:31.500] Does anyone see in Star Trek? [08:32.920 --> 08:34.720] So, he is... [08:36.080 --> 08:43.780] He is the one who developed, I think, Vulcan first for a few lines, but then mostly Klingon for Star Trek II and III. [08:45.240 --> 08:45.720] Which... [08:45.720 --> 08:47.040] I mean, he's a linguist. [08:47.180 --> 08:53.460] But, I did not expect him to show up, you know, here in 1979, as I'm researching this. [08:53.460 --> 08:59.920] But, in March of 1980, most of the sources say that this is when the captions, like, officially began. [09:01.660 --> 09:05.480] So, and CBS, for whatever reason, they wanted teletext. [09:05.800 --> 09:07.500] They were kind of pushing it. [09:07.600 --> 09:08.400] They were, like... [09:08.400 --> 09:09.940] I found a New York Times article. [09:10.200 --> 09:10.980] I may have linked it. [09:11.860 --> 09:14.880] Where, in 1983, they're, like, rolling out teletext. [09:15.040 --> 09:16.180] Like, no one else in the U.S. [09:16.220 --> 09:17.200] is on board with this. [09:17.200 --> 09:19.580] But, anyway. [09:19.820 --> 09:22.300] So, this is also funny to come across. [09:22.600 --> 09:28.800] In 1978, CIA decides that they need a fast way to transcribe audio. [09:30.360 --> 09:33.980] There was enough demand that this company called Stenocomp was made. [09:34.140 --> 09:38.740] They eventually went out of business, but all their assets or technology or whatever. [09:39.460 --> 09:43.580] And the big innovation is that you can connect it to a minicomputer. [09:44.740 --> 09:48.140] So, you can actually do much faster turnaround for things like that. [09:52.240 --> 09:55.520] In 1980, Sears sells the first CC decoder boxes. [09:55.920 --> 09:59.540] I don't remember the model number, but they were expensive. [09:59.840 --> 10:03.140] They hooked up in line and displayed on the television afterwards. [10:06.580 --> 10:11.260] The first real-time captioning, which, again, I didn't think about it, but, no. [10:11.360 --> 10:15.660] They used the same stenographer keyboard that a court reporter does. [10:17.600 --> 10:23.540] The National Captioning Institute performs real-time captioning of the Academy Awards in real-time as it's being broadcast. [10:24.260 --> 10:26.600] In the 1980s, it just basically goes everywhere. [10:27.940 --> 10:40.940] In the 1990s, the Decoder Circuitry Act and the Americans with Disabilities basically made sure that this capability was in all televisions that were sold, I think, over 13 inches or something like that. [10:43.180 --> 10:44.580] 1996, Telecommunications Act. [10:44.700 --> 10:56.960] You might be familiar with it for other reasons, but this has the V-Chip, which no one has a good word for what that is except for violence. [10:57.780 --> 10:59.240] Clearly, it is a violence chip. [10:59.740 --> 11:06.120] But this uses the Extended Data Service, which is also on line 21, but slightly different from the captions. [11:06.940 --> 11:13.460] And the Extended Data Service is what is sometimes... [11:13.460 --> 11:20.120] sometimes there's an Extended Data Service packet for when commercials are playing, and TiVo used that to automatically cut them out. [11:20.120 --> 11:27.100] It's a little bit weird to think that TiVo came before digital, even though it was a Linux machine. [11:28.780 --> 11:37.060] But because PBS stations did not have commercials, they would use the XDS packets to set your clock. [11:37.220 --> 11:39.660] So this would show up on your VCR every now and then. [11:40.240 --> 11:48.560] It might take, like, one to five minutes for it to receive the right packet, but, you know, one more thing that you don't need to worry about. [11:50.640 --> 11:53.000] And yes, here's CBS in 1983. [11:53.000 --> 11:55.120] Just keep going here. [11:58.340 --> 12:03.420] And then there's a podcast about when captions go wrong. [12:03.880 --> 12:05.800] But I'm not going to cover that too much. [12:09.240 --> 12:09.660] So... [12:12.700 --> 12:13.540] Yeah, so... [12:15.760 --> 12:21.760] If they knew what was going to be captioned, they would set up their own customized dictionary for the stenographer. [12:23.260 --> 12:32.000] One of the articles I was reading, they were set to do NFL games. [12:32.300 --> 12:41.340] And for whatever reason, all the players and the coaches and all the teams, there were 14 different people with some variation of Daryl. [12:42.140 --> 12:44.440] And so they had to figure out how to... [12:44.440 --> 12:46.520] how to get that correct every time. [12:48.040 --> 12:57.420] So one of the things that sort of sparked this investigation on the text one channel every now and then would be this thing. [12:57.520 --> 12:59.460] I'm going to show you one of them in a bit. [12:59.580 --> 13:03.000] But it shows up, it says, oh, you know, would you like to join the caption club? [13:04.400 --> 13:07.780] Which seems like a very strange thing, like, to be... [13:07.780 --> 13:09.460] you know, just putting out there. [13:09.460 --> 13:12.200] But also, there's almost no information about it online. [13:14.300 --> 13:19.980] I was reading one of the articles that I linked later, and it turns out it's really more of a sponsorship type thing. [13:20.100 --> 13:22.260] They're not sending you stuff and scripts and whatnot. [13:22.520 --> 13:24.860] But it was just weird. [13:25.020 --> 13:31.000] It's just like, here, send some mail to our nondescript office in False Church, Virginia. [13:31.720 --> 13:33.100] And now they're in... [13:33.100 --> 13:35.740] Now the National Captioning Institute is in Chantilly. [13:35.740 --> 13:42.160] But there are a lot of sources for these captions if you need your program done. [13:44.560 --> 13:51.380] Anyhow, the VHS tape will capture the entire television signal, and that's why we get... we have it available for us. [13:52.600 --> 13:53.180] All right. [13:53.280 --> 13:54.200] So this is slide 10. [13:54.460 --> 13:55.620] I'm 15 minutes in. [13:55.700 --> 13:57.020] I have 45 slides. [13:58.460 --> 13:59.200] We'll see. [13:59.460 --> 13:59.860] All right. [14:05.570 --> 14:06.010] Yeah. [14:06.270 --> 14:10.130] Anyway, so most of the time, you turn on captions, it's just the closed caption one channel. [14:10.290 --> 14:20.950] But these other channels were used for things like news feeds, program schedules, other captioned programming, things like that. [14:22.150 --> 14:23.730] And, you know, it's there. [14:23.870 --> 14:24.290] It's data. [14:24.710 --> 14:27.030] We may as well capture it if we can. [14:27.590 --> 14:28.930] And we might find something interesting. [14:28.930 --> 14:29.430] I don't know. [14:29.430 --> 14:37.390] I would not have thought that the funeral for Indira Gandhi was going on at the same time as the 1984 presidential elections. [14:39.210 --> 14:39.690] So... [14:41.410 --> 14:46.150] And, yeah, this is a good article that just goes over the binary format, just in case. [14:46.330 --> 14:46.970] So part of... [14:46.970 --> 14:52.190] I don't intend to get hit by a bus, but I hope that there's enough information here. [14:52.190 --> 14:57.470] If you need to, you can reverse engineer or continue this or go off in your own direction. [14:58.250 --> 14:59.110] Things like that. [14:59.450 --> 14:59.830] So... [15:00.330 --> 15:06.210] This was an interesting article that, you know, talked about the CIA again, which was sort of a surprise, but made sense. [15:07.770 --> 15:12.710] I didn't put a picture on here, but this describes how the steno keyboard works. [15:13.150 --> 15:16.410] And it sort of explains when you see more... [15:16.410 --> 15:17.450] when you see an error. [15:17.670 --> 15:19.750] Like, ah, I know how that error happened. [15:21.090 --> 15:23.130] But I also... [15:23.130 --> 15:23.970] watch... [15:23.970 --> 15:25.190] watch Jason Scott's talk. [15:27.390 --> 15:29.910] And, ah, I mentioned teletext. [15:30.270 --> 15:31.060] Just wanted for... [15:31.330 --> 15:32.210] for in... [15:32.210 --> 15:33.870] for completeness, these... [15:33.870 --> 15:38.310] these two links have archives of teletext that have been recovered from... [15:38.310 --> 15:40.430] home recordings, things like that. [15:41.110 --> 15:43.840] I haven't gone on that too much, but... [15:44.750 --> 15:45.410] so... [15:45.410 --> 15:47.690] Here's one video that's really good. [15:47.690 --> 15:49.750] And, um... [15:49.750 --> 15:52.490] I think he messes with the TV a bit so that the... [15:52.490 --> 15:55.670] the vertical blanking and the horizontal are in the middle of the screen. [15:55.890 --> 15:58.890] And so you can actually see what the signal looks like that is not usually displayed. [16:01.230 --> 16:01.670] Um... [16:01.670 --> 16:02.790] One of the... [16:02.790 --> 16:08.050] one of the strange things about doing research, aside from not knowing where you are or what... [16:08.050 --> 16:15.130] you know, how far you are, or if you're near completion, or you're just getting deeper and deeper, I just found this random guy. [16:15.590 --> 16:15.870] You know... [16:16.590 --> 16:17.470] pandemic started. [16:17.790 --> 16:18.210] All right. [16:18.410 --> 16:19.610] We're gonna do plague doctor. [16:19.930 --> 16:21.550] We're gonna talk about the... [16:21.550 --> 16:24.810] you know, this is part two of the composite TV signal. [16:25.790 --> 16:26.630] So, uh... [16:26.630 --> 16:32.150] this is actually pretty good, and I understood a little bit more how it knows, like, when is the frame done? [16:32.290 --> 16:33.130] How do you start over again? [16:33.230 --> 16:33.750] Things like that. [16:35.230 --> 16:35.670] Uh... [16:35.670 --> 16:36.150] But... [16:37.030 --> 16:39.410] I don't have any history about this, but... [16:39.410 --> 16:44.890] it didn't take them too long, probably, to notice, hey, we can sell sponsorship rights for this. [16:45.410 --> 16:45.950] So... [16:45.950 --> 16:48.000] General Hospital gets sponsored by... [16:50.670 --> 16:51.790] That's a surprise. [16:53.610 --> 16:54.150] Uh... [16:54.150 --> 16:54.670] Here's... [16:54.670 --> 16:54.970] Here's... [16:54.970 --> 16:55.890] I know, this is... [16:55.890 --> 16:57.870] Some people recognize this person, but... [16:57.870 --> 16:58.590] only if you're old. [16:59.590 --> 17:00.130] Um... [17:00.130 --> 17:00.870] So, here we go. [17:00.870 --> 17:04.070] So, unequivocally, may not have been in the prepared database. [17:05.830 --> 17:06.310] Uh... [17:06.310 --> 17:06.610] And... [17:06.610 --> 17:08.990] And, you know, they tried it again, and... [17:10.230 --> 17:10.710] Same... [17:10.710 --> 17:11.550] Same... [17:11.550 --> 17:12.470] You know, it didn't... [17:12.470 --> 17:13.610] It didn't solve... [17:14.170 --> 17:14.650] Uh... [17:14.650 --> 17:15.290] To a word. [17:15.630 --> 17:15.970] But... [17:18.470 --> 17:21.810] Yeah, there are open-source libraries for doing stenography. [17:22.090 --> 17:23.750] Plover is one that's popular. [17:24.490 --> 17:24.970] Uh... [17:24.970 --> 17:25.530] And... [17:25.530 --> 17:31.390] For whatever reason, you know, the combination of cording of the keyboard is called a theory. [17:31.770 --> 17:32.290] Uh... [17:32.290 --> 17:35.010] And there are various different strategies for... [17:35.010 --> 17:36.250] For getting your, uh... [17:37.050 --> 17:37.510] Uh... [17:37.510 --> 17:38.070] Your thing going. [17:38.690 --> 17:39.210] But... [17:39.210 --> 17:40.090] So... [17:40.090 --> 17:42.530] This is all on one... [17:42.530 --> 17:42.930] Uh... [17:42.930 --> 17:43.590] On one tape. [17:43.910 --> 17:44.870] This is during the... [17:44.870 --> 17:46.710] The same ABC News segment. [17:47.070 --> 17:47.570] Uh... [17:47.570 --> 17:49.250] So here's... [17:50.750 --> 17:53.010] I did not plan this, but, you know, this is... [17:53.010 --> 17:54.390] This is what was on the tape. [17:54.770 --> 17:55.210] Uh... [17:55.210 --> 17:57.490] So, closed caption one has the actual dialogue. [17:57.490 --> 17:59.110] We have Brit Hume. [17:59.350 --> 18:00.670] If you want to know how long ago that was. [18:01.250 --> 18:02.210] He was, uh... [18:02.210 --> 18:03.430] At ABC for 23 years. [18:03.890 --> 18:05.970] Here's Sam Donaldson and his famous hair. [18:06.350 --> 18:07.620] But this is on the text one... [18:08.410 --> 18:08.830] Uh... [18:08.830 --> 18:09.290] Caption channel. [18:09.910 --> 18:11.850] And then on the text two channel... [18:12.910 --> 18:13.330] Uh... [18:13.330 --> 18:15.640] It has, you know, a completely different set of... [18:16.070 --> 18:16.210] Uh... [18:16.210 --> 18:16.730] Of programming. [18:17.990 --> 18:18.410] So... [18:18.410 --> 18:18.810] It's, uh... [18:18.810 --> 18:20.150] And these are all on the line 21. [18:20.510 --> 18:21.790] They're, um... [18:21.790 --> 18:23.470] You know, differentiated by various... [18:23.990 --> 18:25.730] Parody bits and... [18:25.730 --> 18:26.190] Things like that. [18:27.190 --> 18:27.590] But... [18:27.590 --> 18:28.370] Um... [18:28.370 --> 18:29.270] So this is sort of the... [18:29.270 --> 18:30.290] The start of the mystery. [18:31.290 --> 18:31.690] Uh... [18:31.690 --> 18:32.210] And... [18:32.210 --> 18:35.190] Like literally before this morning, I did not realize it was a sponsorship. [18:35.410 --> 18:36.490] I thought that like... [18:36.490 --> 18:38.010] They sent you a package of something. [18:38.970 --> 18:39.370] Uh... [18:39.370 --> 18:40.830] But this is on the text one... [18:40.830 --> 18:41.130] Uh... [18:41.130 --> 18:41.770] Caption channel. [18:42.250 --> 18:42.650] Which... [18:42.650 --> 18:45.710] You know, most people would have no reason to be looking at. [18:46.430 --> 18:46.830] Uh... [18:46.830 --> 18:48.370] The other interesting thing is some of the... [18:48.370 --> 18:51.850] Some of the tapes, if you go to the text two channel, That just says, hey, this is a test. [18:52.090 --> 18:53.450] You probably want text one. [18:57.230 --> 18:57.670] Um... [18:57.670 --> 18:59.770] The other great thing about... [18:59.770 --> 19:01.930] Looking at old tapes is you find... [19:01.930 --> 19:03.990] Strange shows that you didn't really watch. [19:04.190 --> 19:04.910] But this is... [19:04.910 --> 19:06.990] This is the fifth to last episode of 90210. [19:07.730 --> 19:09.570] I think she just got a Palm Pilot. [19:09.970 --> 19:11.390] It's a little bit... [19:11.390 --> 19:14.110] Uncomfortable situation because he's the business partner. [19:14.990 --> 19:15.430] But... [19:15.430 --> 19:15.950] Whatever. [19:16.130 --> 19:17.890] This is probably why I didn't watch 90210. [19:17.890 --> 19:19.290] I don't know, but... [19:20.170 --> 19:20.530] Um... [19:21.050 --> 19:23.050] I will say though, not watching the shows. [19:23.390 --> 19:24.390] But they had a thing. [19:24.610 --> 19:25.310] You know, they had a little bumper. [19:25.470 --> 19:25.890] It's like, oh! [19:26.610 --> 19:27.970] Last four episodes. [19:28.790 --> 19:29.150] And... [19:29.150 --> 19:30.370] And they had Moby... [19:30.770 --> 19:31.770] Horseline on one of them. [19:31.890 --> 19:32.190] Which... [19:32.190 --> 19:32.990] I listened to the... [19:32.990 --> 19:34.250] You know, Moby a lot in high school. [19:34.530 --> 19:35.970] And they had Madonna's Take a Bow. [19:36.110 --> 19:36.710] Not as much. [19:37.070 --> 19:37.430] But... [19:37.430 --> 19:38.390] You know, like... [19:38.390 --> 19:40.390] I have not thought about these shows in 20 years. [19:40.530 --> 19:41.890] I may not have thought about those songs. [19:42.370 --> 19:42.730] But... [19:42.730 --> 19:43.270] Like, oh! [19:43.390 --> 19:44.050] There it is. [19:44.150 --> 19:45.230] Having an emotional reaction. [19:46.230 --> 19:46.670] So... [19:47.430 --> 19:48.590] It's a little bit... [19:49.750 --> 19:50.870] A little bit strange. [19:51.310 --> 19:51.750] But... [19:51.750 --> 19:53.230] This is, uh... [19:53.790 --> 19:54.090] As... [19:54.090 --> 19:56.750] As the kids today say, you know, take you on a feels trip. [19:58.410 --> 19:58.850] But... [19:58.850 --> 19:59.350] Um... [20:00.170 --> 20:01.230] I did not expect... [20:01.770 --> 20:02.130] Right? [20:02.250 --> 20:02.630] This... [20:02.630 --> 20:03.910] This is just a line of dialogue. [20:04.170 --> 20:04.610] But... [20:04.610 --> 20:06.010] I happen to... [20:06.010 --> 20:08.530] I happen to take the picture, so... [20:08.530 --> 20:09.190] Um... [20:09.190 --> 20:11.250] And you can sort of see at the top, that is... [20:11.250 --> 20:11.850] Uh... [20:11.850 --> 20:13.190] Some caption-like data. [20:13.430 --> 20:15.010] Or it might be extended data service. [20:15.310 --> 20:17.150] Or it might be timecode or something. [20:17.450 --> 20:17.810] But... [20:17.810 --> 20:18.410] Uh... [20:18.410 --> 20:19.250] Turn off over scan. [20:21.090 --> 20:21.570] Uh... [20:21.570 --> 20:22.310] And yes. [20:22.470 --> 20:22.590] I... [20:22.590 --> 20:24.390] I got a great deal on a 4K TV. [20:24.630 --> 20:25.510] It had analog in. [20:25.870 --> 20:26.350] So... [20:26.350 --> 20:28.270] I'm watching VHS tapes on a 4K TV. [20:28.730 --> 20:29.210] But... [20:29.210 --> 20:30.270] The screenshots look great. [20:31.150 --> 20:31.630] Uh... [20:31.630 --> 20:32.250] Here is one of the... [20:32.250 --> 20:32.870] One of the companies. [20:33.150 --> 20:34.370] So they usually put their... [20:34.370 --> 20:35.170] Their name at the end. [20:40.750 --> 20:41.230] Uh... [20:41.230 --> 20:41.630] Uh... [20:41.630 --> 20:44.610] This is one of the companies that you could use to get your show captioned. [20:47.290 --> 20:47.850] Um... [20:47.850 --> 20:49.310] This one did not have any captions. [20:49.310 --> 20:51.530] Because it was recorded off of... [20:51.530 --> 20:54.250] Russian broadcast television to a DVD. [20:54.670 --> 20:55.470] And then... [20:55.470 --> 20:58.030] Put on a VHS tape in the United States. [20:58.970 --> 21:00.870] I'm including it here because it's... [21:00.870 --> 21:02.310] Bizarre and ridiculous. [21:02.810 --> 21:03.290] And... [21:03.290 --> 21:04.690] I don't speak Russian. [21:05.810 --> 21:06.370] But... [21:07.670 --> 21:08.230] Um... [21:09.010 --> 21:09.570] So... [21:11.370 --> 21:13.710] I didn't quite realize this until later. [21:13.710 --> 21:15.590] But maybe you don't want... [21:15.590 --> 21:18.550] The person who is around murders all the time... [21:18.550 --> 21:19.670] To be selling you medicine. [21:23.100 --> 21:25.080] But it's also strange to be like... [21:25.080 --> 21:25.300] You're... [21:25.300 --> 21:28.740] You're in a store and suddenly you're talking with someone who is in their house. [21:33.640 --> 21:34.240] Uh... [21:34.240 --> 21:34.720] And... [21:34.720 --> 21:35.780] Here we have... [21:35.780 --> 21:36.620] Here we have... [21:36.620 --> 21:37.720] Uh... [21:37.720 --> 21:39.280] West Coast Hellman's. [21:39.920 --> 21:41.680] Thankfully it has the same number of syllables. [21:44.380 --> 21:45.500] Ancient phones... [21:45.500 --> 21:46.240] That were... [21:46.240 --> 21:46.440] You know... [21:46.440 --> 21:47.140] Amazing... [21:47.140 --> 21:47.640] At the time. [21:48.500 --> 21:49.100] I guess... [21:49.100 --> 21:49.780] Adidas is out. [21:50.120 --> 21:50.860] Gap is in. [21:52.040 --> 21:52.600] Uh... [21:52.600 --> 21:53.300] And... [21:53.300 --> 21:53.660] You know... [21:53.660 --> 21:54.020] This... [21:55.080 --> 21:57.300] I don't know if this is hilarious or a travesty. [21:57.460 --> 21:57.680] But... [21:57.680 --> 21:58.700] This is a Target ad. [21:59.080 --> 22:00.140] And they had a whole... [22:00.440 --> 22:01.840] Whole new lyrics for the song. [22:02.860 --> 22:03.420] Um... [22:03.420 --> 22:03.820] And... [22:03.820 --> 22:04.260] And... [22:04.260 --> 22:05.040] You know... [22:05.040 --> 22:07.180] They had a whole Libby's Diner set up. [22:07.620 --> 22:07.980] Like... [22:08.540 --> 22:09.600] Never encountered this. [22:09.760 --> 22:10.140] But... [22:10.140 --> 22:10.800] Here it is. [22:11.000 --> 22:13.060] You also get movie trailers for things that... [22:13.060 --> 22:13.780] That... [22:13.780 --> 22:14.560] Just... [22:14.560 --> 22:14.980] Bombed. [22:15.140 --> 22:16.200] No one talks about them. [22:16.700 --> 22:17.220] But... [22:17.220 --> 22:17.500] You know... [22:17.500 --> 22:19.600] They're enthusiastic about the movie trailer. [22:19.920 --> 22:20.440] As... [22:20.440 --> 22:21.380] As they're making it. [22:21.800 --> 22:22.300] So... [22:24.320 --> 22:25.660] So here I'm thinking... [22:25.660 --> 22:26.020] I'm thinking. [22:26.520 --> 22:27.500] Sometimes dangerous. [22:27.980 --> 22:28.460] But... [22:28.460 --> 22:28.980] Uh... [22:28.980 --> 22:29.200] You know... [22:29.200 --> 22:31.220] The TVs have decoders for the captions. [22:31.240 --> 22:32.880] You can switch to... [22:32.880 --> 22:33.180] You know... [22:33.180 --> 22:34.000] Text 1 if you want. [22:34.080 --> 22:34.560] Text 2. [22:36.240 --> 22:36.840] Um... [22:36.840 --> 22:37.540] We have... [22:37.540 --> 22:37.780] You know... [22:37.780 --> 22:39.020] These analog TV... [22:39.020 --> 22:40.040] Converters to HDMI. [22:40.660 --> 22:41.940] They're 15 bucks. [22:42.520 --> 22:42.640] I... [22:42.640 --> 22:44.300] I broke apart more than one of them. [22:45.240 --> 22:45.800] Uh... [22:45.800 --> 22:46.840] Disappointed... [22:46.840 --> 22:47.600] Both times. [22:48.300 --> 22:48.900] But... [22:48.900 --> 22:49.860] You know... [22:49.860 --> 22:50.420] Always... [22:50.420 --> 22:51.680] Always the worst question. [22:51.800 --> 22:52.780] How hard can this be? [22:54.860 --> 22:55.380] So... [22:55.380 --> 22:55.920] Uh... [22:55.920 --> 22:56.120] Just... [22:56.120 --> 22:56.400] I guess... [22:56.400 --> 22:57.180] As an aside... [22:57.180 --> 22:59.000] The more I did research... [22:59.000 --> 23:01.220] Some more things that I came across... [23:01.220 --> 23:01.480] Uh... [23:01.480 --> 23:02.460] This... [23:03.700 --> 23:04.220] This... [23:04.220 --> 23:04.300] Uh... [23:04.300 --> 23:05.380] VHS decode... [23:05.380 --> 23:05.820] Is... [23:05.820 --> 23:06.840] A spinoff... [23:06.840 --> 23:08.420] Of the Laserdisc decoder... [23:08.420 --> 23:09.880] That was used for the... [23:09.880 --> 23:10.780] Uh... [23:10.780 --> 23:11.080] I think... [23:11.080 --> 23:11.980] UK government... [23:11.980 --> 23:13.040] Domesday book... [23:13.040 --> 23:13.720] Like... [23:13.720 --> 23:16.060] Whatever that whole thing was... [23:16.060 --> 23:16.780] Like a record... [23:17.620 --> 23:18.140] Um... [23:18.140 --> 23:18.420] Like... [23:18.420 --> 23:19.360] A recording record... [23:19.360 --> 23:19.940] Like a census... [23:19.940 --> 23:20.540] And things like that. [23:20.720 --> 23:21.980] They put it on Laserdisc. [23:22.780 --> 23:23.660] Which is not great... [23:23.660 --> 23:24.600] If you don't have a Laserdisc player. [23:25.780 --> 23:26.300] Um... [23:26.300 --> 23:27.140] Other interesting thing... [23:27.140 --> 23:27.860] Laserdisc is... [23:28.400 --> 23:28.820] Uh... [23:28.820 --> 23:29.700] Analog video... [23:29.700 --> 23:30.300] But digital audio. [23:32.140 --> 23:32.660] Uh... [23:32.660 --> 23:33.400] So there's another... [23:33.400 --> 23:33.760] There's a... [23:33.760 --> 23:35.040] There's an Arduino shield... [23:35.040 --> 23:35.380] And he... [23:35.380 --> 23:35.760] There... [23:36.380 --> 23:37.420] There's a project... [23:37.420 --> 23:38.040] To sort of make a... [23:38.040 --> 23:39.820] A word cloud over... [23:39.820 --> 23:40.340] Uh... [23:40.340 --> 23:41.560] All the captions... [23:41.560 --> 23:42.100] That you get. [23:43.020 --> 23:43.540] Uh... [23:43.540 --> 23:44.500] And then this... [23:44.500 --> 23:45.900] I don't have any pictures for it... [23:45.900 --> 23:47.080] But this was somebody's... [23:47.700 --> 23:48.220] Um... [23:48.220 --> 23:49.220] Somebody's project... [23:49.220 --> 23:50.180] They used a... [23:50.720 --> 23:51.240] Uh... [23:51.240 --> 23:52.680] A digital line splitter... [23:52.680 --> 23:54.100] And then they sampled the... [23:54.100 --> 23:54.340] The audio... [23:54.340 --> 23:55.180] The... [23:55.180 --> 23:56.080] Analog signal... [23:56.080 --> 23:57.540] And they pulled out the captions that way. [23:57.900 --> 23:58.340] But... [23:59.240 --> 23:59.680] Uh... [23:59.680 --> 24:00.580] It looks... [24:00.580 --> 24:01.520] It looks kind of janky. [24:01.700 --> 24:03.280] I probably would mess it up. [24:03.780 --> 24:04.220] But... [24:04.860 --> 24:06.840] When you see what I built later... [24:07.580 --> 24:08.100] I'm... [24:08.100 --> 24:09.680] I'm very happy it did not explode. [24:10.460 --> 24:10.720] But... [24:10.720 --> 24:11.200] So... [24:11.200 --> 24:12.820] Here's an adapter. [24:13.400 --> 24:13.780] You know... [24:13.780 --> 24:15.000] One of these chips... [24:15.000 --> 24:16.040] Handles... [24:16.040 --> 24:17.320] Translating it to HDMI. [24:17.600 --> 24:18.300] One of them is the audio. [24:18.700 --> 24:19.840] One of them is the analog video. [24:21.760 --> 24:22.280] Uh... [24:22.280 --> 24:24.200] It's a very bad picture here. [24:24.860 --> 24:25.300] Uh... [24:25.300 --> 24:25.620] But... [24:25.620 --> 24:26.000] This is... [24:26.000 --> 24:27.260] This is all from macro silicon. [24:27.780 --> 24:28.300] I... [24:28.300 --> 24:29.600] Cannot find data sheets. [24:29.980 --> 24:31.080] Don't know if I want to. [24:31.080 --> 24:32.080] They're cheap. [24:33.220 --> 24:33.660] But... [24:33.660 --> 24:33.940] Like... [24:33.940 --> 24:35.100] I don't know what you can do with it. [24:36.080 --> 24:36.520] So... [24:36.520 --> 24:36.840] Uh... [24:36.840 --> 24:37.380] Kept looking. [24:38.120 --> 24:39.000] Texas Instruments. [24:39.080 --> 24:40.400] They have a bunch of analog decoders. [24:40.620 --> 24:42.260] Motorola has a bunch of analog decoders. [24:42.380 --> 24:43.020] But they're like... [24:43.020 --> 24:44.220] They're like this. [24:44.360 --> 24:45.600] There's just way too many pins. [24:45.780 --> 24:46.520] They're way too fine. [24:46.640 --> 24:47.600] I don't want to deal with that. [24:47.820 --> 24:48.060] Like... [24:48.060 --> 24:48.340] Let's... [24:48.340 --> 24:49.060] Let's keep looking. [24:49.060 --> 24:50.600] See if there's something that... [24:51.120 --> 24:51.560] Uh... [24:51.560 --> 24:52.100] You know... [24:52.100 --> 24:53.260] That will not drive us insane. [24:54.380 --> 24:54.820] So... [24:54.820 --> 24:55.180] Uh... [24:55.180 --> 24:56.100] I came across this one. [24:56.720 --> 24:57.160] Uh... [24:57.160 --> 24:57.980] This is... [24:57.980 --> 24:59.420] Here's my sort of live demo. [25:00.400 --> 25:00.840] Uh... [25:02.340 --> 25:02.820] If... [25:02.820 --> 25:02.940] If... [25:02.940 --> 25:03.140] You know... [25:03.140 --> 25:03.920] You don't need to know metric. [25:04.120 --> 25:06.440] But this chip is five by five millimeters. [25:07.300 --> 25:07.780] So... [25:08.460 --> 25:08.940] This... [25:08.940 --> 25:10.240] This is the breakout board. [25:10.820 --> 25:11.300] That... [25:11.300 --> 25:11.740] That... [25:11.740 --> 25:12.760] The chip will fit on. [25:13.960 --> 25:14.440] So... [25:14.440 --> 25:15.120] That is... [25:15.120 --> 25:16.080] That's how big it is. [25:17.900 --> 25:18.380] Um... [25:21.860 --> 25:22.340] But... [25:22.340 --> 25:23.800] It has everything that we want. [25:24.080 --> 25:24.440] Uh... [25:24.440 --> 25:25.260] And in fact... [25:25.260 --> 25:26.480] If you want to... [25:26.480 --> 25:27.120] You could... [25:27.120 --> 25:28.180] And you have the right hardware. [25:28.180 --> 25:28.920] But... [25:28.920 --> 25:29.620] Uh... [25:29.620 --> 25:30.680] You could build your own... [25:30.680 --> 25:32.680] Analog TV capture device with this. [25:33.240 --> 25:33.580] Uh... [25:33.580 --> 25:34.660] There are some problems. [25:34.960 --> 25:35.980] Let's get to in a moment. [25:37.040 --> 25:37.640] But... [25:37.640 --> 25:38.560] Uh... [25:38.560 --> 25:39.020] This... [25:39.020 --> 25:40.120] This block right there. [25:40.240 --> 25:41.340] The VBI slicer. [25:41.460 --> 25:42.680] The vertical blanking interval. [25:43.800 --> 25:45.000] That handles... [25:45.000 --> 25:45.500] Everything. [25:46.060 --> 25:46.600] This... [25:46.600 --> 25:47.980] This chip is kind of crazy. [25:48.480 --> 25:49.400] Do I have it here? [25:49.580 --> 25:50.040] Well... [25:50.040 --> 25:50.280] Whatever. [25:52.720 --> 25:53.660] So there are... [25:53.660 --> 25:55.300] There are other models in this family. [25:55.560 --> 25:56.080] Uh... [25:56.080 --> 25:56.940] The one that I bought... [25:56.940 --> 25:57.980] Has some like... [25:57.980 --> 25:58.540] Debug stuff. [25:58.880 --> 25:59.900] Some diagnostics. [26:00.120 --> 26:01.800] It can handle up to four inputs. [26:02.940 --> 26:03.480] Uh... [26:03.480 --> 26:04.180] I don't need that. [26:04.420 --> 26:04.960] But... [26:05.820 --> 26:06.360] Um... [26:06.360 --> 26:07.260] So... [26:07.260 --> 26:07.780] The... [26:08.280 --> 26:08.640] Uh... [26:08.640 --> 26:09.480] The problem with this... [26:09.480 --> 26:10.820] It's a 1.8 volt... [26:10.820 --> 26:11.080] Uh... [26:11.080 --> 26:12.560] Complementary mineral oxide semiconductor. [26:13.060 --> 26:13.600] This... [26:13.600 --> 26:15.520] Lead frame chip scale package. [26:16.380 --> 26:16.920] As... [26:16.920 --> 26:17.680] As we see... [26:17.680 --> 26:18.620] It's this big. [26:18.740 --> 26:19.340] Five millimeters. [26:20.280 --> 26:21.160] 32 contacts. [26:21.640 --> 26:23.020] I guess 33 with the... [26:23.020 --> 26:23.820] Ground pad. [26:24.620 --> 26:25.080] Uh... [26:25.080 --> 26:25.600] But... [26:26.820 --> 26:27.340] Um... [26:27.340 --> 26:27.800] You know... [26:27.800 --> 26:27.860] It's... [26:27.860 --> 26:28.600] It's fairly cheap. [26:28.740 --> 26:29.100] You can... [26:29.100 --> 26:29.360] You know... [26:29.360 --> 26:29.920] You can do that. [26:30.300 --> 26:31.780] And it is literally... [26:31.780 --> 26:32.900] If you get the right one... [26:32.900 --> 26:34.220] It's 10 to 15 bucks. [26:36.180 --> 26:36.700] Uh... [26:37.300 --> 26:37.820] So... [26:37.820 --> 26:38.400] Uh... [26:38.400 --> 26:39.280] If you really need to... [26:39.280 --> 26:40.720] You can probably fabricate this yourself. [26:41.040 --> 26:41.560] But... [26:41.560 --> 26:43.400] Proto Advantage sells this thing. [26:44.160 --> 26:44.680] So... [26:44.680 --> 26:45.200] Uh... [26:45.200 --> 26:45.880] If you need it... [26:45.880 --> 26:46.920] They'll even order it... [26:46.920 --> 26:47.620] And solder it for you. [26:47.720 --> 26:49.940] I was very happy for someone else to do that... [26:50.460 --> 26:51.440] The first time. [26:53.400 --> 26:53.920] Um... [26:53.920 --> 26:54.480] This... [26:55.240 --> 26:55.760] Uh... [26:55.760 --> 26:57.080] This crystal frequency seems... [26:57.720 --> 26:58.200] Oddly specific. [26:58.500 --> 26:59.620] It is a multiple of... [26:59.620 --> 27:00.660] I believe the... [27:00.660 --> 27:01.800] NTSC color bursts. [27:02.420 --> 27:02.820] Uh... [27:02.820 --> 27:04.700] And then internally the chip is clocked... [27:04.700 --> 27:06.800] To sample at double that rate anyway. [27:07.420 --> 27:07.680] Uh... [27:07.680 --> 27:08.640] Or maybe even more. [27:09.680 --> 27:10.200] Uh... [27:10.200 --> 27:11.120] The problem though... [27:11.560 --> 27:11.920] There's... [27:11.920 --> 27:12.680] 32 contacts. [27:13.420 --> 27:13.780] But... [27:13.780 --> 27:14.060] Uh... [27:14.060 --> 27:14.860] We have a... [27:14.860 --> 27:15.420] Line lock clock. [27:15.640 --> 27:16.640] That tells you when data is ready. [27:16.820 --> 27:18.760] And then it expects you to be reading off... [27:18.760 --> 27:20.040] A byte at a time. [27:20.720 --> 27:21.080] At... [27:21.080 --> 27:21.680] 27 megahertz. [27:21.860 --> 27:22.280] Give or take. [27:22.420 --> 27:23.120] Depending on... [27:23.120 --> 27:24.440] How bad the source is. [27:24.540 --> 27:25.200] And things like that. [27:25.940 --> 27:26.660] You need... [27:26.660 --> 27:26.980] You know... [27:26.980 --> 27:27.960] Two for the I squared C. [27:28.240 --> 27:29.180] You need one for the reset. [27:29.820 --> 27:30.120] Uh... [27:30.120 --> 27:31.340] You might need one for the power down. [27:31.480 --> 27:32.500] There's an alternate... [27:32.500 --> 27:33.340] Power up sequence. [27:34.100 --> 27:36.000] And I still want to have an infrared remote. [27:36.760 --> 27:37.120] Uh... [27:37.120 --> 27:38.480] Just so I can automate things more. [27:39.600 --> 27:40.120] Uh... [27:40.780 --> 27:41.300] So... [27:41.300 --> 27:43.140] Right now things are looking kind of bleak. [27:43.540 --> 27:44.000] The... [27:44.000 --> 27:46.300] The ESP32 will not read that fast enough. [27:47.020 --> 27:47.320] Uh... [27:47.320 --> 27:48.860] Raspberry Pi won't read that fast enough. [27:49.320 --> 27:49.760] Uh... [27:49.760 --> 27:51.120] You may even run out of... [27:51.120 --> 27:52.380] General purpose I.O. [27:52.520 --> 27:53.260] On the Raspberry Pi. [27:55.060 --> 27:55.580] Uh... [27:55.580 --> 27:56.000] But... [27:56.000 --> 27:56.600] The other thing... [27:56.600 --> 27:58.340] Because it's in this ITU... [27:58.340 --> 27:58.560] Uh... [27:58.560 --> 27:59.960] BT is broadcast television. [28:00.800 --> 28:01.740] 656 format. [28:02.820 --> 28:03.340] Uh... [28:03.340 --> 28:04.080] You... [28:04.080 --> 28:05.860] You'll basically be reading an entire frame. [28:06.100 --> 28:07.200] You get the start of video. [28:07.840 --> 28:08.280] Uh... [28:08.280 --> 28:08.920] You get the... [28:08.920 --> 28:10.480] The end of active video. [28:10.780 --> 28:13.040] And then the caption data is called ancillary. [28:13.180 --> 28:14.140] It's in this other format. [28:14.440 --> 28:14.880] 1364. [28:15.880 --> 28:16.020] Uh... [28:16.020 --> 28:17.220] And it's sent in between the two. [28:17.560 --> 28:18.960] So you have to read all the data. [28:19.420 --> 28:20.620] Throw away most of it. [28:20.820 --> 28:21.660] And then... [28:21.660 --> 28:22.500] Get it out. [28:22.720 --> 28:25.840] Before you get to the next frame to have more data come in. [28:26.860 --> 28:27.300] Um... [28:27.300 --> 28:27.840] So... [28:28.660 --> 28:29.220] Uh... [28:29.220 --> 28:29.380] It... [28:29.380 --> 28:29.600] It... [28:29.600 --> 28:30.520] It kind of sucked at this point. [28:30.640 --> 28:30.900] And this... [28:30.900 --> 28:32.940] This project sat for maybe like... [28:32.940 --> 28:34.180] Two and a half months. [28:35.140 --> 28:35.700] But... [28:36.140 --> 28:36.420] Um... [28:37.480 --> 28:38.900] So here's a little aside. [28:39.700 --> 28:40.040] The... [28:40.040 --> 28:41.080] Uh... [28:41.080 --> 28:42.140] I don't know. [28:42.420 --> 28:42.640] The... [28:42.640 --> 28:43.040] The... [28:43.040 --> 28:44.600] The AI is not helping. [28:46.340 --> 28:46.900] Um... [28:46.900 --> 28:48.460] Aside from being incredibly... [28:48.460 --> 28:49.220] Energy intensive. [28:50.920 --> 28:51.360] Uh... [28:51.360 --> 28:52.260] So I've... [28:52.260 --> 28:54.060] I've named them Brad, Chad, and Jimmy. [28:55.580 --> 28:56.020] Um... [28:56.020 --> 28:58.640] If you think about it, you'll probably figure out who those are. [28:58.960 --> 28:59.400] Uh... [28:59.400 --> 29:00.140] But, you know, I... [29:00.140 --> 29:00.700] I asked. [29:01.320 --> 29:02.020] And, uh... [29:02.020 --> 29:03.100] Google Bard gave me. [29:03.640 --> 29:04.760] You know, it looked great. [29:05.120 --> 29:05.540] It was... [29:05.540 --> 29:06.680] It was confidently wrong. [29:07.940 --> 29:08.380] Uh... [29:08.380 --> 29:12.440] You know, there is no Linux support for the breakout boards or the, uh... [29:12.440 --> 29:13.580] For the evaluation boards. [29:13.860 --> 29:15.140] There are no shell scripts. [29:15.280 --> 29:16.000] It runs on Windows. [29:16.680 --> 29:17.400] It just... [29:17.400 --> 29:18.320] It was not... [29:18.320 --> 29:18.860] Um... [29:18.860 --> 29:19.540] This was not good. [29:19.800 --> 29:21.120] This was not helpful at all. [29:22.440 --> 29:22.820] Um... [29:22.820 --> 29:26.440] And I'm sure someone will say, like, oh, well, you can use a resource augmented generation or whatever. [29:26.580 --> 29:26.740] I... [29:26.740 --> 29:26.980] No. [29:27.100 --> 29:27.380] It's... [29:27.380 --> 29:27.700] It's fine. [29:27.820 --> 29:29.260] I can read the documentation myself. [29:30.920 --> 29:31.300] Um... [29:31.300 --> 29:31.940] And this is... [29:31.940 --> 29:34.160] This is sort of, you know... [29:34.580 --> 29:34.960] When... [29:34.960 --> 29:37.100] When you sort of think about things a little bit too much. [29:37.360 --> 29:38.480] But, uh... [29:38.480 --> 29:38.980] Here is... [29:38.980 --> 29:40.120] Here is the wonderful world. [29:40.380 --> 29:41.300] Word artifice. [29:41.820 --> 29:43.600] Which we don't usually use that much anymore. [29:43.800 --> 29:44.900] But everything... [29:44.900 --> 29:45.480] You know... [29:45.480 --> 29:46.760] You call everything artificial. [29:47.480 --> 29:47.920] Sweeteners. [29:48.300 --> 29:48.740] Intelligence. [29:48.920 --> 29:49.140] Et cetera. [29:50.340 --> 29:50.780] Uh... [29:50.780 --> 29:51.360] You know... [29:51.360 --> 29:51.620] You... [29:51.620 --> 29:53.180] You are the one who is the intelligence. [29:53.520 --> 29:54.760] You get to ask the questions. [29:54.940 --> 29:55.880] You get to use the tool. [29:56.320 --> 29:57.740] The tool should not use you. [29:57.980 --> 29:58.380] Hopefully. [30:16.300 --> 30:16.740] Uh... [30:16.740 --> 30:17.100] That's a large word. [30:18.060 --> 30:18.380] But... [30:19.860 --> 30:20.500] Um... [30:20.500 --> 30:20.920] You know... [30:20.920 --> 30:21.580] Just don't... [30:21.580 --> 30:22.040] Don't... [30:23.880 --> 30:24.520] Don't... [30:24.520 --> 30:24.600] Don't... [30:24.600 --> 30:26.240] Don't put too much into it. [30:26.680 --> 30:27.320] I'm not... [30:27.320 --> 30:28.640] I'm not ruling out... [30:28.640 --> 30:29.460] You know... [30:29.460 --> 30:30.760] Machine spirituality. [30:31.460 --> 30:31.800] But... [30:31.800 --> 30:34.320] I would have to have an experience for... [30:34.320 --> 30:35.120] To convince me. [30:35.760 --> 30:36.400] Like... [30:36.400 --> 30:37.120] Don't... [30:37.120 --> 30:37.400] Don't... [30:37.400 --> 30:38.440] Don't put it too far. [30:39.460 --> 30:39.780] But... [30:43.020 --> 30:43.880] You know... [30:43.880 --> 30:44.760] Then I feel like... [30:44.760 --> 30:45.780] I feel like this is one of those... [30:45.780 --> 30:47.100] Those bell curve memes. [30:47.540 --> 30:47.940] But... [30:47.940 --> 30:49.020] You know... [30:49.020 --> 30:49.560] All... [30:49.560 --> 30:50.860] All storytelling is... [30:50.860 --> 30:51.760] Is distillation. [30:51.940 --> 30:52.840] And relaying of information. [30:53.240 --> 30:53.620] And you know... [30:53.620 --> 30:55.480] You have emotional responses to things. [30:56.220 --> 30:56.620] And... [30:57.780 --> 30:58.180] Uh... [30:58.180 --> 30:58.680] So... [30:58.680 --> 30:58.940] You know... [30:58.940 --> 30:59.160] Like... [30:59.160 --> 31:00.440] Storytelling and narrative. [31:00.540 --> 31:01.540] That's what we do as humans. [31:01.640 --> 31:02.860] That's how we make sense of the world. [31:02.860 --> 31:03.860] So... [31:03.860 --> 31:04.540] I think I'm so... [31:04.540 --> 31:06.020] So clever here... [31:06.020 --> 31:06.780] Crapping on AI. [31:07.260 --> 31:07.900] But... [31:07.900 --> 31:09.160] We kind of do it... [31:09.160 --> 31:10.040] Ourselves... [31:10.040 --> 31:10.520] Anyway... [31:10.520 --> 31:10.940] All the time. [31:12.200 --> 31:12.840] So... [31:12.840 --> 31:13.960] Anyway... [31:13.960 --> 31:15.320] So moving forward... [31:15.320 --> 31:15.800] At... [31:15.800 --> 31:16.220] Uh... [31:16.760 --> 31:17.080] The... [31:17.080 --> 31:18.660] Expensive possible failure. [31:19.000 --> 31:19.640] But... [31:19.640 --> 31:20.440] Um... [31:21.100 --> 31:21.740] I... [31:21.740 --> 31:23.560] I started assembling the components... [31:23.560 --> 31:25.060] For this board. [31:26.220 --> 31:26.860] Uh... [31:27.840 --> 31:28.160] It's... [31:28.480 --> 31:28.700] It's... [31:28.700 --> 31:30.840] It's a little bit frightening when you have fractions of millimeters. [31:31.500 --> 31:32.060] But... [31:32.060 --> 31:34.260] This is a 3.2 by 2.5. [31:34.400 --> 31:35.580] It's a standard size... [31:35.580 --> 31:36.300] For crystals. [31:37.160 --> 31:37.640] Uh... [31:37.640 --> 31:38.480] So of course... [31:38.480 --> 31:38.760] In... [31:38.760 --> 31:39.680] In Imperial... [31:39.680 --> 31:40.160] It is... [31:40.160 --> 31:41.440] The footprint is called 1210. [31:42.060 --> 31:42.620] That's... [31:42.620 --> 31:43.380] Thousands of inches. [31:43.660 --> 31:43.900] But... [31:43.900 --> 31:46.260] Doesn't mean anything if you've memorized... [31:46.260 --> 31:47.340] 3.2 by 2.5. [31:47.540 --> 31:47.840] So... [31:47.840 --> 31:48.620] In metric, it's easy. [31:48.700 --> 31:49.360] It's 3225. [31:49.800 --> 31:50.360] Uh... [31:50.360 --> 31:50.920] I think... [31:51.880 --> 31:53.920] 0604 exists in both... [31:53.920 --> 31:55.220] Imperial and metric. [31:55.460 --> 31:56.540] And they're not the same size. [31:56.900 --> 31:58.040] So that's exciting. [31:59.500 --> 32:00.060] Um... [32:00.060 --> 32:00.580] And yes... [32:00.580 --> 32:00.900] That's... [32:00.900 --> 32:01.200] I don't know. [32:01.280 --> 32:02.620] Does anyone know how big a penny is? [32:02.720 --> 32:04.140] But that's how big the crystals are. [32:05.040 --> 32:06.380] We don't use pennies. [32:06.520 --> 32:06.820] So... [32:07.480 --> 32:08.880] Support your local hackerspace. [32:09.380 --> 32:11.480] If you don't have one, you can support ours. [32:11.720 --> 32:12.100] But... [32:12.880 --> 32:13.280] Um... [32:13.280 --> 32:13.980] It was... [32:13.980 --> 32:17.380] It was very satisfying to put the crystals on this breakout board. [32:17.380 --> 32:17.980] I... [32:17.980 --> 32:21.860] I carefully applied the solder paste and then watched it melt all over. [32:22.980 --> 32:23.500] But... [32:23.500 --> 32:28.420] Once it gets to the right temperature, it just kind of wicks itself onto the footprints and things align themselves. [32:28.600 --> 32:29.480] It's very satisfying. [32:29.760 --> 32:30.040] But... [32:30.040 --> 32:32.220] I probably shouldn't do it just for... [32:32.220 --> 32:34.120] Just for the fun of watching it. [32:34.660 --> 32:35.180] But... [32:46.840 --> 32:47.360] Um... [32:47.360 --> 32:49.820] It was melting metal with a battery pack that I carry with me. [32:50.920 --> 32:51.400] Uh... [32:51.400 --> 32:52.280] So... [32:53.140 --> 32:53.620] Finally... [32:53.620 --> 32:54.240] Here... [32:54.240 --> 32:57.280] Here is this madness that... [32:57.280 --> 32:58.320] Last week did not exist. [32:58.480 --> 32:58.980] Did not work. [32:59.760 --> 33:00.240] Uh... [33:00.240 --> 33:02.480] I am very glad it did not blow up. [33:16.860 --> 33:17.340] Uh... [33:17.340 --> 33:18.460] It's running MicroPython. [33:19.480 --> 33:20.000] Uh... [33:20.000 --> 33:23.740] I did put the infrared LED on there just because I wanted it. [33:24.140 --> 33:24.480] Uh... [33:24.480 --> 33:25.120] It does not work. [33:25.300 --> 33:27.520] Getting that working is more complicated than I thought. [33:28.080 --> 33:28.600] Uh... [33:28.600 --> 33:29.060] And... [33:29.060 --> 33:30.440] You know... [33:30.440 --> 33:33.580] Package management hell just sort of infects everything. [33:33.980 --> 33:34.680] I guess it's... [33:34.680 --> 33:35.020] It's... [33:35.020 --> 33:35.760] It's only slightly... [33:36.340 --> 33:38.320] Less terrible than handling everything yourself. [33:38.720 --> 33:39.000] But... [33:39.000 --> 33:39.500] Um... [33:39.500 --> 33:41.320] I did put two voltage regulators on here. [33:41.560 --> 33:43.020] I didn't connect the second one. [33:44.140 --> 33:44.660] Uh... [33:44.660 --> 33:45.240] And... [33:45.240 --> 33:46.560] It's good to read the documentation. [33:46.560 --> 33:47.280] The... [33:47.280 --> 33:48.280] The level shifter. [33:48.500 --> 33:50.400] The low side is... [33:51.400 --> 33:52.940] The low side is A. [33:53.180 --> 33:54.500] The high side is B. [33:54.620 --> 33:57.860] Because usually people are stepping up with the microcontrollers. [33:57.980 --> 33:59.000] But in this case... [33:59.000 --> 34:01.560] Because it's a 1.8 volt CMOS... [34:02.460 --> 34:03.000] Uh... [34:03.000 --> 34:03.960] I needed to step down. [34:04.160 --> 34:05.640] So I almost blew it up that way too. [34:06.680 --> 34:07.240] Um... [34:07.240 --> 34:07.520] Right? [34:07.760 --> 34:08.420] And the... [34:08.420 --> 34:11.120] The output enable is underneath the board. [34:12.060 --> 34:12.620] Uh... [34:13.400 --> 34:13.960] But... [34:13.960 --> 34:14.500] Uh... [34:14.500 --> 34:15.580] So those last... [34:15.580 --> 34:16.420] Those four... [34:17.240 --> 34:17.760] Um... [34:17.760 --> 34:19.320] Those four wires that are covering it. [34:19.700 --> 34:21.100] I'm not gonna do a Picard impression. [34:22.080 --> 34:23.120] Those are... [34:23.120 --> 34:24.280] The only ones that I need. [34:24.920 --> 34:26.280] One of them is the... [34:26.280 --> 34:26.720] Uh... [34:26.720 --> 34:26.900] Right? [34:27.220 --> 34:28.720] So it's 2 I2C. [34:28.920 --> 34:29.240] The... [34:29.240 --> 34:30.020] The data and the clock. [34:31.080 --> 34:31.600] The... [34:33.400 --> 34:33.920] Um... [34:33.920 --> 34:34.180] Uh... [34:34.180 --> 34:34.720] The address. [34:34.880 --> 34:36.280] Least significant bit. [34:36.540 --> 34:38.120] And that will shift your address. [34:38.480 --> 34:39.000] Uh... [34:39.540 --> 34:39.800] And... [34:39.800 --> 34:40.080] Uh... [34:40.080 --> 34:40.740] For your I2C. [34:41.100 --> 34:41.540] And... [34:41.540 --> 34:42.220] For other things. [34:42.660 --> 34:42.960] Uh... [34:42.960 --> 34:44.100] Like user maps and whatever. [34:44.840 --> 34:45.660] And then the... [34:45.660 --> 34:45.960] Uh... [34:45.960 --> 34:46.420] The reset. [34:46.640 --> 34:48.280] I could not find out how to do an over bar. [34:48.600 --> 34:49.380] So that is the... [34:49.380 --> 34:50.660] The inverted reset. [34:51.100 --> 34:51.520] And... [34:51.520 --> 34:52.040] Uh... [34:52.040 --> 34:53.880] Basically you can power everything up. [34:55.200 --> 34:55.640] To... [34:55.640 --> 34:55.900] Uh... [34:55.900 --> 34:56.460] 1.8. [34:56.640 --> 34:57.880] And then the last thing you wait. [34:58.140 --> 34:59.060] And then you hit the reset. [34:59.520 --> 35:00.120] And then you wait. [35:00.580 --> 35:01.020] Another... [35:01.020 --> 35:02.240] 5-10 milliseconds. [35:02.640 --> 35:04.340] And then you can start your I2C. [35:05.080 --> 35:05.520] Uh... [35:05.520 --> 35:06.440] And then here at the bottom. [35:06.440 --> 35:07.240] Um... [35:07.240 --> 35:08.400] I guess one thing that I forgot. [35:08.680 --> 35:09.560] There is a uh... [35:09.560 --> 35:10.340] A nice calculator. [35:10.740 --> 35:12.540] To tell you what kind of uh... [35:13.120 --> 35:13.620] Uh... [35:13.620 --> 35:14.460] What kind of resistor. [35:14.780 --> 35:15.920] It's a damping resistor. [35:16.660 --> 35:17.120] Uh... [35:17.120 --> 35:19.500] And what kind of capacitors to use. [35:19.760 --> 35:21.120] On the crystal. [35:21.700 --> 35:22.200] But... [35:23.560 --> 35:24.060] Uh... [35:24.060 --> 35:24.620] It works. [35:24.880 --> 35:25.160] I... [35:25.160 --> 35:26.220] I stressed out over it. [35:26.340 --> 35:26.920] But it works. [35:28.280 --> 35:28.780] Um... [35:28.780 --> 35:30.480] And that's just connected to the two pins. [35:30.860 --> 35:31.340] The uh... [35:31.340 --> 35:32.000] The crystal positive. [35:32.140 --> 35:32.620] Crystal negative. [35:35.920 --> 35:36.420] Um... [35:36.420 --> 35:37.100] The rightmost. [35:37.200 --> 35:40.100] That is actually getting your video signal in. [35:40.220 --> 35:42.160] There's a capacitor on there to get rid of DC bias. [35:42.580 --> 35:46.800] And the two resistors there are about 75 ohms. [35:47.040 --> 35:49.920] To match, I believe, the impedance of the video signal. [35:51.260 --> 35:51.740] Um... [35:51.740 --> 35:54.900] I would not have been able to do that without the instructions that are in the datasheet. [35:55.480 --> 35:55.960] But... [35:55.960 --> 35:56.220] Uh... [35:56.220 --> 35:56.700] So... [35:56.700 --> 35:57.860] It's amazing. [35:57.980 --> 35:58.360] It works. [35:58.660 --> 35:58.820] It... [35:58.820 --> 36:00.020] It did not blow up. [36:05.920 --> 36:06.400] Um... [36:07.140 --> 36:07.540] And... [36:07.540 --> 36:09.220] And I have this little debug connector. [36:10.040 --> 36:10.440] Uh... [36:10.440 --> 36:10.980] So... [36:11.700 --> 36:13.800] This at least lets me watch the video that's coming in. [36:14.320 --> 36:14.520] Uh... [36:14.520 --> 36:15.000] Although... [36:15.000 --> 36:16.540] If you're gonna be... [36:17.280 --> 36:17.680] Um... [36:17.680 --> 36:18.660] Capturing it, you... [36:18.660 --> 36:19.100] You... [36:19.100 --> 36:20.960] You'd probably want to use... [36:21.440 --> 36:21.840] Um... [36:21.840 --> 36:23.260] The composite for this one. [36:23.400 --> 36:27.020] And if it has an S video out, use that to capture the video signal for better quality. [36:28.440 --> 36:28.840] Um... [36:29.420 --> 36:29.940] So... [36:30.560 --> 36:31.400] Here's the... [36:31.400 --> 36:33.600] Here's all the I2C registers... [36:33.600 --> 36:34.600] Uh... [36:34.600 --> 36:37.280] To pull out the vertical blanking data. [36:39.100 --> 36:39.620] Uh... [36:39.620 --> 36:40.820] And it's kind of a mess. [36:41.000 --> 36:42.160] But it does this for you. [36:42.340 --> 36:44.020] Like, it'll also do... [36:44.020 --> 36:44.240] Uh... [36:44.240 --> 36:44.740] It'll... [36:44.740 --> 36:50.180] The chip will do NTSC, PAL, CCAM, various, you know, color burst frequencies. [36:50.580 --> 36:53.160] It has widescreen signaling detection. [36:53.160 --> 36:55.180] It has, uh... [36:55.180 --> 36:55.700] MacroVision. [36:55.900 --> 36:56.660] Now Rovi. [36:56.920 --> 36:58.880] Now probably another company that bought it. [36:59.400 --> 36:59.800] Um... [36:59.800 --> 37:00.520] It will detect it. [37:00.580 --> 37:01.600] It will not remove it for you. [37:01.760 --> 37:02.740] But, you know, you can just... [37:02.740 --> 37:03.620] You can just ignore it. [37:03.720 --> 37:04.100] It's great. [37:05.340 --> 37:05.740] Um... [37:05.740 --> 37:06.520] And this is... [37:06.520 --> 37:08.920] This is one of several pages of all of the different... [37:08.920 --> 37:10.700] It has a built-in de-interlacer. [37:10.900 --> 37:11.980] If you wanted to do that. [37:12.080 --> 37:14.460] Which would make sense if you're connecting it to an LCD screen. [37:14.880 --> 37:15.280] So... [37:15.280 --> 37:16.520] Thing that I sort of skipped over. [37:16.640 --> 37:18.320] These chips are... [37:18.320 --> 37:21.800] They were mostly designed for things like automotive entertainment systems. [37:21.800 --> 37:23.880] Which, you know, I think... [37:23.880 --> 37:25.560] Even though this is a revision A of the chip. [37:26.100 --> 37:28.920] They pretty much stopped developing it in 2008. [37:29.440 --> 37:32.480] Because, you know, the analog signal is on the way out. [37:32.700 --> 37:33.140] Uh... [37:33.140 --> 37:34.860] So here you have another thing that... [37:34.860 --> 37:35.060] Like... [37:35.060 --> 37:36.460] Like my VCR from 2004. [37:36.760 --> 37:37.280] It's the... [37:38.080 --> 37:38.600] Uh... [37:38.600 --> 37:38.760] The... [37:38.760 --> 37:40.080] The peak of technology. [37:40.520 --> 37:42.680] Right before it is never used again. [37:44.040 --> 37:44.560] But... [37:45.260 --> 37:45.780] Uh... [37:45.780 --> 37:46.240] So... [37:46.240 --> 37:46.700] Surprisingly. [37:47.020 --> 37:48.180] Although maybe not surprisingly. [37:48.400 --> 37:49.760] Considering I just... [37:49.760 --> 37:50.440] Did a... [37:50.440 --> 37:51.120] You know... [37:51.120 --> 37:52.320] I did a... [37:52.320 --> 37:53.000] Dive into... [37:53.000 --> 37:54.220] This tiny chip. [37:54.660 --> 37:55.380] To get... [37:55.380 --> 37:55.660] You know... [37:55.660 --> 37:57.000] Very small pieces of data out. [37:57.300 --> 37:57.740] But... [37:57.740 --> 37:59.040] Of an obsolete media format. [37:59.760 --> 37:59.980] Uh... [37:59.980 --> 38:00.680] But... [38:00.680 --> 38:01.080] Uh... [38:01.080 --> 38:01.260] The... [38:01.260 --> 38:04.420] The Wikipedia page will tell you how to decode all of the captions. [38:04.960 --> 38:05.240] Uh... [38:05.240 --> 38:06.340] It'll give you your... [38:06.340 --> 38:06.880] Your positions. [38:07.060 --> 38:07.460] Your colors. [38:07.680 --> 38:08.340] Cursor movement. [38:09.140 --> 38:09.540] Uh... [38:09.540 --> 38:11.980] Whether you're gonna roll up one, two, or three lines. [38:12.400 --> 38:13.340] Blank the whole thing. [38:14.080 --> 38:15.400] One picture that I forgot. [38:15.600 --> 38:16.240] Now that I realize. [38:16.680 --> 38:17.160] Uh... [38:17.160 --> 38:18.120] You can have... [38:18.120 --> 38:18.660] More than... [38:18.660 --> 38:18.860] You know... [38:18.860 --> 38:19.480] One position. [38:19.860 --> 38:21.860] So I have a great shot of mad TV. [38:22.180 --> 38:22.720] And they just have... [38:22.720 --> 38:24.240] It says mad in two different places. [38:25.440 --> 38:25.920] Uh... [38:25.920 --> 38:26.460] But... [38:27.280 --> 38:27.760] Uh... [38:27.760 --> 38:29.880] Considering how long this took to put together. [38:31.100 --> 38:31.580] Um... [38:31.580 --> 38:32.880] Making slides is very tedious. [38:33.960 --> 38:34.440] But... [38:34.440 --> 38:34.820] Uh... [38:34.820 --> 38:35.280] So... [38:35.280 --> 38:37.220] There are multiple ways to get your IR codes. [38:37.620 --> 38:37.880] Uh... [38:37.880 --> 38:39.800] They usually are in some sort of family. [38:40.280 --> 38:40.760] Of... [38:42.080 --> 38:42.560] Uh... [38:42.560 --> 38:42.800] Um... [38:42.800 --> 38:43.820] You know... [38:43.820 --> 38:44.740] Signal modulation. [38:45.360 --> 38:45.700] Uh... [38:45.700 --> 38:46.740] You can use a flipper. [38:46.960 --> 38:48.400] It has send and... [38:48.980 --> 38:49.460] Uh... [38:49.460 --> 38:50.080] Send and receive. [38:50.840 --> 38:51.320] Uh... [38:51.320 --> 38:53.040] And if you're using the command line interface. [38:53.040 --> 38:54.420] It'll tell you what it is right there. [38:56.080 --> 38:56.560] Uh... [38:56.560 --> 38:59.960] The Linux infrared command module thing. [39:00.180 --> 39:01.160] Is in the kernel now. [39:01.300 --> 39:02.800] So you can start it with a... [39:02.800 --> 39:03.080] Uh... [39:03.080 --> 39:03.760] A kernel parameter. [39:04.020 --> 39:05.540] I think I mentioned that in my last talk. [39:05.720 --> 39:06.160] Which... [39:06.660 --> 39:08.280] Now that I'm talking about my last talk. [39:08.280 --> 39:09.940] The best part was when I went off script. [39:10.160 --> 39:11.240] Because someone asked a question. [39:11.840 --> 39:13.260] You have to try not to... [39:13.260 --> 39:13.740] You know... [39:13.740 --> 39:14.720] Get locked into... [39:14.720 --> 39:15.760] Oh, I'm making a presentation. [39:15.760 --> 39:16.800] I must be boring. [39:17.160 --> 39:18.280] Somebody asked a question. [39:18.400 --> 39:19.580] I sort of broke out of that. [39:20.660 --> 39:21.100] But... [39:21.580 --> 39:22.020] Um... [39:22.020 --> 39:23.620] I'm sure there's a term for that in acting. [39:24.160 --> 39:24.600] But... [39:24.600 --> 39:25.240] I don't... [39:25.240 --> 39:28.220] I don't have enough intuition for acting to do that. [39:28.580 --> 39:28.880] Um... [39:28.880 --> 39:30.420] There's also a component tester. [39:30.840 --> 39:33.440] That for whatever reason they put an infrared LED on it. [39:33.680 --> 39:33.920] Uh... [39:33.920 --> 39:34.880] It tells you your... [39:34.880 --> 39:35.660] You know... [39:35.660 --> 39:36.540] Capacitors... [39:36.540 --> 39:37.420] Resistors... [39:37.420 --> 39:38.800] What kind of transistors you have. [39:39.240 --> 39:39.460] Uh... [39:39.460 --> 39:40.680] And the measurements there are... [39:40.680 --> 39:40.980] You know... [39:40.980 --> 39:41.700] For each of them. [39:41.940 --> 39:43.180] And there are some online databases. [39:43.440 --> 39:43.920] Although... [39:44.420 --> 39:44.900] I... [39:44.900 --> 39:46.540] I can't always find them again. [39:46.660 --> 39:47.540] Which is a little bit strange. [39:48.940 --> 39:49.420] Uh... [39:49.980 --> 39:50.460] So... [39:50.460 --> 39:52.440] Still working on basically everything. [39:53.240 --> 39:53.720] But... [39:53.720 --> 39:54.100] Uh... [39:54.100 --> 39:54.660] It works. [39:54.760 --> 39:55.460] It powers on. [39:55.560 --> 39:56.560] It gives me data back. [39:57.300 --> 39:57.780] Um... [39:57.780 --> 39:58.840] It is a little bit clunky. [39:58.840 --> 40:00.120] This is why we write the program. [40:00.540 --> 40:01.000] Uh... [40:01.000 --> 40:01.840] And then the question is... [40:02.460 --> 40:04.580] Once you have the caption data off the... [40:04.580 --> 40:05.140] The tape. [40:05.780 --> 40:05.920] Uh... [40:05.920 --> 40:06.520] You know... [40:06.520 --> 40:08.080] Reading everything at the same time. [40:08.580 --> 40:08.840] Uh... [40:08.840 --> 40:11.580] What's the right format for you to be transporting it? [40:11.660 --> 40:15.060] I'm thinking I might just do everything in hex and have it parsed on the computer. [40:15.420 --> 40:15.820] But... [40:16.540 --> 40:17.000] Uh... [40:17.000 --> 40:19.060] ESP32 can probably do a lot of stuff. [40:21.060 --> 40:21.520] Um... [40:22.400 --> 40:23.200] And yeah. [40:23.380 --> 40:23.960] Like there's... [40:23.960 --> 40:24.480] There's... [40:24.480 --> 40:25.420] This is like... [40:25.420 --> 40:26.000] A play. [40:26.340 --> 40:27.080] Or a program. [40:27.320 --> 40:28.100] It is... [40:28.100 --> 40:28.660] Never completed. [40:28.860 --> 40:29.360] But it is... [40:29.360 --> 40:29.640] You know... [40:29.640 --> 40:30.420] Occasionally abandoned. [40:32.260 --> 40:32.900] Uh... [40:32.900 --> 40:33.480] So... [40:33.480 --> 40:35.660] Another thought that I had... [40:35.660 --> 40:36.680] The TV... [40:36.680 --> 40:38.520] Is an Android TV. [40:38.880 --> 40:39.980] It has an analog input. [40:40.340 --> 40:42.220] Everything else on there is Android. [40:42.620 --> 40:44.480] The live TV app is Android. [40:45.180 --> 40:45.500] It's... [40:45.500 --> 40:47.440] It's decoding from HDMI... [40:47.440 --> 40:48.560] From uh... [40:48.560 --> 40:48.840] You know... [40:48.840 --> 40:50.520] HDTV signals off the antenna. [40:51.220 --> 40:54.040] And the same app is doing the analog decoding. [40:54.740 --> 40:55.260] So... [40:55.260 --> 40:56.040] Why not? [40:56.480 --> 40:57.000] Just... [40:57.000 --> 40:58.760] Buy your cheapest Android TV. [40:59.540 --> 41:01.300] Pull the APK off. [41:01.480 --> 41:02.860] Or find out what chip it is. [41:03.120 --> 41:04.360] And write something yourself. [41:07.160 --> 41:07.680] Uh... [41:07.680 --> 41:08.040] Yes. [41:08.160 --> 41:08.620] That is it. [41:08.740 --> 41:09.380] That's the end. [41:15.300 --> 41:16.160] So this was... [41:16.160 --> 41:17.140] This was many... [41:17.140 --> 41:18.160] Many sleepless nights. [41:18.360 --> 41:18.780] Cause I... [41:18.780 --> 41:19.140] You know... [41:19.140 --> 41:21.060] I had some success with the I2C. [41:21.580 --> 41:22.100] Uh... [41:22.100 --> 41:22.480] So I'm like... [41:22.480 --> 41:22.660] Yes. [41:22.660 --> 41:26.120] I'll submit this talk and have faith that things will come together. [41:27.100 --> 41:27.620] But... [41:28.160 --> 41:28.680] Um... [41:28.680 --> 41:29.100] You know... [41:29.100 --> 41:29.220] The... [41:29.220 --> 41:31.240] The great thing is that this... [41:31.240 --> 41:31.780] Uh... [41:31.780 --> 41:32.500] You know... [41:32.500 --> 41:32.820] This... [41:32.820 --> 41:36.160] This seems like a really good starting point for anyone else to... [41:36.160 --> 41:36.440] You know... [41:36.440 --> 41:37.600] You can make your own capture card. [41:37.700 --> 41:41.420] If you find a chip that's good enough to handle the 27 megahertz at once. [41:42.140 --> 41:42.480] Uh... [41:42.480 --> 41:43.020] And... [41:43.020 --> 41:43.820] You know... [41:43.820 --> 41:44.640] Output it to a webcam. [41:44.920 --> 41:46.140] But also have maybe... [41:46.140 --> 41:46.240] Uh... [41:46.240 --> 41:46.500] You know... [41:46.500 --> 41:48.700] A few serial ports show up on the USB device. [41:49.180 --> 41:49.520] Or... [41:49.520 --> 41:49.680] Uh... [41:49.680 --> 41:50.240] Things like that. [41:51.020 --> 41:51.460] So... [41:52.620 --> 41:54.560] Don't remember what my last two slides are. [41:55.100 --> 41:55.540] Okay. [41:55.720 --> 41:56.140] That... [41:56.140 --> 41:57.500] That was a good... [41:57.980 --> 41:58.200] Okay. [41:58.340 --> 41:59.160] It's my to-do's. [41:59.360 --> 41:59.800] Alright. [41:59.940 --> 42:00.120] Good. [42:00.280 --> 42:01.220] I did the to-do's. [42:02.200 --> 42:02.640] Alright. [42:03.280 --> 42:03.720] Yes. [42:04.220 --> 42:06.120] Person I have never met in my life. [42:06.120 --> 42:11.200] Can you get the platform information stored and recorded here? [42:11.640 --> 42:12.120] Uh... [42:12.120 --> 42:12.600] I'm not sure. [42:12.640 --> 42:13.760] It would depend on the broadcast. [42:14.180 --> 42:16.900] But that would be part of the extended data service. [42:17.220 --> 42:17.300] Okay. [42:17.520 --> 42:17.680] Uh... [42:17.680 --> 42:20.740] There are other things that may not be line 21. [42:20.940 --> 42:22.800] They might be somewhere else in the signal. [42:23.440 --> 42:23.920] For... [42:23.920 --> 42:24.620] Uh... [42:24.620 --> 42:26.200] I was just talking to someone who... [42:26.200 --> 42:26.680] Who... [42:27.360 --> 42:27.840] Uh... [42:27.840 --> 42:29.260] I forget what station they were working with. [42:29.380 --> 42:30.880] But they mentioned it was on Betacam. [42:31.280 --> 42:32.380] They mentioned it was beta. [42:33.060 --> 42:35.080] I'm assuming that it was professional beta. [42:35.940 --> 42:36.360] Uh... [42:36.360 --> 42:37.040] And... [42:37.040 --> 42:39.960] From what they could tell me, I'm thinking that it was more like... [42:39.960 --> 42:42.900] Internal stuff that they used for editing and... [42:42.900 --> 42:43.660] And... [42:43.660 --> 42:44.540] Switching stuff internally. [42:44.760 --> 42:45.020] But... [42:45.020 --> 42:45.460] Who knows? [42:45.720 --> 42:48.160] It could have been stuff that was going out over the air. [42:49.840 --> 42:50.260] Um... [42:50.260 --> 42:50.720] Yeah. [42:50.740 --> 42:53.720] I could probably keep talking about interesting things I've seen in the captions. [42:54.140 --> 42:54.560] But... [42:54.560 --> 42:55.060] Like... [42:55.060 --> 42:57.820] There was a news program and it had just... [42:57.820 --> 43:00.520] Literally the teleprompter came out over the captions. [43:00.700 --> 43:02.480] So they had, you know, who was supposed to be reading it. [43:02.480 --> 43:03.140] Uh... [43:03.140 --> 43:04.200] And then they had a... [43:04.700 --> 43:06.720] Package that they had purchased from National ABC. [43:07.060 --> 43:08.900] And so it just kind of stuck that in there. [43:09.460 --> 43:09.820] Um... [43:09.820 --> 43:10.260] Which... [43:10.260 --> 43:13.060] You know, if you're watching the news, you assume that it's all from the same source. [43:13.200 --> 43:14.420] You don't necessarily pay attention. [43:15.240 --> 43:15.600] Uh... [43:15.600 --> 43:16.160] It is... [43:16.160 --> 43:18.360] It is not just people talking to you. [43:18.460 --> 43:20.420] It is scripted from start to end. [43:21.080 --> 43:21.520] And... [43:22.260 --> 43:22.700] But... [43:24.140 --> 43:24.580] Um... [43:24.580 --> 43:24.800] Yeah. [43:25.100 --> 43:25.380] So... [43:25.380 --> 43:25.680] Any... [43:25.680 --> 43:26.280] Any questions? [43:28.140 --> 43:28.580] Yes? [43:29.220 --> 43:29.660] Um... [43:29.660 --> 43:30.620] I'm wondering about the... [43:30.620 --> 43:31.060] The chip. [43:31.440 --> 43:31.880] Uh... [43:31.880 --> 43:32.320] How does it... [43:32.320 --> 43:34.520] How well does it handle, like, bad data signals? [43:34.600 --> 43:35.640] If the signal is broken? [43:35.860 --> 43:36.560] If it's, like... [43:36.980 --> 43:38.680] Got way too much DHS on it? [43:38.840 --> 43:39.560] Like, how does it handle... [43:39.560 --> 43:40.040] I could... [43:40.040 --> 43:41.120] Repeat the question. [43:41.280 --> 43:41.480] Okay. [43:41.640 --> 43:41.980] Yes, yes. [43:42.240 --> 43:45.500] So, basically, how good is the chip when the signal is terrible? [43:46.620 --> 43:47.020] Uh... [43:47.020 --> 43:48.940] Again, because this is sort of the... [43:48.940 --> 43:50.740] The pinnacle of the... [43:50.740 --> 43:51.320] Uh... [43:51.320 --> 43:53.700] Of the engineering of this thing, it will handle... [43:53.700 --> 43:54.160] You know, they call... [43:54.160 --> 43:58.300] I don't know if they call them dirty sources, but, you know, like, weak signals, bad things. [43:58.480 --> 43:59.000] There's also... [43:59.000 --> 44:05.120] There's a free run mode that you can set it in to, like, not do things like adaptive contrast enhancement. [44:05.460 --> 44:06.600] And, like... [44:06.600 --> 44:06.960] Uh... [44:06.960 --> 44:11.500] The reason why the line lock clock does not necessarily run at 27 megahertz, uh... [44:12.400 --> 44:13.200] Is because... [44:13.880 --> 44:16.740] If there's, you know, bad data coming in, it'll try and do... [44:16.740 --> 44:21.140] I don't know if it'll do, like, timecode correction, or time-based correction, but it will try and make... [44:21.140 --> 44:27.220] A good frame for you, so you can put it to, you know, an LCD, you know, display or something. [44:27.880 --> 44:28.280] So... [44:29.460 --> 44:29.860] Uh... [44:29.860 --> 44:30.220] They... [44:30.220 --> 44:36.560] The shorthand is that they're automotive, but that just means, like, it functions between a certain temperature range and, uh... [44:37.360 --> 44:37.620] Yeah. [44:37.620 --> 44:38.240] So... [44:38.240 --> 44:39.220] I mean, you can... [44:39.220 --> 44:39.780] You can... [44:39.780 --> 44:41.700] It's terrible that I remember exactly. [44:41.900 --> 44:42.240] It's the... [44:42.240 --> 44:45.060] The analog devices ADV7282A. [44:45.500 --> 44:45.980] Uh... [44:45.980 --> 44:47.780] And there's others in the same family, but... [44:47.780 --> 44:48.360] Uh... [44:48.360 --> 44:49.400] You can look up the... [44:50.040 --> 44:50.520] Uh... [44:50.520 --> 44:55.060] The spec sheet, and then the other spec sheet that details all the I2C, uh... [44:55.060 --> 44:55.660] Stuff you can do. [44:55.980 --> 44:56.460] So... [44:56.460 --> 44:56.880] Yes? [44:57.180 --> 45:02.960] The Chiron crawl is not anywhere in digital form, am I right? [45:03.060 --> 45:03.860] I'm pretty... [45:03.860 --> 45:05.260] I mean, they might have some signaling. [45:05.260 --> 45:05.780] So the... [45:05.780 --> 45:08.360] The Chiron crawl is usually, uh... [45:08.360 --> 45:09.640] Just part of the video signal. [45:10.040 --> 45:11.720] It is, uh... [45:11.720 --> 45:14.660] It is, you know, broadcast out like anything else. [45:14.840 --> 45:18.800] I don't know what kind of compositing software they would use to do that. [45:19.120 --> 45:19.640] Uh... [45:19.640 --> 45:19.840] Although... [45:19.840 --> 45:21.080] Funny thing, with... [45:21.080 --> 45:21.800] With, uh... [45:21.800 --> 45:29.360] Cheap HDMI adapters and some, you know, OpenCV or other stuff, you can make your own crawling captions. [45:29.360 --> 45:31.600] I remember my, my, uh... [45:31.600 --> 45:33.680] This is even longer ago, but my, uh... [45:33.680 --> 45:35.400] Grandmother's retirement community. [45:35.700 --> 45:37.080] She called it the creeper. [45:37.640 --> 45:42.060] Which might be, you know, vines and not what we would think of today. [45:42.360 --> 45:47.660] But, you know, it just had, you know, crawling information along the bottom and then, uh... [45:47.660 --> 45:51.800] Like, bulletin board type screens come up every few seconds. [45:52.160 --> 45:53.660] But, uh... [45:54.320 --> 45:54.640] I... [45:54.640 --> 45:55.300] I'm not aware. [45:55.480 --> 45:57.420] I don't have that many recordings of news. [45:57.600 --> 46:02.080] But I'm assuming that the Chiron is, is, you know, only video and independent of anything else. [46:03.040 --> 46:03.540] Uh... [46:04.220 --> 46:04.720] But... [46:05.800 --> 46:06.800] Any more questions? [46:09.620 --> 46:10.020] Okay. [46:11.080 --> 46:11.520] Uh... [46:11.520 --> 46:11.920] This... [46:11.920 --> 46:12.120] Yes. [46:12.320 --> 46:12.520] Okay. [46:14.300 --> 46:20.720] What we're doing is capturing the Line 21 data, but this same setup could be used to capture the video data as well. [46:20.860 --> 46:22.820] You could just create a capture device using that. [46:22.820 --> 46:22.860] Yes. [46:22.920 --> 46:24.800] So, this is, this is part of... [46:24.800 --> 46:25.520] So, yes. [46:25.760 --> 46:26.120] Uh... [46:26.120 --> 46:30.200] This chip is, aside from being incredibly small and very low power, um... [46:30.200 --> 46:33.700] You can use it to, you know, build an entire capture card. [46:34.120 --> 46:34.560] Uh... [46:34.560 --> 46:36.700] The problem is reading it at the right speed. [46:38.080 --> 46:38.480] Um... [46:38.480 --> 46:40.680] But that's what the, uh... [46:40.680 --> 46:41.860] Let's go back here. [46:43.060 --> 46:45.960] So, most of these pads are, uh... [46:45.960 --> 46:49.160] Well, a lot of them are ground and power. [46:49.960 --> 46:51.540] But if you see here, uh... [46:51.540 --> 46:53.960] Five, six, seven, eight, nine... [46:54.600 --> 46:55.000] Uh... [46:55.000 --> 46:55.280] Right. [46:55.620 --> 47:00.980] Five, six, seven, eight, nine, ten, eleven, twelve are in reverse zero through seven. [47:01.580 --> 47:02.720] That's, that's your byte. [47:02.720 --> 47:05.220] You're gonna be reading all eight of those pins at once. [47:05.740 --> 47:06.140] Uh... [47:06.140 --> 47:08.800] And then the LLC at 32 at the top of the chip. [47:09.260 --> 47:09.660] Uh... [47:09.660 --> 47:12.820] That's the line lock clock that tells you, hey, we have new data for you. [47:13.500 --> 47:13.900] And... [47:13.900 --> 47:19.640] You need to be right, you know, you probably need to trigger an interrupt or something on the line lock clock and then read all eight bytes. [47:19.640 --> 47:20.460] And it's not... [47:21.560 --> 47:27.680] Not something I want to deal with, especially with, you know, I don't want to be spending a hundred dollars on a microcontroller to do this. [47:28.540 --> 47:30.560] And then I have to learn how to program it if it's something weird. [47:31.260 --> 47:31.620] Uh... [47:32.020 --> 47:32.380] But... [47:32.820 --> 47:33.180] Um... [47:33.180 --> 47:33.340] Yeah. [47:33.600 --> 47:35.040] So, lots of, lots of ground pads. [47:35.200 --> 47:36.820] Lots of, uh... [47:37.560 --> 47:37.920] Um... [47:37.920 --> 47:39.600] Digital, uh... [47:39.600 --> 47:43.860] You know, like there's a lot of the positive signals on here are, uh... [47:43.860 --> 47:44.800] Are spread out as well. [47:44.940 --> 47:47.560] And there is a power-up sequence that was new to me, but... [47:47.560 --> 47:51.640] They have an alternate where you just, you power on everything, and then when you're done, you bring the reset up. [47:52.760 --> 47:53.120] So... [47:53.120 --> 47:53.620] All right. [47:53.840 --> 47:54.120] Thank you. [47:56.040 --> 47:56.400] Sorry. [48:01.950 --> 48:02.310] Ooh. [48:02.710 --> 48:04.330] I think I saw that a long time ago. [48:04.870 --> 48:05.230] But... [48:05.230 --> 48:05.770] Uh... [48:05.770 --> 48:05.950] Yeah. [48:06.050 --> 48:08.510] Like once you have this text, you can, you know, you can do... [48:08.510 --> 48:09.730] You can do whatever you want with it. [48:10.450 --> 48:10.810] Uh... [48:10.810 --> 48:12.030] The, um... [48:13.290 --> 48:15.370] Somebody dump the, uh... [48:15.370 --> 48:18.070] Oh, interesting. [48:20.650 --> 48:21.010] Um... [48:22.230 --> 48:22.590] Yeah. [48:22.750 --> 48:23.130] This guy. [48:24.110 --> 48:24.470] Um... [48:24.950 --> 48:25.670] The, uh... [48:25.670 --> 48:25.970] Gary D. [48:26.070 --> 48:29.570] Robinson, he had something about, uh... [48:29.570 --> 48:34.090] You know, like if you get a weather report or something, you can send it to your pager or your cell phone or something. [48:34.270 --> 48:34.870] And it's like, okay. [48:35.210 --> 48:36.670] But it's possible once you have that data. [48:37.590 --> 48:37.950] So... [48:37.950 --> 48:38.050] Okay. [48:39.150 --> 48:39.690] Thank you. [48:39.690 --> 48:39.710] Thank you. [48:39.990 --> 48:41.850] Thank you.