Live data from Hacker News

Wifibroadcast – Analog-like transmission of live video data

befinitiv.wordpress.com

11–20 of 40 posts

Re: Wifibroadcast – Analog-like transmission of live video data

#11

Does this allow encryption of the video stream? Graceful signal degradation is a great feature, but I don't see how that would work when there is encryption.

Encryption won't work for this scenario as it reintroduces the problem of all or no data. Degraded encrypted data can't be decrypted successfully (yet?)

From my armchair position, I'd think that this is what error correcting codes are for, aren't they?

Re: Wifibroadcast – Analog-like transmission of live video data

#12
post #6

Earlier quoted context omitted.

Encryption won't work for this scenario as it reintroduces the problem of all or no data. Degraded encrypted data can't be decrypted successfully (yet?)

encrypt with a redundant parity data?

How would you implement analog parity? Parity doesn't translate well as a concept into the analog space.

You can take an analog signal and "quantize" it into sixteen possible values so that you can apply a parity algorithm that returns sensible results and doesn't fail with expected noise, but you're digitizing the signal.

Re: Wifibroadcast – Analog-like transmission of live video data

#13
post #5

Earlier quoted context omitted.

Amen. Now if someone could get DVDs or streaming services to offer fast-forward and rewind that works as well as a VCR we'd be caught up to the 1980s!

Hell yes! Or even hardware acceleration for starting in random parts of videos on my PC so they don't break up and delay as often. This is the digital era. It's supposed to work more reliably than old, analog tech. I used to be able to stop my rewind or fast-forward on VCR within a few seconds of the target moment with clean play. Still not reliable with digital streaming. (sighs) Note: I do like how, even with error…

> Note: I do like how, even with errors, it still takes under 20 seconds for me to get to any random part of the vid. That's an improvement over the rewind/fast-forward speeds. :)

Don't forget not having to rewind after watching/before watching. Glad that whole class of annoyance is gone, much more annoying than poor random access :)

Re: Wifibroadcast – Analog-like transmission of live video data

#14
post #11

Earlier quoted context omitted.

Encryption won't work for this scenario as it reintroduces the problem of all or no data. Degraded encrypted data can't be decrypted successfully (yet?)

From my armchair position, I'd think that this is what error correcting codes are for, aren't they?

Error correction (or redundant parity data as est mentioned in another reply) just kicks the can down the road.

Let's say you're using a 20/40 erasure encoding. You break a piece of data up into 20 pieces and create 20 extra parity pieces. Now you only need 20 out of the 40 to recreate the original data.

Are we encoding the encrypted data? Ok well we need at least 20 good pieces, and that's to decode the original data. This method doesn't allow for seamless degradation but allows for some data loss in the transmission (while effectively doubling the amount we're trying to push in the first place).

Let's say we're breaking up the original data, creating parity pieces and encrypting each little piece. Then it could decrypt each piece it got and use it and if it couldn't decrypt a piece just throw it away. This could potentially work but parity pieces are useless unless you are trying to recreate the original file neglecting the ability to degrade quality. So redundancy is more important in this scenario than parity.

But, if we make the encrypted pieces small enough, say each packet body, then that could probably work but be resource intensive. Encode/decode every packet, if successful insert into feed, else throw the packet away. This would work a lot like the existing technology just requiring some middle step of decrypting each packet body.

Re: Wifibroadcast – Analog-like transmission of live video data

#15
post #5

Earlier quoted context omitted.

Amen. Now if someone could get DVDs or streaming services to offer fast-forward and rewind that works as well as a VCR we'd be caught up to the 1980s!

Hell yes! Or even hardware acceleration for starting in random parts of videos on my PC so they don't break up and delay as often. This is the digital era. It's supposed to work more reliably than old, analog tech. I used to be able to stop my rewind or fast-forward on VCR within a few seconds of the target moment with clean play. Still not reliable with digital streaming. (sighs) Note: I do like how, even with error…

Modern video codecs use data in frames before and sometimes after the current frame to compress more:

https://en.wikipedia.org/wiki/Group_of_pictures

whereas analog media stored full resolution versions of every frame.

Seeking is much easier when you can pick any random location and have all the data right there ready to use, and you don't have to backtrack and try to recreate things from previous frames.

Re: Wifibroadcast – Analog-like transmission of live video data

#16
post #11

Earlier quoted context omitted.

Encryption won't work for this scenario as it reintroduces the problem of all or no data. Degraded encrypted data can't be decrypted successfully (yet?)

From my armchair position, I'd think that this is what error correcting codes are for, aren't they?

OFDM 802.11 rates already have a significant amount of Forward Error Correction. 802.11g uses a convolution encoder and Viterbi Decoder [1], and 802.11 HT rates (n, ac, ad) can also use Low Density Parity Codes (LDPC) [2]. The problem with Forward Error Correction is that it can't deal with too many sequential errors, so many modems use something known as an interleaver. An reorders bits as they are sent over the air, so instead of sending LSB to MSB or vice versa you are sending bits in a random yet mutually known order. This causes link quality issues such as interference to not interfere with continuous bits (to the benefit of the FEC decoder). The problem with an interleaver is that it causes latency to go up. If you interleave based on 256 bits of 2048bits, you can't decode blocks of data until you've received all of this bits. So the 288 bit interleaver that 802.11 uses won't cause many problems if you're streaming but if you are interleaving data across multiple packets you will notice a spike in video latency.

[1] https://en.wikipedia.org/wiki/Viterbi_algorithm [2] https://en.wikipedia.org/wiki/Low-density_parity-check_code

Re: Wifibroadcast – Analog-like transmission of live video data

#17
post #6

Earlier quoted context omitted.

encrypt with a redundant parity data?

Even then I think it would still be all-or-nothing. That may increase the chances of "all" over "nothing" but not allow graceful degradation of the video.

Hierarchical coding: send a low quality version of the video with high redundancy, and a higher quality refinement of the video with lesser redundancy.

Re: Wifibroadcast – Analog-like transmission of live video data

#18

> Note: Before using wifibroadcast you have to check if the regulatories of your country allow such a use of wifi hardware. Any guesses as to whether this would be legal in the US?

Monitor mode is a MAC level concept, and doesn't alter any of the RF characteristics that would make operating this device illegal. (This is not legal advice. Consult with an attorney, etc etc)

Re: Wifibroadcast – Analog-like transmission of live video data

#19

Cool stuff. Good to see them recognize and use advantages of analog. I could tell them digital transmission of data has always been done with analog circuits but analog's invisible ubiquity is beside the point. ;)

I don't think that most people need to be reminded that digital data is transmitted with electricity.

Re: Wifibroadcast – Analog-like transmission of live video data

#20

Does this allow encryption of the video stream? Graceful signal degradation is a great feature, but I don't see how that would work when there is encryption.

Encryption would work just fine if you used a stream cipher, like ChaCha20.

(With a stream cipher, a single bit error in the encrypted data results in a single bit error in the decrypted data).

Post reply on HN