fqscfqj/Y2A-Auto
YouTube到AcFun和bilibili自动化搬运工具,支持AI翻译、字幕生成、内容审核、智能监控
Y2A‑Auto – YouTube → AcFun / Bilibili auto‑repost tool
What it does – Y2A‑Auto is a self‑hosted Python application that watches YouTube channels or keyword searches, downloads new videos, optionally runs speech‑to‑text (Whisper or Voxtral), translates or quality‑checks subtitles with OpenAI models, generates titles/tags, runs a content‑moderation check, and finally uploads the finished video to AcFun, Bilibili, or both. All steps are orchestrated through a web dashboard and can run completely unattended.
Key components
- Downloader – uses
yt‑dlpto fetch video, cover image and optional auto‑generated YouTube subtitles. - ASR & subtitle pipeline – Whisper or Voxtral for speech recognition, OpenAI‑driven translation, rule‑based cleaning, and an optional AI‑powered quality‑check.
- AI‑generated metadata – title, description, tags and partition recommendation via OpenAI’s chat models.
- Content moderation – optional Alibaba Cloud Green service to filter unsafe text.
- Upload engines – QR‑code login or cookie‑based authentication for AcFun and Bilibili, with automatic subtitle burn‑in using FFmpeg.
- Management UI – Flask‑based dashboard for task queues, manual review, settings, and logs.
- Automation helpers – YouTube monitor (channel/keyword polling), CookieCloud sync for YouTube cookies, multi‑channel notification (WeChat Work, Server‑Chan, message‑pusher), and security features (password protection, brute‑force lockout, session timeout, path‑traversal safeguards).
How to get it running
- Docker (recommended) –
docker compose up -dpulls the pre‑built image (fqscfqj/y2a-auto:latest). - Local – create a Python 3.11 virtualenv, install
requirements.txt, ensure FFmpeg andyt‑dlpare on the PATH, then runpython app.py. - Windows portable – use the provided build tools; the release bundle already contains FFmpeg.
First‑time setup
- Place YouTube, AcFun and Bilibili cookies in
cookies/(YT asyt_cookies.txt, others as JSON). - Open
http://localhost:5000, enable password protection if desired, and configure API keys (YouTube Data API, OpenAI, Alibaba Cloud, notification webhooks, etc.). - Turn on
AUTO_MODE_ENABLEDto let the system run without manual intervention.
Configuration highlights (all in config/config.json)
- Video handling –
VIDEO_ENCODER(auto|cpu|nvidia|intel|amd), hardware‑accelerated HEVC preferred, fallback to H.264. - Subtitle workflow – toggle
SUBTITLE_TRANSLATION_ENABLED,SUBTITLE_QC_ENABLED, set source/target languages, batch size, and concurrency. - ASR – enable
SPEECH_RECOGNITION_ENABLED, choose provider (whisperorvoxtral), adjust VAD and language settings. - AI metadata – provide
OPENAI_API_KEY, model name, and enable generation flags (TRANSLATE_TITLE,GENERATE_TAGS, etc.). - Monitoring – supply a YouTube Data API key, define channels or keywords, and set
latestvshistoricalmode. - Notifications – list channels in
NOTIFY_CHANNELSand fill the corresponding webhook/keys. - Security – password protection, lockout after 5 failed logins, 30‑minute session timeout, secret key persistence.
Why it matters
- Automates a full end‑to‑end pipeline that would otherwise require manual downloading, transcription, translation, and re‑uploading.
- Leverages modern AI models (Whisper/Voxtral for speech, OpenAI for translation and content generation) while giving the operator fine‑grained control and optional human review.
- Designed for Chinese‑focused creators who want to repurpose YouTube content on AcFun or Bilibili, with built‑in compliance checks.
License – GNU GPL v3.
All details are taken directly from the repository’s README; no additional features are inferred.
Related
- Project
- Project
- Project
- Project
- Project