22 ms·
YouTubeDrive: Store files as YouTube videos
- wanderingmind 4y agoThe code looks not too big (a single file). But it requries a paid symbolic language (Mathematica) to be used. Anyone with better Mathematica knowledge explain if it can be ported to another symbolic (Sage, Maxima) or non-symbolic languages (R, Julia, Python)
- hifikuno 4y agoI remember seeing years ago a python library called BitGlitter which did the same thing. It would convert any file to a image or video. You could then upload the file yourself. https://pypi.org/project/BitGlitter/ https://pypi.org/project/BitGlitter/
- wanderingmind 4y agoLooks like the github page is deleted. Its better not to use it anymore.
- dzhang314 4y agoYep! I'm the creator of YouTubeDrive, and there's absolutely nothing in the code that depends on the symbolic manipulation capabilities of Wolfram Mathematica -- you could easily port it to Python, C++, whatever. However, there are two non-technical reasons YouTubeDrive is written in Mathematica: (1) I was a freshman in college at the time, and Mathematica is one of the first languages I learned. (My physics classes allowed us to use Mathematica to spare us from doing integrals by hand.) (2) I intentionally chose a language that's a bit obtuse to use. I was afraid that I might attract unwanted attention from Google if YouTubeDrive were too easy for anybody to download and run.
- wanderingmind 4y agoCool thanks. This is an ingenious idea in the true hackers spirit. Well done.
- bilekas 4y agoI absolutely love this idea. I need to dig more into the code, but its almost like using twitter as a 'protocol' using youtube as a storage. So many ideas are flying to mind. Really creative.
- Group_B 4y agoI was literally thinking of something like this a couple days ago. Good timing!
- metadat 4y agoCould youtube-dlp and YouTube Vanced now be hosted on.. YouTube? I wonder how long it'd take for Google to crack down on the system abuse. Is it really abuse if the videos are viewable / playable? Presumably the ToS either already forbids covert channel encoding or soon will.
- throwaway0a5e 4y ago>Is it really abuse if the videos are viewable / playable? Presumably the ToS either already forbids covert channel encoding or soon will. If creators start encoding their source and material into their content Google would probably be fine with that because it gives them data but also gives them context for that data. Edit: I meant like "director's commentary" and "notes about production" type stuff like you used to see added to DVDs back in the day. Not "using youtube as my personal file storage". Why is this such an unpopular opinion?
- baud147258 4y ago> If creators start encoding their source material into their files Google would probably be fine with that it'd depends, as I don't think people using YT to store files would watch a lot of adds
- throwaway0a5e 4y agoIf creators use it like the appendix in a book I can see people watching ads on their way to it.
- jklinger410 4y ago> If creators start encoding their source material into their files Google would probably be fine with that Not true at all, lol. Google has a paid file storage solution. YouTube is for streaming video and that's the activity they expect on that platform. I couldn't imagine any service designed for one format would "probably be fine" with users encoding other files inside of that format.
- geoffeg 4y agoThis is great. I did something very similar with a laser printer and a scanner many years ago. I wrote a script that generated pages of colored blocks and spent some time figuring out how much redundancy I needed on each page to account for the scanner's resolution. I think I saw something similar here or on github a few years ago.
- lifthrasiir 4y agoSearching HN for "paper backup" gives a lot of existing solutions, in fact too many that I don't know which one you saw.
- aaaaaaaaaaab 4y agoSo you invented QR codes?
- geoffeg 4y agoOverly complicated, color QR codes.
- banana_giraffe 4y agoReminds me of "Cauzin Softstrip", the format some computer magazines used back in the day to distribute BASIC programs, or even executables. Random example from an issue of Byte: https://archive.org/details/byte-magazine-1986-05/page/n432/mode/1up https://archive.org/details/byte-magazine-1986-05/page/n432/...
- mensetmanusman 4y agoAre the premium files stored as 4K?
- advisedwang 4y agoSeems like a great way to get your account closed for abuse!
- Manuel_D 4y agoIf it becomes prevalent, I think YouTube would do something like slightly randomize the compression in their videos to dissuade this kind of use.
- serf 4y agoisn't the point here that the sub-pixels being produced are so large that it would take a tremendous amount of artifacts to reduce them to an unreadable state? in other words; if YTs compression was affecting it so badly that it prevented the data from being re-read, wouldn't that compression scheme render normal video-watching impossible?
- LewisVerstappen 4y agoYou'd be surprised how much YouTube lets you upload. I've been uploading 2-3 hours of content a day every day for the past few years. On the same account too. I have fewer than 10 subscribers lol.
- emptysongglass 4y agoLucky you. I just posted my first two videos from a conference that were banned within a day for violating "Community Guidelines" without appeal.
- deleted 4y ago[deleted]
- c0balt 4y agoThey let you sometimes get away with a lot more[0] ;) [0]: https://www.youtube.com/watch?v=Olkb7fYSyiI https://www.youtube.com/watch?v=Olkb7fYSyiI
- _trampeltier 4y agoThis story from 2016 comes to my mind. https://www.bbc.com/future/article/20160225-the-quest-to-solve-youtubes-strangest-mystery https://www.bbc.com/future/article/20160225-the-quest-to-sol...
- kube-system 4y agoI can't wait until malware uses this as C2
- Tijdreiziger 4y agoSeems pretty fragile. Google taking down your channel would be enough to disarm your malware.
- blibble 4y agothey worked around this years ago by generating the username (domain name) based on some property of the current time (plus using more than one tld)
- vmception 4y agoIpfs is decent enough or better with free pinning services
- productceo 4y agoImagine a free cloud storage, but you need to watch an ad every time you download a file.
- stingta 4y agoWasn't that basically megaupload its ilk
- rightbyte 4y agoI read that you did not download shady files from the interwebs when that was a thing sane people actually did?
- rationalfaith 4y ago
- deleted 4y ago[deleted]
- ranger_danger 4y agoimagine not using an ad blocker
- Jimmc414 4y agoVery cool. I wonder how difficult it would be present a real watchable video to the viewer. Albeit low quality, but embed the file in a steganographic method. I think a risk of this tech is that if it takes off, YT might easily adjust the algorithms to remove unwatchable videos. Perhaps leaving a watchable video could grant it more persistence than an obvious data stream.
- ragingglow 4y agoSure, but the more structure your video has to have, the harder it becomes to hide information stenographically within it. Your information density will become very low I think.
- jimmydeans 4y agoI remember a project that was doing this with photo files and unlimited picture storage.
- e1ghtSpace 4y agoThis ones not the best but it works. I would recommend zipping everything and then using that as a single file. (file size limit is ~2GB fyi) https://github.com/Quadmium/PEncode https://github.com/Quadmium/PEncode
- Annatar 4y agoThis works on the same principle as the video backup system (VBS) which we used in the 1980's and the early 1990's on our Commodore Amigas: if I remember correctly, one three hour PAL/SECAM VHS tape had a capacity of 130 MB. The entire hardware fit into a DB 25 parallel port connector and was easily made by oneself with a soldering iron and a few cheap parts. https://www.youtube.com/watch?v=VcBY6PMH0Kg https://www.youtube.com/watch?v=VcBY6PMH0Kg SGI IRIX also had something conceptually similar to this "YouTubeDrive" called HFS, the hierarchical filesystem, whose storage was backed by tape rather than disk, but to the OS it was just a regular filesystem like any other: applications like ls(1), cp(1), rm(1) or any other saw no difference, but the latency was high of course.
- ogurechny 4y ago130 MB for the whole tape is not a lot. It equals to a floppy disk throughput, which is probably not a coincidence. However, basic soldering implies that the rest of the system acts like a big software-defined DAC/ADC. Dedicated controller could pack a lot more data, as in hobo tape storage system: https://en.wikipedia.org/wiki/ArVid https://en.wikipedia.org/wiki/ArVid
- Annatar 4y agoDedicated controllers were absolutely out of the question because nobody could afford them, which is why Amigas were so popular: a fully multitasking, multimedia computer for 450 DM. That's 225 EUR! Somebody that cost sensitive won't even consider a dedicated controller; back then wasn't like it's today. This was at a time when 3.5" floppy disks were expensive (and hard to come by), and hard drives were between 40 - 60 MB, so 130 MB was quite practical. The floppy drive in the Amiga read and wrote at 11 KB / s. And yes, this was a DAC and an ADC in software, with added Reed-Solomon error correction encoding and CRC32. The goal was to be economical. The end price was everything; it had to be as cheap as possible.
- thought_alarm 4y agoThat's how digital audio was originally recorded to tape back in the 1970s and 80s: encode the data into a broadcast video signal and record it using a VCR. In the age of $5000 10 MB hard drives, this was the only sensible way to work with the 600+ MB of data needed to master a compact disc. That's also where the ubiquitous 44.1 kHz sample rate comes from. It was the fastest data rate could be reliably encoded into both NTSC and PAL broadcast signals. (For NTSC: 3 samples per scan line, 245 scan lines per frame, 60 frames per second = 44100 samples per second.)
- daenz 4y agoHow much data can you store if you embedded a picture-in-picture file over a 10 minute video? I could totally see content creators who do tutorials embedding project files in this way.
- behnamoh 4y ago“hope you enjoyed this video. btw, the source code used in this tutorial is encoded in the video.”
- cush 4y agoYeah seems way easier than adding a link in the description
- daenz 4y agoLinks die. As long as the video exists, the files that the video uses will always exist.
- cush 4y agoAs if videos don't die...
- alexb_ 4y agowell the point is the video and the file are linked - the video cannot exist without the file
- cush 4y agoThis is a classic case of overengineering a solution to a nonexistent problem. On YouTube, the video and the description are also linked. They exist on the same page always. And even if the concern this solution is covering is what if the video is somehow shared without the description, away from YouTube, then the video could just as easily contain the description or URL or QR code pointing to the file. This is a just horribly unusable QR code.
- dahfizz 4y agoDoes YouTube store and stream all videos losslessly? How does this work otherwise?
- kleer001 4y agothings like redundancy and crc checks I assume
- ezfe 4y agoThe data is represented large enough on screen that compression doesn't destroy it.
- Beltalowda 4y agoe.g. similar to a QR code stored as a JPEG will still work fine.
- deleted 4y ago[deleted]
- LukeShu 4y agoNo, YouTube is not lossless. The video that is created in the example in the README is https://www.youtube.com/watch?v=Fmm1AeYmbNU https://www.youtube.com/watch?v=Fmm1AeYmbNU We can see that data is encoded as "pixels" that are quite large, being made up of many actual pixels in the video file. I see quite bad compression artifacts, yet I can clearly make out the pixels that would need to be clear to read the data. It looks like the video was uploaded at 720p (1280x720), but the data is encoded as a 64x36 "pixel" image of 8 distinct colors. So lots of room for lossy compression before it's unreadable.
- deleted 4y ago[deleted]
- deleted 4y ago[deleted]
- martincmartin 4y ago
- umvi 4y agoTurns out any site that allows users to submit and retrieve data can be abused in the same way: - FacebookDrive: "Store files as base64 facebook posts" - TwitterDrive: "Store files as base64 tweets" - SoundCloudDrive: "Store files as mp3 audio" - WikipediaDrive: "Store files in wikipedia article histories"
- the_duke 4y agoGithub repos makes for a pretty good key-value store. It even has a full CRUD API, no need for using libgit.
- upupandup 4y agoWhat a great time to write botnets
- WaxProlix 4y agoI wrote one of these as a POC when at AWS to store data sharded across all the free namespaces (think Lambda names), with pointers to the next chunk of data. I like to think you could unify all of these into a FUSE filesystem and just mount your transparent multi-cloud remote FS as usual. It's inefficient, but free! So you can have as much space as you want. And it's potentially brittle, but free! So you can replicate/stripe the data across as many providers as you want.
- turtledove 4y agoI was an eng manager on Lambda for a time, and we definitely knew people were doing this, and had plans to cut it out if it ever became a problem. :D
- WaxProlix 4y agoYeah, you'd need to find some sort of auto-balancing to detect this kind of bitrot from over-aggressive engineering managers & their ilk and rebalance the data across other sources. I think the multiple-shuffle-shard approach has been done before, maybe we could steal some algo from a RAID driver, or DynamoDB.
- shmatt 4y agoReminds me of the old Wrapster[1] days [1] https://www.cnet.com/tech/services-and-software/napster-hack-allows-free-distribution-of-software-movies/ https://www.cnet.com/tech/services-and-software/napster-hack...
- deleted 4y ago[deleted]
- aneil 4y agoEvil genius.
- freestorage 4y agoYears ago when Amazon had unlimited photo storage, you could “hide” gigabytes of data behind a 1px gif (literally concatenation together) so that it wouldn’t count against your quota.
- xhrpost 4y agoThey still do if you pay for Prime. I was surprised to see that even RAW files (which are uncompressed and quite large) were uploaded and stored with no issues. Not the same as "hiding" data but might still be possible.
- netsharc 4y agoI guess you can store 24 bits of data as the R,G and B components of a pixel of an "image", and store it as a lossless image...
- karamanolev 4y agoIn the interest of technical correctness, RAW files are frequently compressed and even lossily compressed. For example, Sony's RAW compression was only lossy until very recent cameras. Given that there are the options for uncompressed, lossy compressed and lossless compressed, I'd say RAW files differ in the stage of the data processing where capture is being done and doesn't imply anything about the type of compression. What is relevant is that the formats vary widely between manufacturers, camera lines and individual cameras, so unlike JPEG, it's really hard to create a storage service that compresses RAW files further after uploading in a meaningful way. So anything they do needs to losslessly compress the file.
- xhrpost 4y agoInteresting, so are you saying that the RAW signal coming from the hardware is already often compressed even before hitting the main software compression?
- karamanolev 4y ago
- 8K832d7tNmiQ 4y agoI remember seeing this first discussed at 4chan /g/ board as a joke wether or not they can abuse Youtube's unlimited file size upload limit, then escalated into a proof of concept shown in the repo :)
- marginalia_nu 4y agoThis is a tangent. I must have been maybe 15-16 at the time, so somewhere around 20 years ago: One of the first pieces of software I remember building was a POP3 server that served files, that you could download using an email client where they would show up as attachments. Incredibly bizarre idea. I'm not sure who I thought would benefit from this. I guess I got swept up in RFC1939 and needed to build... something.
- behnamoh 4y agoapparently e-mail is not much reliable for storing/keeping files. there have been cases where an old email with an attachment would not load correctly because the servers just erased the attachment file.
- marginalia_nu 4y agoThis was a custom email server though, there never were any emails, it just presented files as though they were so that a client would download them. Actually caused some problems for email clients, as they usually assumed emails were small. I got a few of them to crash with 200 Mb "attachments" (although this was in the early 00s, 200Mb was bigger than it is today).
- xhrpost 4y agoNot immediately obvious from the Readme, but does this rely on YT always saving a providing download of the original un-altered video file? If not, then it must be saving the data in a manner that is retrievable even after compression and re-encoding, which is very interesting.
- deleted 4y ago[deleted]
- saint_angels 4y agoReminds me of a guy who stored data in ping messages https://youtu.be/JcJSW7Rprio https://youtu.be/JcJSW7Rprio
- alanh 4y agoWhat part of the video discusses this? :D So far it’s about juggling chainsaws Edit: OK, I see where this is going. Lol
- bluedays 4y agoI watch these things and I begin to realize I'll never be as intelligent as someone like this. It's good to know no matter how much you're grown there is always a bigger fish.
- qorrect 4y agoI agree that there will always be smarter fish, but you can definitely be this smart it just takes the proper motivation ( or weird idea ) to wiggle its way into your brain.
- evgen 4y agoBack in the day, when protocols were more trusting we would play games by storing data archives in other people's SMTP queues. Open the connection and send a message to yourself by bouncing it through a remote server, but wait to accept the returning email message until you wanted the data back. As long as you pulled it back in before it times out on that queue and looped it back out to the remote SMTP queue you could store several hundred MB (which was a lot of data at the time) in uuencoded chunks spread out across the NSFNet.
- flaque 4y agoSee also RedditFS: https://github.com/maxchehab/redditfs https://github.com/maxchehab/redditfs
- Saint_Genet 4y agoMakes me wonder how many video and image upload sites are now used as easily accessible number stations these days
- adolph 4y agoProbably not many. The advantage of plain old-fashioned radio is that the station doesn't keep track of the receivers. Whoever watches a YouTube numbers station is tracked six ways to Sunday.
- deleted 4y ago[deleted]
- kringo 4y agoBEWARE: Until they clamp down and delete the files, you lose your data. Good technical experiment though!
- netsharc 4y agoSince he's made a ready-to-use software, yeah Google will probably ban this quite quickly...
- das_keyboard 4y agoWasn't there more or less recently on HN something like "Store Data for free in DNS-Records"? Reminds me of this.
- behnamoh 4y agothere was a story on HN a while ago in which someone stored unlimited data in Google Sheets!
- INTPenis 4y agoI like this. The last wave of Twitter users into the fediverse caused my AWS bill to go up 10 USD a month. Might have to start storing media files on youtube instead ;)
- sunlite99 4y agoHow will you prevent youtube from re-encoding the video and data getting thrashed?
- tenebrisalietum 4y agoMake the boxes bigger.
- smm11 4y agoI suspect people in my office who send everything as a Word attachment with an image, PPT, Excel workbook, etc., embedded, are doing this unknowingly. There are even Word files I've found that have complete file path notation to ZIP files.
- anyfoo 4y agoI only looked at the example video, but is the concept just "big enough pixels"? Would be neater (and much more efficient) to encode the data such that it's exactly untouched by the compression algorithm, e.g. by encoding the data in wavelets and possibly motion vectors that the algorithm is known to keep[1]. Of course that would also be a lot of work, and likely fall apart once the video is re-encoded. [1] If that's what video encoding still does, I really have no idea, but you get the point.
- dheera 4y agoYT might still recompress your video, possibly using proprietary algorithms that are not necessarily DCT based
- anyfoo 4y agoAs said, falls apart with re-encoding. But is a bit more interesting than what is more or less QR codes.
- jrochkind1 4y agoI find it a bit more interesting to have something that actually works on youtube, even if only as a proof of concept.
- softfalcon 4y agoAgree it would be cool to be "untouched" by the compression algorithm, but that's nearly impossible with YouTube. YouTube encodes down to several different versions of a video and on top of that, several different codecs to support different devices with different built-in video hardware decoders. For example, when I upload a 4K vid and then watch the 4K stream on my Mac vs my PC, I get different video files solely based on the browser settings that can tell what OS I'm running. Handling this compression protection for so many different codecs is likely not feasible.
- anyfoo 4y ago
- legitster 4y agoThis reminds me of an old hacky product that would let you use cheap VHS tapes as backup storage: https://en.wikipedia.org/wiki/ArVid https://en.wikipedia.org/wiki/ArVid You would hit Record on a VCR and the computer data would be encoded as video data on the tape. People are clever.
- ben174 4y agoWow, 2GB on a standard tape. For the time, that's incredibly efficient and cheap.
- anyfoo 4y agoYeah. Video, even old grainy VHS, had a pretty high bandwidth. Even much more so with S-VHS, which did not become super popular though. (I'm actually wondering whether the 2GB figure was for S-VHS, not VHS. Didn't to the math and wouldn't be surprised either way, though.)
- Dylan16807 4y agoA normal VHS encodes about 100 million scan lines over 2 hours. 20 bytes per scan line sounds feasible, since there's somewhere around 200-300 'pixels' of luma available in each scan line.
- anyfoo 4y agoThanks, that's a very reasonable back of the envelope calculation. There are many fun details about VHS, its chroma resolution, and especially some weirdness around the PAL delay line, but they all don't really matter for this. Wikipedia says there is about 3MHz of bandwidth, so ~200-300 "pixels" seems like a very good ballpark (just going by the fact that a normal PAL signal has about 6 MHz and is commonly digitized as 720x576, 3MHz about halves the horizontal resolution and taking some pixels off for various reasons makes sense).
- gattilorenz 4y agoYes! There were many such systems, LGR made a video for one of them, also showing the interface (as in: hardware and GUI) for the backup: https://youtu.be/TUS0Zv2APjU https://youtu.be/TUS0Zv2APjU
- bspear 4y agoFascinating
- msoad 4y agoReminds me of the other post that used Facebook Messenger as transport layer to get free internet in places that internet is free if you use Facebook apps.
- take_it_not 4y agoI’m thinking maybe we can divide files into pieces and turn each pieces into a QR code then turn each QR code into a single frame?
- lb1lf 4y ago-Back in the day when file sharing was new, I won two rounds of beer from my friends in university - the first after I tried what I dubbed hardcore backups (Tarred, gzipped and pgp'd an archive, slapped an avi header on it, renamed it britney_uncensored_sex_tape[XXX].avi or something similar, then shared it on WinMX assuming that as hard drive space was free and teenage boys were teenage boys, at least some of those who downloaded it would leave it to share even if the file claimed to be corrupt. It worked a charm. Second round? A year later, when the archive was still available from umpteen hosts. For all I know, it still languishes on who knows how many old hard drives...
- marginalia_nu 4y agoPoor guys, still looking for the right codec to play the britney tape they downloaded 28 years ago.
- iso1210 4y agoDisturbing, she'd have been 12 at that time.
- backspace_ 4y agoWhich brittany are they referring to?
- idonotknowwhy 4y agoBritney Spears
- picsao 4y ago
- incel 4y ago
- marginalia_nu 4y ago
- danschumann 4y agoThis reminds me of Blame! where humans are living light rats in the belly of the machine. Lol, also reminds me of the geocities days where we created 50 accounts to upload dragon ball z videos.
- kebman 4y agoAre there any examples? I'd love to see such a YouTube video... :p
- jagged-chisel 4y agoThis would be a good way to backup your YouTube videos to YouTube while avoiding Content ID.
- abadaba 4y agoAre there any services out there that combine all of these “Store files as XYZ” into some kind of raid config? Would be interesting if you could treat each service (Youtube, Docs, Reddit, Messenger, etc) as a “disk” and stripe your data across them.
- deleted 4y ago[deleted]
- layer8 4y agoBack in the 90’s I considered storing my backups as encrypted stenographied or binary Usenet postings, as a kind of decentralized backup, postings which would stick around long enough for the next weekly backup. (Usenet providers had at least a couple of weeks of retention time back then.)
- accrual 4y agoI love that this is like tape in that it's a sequential access medium. It's storing a tape-like data stream in a digital version of what used to be tape itself (VHS).
- layer8 4y agoI believe YouTube supports random access, or otherwise you wouldn’t be able to jump around in a video. Youtube-dl also supports resuming downloads in the middle, I believe.
- ductsurprise 4y agoTrue... But guessing YouTubeDrive 'decoder' needs whole video to get you back anything close to what you put in. Otherwise each frame would have to have a ridiculous amount of encoded overhead. Ahh, NM cant even see that working. edit: Maybe a file table at built from from specified first N frames, that delivers frameset/file map ... Still nothing like skipping spots in a video. That relies on key frames and time signatures. Cool stuff nonetheless...
- Dylan16807 4y agoWhy would you need a map or overhead? Each frame gets the same amount of the file, about a kilobyte. So each frame is basically a sector. You need to read in a few extra frames to undo the compression, but otherwise it's just like a normal filesystem. And reading in a batch of sectors at once is normal for real drives too. Even if you did need the frames to be self-describing, you could just toss a counter/offset in the top left corner for less than 1% overhead.
- derevaunseraun 4y agoThis seems like something Cicada 3301 would use I wonder how many random videos like this are floating around that are encoding some super secret data...
- anonymousiam 4y agoReminds me of this similar tool that exploited GMail the same way: https://www.computerworld.com/article/2547891/google-hack--use-gmail-as-a-linux-filesystem.html https://www.computerworld.com/article/2547891/google-hack--u...
- AdriaanvRossum 4y agoHow much kilobytes would be possible to store per minute video?
- ductsurprise 4y agoCould be a good and sneaky way to obfuscate encrypted message transmissions?
- jtxt 4y agoSeems like it may be a decent "harder drive". https://youtu.be/JcJSW7Rprio https://youtu.be/JcJSW7Rprio
- musicale 4y agoIt's all fun and games until your files start getting DMCA takedowns.
- deleted 4y ago[deleted]
- powerset 4y agoI wonder if something similar could be useful for transmitting data optically, like an animated QR code. Maybe a good way to transmit data over an air gap for the paranoid?
- fronterablog 4y agoI'm a GOOGL investor and I find this offensive.
- iostream24 4y agoWhat does the OP have against “Google Drive” when seeking file storage via a Google Service? Horses for courses… this is how we end up with pictures clogging transaction ledgers
- egypturnash 4y agoI think my favorite part of this is that the example video linked to this has ads on it. It's a backup system that pays you. Well, until someone at Youtube sees it and decides to delete your whole account.
- pingtickle 4y agoBefore broadband was widely available, TiVo used to purchase overnight paid programming slots across the US and broadcast modified PDF417 video streams that provided weekly program guide data for TiVo users. There's a sample of it on YouTube https://www.youtube.com/watch?v=VfUgT2YoPzI https://www.youtube.com/watch?v=VfUgT2YoPzI but they usually wrapped a 60-second commercial before and after the 28-minute broadcast of data. There was enough error correction in the data streams to allow proper processing even with less-than-perfect analog television reception.
- 414techie 4y agoThat is really interesting. I wonder if there were any other interesting uses of paid programming to solve problems like these around that time?
- anyfoo 4y agoVideonics DirectED, a video editing system, conveniently loaded its software from... VHS tape. Here are some details: https://twitter.com/foone/status/1325945997160165376 https://twitter.com/foone/status/1325945997160165376 and apparently you can still buy it well-preserved as new old stock, complete with the VHS software tape: https://www.ebay.com/itm/124380109086 https://www.ebay.com/itm/124380109086 A little less crazy and more straightforward (software on audio tape was super common after all): Radio stations and vinyl discs that transmitted programs to the microcomputers of the time (C64, TRS-80 etc.) have quite a long tradition. Some examples: http://www.trs-80.org/basic-over-shortwave/ http://www.trs-80.org/basic-over-shortwave/ https://www.youtube.com/watch?v=6_CZpFqvDQo&t=2s https://www.youtube.com/watch?v=6_CZpFqvDQo&t=2s
- mwcremer 4y agoNot quite paid programming, but Scientific Atlanta had a Broadcast File System that would send data to set top boxes over coax QAM channels used for digital TV. It would loop through all the content on the "carousel" repeatedly so all the boxes connected to that head end would eventually see the updates.
- hnlmorg 4y ago
- grupthink 4y agoUpload videos as data, then build an app that streams and decodes these files back into videos. Voila, popcorn time.
- nelblu 4y agoReminds me of the movie Contact where the alien civilization encodes the whole design of a traveling machine inside Olympic telecast video.
- snarfy 4y agoI remember my friend did something like this on an old unix system. Users were given quotas of 5Mb for their home directory. He discovered that filenames could be quite large, and the number of files was not limited by the quota, so he created a pseudo filesystem using that knowledge, with a command line tool for listing, storing and retrieving files from it. This was the early 90s
- dzhang314 4y agoHey everybody! I'm David, the creator of YouTubeDrive, and I never expected to see this old project pop up on HN. YouTubeDrive was created when I was a freshman in college with questionable programming abilities, absolutely no knowledge of coding theory, and way too much free time. The encoding scheme that YouTubeDrive uses is brain-dead simple: pack three bits into each pixel of a sequence of 64x36 images (I only use RGB values 0 and 255, nothing in between), and then blow up these images by a factor of 20 to make a 1280x720 video. These 20x20 colored squares are big enough to reliably survive YouTube's compression algorithm (or at least they were in 2016 -- the algorithms have probably changed since). You really do need something around that size, because I discovered that YouTube's video compression would sometimes flip the average color of a 10x10 square from 0 to 255, or vice versa. Looking back now as a grad student, I realize that there are much cleverer approaches to this problem: a better encoding scheme (discrete Fourier/cosine/wavelet transforms) would let me pack bits in the frequency domain instead of the spatial domain, reducing the probability of bit-flip errors, and a good error-correcting code (Hamming, Reed-Solomon, etc.) would let me tolerate a few bit-flips here and there. In classic academic fashion, I'll leave it as an exercise to the reader to implement these extensions :)
- freedomben 4y agoNice thanks, this answered my biggest question, which was "will it survive compression/re-encoding." (yes it will). Very cool idea!
- dzhang314 4y agoOne more thing: the choice of Wolfram Mathematica as an implementation language was a deliberate decision on my part. Not for any technical reason -- YouTubeDrive doesn't use any of Mathematica's symbolic math capabilities -- but because I didn't want YouTubeDrive to be too easy for anybody on the internet to download and use, lest I attract unwanted attention from Google. In the eyes of my paranoid freshman self, the fact that YouTubeDrive is somewhat obtuse to install was a feature, not a bug. So, feel free to have a look and have a laugh, but don't try to use YouTubeDrive for any serious purpose! This encoding scheme is so horrendously inefficient (on the order of 99% overhead) that the effective bandwidth to and from YouTube is something like one megabyte per minute.
- antics 4y agoThis reminds me of SnapchatFS[1], a side project I made about 8 years ago (see also HN thread[2] at that time). From the README.md: > Since Snapchat imposes few restrictions on what data can be uploaded (i.e., not just images), I've taken to using it as a system to send files to myself and others. > Snapchat FS is the tool that allows this. It provides a simple command line interface for uploading arbitrary files into Snapchat, managing them, and downloading them to any other computer with access to this package. [1]: https://github.com/hausdorff/snapchat-fs https://github.com/hausdorff/snapchat-fs [2]: https://news.ycombinator.com/item?id=6932508 https://news.ycombinator.com/item?id=6932508
- boboche 4y agoThis gave me a flashback of VBS on amiga… video backup system, record composite video on a vcr, and simple op amp circuit that would decode black and white blobs of video pixels, could backup floppies at reading speed. Was really impressive until, well, vhs… ;) Just did a google and saw it had evolved over the years, used only the 1.0 implementation back in the days. For those on another nostalgic trip : http://hugolyppens.com/VBS.html http://hugolyppens.com/VBS.html
- throwaway742 4y agoCan't you upload lossless captions to youtube?
- ck2 4y agoImagine a Raid6 of four youtube 11-digit IDs Bet google isn't happy with this idea and will definitely try to break it asap
- helloworld11 4y agoHere I am trying my best to get my favorite videos OFF YouTube given that they could disappear at any second because of an account block, or just "reasons", and this link suggesting storing stuff with YouTube? By god, why? Sure, it's free, practically "limitless" slow file storage, but what a bad idea nonetheless....
- bgro 4y agoI also “invented this idea” from scratch in a series that exists solely in my mind where I abuse a variety of free services for unintended purposes. I could seemingly never explain the concept to other developers in a meaningful way or cared myself to code these out. Anyway my quick summary in this is just think of a dialup modem. You connect to a phone line and you get like a 56k connection. That sucks today, sure, but actually it’s kind of mind blowing for how data transfer speeds worked at the time. You know how else you can send data via a phone line without a modem? Just literally call someone and speak the data over the phone. You could even speak in binary or base64 to transfer data. It’s slow, but it still “works,” assuming the receiving party can accurately record the information and hear you. That seems to be what this main topic is. Using a fast medium (video player) to slowly send data over the connection, like physically speaking the contents of other data. But there could be some problems with this approach. Mainly, YouTube will always recompress your video. For this method, that means your colors or other literal video data could be off. This limits the range of values you can use in an already limited “speaking” medium. if this wasn’t the case, we would like to use a modem connection. Just literally send the data and pretend it’s a video. However, where I left off on this idea, we appear to be hard blocked due to that YouTube compression. We can write data to whatever we want and label it any other file type. (As a side note, Videos also are containers like zip that could be abused to just hold other files) But YouTube is an unknown wildcard that changes our compression and thus our data which seems to invalidate all of this. If we somehow convert an exe to an avi, The YouTube compression seems to just hard block this from working like we want. If we didn’t have that barrier, I think we could otherwise just use essentially corrupted videos to become other file types if we can download the raw file directly. (steganography is a potential work around I haven’t explored yet) Without these, we’re left to just speak the data over a phone which compresses our voice quality and in theory could make some sounds hard to tell apart. This leaves us in the battle of what language is best to speak to avoid compression limiting our communication. Is English best? Or is Japanese? What about German? Which language is least likely to cause confusion when speaking but also is fast and expressive? This translates into what’s the best compression method for text or otherwise pixels in a video where data doesn’t get lost due to compression? Is literal English characters best? What about base64? Or binary? What if we zip it first and then base64? What if we convert binary code into hex colors? Does that use less frames in a video? Will the video be able to clearly save all the hex values after YouTube compression?
- self_awareness 4y agoPopularity of such projects is the reason of imposing more and more constraints on systems that are somewhat open (at least open to use). Maybe instead of figuring out how to abuse an easy-to-use system, people should figure out how to abuse hard-to-use systems, like e.g. creation of open protocols for closed systems. That would be an actual achievement.
- mark_prutskyi 4y agoso cool
- nth_order 4y agoAnother "Harder Drive"!
- theHNAcct 4y agoI believe this is the backend for AWS Glacier
- some1else 4y agoRename the project to VideoDrive or something. With the current name Google can get GitHub to take it down on the basis of trademark infringement.
- wscott 4y agoYes we have all done or used something similar when we were younger, but really, should this be on the front page of HN? This is abuse of a popular service and if it becomes popular it will only make YouTube worse and YouTube is getting worse without any additional help.