221
submitted 1 week ago* (last edited 1 week ago) by inari@piefed.zip to c/technology@lemmy.world
you are viewing a single comment's thread
view the rest of the comments
[-] riskable@programming.dev 9 points 1 week ago

Honestly, this doesn't sound like spyware. More like absurd optimization. Here's why: Audio devices often go to sleep (to save battery) and can take a second or two to wake up. That's enough time that the end user will miss the first second or two of audio.

By keeping the audio outputting something (even if it's just silence), they can guarantee that their little (often hilariously terrible) product videos will play the way they expect (which is loud and startling, of course!).

This is just one of those stupid tricks that's bad for energy use but good for ignorant users who might complain that the first second of every AliExpress video is silent 🤷

The reason why I believe this to be the case is because there's really nothing unique or interesting to be learned from an audio output loop that's literally sending zeros through itself. If you wanted to use that to fingerprint a user, you wouldn't need to keep it active. You could pass a single zero (silence) through and be done.

[-] fubarx@lemmy.world 48 points 1 week ago* (last edited 1 week ago)

The WebAudio test is not the only measurement in these scripts. Inspection of the bundles found code that queries or measures:

  • canvas rendering and toDataURL()
  • WebGL renderer information, extensions, and shader precision
  • audio oscillator and analyser output
  • screen and viewport dimensions
  • device pixel ratio
  • hardware concurrency and device memory
  • installed browser plugins
  • supported audio and video formats
  • WebRTC behaviour
  • browser performance timing
  • mouse, touch, focus, and scroll events
  • device motion and orientation
  • properties commonly associated with browser automation

There is also code for serialising and encrypting results, making requests to Alibaba telemetry services, and sending data with fetch() or sendBeacon().

Not sure you need all this to play audio.

[-] riskable@programming.dev 7 points 1 week ago

If it's part of a fingerprinting lib, then they just fucked it up. Because the fingerprinting can be done in one ~16ms window of time when the script runs and then you can break down the audio objects and pretend nothing happened.

[-] festus@lemmy.ca 2 points 6 days ago

Also because browsers support OfflineAudioContext, which lets you do the same things but doesn't try to output to speakers.

[-] fubarx@lemmy.world 5 points 1 week ago* (last edited 1 week ago)

This guy fingerprints.

(hopefully in a good way)

[-] riskable@programming.dev 1 points 1 week ago

Oh gods. I leave them everywhere 🤷

[-] tal@lemmy.today 10 points 1 week ago

If that's actually their problem, they could easily just play a small amount of silence before a video's content. They don't need to be constantly tying up an audio stream.

[-] PierceTheBubble@lemmy.ml 7 points 1 week ago

Audio fingerprinting works because small differences in browser versions, operating systems, audio libraries, and hardware can produce slightly different results from the same generated signal. It is not necessarily enough to uniquely identify a device by itself, but it becomes much more useful when combined with canvas, WebGL, hardware, timing, and interaction data.

The gaining happens after retrieval of the results it seems: so it's just silent for the end user. And perhaps they do both fingerprinting, and ensure audio devices remain awake.

this post was submitted on 20 Aug 2026
221 points (99.1% liked)

Technology

87624 readers
5064 users here now

This is a most excellent place for technology news and articles.


Our Rules


  1. Follow the lemmy.world rules.
  2. Only tech related news or articles.
  3. Be excellent to each other!
  4. Mod approved content bots can post up to 10 articles per day.
  5. Threads asking for personal tech support may be deleted.
  6. Politics threads may be removed.
  7. No memes allowed as posts, OK to post as comments.
  8. Only approved bots from the list below, this includes using AI responses and summaries. To ask if your bot can be added please contact a mod.
  9. Check for duplicates before posting, duplicates may be removed
  10. Accounts 7 days and younger will have their posts automatically removed.

Approved Bots


founded 3 years ago
MODERATORS