• Linktank@lemmy.today
    link
    fedilink
    arrow-up
    27
    ·
    edit-2
    2 days ago

    Which group of pixels am I meant to be focusing on?

    Edit: Came back to look at this later and the picture seems to be loading like normal now. Looked like a Community Crib Sheet the first time I saw it.

    • idunnololz@lemmy.world
      link
      fedilink
      arrow-up
      14
      ·
      edit-2
      2 days ago

      I investigated this. It seems that the image host does not play nicely with mobile clients.

      Here is a dump of the post data

      {
        "ap_id": "https://discuss.tchncs.de/post/32154397",
        "community_id": 1045737,
        "creator_id": 1804153,
        "deleted": false,
        "featured_community": false,
        "featured_local": false,
        "id": 26747103,
        "language_id": 37,
        "local": false,
        "locked": false,
        "name": "Berliners have also joined the movement and are working hard",
        "nsfw": false,
        "published": "2025-03-12T23:07:43.291180Z",
        "removed": false,
        "thumbnail_url": "https://lemmy.world/pictrs/image/6065a627-afc1-48a8-b29c-55e541f74bb5.jpeg",
        "url": "https://i.postimg.cc/Ytmkvx0r/xzecxxmrwboe1.jpg"
      }
      

      From this you can see there are two image URLs. The thumbnail (generated by the lemmy server):

      And the original url:

      It looks like loading the image from the original URL behaves differently based on the device, browser etc. On a Lemmy client it returns a tiny image which is why it’s so pixelated for some users. It returns the same tiny image when loaded from mobile Chrome. However on desktop Firefox the image resolution is fine.

      This is what it looks like on mobile:

        • idunnololz@lemmy.world
          link
          fedilink
          arrow-up
          2
          ·
          edit-2
          9 hours ago

          Update: Ignore the rest of the comment. I just tried to request the image with any User-Agent and it’s now always serving the full resolution image. It definitely wasn’t returning the full resolution images the last time I tried even with different User-Agents for Chrome/Firefox/etc. My leading theory is this image host just sucks.

          Old

          This is very interesting. The story continues.

          I see that two uses have reported that the image loads fine on two different Lemmy clients. This told me this is unlikely to be a coincidence. So I double checked the image in Thunder and like you’ve both reported the image loads as expected.

          Then I figured out that Voyager and Thunder share one thing in common: they are both built using Flutter.

          From my previous test I knew that the image host (postimg.cc) is using the user agent and other clues to serve different content to different browsers/apps. So my next theory is that the image host serves raws to flutter clients.

          To test this theory I looked up the default user agent of Flutter apps which is just Flutter-version, then I looked up the latest version of flutter which is 3.71. Then I tried making a request to the url with User-Agent Dart/3.7.1 and boom the website returned the full 3.71MB raw for the image solving the mystery.

          As a fix for clients (and this is a terrible terrible fix) any app that wants to get raws off this host needs to send their request with a Flutter user agent.

    • takeda@lemm.ee
      link
      fedilink
      arrow-up
      11
      ·
      2 days ago

      I saw a different picture with Philadelphia cheese. And I’m guessing it’s about putting the cheese upside down.