poidhzPeopleGallerySubmit/zao

0x5a84...d58b

0x5a84...d58b - entered 3 rounds

ZAOstock Round 8 - Cut The Radio Session For Instagram

0x5a84...d58bclaim 8434

ZAOstock R8: radio session cut, 63s vertical reel (Star 97.7 credited)

https://video.nostr.build/5dbdb642a274ca49ad6fd19c731992ad41e63f7cf59f7426371356e1c75d679d.mp4
Notes: The facts never leave the screen, so a viewer who drops in at any second knows where to be.

Measured: 63.2 seconds, 1080x1920, h264 with aac. The date, the town, noon to six, free and 'Heard on Star 97.7' stay on screen for the whole runtime, the captions follow the speech, and it ends on zaostock.com for about four seconds. It was the first entry in, the same day the round opened, and the claim lists the exact seconds of the mp3 it used.

Use the picture, not only the sound. The whole piece is a still moose card under the audio. The round linked the stream of the studio slot; the hosts on camera vouching for the day is what turns a poster with a voice into a reel.

Say who you are. poidh shows no handle for your wallet, so this note can only address it by its first characters. A Farcaster or X handle on the claim lets people find your other work.

ZAOstock Round 5 - Ship Code, Not A Poster

0x5a84...d58bclaim 8304

ZAOstock Round 5: PR #316 - defer 1.8MB autoplay background video (mobile perf)

https://github.com/ZAODEVZ/ZAOstock/pull/316
Notes: You made the policy a pure function and unit-tested it, instead of burying an if-statement in a component.

Three entries now. #316 and #318 moved the decision into src/lib/should-autoplay-bg-video.ts where it could be tested without a DOM - this repo has no jsdom - and put four tests over it. Every guard in them fails toward the visitor: navigator.connection read through optional chaining so Safari is not broken by it, IntersectionObserver being undefined loading the video immediately rather than leaving a permanently blank section, and an unknown connection keeping existing behaviour rather than being quietly degraded. #352 then did the same thing to the hero video. All four jobs pass on each.

You answered the question this page asked, by opening three more pull requests. The note here asked what else you had seen and not opened a PR for. #352 is the answer, and it is the thing this round actually asked for: the hero video decision extracted as a pure function with its own tests, and a still image rendered instead of a hidden video so the file is never fetched. That last part matters more than it looks. An earlier attempt in this round hid the same video with CSS, and display:none does not stop an autoplaying video downloading - measured in Chromium against a control, the browser still made one request for the 1.82 MB file with the rule active. Your version actually saves the bytes. Your own comment says the same thing, so you knew.

You split the video out within minutes of being asked, and that is worth saying. The review suggested separating the re-encoded mp4 so the component fix could be judged on its own. Five and a half minutes later #353 existed and #352 carried only the code. Most people argue first. On the re-encode itself: measured at 37.5 percent smaller with identical resolution, frame rate, frame count and duration, SSIM 0.960 against the original. That is a real trade and a good one, and it is not a reviewer's to accept - the asset belongs to the designer who made it, so it waits on her rather than on the merge queue.

One thing to look at on #354 before it is judged. Four of its changes are already sitting in another entrant's claimed pull request, opened seventeen hours earlier: the unused SITE import, the eslint --max-warnings=0 gate, the useSyncExternalStore replacement in LocalStartTime, and the Card import in meetings. Every one of those is findable by running npm run lint, so arriving at them independently is entirely plausible and nothing here is an accusation. But this round says merged wins ties, so overlapping work makes merge order decide things rather than the work deciding them. The part of #354 that is only yours is the four eslint-disable justifications, and they are the most carefully argued lines in it - each one explains why an arbitrary user-supplied photo URL cannot go through next/image. A #354 that was only those would be unambiguous.

ZAOstock Round 4 - Make An Ad, 30 Seconds Or Less

0x5a84...d58bclaim 8312

ZAOstock Round 4 Ad - 28s Spot

https://x.com/inkier35/status/2103721261570707770
Notes: You put the real place on screen, from above, and nobody has to imagine it.

Measured: 28.58 seconds with audio, and all four required facts are on the piece - ZAOSTOCK, SATURDAY OCTOBER 3 with NOON TO SIX, ELLSWORTH MAINE over real aerial footage of the Franklin Street Parklet, and FREE. It also carries ONE STREET, ONE STAGE, EIGHT ACTS and the URL. The aerial shot of the actual parklet is the thing in this round that cannot be faked.

It is 1280x720 landscape in a round aimed at phones. Every other moving entry is vertical. A landscape piece in a phone feed is shown small with bars, and the round's first criterion is somebody landing on a phone. The same cut at 1080x1920 would have lost nothing - the aerial footage crops to vertical comfortably, and the type is already centred.

The still on your claim shows two of the four required facts. The video carries all four, which is what matters and how it was judged. But the frame you attached to the claim shows only ZAOSTOCK and FREE, and on the bounty page that frame is what somebody sees first. A frame carrying the date and the place would have made the claim itself do the work the video does.

Nine views. The lowest reach of the round apart from one posted minutes before the close. The piece is strong and almost nobody saw it. Posting to Farcaster as well as X, where this programme actually lives, costs nothing and roughly doubled reach for the entries that did it.