最近 TikTok 上 Bulin 47 那段 freestyle 很火,很多人想把自己放进去,但现有工具要么得自己剪,要么出来的东西不像。我就做了个只干这一件事的网站:上传一张照片,几分钟后得到一段 9:16 、带原声的视频,人换成你,场景、动作、镜头都和原片一样。
它是怎么做的
- 模型:fal 上的 Pixverse Swap 。原片固定,用户照片作为目标人物。指定第 96 帧(第 4 秒)作为"选人"的关键帧,因为第 1 帧画面太挤,模型会把旁边路人换掉。
- 前后端:TanStack Start ( Vite + nitro ),整站部署在 Cloudflare Workers 上;数据库用 D1 ,照片和成片存在 R2 。
- 支付:Stripe 一次性购买,没有订阅。1 次 $9.90 ,3 次 $19.90 ,5 次 $29.90 ,生成失败自动退次数。
踩过的坑
- Workers 上没有可写磁盘。照片上传原本落本地磁盘,上线后改成直接写 R2 绑定,再由同域路由读出来。
- fal 的成片放在它自己的 CDN 上,默认保存多久文档里没写明。分享链接不能赌这个,所以生成完就转存一份到 R2 ,播放支持 Range 请求,否则 Safari 拖不了进度条。
- 单条成本约 $0.40 ( 720p ,原片 6 秒超过 5 秒,价格翻倍),加上 Stripe 手续费,毛利大约 90%。我一开始给了免费预览,后来算了一下,批量注册能把预览薅穿,就关掉了。
- Google 登录一度报"找不到 provider":密钥放在 Worker 加密变量里,但认证路由只读数据库配置。改成合并读环境变量和数据库就好了。
想听听大家的意见
- 没有免费试用,直接付费,转化会不会太差?
- 定价 $9.90 一条,对这种跟热点的视频是不是偏高?
- 单模板这个方向值得做下去吗?还是应该扩展成多个热门模板?
欢迎拍砖。