出来上がりのあと: HD化・置き場・予約
Higgsfield から出てくる動画は、そのままでは SNS に出せませんでした。大きさ、フレームの数、ファイルの重さ、予約の方法のどれかで、どこかの SNS に弾かれるからです。ここでは、運営者が入間・浜松で実際にやった手順を、動いた順に書きます。YouTube・Buffer・Instagram・TikTok の名前は出しますが、運営者のアカウントやトークンは書きません。
出力は 496x864・24fps・約 15 秒です。運営者は ffmpeg で幅 1080 に広げて上下に黒帯を足し、1080x1920・30fps にそろえました。30fps にしたのは、23.93fps のまま出した動画を Facebook のリールが「24fps 未満」と弾いた実績があるからです。
そのあと HD 版を Higgsfield の置き場に置いて公開 URL を得て、YouTube は予約公開、Buffer は予約投稿、Instagram は日時指定、TikTok は台紙を作って手で上げる、と分かれました。
出力の実測と、HD化の手順
入間・浜松の出力は、ffprobe で測ると、496x864・24fps・約 15.1 秒・H.264 と AAC(音声あり)で、ファイルは 3.1〜5.8MB でした。解像度を 480p と指定したので、この大きさです。
HD化は、chinanago-dist の to-hd30.js が受け持ちます。使い方は、元の動画のフォルダと出力のフォルダを渡すだけです。フォルダの指定は、道具のあるフォルダからの相対になります。小松のときには、「../../」と書いて、E ドライブの直下を見に行ってしまった、と運営メモにあります。
道具が ffmpeg に渡している指定は、次のとおりです。
| 指定 | 値 | 理由 |
|---|---|---|
| 拡大・黒帯 | scale=1080:-2(lanczos)→ pad=1080:1920(中央・黒) | 幅を 1080 に合わせ、足りない高さを黒で埋める |
| フレームの数 | 30fps | Facebook のリールが 24fps 未満を弾くため |
| 映像 | libx264・crf 18・preset slow・yuv420p | 画質を保って縮める |
| 音声 | AAC・128k | 元の音声を残す |
| 書き出し | +faststart | 再生を早く始められるようにする |
計算すると、496x864 を幅 1080 に広げると高さは約 1880 になり、上下の黒帯は 20 ピクセルずつほどです。「黒帯」といっても、ごく細い帯です。切り抜いて 9:16 にそろえる方法より、画が欠けません(キャラクターを崩さないの頁の「黒帯」)。
出来上がりは、毎回 ffprobe で読み返して、幅 1080・高さ 1920・フレーム数 24 以上かどうかを判定しています。入間の HD 版は 18 本とも 15.104 秒で、ファイルは 7.7〜16.0MB でした。浜松は 9.7〜14.4MB です。
30fps にした理由
生成された動画は約 24fps(道具のコメントでは 23.93fps)でした。これをそのまま出したときに、Facebook のリールに「Video frame rate must be at least 24 fps」という理由で弾かれた、と道具の冒頭に書かれています。24fps に足りなかったのです。HD化の道具が「-r 30」を指定しているのは、この失敗があったからです。
弾かれた記録が残っているのは、Facebook の 1 件です。
Instagram は 1 回 10MB まで
HD 版は 7.7〜16.0MB あり、18 本のうち 17 本が 10MB を超えるので、Instagram に添付するには大きすぎました。運営メモには「Instagram への添付は 1 回 10MB まで」とあります。運営者は、Instagram 用に別の写し(video-ig フォルダ)を作りました。
作り方は、igweb の make-ig.js に書かれています。2 パスで、映像を 4.6Mbps に縮めます。1 パス目は音声を付けずに解析だけをして、2 パス目で実際の書き出しをします(最大 4.8Mbps・バッファ 9.6Mb)。音声は AAC の 128k です。出来上がりは、入間の 18 本とも 8.3〜8.6MB に収まりました。
Instagram は、Buffer には入れず、運営者のふだんの Chrome から日時指定で予約しました。入間は 2026年10月20日の 8 時台から 9 時台に、18 本ぶんを予約しています。Buffer を使わなかった理由は、記録にありません。
Higgsfield の置き場に HD 版を置く
X・Facebook・Instagram に渡すには、動画が公開された URL にある必要があります。運営者は、その置き場に Higgsfield のメディア置き場を使いました。生成のクレジットは 0 です。
手順は 3 つです。
- media_upload で、アップロード用の枠(署名つきの URL)を取る
- その URL に、HD 版を PUT する(Content-Type は video/mp4)
- media_confirm で、アップロードの完了を伝える
hd-put.js は、PUT のあとに、話の番号・media_id・公開 URL・バイト数を、話ごとの控え(hd-map.json)に書きます。SNS に渡すのは、この公開 URL です。Facebook と Instagram のリールは 540x960 以上が必要なので、HD 版を渡します。
つまずいた点が 2 つあります。
- media_upload の返事は長く、ツールの結果のファイルに全部が残らないことがありました(松島の作業)。そのため、枠の中身を自分で hd-upload-slots.json に書き写してから PUT しました。署名つきの URL は人に見せない値なので、この枠のファイルは作業用のフォルダに置いています
- PUT が 403 で返ることがありました。署名に If-None-Match が入っていたためで、道具は 403 のときだけ、If-None-Match: * を付けて 1 回だけ送り直します
運営者は、Facebook が自社のサーバーの動画を取れない、という都合で、生成物ではない実写動画の予約のときにも、この置き場を使っています。
YouTube の予約公開
yt-upload.js が、HD 版を YouTube Data API で上げます。予約は「非公開(private)」で上げて、公開日時(publishAt)を RFC3339 で指定する形です。上げる前に、--ep の指定だけで予定を表示する dry-run を見て、1 本を試してから残りを上げる、という順を守っています。
- カテゴリは 1(映画とアニメーション)、子ども向けの申告は false です
- 説明文には、行事の事実(公式の発表の出典つき)と案内、そして「このアニメはオリジナル作品です」という注記を入れました
- 控え(yt-ids.json)に、話ごとの動画 ID・予定時刻・投入した時点の状態を残します。二重に上げないように、控えにある話は飛ばします
注意点が 2 つあります。1 つ目は、予定時刻がもう過ぎている話は予約できないことです。その話は、公開(public)にして、すぐに公開される形に落とします。2 つ目は、運営者のトークンの権限が「アップロードだけ」なので、予約したあとの説明文は API で直せないことです。直すには、YouTube Studio で手で直すか、権限を取り直す必要があります。
記録の限界も書いておきます。控えにあるのは、投入した時点の状態だけです。予約どおりに公開されたかは、記録の範囲では確かめていません。また、別の道具の冒頭には、「1 本の投入に 1,600、1 日の枠は 10,000」と書かれた注意があります。ところが入間では、1 日で 18 本を上げています。この数字が、運営者のプロジェクトの実際の上限かどうかは、記録だけでは決められません。
Buffer の予約は、1 チャンネル 10 件まで
X・Facebook・Instagram への予約は、Buffer を通して sns-post.js で入れます。時刻は YouTube と同じにして、予定が過ぎていれば、すぐに投稿する設定(shareNow)に落とします。Facebook と Instagram はリール、AI で作った動画なので「AI 生成」の申告(isAiGenerated)を、Instagram と X に付けています。
つまずいた点は、Buffer は 1 チャンネルあたり、予約が 10 件までで、それより先は入らないことです(無料の枠の制限と、道具の冒頭に書かれています)。
- 浜松は、#5 と #6 が入りきらず、前のシリーズの公開で枠が空いたあとに足しました
- 入間は、X と Facebook に #1 の 1 本ずつだけを入れ、残りの話は Buffer に入れていません。10 件の上限が関わっていたと考えられますが、記録には理由が書かれていません
シリーズを続けて作るときは、先に予約中の件数を数えるのが、運営メモの結論です。X の文字数は、日本語を 2、URL を 23 と数える重みで、280 に対して 268 までに収めています。収まらないときは、物語の文、行事の一行、の順に削ります。
TikTok は台紙を作って手で上げる
TikTok は、AI アシスタントから投稿できませんでした。投稿の最後の確認がウィジェットでしかできず、Code の画面に出ないため、と浜松の道具に書かれています。
そこで、make-tiktok-sheet.js が、話ごとに「出す時刻・動画ファイル・キャプション」を並べた台紙(テキストのファイル)を作ります。キャプションは TikTok の上限の 150 文字に収めます。時刻は、YouTube・X・Facebook・Instagram の予約と同じです。上げるのは運営者が手でやります。小松のときは、シリーズが終わってから 18 本を一括で手で上げる、と運営者が決めました。台紙のキャプションには日付を書いていないので、後日そのまま使えます。
よく出る疑問
HD版のほうが、画質は上がりますか?
この手順は、解像度を 1080x1920 に「そろえる」ための拡大です。元の 496x864 に無い細かさが増えるわけではありません。運営者の記録に、元の動画と HD 版の画質を比べたものはありません。
予約した YouTube の動画は、公開前に誰でも見られますか?
予約公開の動画は、公開の時刻までは非公開(private)です。このサイトの頁では、公開前の話には動画から抜いた 1 コマと「公開予定」の日時だけを出し、公開の時刻を過ぎたら再生できる形に切り替わります。
元にした制作記録(運営者の作業フォルダにあるファイル)
- chinanago-dist/to-hd30.js
- iruma-shorts/hd-put.js
- iruma-shorts/yt-upload.js
- iruma-shorts/sns-post.js
- iruma-shorts/igweb/make-ig.js
- hamamatsu/make-tiktok-sheet.js
編集責任:ちんあなご(個人運営) 最終確認日:2026年10月22日
この頁の数字(クレジット・秒数・回数)は運営者の制作記録と Higgsfield のクレジット履歴から写したものです。料金・機能は確認日の時点で公式のページに出ていた内容で、変わることがあります。
当サイトは Higgsfield の公式サイトではなく、Higgsfield の運営会社とは関係がありません。紹介料の出るリンクは置いていません。サービスの最新の料金・規約は公式のページで確かめてください。