Skip to content

Support serving >3 min videos to Blacksky with <3 min fallback for Bluesky #169

Description

@Zacqary

Describe the Feature

Blacksky's video upload service doesn't reject videos longer than 3 minutes as long as they meet file size requirements. Bluesky hard rejects a video longer than 3 minutes. If I upload a video longer than 3 minutes to Blacksky, it works fine in the Blacksky appview but returns Video Not Found on Bluesky.

Blacksky could work around this by supporting a second video embed entry, for example:

{
  "$type": "app.bsky.feed.post",
  "embed": {
    "$type": "app.bsky.embed.video",
    "video": { "$type": "blob", "ref": {"$link": "<short 3min cid>"}, ... },
    "fullVideo": { "$type": "blob", "ref": {"$link": "<long cid>"}, ... }
  }
}

and serve the fullVideo entry while allowing Bluesky to access the video entry. User could be prompted to include "full video on Blacksky" in their post text if a >3min video is detected.

Trimming the longer video for Bluesky could be handled by:

  • Just cutting it off at 3 minutes (easiest)
  • Giving the user a simple video editing UI to select the Bluesky version (maybe a V2)

and advanced users posting with scripts could specify the timecode positions to cut the video.

Attachments

No response

Describe Alternatives

Naming the field fullVideo is more appview agnostic in case other appviews want to implement this, but blacksky.fullVideo could also work. Might start the precedent of e.g. -moz prefixes on new CSS properties that aren't final, though atproto comes with the limitation of not being able to go back and update flags if consensus is reached later.

Additional Context

No response

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions