Communitygithub.com

wailzenz/wailzenz-video-dz

將說話頭影片(talking head)轉換為 9:16 Reels,支援阿爾及利亞方言——自動刪除停頓與錯誤,生成逐字阿拉伯語字幕並附法語/英語詞彙的阿拉伯語註釋,加入動態圖像、音效與封面。

wailzenz-video-dz 是什麼?

此技能專為將說話頭影片(talking head)轉換為社群媒體適用的 9:16 Reels 而設計,目標語言為阿爾及利亞方言(الدارجة الجزائرية)。它能自動偵測並刪除影片中的停頓與口誤,並基於 Whisper 引擎(可選阿爾及利亞專用模型)產生逐字時間戳記的字幕。字幕會自動保留法語或英語原文,並在括號內附加對應的阿拉伯語註釋(gloss),方便混合語碼的觀眾理解。視覺上,技能會自動規劃動態圖像(motion graphics)的擺放位置(上方、下方、全螢幕),確保字幕不會遮擋講者的臉部,並可穿插圖示、圖表、終端機畫面等解釋性面板。此外,它支援多種平台:macOS(最快,GPU 加速)、Windows、Linux、雲端環境,甚至手機(透過雲端後端),並提供 CapCut 專案輸出選項。使用者只需上傳影片或提供 Google Drive 連結,技能便會按照嚴格的編輯流程(剪輯、轉錄、校正、設計、渲染)自動產出最終 MP4 檔案。

相容平台✓Claude Code~Codex CLI~Cursor
npx skills add https://github.com/wailzenz/wailzenz-video-dz/tree/HEAD/skills/dz-reel

在你喜歡的 AI 中提問

開啟一個已預先載入此 Agent Skill 的新對話。

說明文件

🇩🇿 wailzenz-video-dz — 阿爾及利亞專用層。這些規則凌駕於下方所有內容:

  1. 方言 = 阿爾及利亞方言 (الدارجة الجزائرية)。 你撰寫或修正的每個阿拉伯語單字(字幕、鉤子、行動呼籲、封面、給使用者的訊息)都必須遵循 references/dialect-dz.md。原始技能是用海灣阿拉伯語寫的:請閱讀其指示,但切勿在觀眾看到的任何地方使用其科威特單字清單或例句。英文影片 → 寫英文。法文影片 → 寫法文。
  2. 法文/英文術語 保留拉丁字母,並在其後以阿拉伯語註釋(gloss)置於引號內 — 「هادي حاجة normal "عادية"」— 透過 fixes.json 中的 "gloss"(步驟 5)。每個拉丁詞都需要一個註釋。
  3. 環境: 每個 shell 指令都以 source "${CLAUDE_SKILL_DIR}/../../setup/env.sh" 開頭(Python 3.12 環境、ffmpeg-full、模型位於 ~/.wailzenz-video-dz)。首次在機器上執行?請執行 bash "${CLAUDE_SKILL_DIR}/../../setup/setup-mac.sh"(先詢問使用者 — 會下載約 4 GB)。切勿 pip install 到系統 Python。
  4. 轉錄(步驟 4)使用 scripts/02a_transcribe_dz.py:在 Mac GPU 上使用 whisper.cpp large-v3,或使用 --engine hadra(阿爾及利亞模型)/ --engine whisper(任何作業系統)。切勿使用 python3 -m whisper --model medium。
  5. 更新 只能透過外掛管理員(00_setup.sh 會顯示指令)。切勿覆寫技能的檔案。

🎬 風格指南 — 每個影片,毫無例外: 6. 務必執行完整的步驟 7。 分割畫面、解說面板、來自素材庫的動作、轉場、至少一個深度時刻(頭部後方、「الخلاصة」風格的影片內文字…)、音效、結尾卡。只會把字幕放在臉上的 Reels 永遠不可接受。 7. 切勿重複字幕。 面板不得顯示正在加字幕的詞語 — 不得有當前句子的動態文字,不得有上方的「大字幕」。面板是 視覺元素:圖示、圖表、UI 模型(終端機、時間軸)、隱喻、比較板、facts.md 中的事實。終端機指令、時間軸標籤和卡片標題也不得重複字幕。如果某個句子真的需要大字在螢幕上顯示,請改用 nocap:true。 8. 仔細剪輯。 01_cut_plan.py 僅剪掉 ≥ 0.55 秒的停頓,根據片段本身的噪底測量靜音,在詞語後保留比之前更多的空間,並以自我檢查結束 — 任何「⚠️」表示先修正剪輯。每個剪輯點都從靜音開始並在靜音中結束。猶豫(「الـ…」、「اممم」)僅作為一個整體保留,兩側為靜音;重新開始(「اللي تحتاج… تحتاج」)則保留第二次的取用。最終渲染後,執行 19_seam_check.py <work> <final.mp4> 並修復任何重複或破損的詞語(在阿拉伯語模式下,它對英文術語的辨識效果較差 — 請使用 -l en 重新檢查)。 9. 交替面板位置。 混合使用 R_DOWN(動畫在上方,臉部在下方)與 R_UP(臉部在上方,動畫在底部 — panelIn 會自動移動到那裡),再加上 R_LOWER(大面板,小臉部)和 R_FULL 時刻。連續兩個解說場景不得使用相同位置。 10. 將每個場景繫結到單詞時間(caps.json 中的單詞),而不是固定的秒數 — 重新剪輯時場景不會被打亂。 11. 特寫構圖: 臉部卡片從 studio.json → cardTop 裁剪;如果嘴巴低於 y ≈ 1600(Instagram 的字幕區域),則將其提高(≈ 0.3)。R_UP 會自動在頭頂顯示更多空間。

從說話影片製作 Reel — 無需剪輯軟體

整個剪輯過程都是程式碼:

  • ffmpeg 負責剪輯。
  • Whisper 負責以單詞時間戳記進行轉錄。
  • 渲染引擎負責組合字幕與動態圖像到影片上。

輸出:一個可直接發布的 MP4 檔案。

路徑: 所有 scripts/、references/ 和 motion/ 都位於此技能的資料夾中: ${CLAUDE_SKILL_DIR}


不是說話影片?請前往正確模式

輸入模式請參閱
無對話的片段資料夾(咖啡廳、餐點、產品)節奏剪輯references/montage.md
同一場次有兩個或更多攝影機播客 → Reelsreferences/podcast.md
完整的「橫向」或「YouTube」單集16:9 播客references/podcast.md(「完整橫向單集」部分)
一小時的單集 → 多個 Reels從單集製作 Reelsreferences/landscape.md(「完整單集」部分)
純文字或點子,無人物動畫解說references/motion-mode.md
網站連結或「解釋這個應用程式」網站/應用程式解說references/motion-mode.md

如果為此模式安裝了單獨的技能(dz-motion、dz-podcast 或 dz-montage),則優先使用。

⛔ 不要問「你想要哪種模式?」 — 用一句話告訴他你理解了什麼,然後繼續。

渲染器: 始終使用輕量版(04_render_frames.js),且不要提到「渲染器」這個詞。

  • 他想自己修改?為他開啟工作室 → references/studio.md
  • 僅當他明確要求時才使用 Remotion → references/remotion.md

🎬 DaVinci: 要求「用 DaVinci 做」?這個外掛無法在 DaVinci Resolve 內部進行剪輯。用一句話告訴他,然後用我們的渲染器繼續(如果他想要自己完成,可以導出 SRT/FCPXML 檔案)。

🎞️ CapCut 模式: 他說「用 CapCut 做」或「我想自己在 CapCut 裡編輯」?改為輸出可編輯的 CapCut 專案(帶有縮放的片段、CapCut 字幕和文字、語音、特效、背景音樂、透明動畫)→ references/capcut.md(單一腳本 scripts/40_capcut.py)。


⛔ 你與使用者的互動方式

你負責準備,而不是他。 禁止給他一系列要執行的指令。

  • 不要問「你有那個嗎?」 — 你自己檢查。 缺少東西?「我現在需要準備兩樣東西給你,需要兩分鐘 — 開始嗎?」
  • 不要使用術語: 說「繪製幻燈片的工具」而不是「puppeteer」,說「影片品質」而不是「編解碼器」。
  • 告訴他我們在哪個步驟, 並估算時間: 「我移除了停頓 — 影片長度減少了一半。現在我轉錄你的說話內容,大約 3 分鐘。」
  • 一次只做一件事。
  • 不要在每個重要階段之後,不給他看截圖或摘要就交付。

✅ 在哪裡執行?任何地方 — 手機 · 雲端 · Mac · Windows · Linux · Codex

本機裝置(Mac + Claude Code)最快最強大,但並非必要。禁止對使用者說「這在你的手機或雲端上無法完成」。如果某個工具在該環境中無法執行,請降級使用替代方案,並僅用一行提到你使用了什麼。 請參閱 references/any-environment.md — 提供替代方案(轉錄、人物裁切、動畫渲染…)和手機方法。以及經過測試的詳細食譜(無抖動裁剪、紙片動畫 style、組合)於 references/phone-cloud-playbook.md。

  • 在手機上:他將影片附加到對話中,然後在雲端環境中執行,手機可以關閉。
  • Windows:使用 python 而非 python3 → references/windows.md。

Windows: 使用 python 而非 python3,路徑為 C:/… → references/windows.md


步驟 0、0.5 和 1 — 工具、品味與身份

請參閱並執行 references/start.md — 所有模式的開頭都相同。


步驟 2 — 從他那裡取得影片

方法如何操作
他裝置上的檔案(最佳)複製到 <work>/src.mov
Google Drive 連結設為「任何擁有連結的人均可檢視」,然後執行下方指令
Google Drive Connector如果檔案是私有的 — 使用工作階段中的 Connector 工具

Drive 連結(ID 位於 /d/ 和 /view 之間):

curl -sL "https://drive.usercontent.google.com/download?id=<ID>&export=download&confirm=t" -o <work>/src.mov
  • 4K 最好(縮放會從原始解析度裁切)。但 1080p 也有效 — 不要拒絕它,也不要要求重新拍攝。
  • 橫向影片(訪談、播客、電視節目)?步驟相同。 步驟 6 會圍繞每個鏡頭的臉部縱向裁剪,而不是拉伸 → references/landscape.md
  • 🪝 從單集或訪談製作的 Reel = 必須有書面鉤子。 在 02_captions.py 之後:
    1. python3 scripts/22_hook.py suggest <work>
    2. 從最有力的台詞(不是他說的第一句話)中寫下 3 個鉤子 → check → 他選擇 → apply
    3. preview 並在完整渲染前閱讀 hook_sheet.jpg。
    • 在我們引擎之外構建的 Reel(現成的 mp4)?使用 22_hook.py overlay → hook.mov(透明)。
    • 規則和格式 → references/podcast-hook.md

檢查時長:

ffprobe -v error -show_entries format=duration -of csv=p=0 <work>/src.mov

🎞️ 掉幀?

螢幕錄製或非原生相機應用程式(iPhone 在瀏覽器中會丟失 13-54% 的幀)。在剪輯前檢查間隙:

ffprobe -v error -select_streams v -show_entries frame=pts_time -of csv=p=0 <work>/src.mov | python3 -c "import sys;t=[float(x) for x in sys.stdin if x.strip()];g=[(round(a,2),round(b-a,2)) for a,b in zip(t,t[1:]) if b-a>0.07];print(len(g),'間隙',g[:8])"

有間隙?在步驟 3 之前修復:

ffmpeg -i src.mov -vf "minterpolate=fps=30:mi_mode=mci:mc_mode=aobmc:me_mode=bidir:vsbmc=1" -c:a copy src_fixed.mov

並告訴他:「錄製時有掉幀 — 我已修復。下次建議他用相機應用程式拍攝。」

🔬 檢查光線和顏色(幾秒鐘,安靜地)

python3 scripts/25_scopes.py <work>
  • 「正常」 ← 不要提及。
  • 有問題(太暗、偏黃、暗淡) ← 一句話:「影片有點暗且偏黃 — 需要調整嗎?」
    • 用單張截圖向他展示 before/after。
    • 同意 → 在 theme.json 中設定 "grade":"auto"(僅校正色調)。
    • 拒絕或保持沉默 → 不要碰它(規則 4)。

步驟 3-11 — 製作流程

3) 剪輯計劃

python3 scripts/01_cut_plan.py <work>

告訴他移除了多少:「我移除了 52 秒的靜音 — 影片從 98 秒變成 46 秒。」

3.5) 音訊增強(可選): 有迴音或噪音,或者他說「增強音訊」? → references/audio-enhance.md

bash scripts/02b_enhance_audio.sh <work> --local

4) 按單詞時間戳記轉錄

source "${CLAUDE_SKILL_DIR}/../../setup/env.sh"
ffmpeg -v error -i <work>/src.mov -vn -ac 1 -ar 16000 -y <work>/a.wav
python3 scripts/02a_transcribe_dz.py <work> > <work>/whisper.log 2>&1        # 阿拉伯語 / 達里賈語(預設 --lang ar)
# 英文影片:python3 scripts/02a_transcribe_dz.py <work> --lang en
# 使用阿爾及利亞模型 / 並排比較:--engine hadra | --engine compare(首次執行下載約 1.8 GB)
  • 對於 Reel,在 GPU 上需要幾秒鐘到一分鐘。失敗?請檢查 tail -5 <work>/whisper.log
  • 預設引擎:在 Mac 上使用 whisper.cpp 時為 cpp,否則為 whisper。對於新的阿爾及利亞語使用者,請執行一次 --engine compare,並保留轉錄稿需要較少修正的引擎(使用 --save-default 儲存)。

5) 校正與字幕

閱讀 a.json 並修正每個句子 — Whisper 在阿爾及利亞達里賈語方面會出錯(將其轉換為標準阿拉伯語,法語單字拼寫錯誤)。根據 references/dialect-dz.md 進行校正(拼寫,以及使用者選擇的字體來書寫法語單字),如果你不認識某個單詞?問他,不要猜測。寫入 <work>/fixes.json:

{ "fix": [["هادي","حاجة","normal","بزاف"], ["نخدمو","بـ","Claude","Code"]], "hot": ["بزاف"],
  "gloss": {"normal": "عادية", "Claude Code": "كلود كود"}, "fx": {"خلاص":"drop"} }
  • gloss = 放在引號內的阿拉伯語翻譯,跟在每個法語/英語單字後面 — 「normal "عادية"」。鍵是 fix 中出現的單字(或短語)。拉丁單字會自動套用顏色("hot_latin": false 可以停用此功能)。02_captions.py 會告訴你遺漏了什麼。
  • hot = 在說話時會加上高亮效果的單字。
  • fx 是可選的 → references/word-fx.md
  • ⛔ 每個句子的單字數量 = Whisper 中該句子的單字數量。 否則時間戳記會錯亂(腳本會阻止你)。
python3 scripts/02_captions.py <work>

5.5) 向他展示文字,讓他移除不喜歡的部分 ← 強制

在設計任何場景之前:

python3 scripts/10_script_edit.py <work> show
  • 會列印他的話語,帶有編號和時間戳,並寫入 script.txt。
  • 還會在單次執行中列印重複的句子和刪除建議 — 之後不要執行 dupes。
  • ⛔ 在聊天中完整列印腳本 並說:「你想移除哪些部分?」— 不要只依賴檔案。

重複的句子: 第一個是錯誤,第二個是修正。 「你把句子說了兩次 — 'قدرنا نحل السبب' 然後 'قدرنا نعرف السبب'。移除第一個?」

python3 scripts/10_script_edit.py <work> drop 6 8       # 從影片和音訊中移除這兩個句子
python3 scripts/10_script_edit.py <work> keep 1 2 5 9   # 僅保留這些
python3 scripts/10_script_edit.py <work> undo
  • 所有後續內容都會移動,cut.json、caps.json 和 sfx.json 會更新。
  • 在此處執行此操作。 在場景設計之後刪除會擾亂所有時間。
  • 任何刪除後:重新執行步驟 6,並使用 --force 進行渲染。

6) 剪輯與縮放

python3 scripts/03_cut_zoom.py <work>
mkdir -p <work>/vfr && ffmpeg -v error -i <work>/cutz.mp4 -vf fps=30 -q:v 3 -y <work>/vfr/%05d.jpg
  • 縮放是每個片段固定的(6.0 版本): 首次執行會寫入 cut.json ← "zooms": {"25.05": 1.06, …}(鍵是原始時間軸中片段的開始時間)。 移除、添加或分割片段?其餘片段的縮放不會偏移,因此你的渲染座標仍然正確。更改片段的縮放 = 編輯其數值。keep 的順序是自由的(可以將後面的片段移到前面)。

6.1) ⛔ 從頭部上方裁剪 — 對任何包含人臉卡片的影片都是強制的(半螢幕、R_DOWN、R_LOWER):

python3 scripts/23_headcrop.py <work> --from <第一張卡片的開始時間>
  • 寫入 studio.json ← cardTop。
  • 裁剪 在整個影片中固定 — 沒有追蹤,沒有攝影機跟隨。
  • 從他頭部達到的最高點上方開始,留一個小邊距(1.5%)。
  • 不要切到他的頭,也不要顯示空的天花板 — 「頭頂上方空間過大」同樣是錯誤。
  • 使用者已經提醒過很多次,並且感到沮喪。
  • 用眼睛檢查他靠近相機的鏡頭。
  • 他身體下方有固定的文字?使用 theme.json ← cardZoom 進行縮放(預設值為 1)。

7) 設計場景 ← 最重要的步驟

在設計任何場景之前,請閱讀:

  1. references/motion-rules.md — 身份識別、facts.md 中的事實清單、禁止事項。
  2. references/scenes.md — 如何編寫場景、動作套件、點子、B-roll。
  3. references/moves.md — 動作庫: python3 scripts/35_moves.py plan --title "…" --cues … → 影片的情節串連圖板(3 個圍繞中心的主題 + 變化)。你是有意識地選擇,使用者無需選擇。

🎯 從初稿就全力以赴(6.0 版本 — 被庫採用並流行的 Reel 風格): 在表演和動作上付出努力 — 豐富、深刻且令人驚喜,而不是平淡的東西。

  • 在渲染之前,規劃 2-3 個深度時刻 並用一句話告訴使用者:一個元素 從他頭後經過(11_behind_text.js person + MV.person)、來自他聲音的波動(37_env.py ← MV.env)、他頭後的點狀圖、3D 軌道、客戶身份的形狀 成為動畫(標誌的弧線 = 計數器和筆觸)、One-take 入場(攝影機沉入標誌,然後從下一個鏡頭浮出)。
  • 這是你要優先考慮的,並非唯一:卡片、印章和徽章 並非禁止 — 在主題需要時使用它們。
  • 動作書寫其文字的句子 = 為它設定 nocap(不要在上方和下方之間分散注意力)。而頭頂書寫在空間允許時效果更好。
  • 程式碼食譜 → references/moves.md §3 及以下。

⛔ 規劃規則(經使用者認可):

時刻矩形形狀
無圖形的純說話R_FULL他的臉填滿螢幕,字幕位於底部 1460
任何圖形或動作R_DOWN圖形在上方(y 280-520)← 字幕 ← 他的臉在下方,全螢幕寬度
B-roll 或大型面板R_LOWER大卡片在上方 ← 字幕 ← 他的小臉在下方
完整解說(數字、列表)R_OFF沒有臉,只有他的聲音繼續 ← references/explainer-and-pace.md
  • ⛔ 字幕永遠不能寫在說話者的臉上。 在任何包含影片卡片的模式下,所有字幕都在卡片上方,進度條也是。
  • 模式的選擇是你根據意義做出的決定。

8) 場景與編寫

python3 scripts/04_scenes.py <work>
python3 scripts/05_layers.py <work>
python3 scripts/06_export.py <work>

⛔ 04_scenes.py 中的規則:

  • 每個場景一個想法。 沒有複合面板。
  • 不要讓文字說話。 圖示、圖表、模型。
  • 字幕與視覺效果之間的距離。 面板內容在時間上與字詞重疊,而不僅僅是同時出現。
  • facts.md 在「關於」部分。 如果他提到了一個數字或事實,並且它存在於 facts.md 中,則在面板中使用它。
  • 節奏: 2 秒規則用於短語。長解釋 → 動畫面板。

9) 音效

python3 scripts/07_sfx.py <work>
  • 自動:過渡、強調、節奏匹配。
  • 可選:references/sfx.md 用於手動覆蓋。

10) 渲染

python3 scripts/04_render_frames.py <work>
ffmpeg -v error -i <work>/frames/%05d.png -i <work>/a_cut.wav -c:v libx264 -pix_fmt yuv420p -preset slow -crf 18 -c:a aac -b:a 192k -y <work>/final.mp4
  • 告訴他需要多長時間:「渲染 2000 幀 — 在 Mac 上大約 5 分鐘。」
  • 如果他說「太長」? → references/fast-render.md

11) 最終檢查

python3 scripts/19_seam_check.py <work> <work>/final.mp4
  • 修復任何重複或破損的詞語。
  • 如果他說「完美」? → 交付。
  • 如果他說「改變這個場景」? → 用手動場景編輯編輯 scenes.json,然後從步驟 8 重新開始。

支援的影片類型

類型步驟提示
純說話標準流程無需手動調整
橫向訪談步驟 6 進行縱向裁剪使用 references/landscape.md
多機位播客使用 references/podcast.md自動切換攝影機
螢幕錄製步驟 2 檢查掉幀使用 minterpolate 修復
手機影片步驟 2 檢查旋轉自動修正方向

附錄:用於 fixes.json 的常見修正

修正範例原因
標準阿拉伯語 → 達里賈語"أريد" → "حاب"Whisper 傾向於標準阿拉伯語
法語拼寫"normal" → "نورمال"保留使用者選擇的字體
英語技術術語"API" → "API"保持原樣,添加註釋
重複"هادي" → 移除口誤

常見問題

問:我需要安裝任何東西嗎? 答:首次使用,技能會要求你執行設定腳本(約 4 GB 下載)。之後,所有內容都在本機執行。

問:我可以在手機上使用嗎? 答:可以。將影片附加到對話中,技能會使用雲端環境進行處理。你的手機可以關閉。

問:輸出是什麼? 答:一個準備好發布到 Instagram 或 TikTok 的 MP4 檔案。

問:我可以自己編輯嗎? 答:可以。要求 CapCut 模式以獲得可編輯的專案,或 DaVinci 模式以獲得 SRT/FCPXML。

問:它支援英語或法語嗎? 答:可以。技能會自動偵測影片的語言。法語/英語術語會保留原文,並附加阿拉伯語註釋。

Individual skills in this repo

This repo contains 4 individual skills — each has its own dedicated page.

wailzenz/wailzenz-video-dz

مونتاج مقاطع بلا كلام على الإيقاع — مجلد مقاطع (مقهى، سفرة، منتج، مكان، فعالية) يتحوّل لفيديو واحد 9:16 يختار أحلى لحظة من كل مقطع ويقطع على نبضات الصوت. Use when user says "مونتاج من هالمقاطع"، "سو فيديو من هالكلبات"، "ركّب المقاطع على الأغنية"، "مونتاج على الإيقاع"، or sends a folder of clips without speech. Not for a talking video (use dz-reel). Darija triggers: "دير لي مونتاج على الإيقاع"، "ركّب هاد المقاطع".

wailzenz/wailzenz-video-dz

فيلم موشن قرافيكس ثلاثي الأبعاد بلا شخص ولا تصوير — من نص أو فكرة أو سكربت، بصوته أو صوت مولّد، 60 فريم. وشرح موقع أو تطبيق بلقطات حقيقية داخل آيفون أو ماك بوك 3D. Use when user says "فيديو موشن"، "شرح بالموشن"، "سو فيديو من هالنص"، "موشن قرافيكس"، "اشرح هالموقع بفيديو"، "اشرح التطبيق بفيديو"، "ديمو آيفون". Not for editing a talking video (use dz-reel). Darija triggers: "دير لي فيديو موشن"، "اشرح بالموشن".

wailzenz/wailzenz-video-dz

يمنتج البودكاست والمقابلات — كاميرتين أو أكثر لنفس الجلسة إلى ريلات 9:16 بكابشن عربي وهوك مكتوب، أو الحلقة كاملة 16:9 لليوتيوب، أو حلقة ساعة إلى عدة ريلات. Use when user says "بودكاست"، "كاميرتين"، "الحلقة كاملة بالعرض"، "حلقة يوتيوب"، "ريلات من الحلقة"، "طلّع ريلات من المقابلة"، or sends multi-camera files or a long episode. Not for a single talking video (use dz-reel). Darija triggers: "دير لي ريلز من البودكاست"، "قطّع الحلقة".

wailzenz/wailzenz-video-dz

يصمم كفر الريل (أول فريم بالفيديو، كل المهم بمربع 1:1 فينقرا بشبكة البروفايل) وثمبنيل يوتيوب 16:9 بثلاث أفكار — بأحجام تنقرا بشاشة الجوال. Use when user says "سو كفر"، "كفر الريل"، "غلاف الريل"، "ثمبنيل"، "ثمب يوتيوب"، "صورة مصغرة"، "thumbnail"، "الكفر ما يبين"، or after any finished video. Not for carousel covers. Darija triggers: "دير لي غلاف"، "دير thumbnail".

相關技能