Skip to main content

Standalone AV metadata capture tool

Project description

AVMC

A standalone AV metadata capture tool (current source: javbus) with a clean pipeline.

Features

  • Accepts a single video file or a directory path.
  • If a directory is provided, recursively scans video files and processes them one by one.
  • Detects subtitle-style filenames and appends -C to output names.
  • Organizes output as success_output_folder/Actor1,Actor2,Actor3/Number (or success_output_folder/Number when no actor).
  • Optional subtitle badge on poster image.
  • Uses local config.json by default; no dependency on parent project config.

Project Structure

  • main.py: CLI entry
  • pipeline.py: scan + process pipeline
  • sources/javbus.py: metadata scraper
  • io_ops.py: image download/crop/badge, NFO writing, file move
  • config.json: runtime config

Installation

cd avmc
pip install -r requirements.txt

Usage

Run as module:

python -m avmc /path/to/video_or_dir

Run as script:

python avmc/main.py /path/to/video_or_dir

Options:

  • -c, --config: config file path (default: avmc/config.json)
  • -p, --proxy: temporary proxy override (higher priority than config/env)
  • --debug: dump raw HTML to .adc_debug/; keep source video in place and create a symlink in output

Config

Default config file: avmc/config.json

{
  "success_output_folder": "output",
  "failed": {
    "move_enabled": false,
    "output_folder": "failed"
  },
  "proxy": {
    "proxy": "",
    "timeout": 10,
    "retry": 3
  },
  "javbus": {
    "cookie": "existmag=all"
  },
  "scan": {
    "escape_folders": ["output"]
  },
  "subtitle_badge": {
    "enabled": true,
    "backup_enabled": true
  },
  "image": {
    "jpeg_quality": 85,
    "optimize": true,
    "progressive": true
  }
}

Subtitle Detection

Subtitle flag is inferred from filename patterns (case-insensitive), including compact forms like:

  • ABC123C
  • ABC123CH
  • ABC123CHS
  • ABC123CHT

When detected:

  • output number becomes NUMBER-C
  • NFO adds 中文字幕 tag/genre
  • poster badge can be applied when enabled

Notes

  • If scraping fails, source video is kept in place by default.
  • Set failed.move_enabled=true to move failed files into failed.output_folder.
  • Image host may return 403 depending on network/proxy/cookie status.

Development

  • See AGENTS.md for coding-agent execution rules in this folder.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

avmc-0.1.0.tar.gz (14.2 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

avmc-0.1.0-py3-none-any.whl (15.4 kB view details)

Uploaded Python 3

File details

Details for the file avmc-0.1.0.tar.gz.

File metadata

  • Download URL: avmc-0.1.0.tar.gz
  • Upload date:
  • Size: 14.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.10.0

File hashes

Hashes for avmc-0.1.0.tar.gz
Algorithm Hash digest
SHA256 2db10d5ae14dbecf26db02a7adf2886ba3b7e1713ade3637b88f9221774f8734
MD5 df4a2a5e6d24514d525e5c217cb6872c
BLAKE2b-256 3ac9838a8776554f7be124fec3b2d1f49f042562ad84a06dbc1e7bf7bff04c9e

See more details on using hashes here.

File details

Details for the file avmc-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: avmc-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 15.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.10.0

File hashes

Hashes for avmc-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 58329d806d5dfb149a1adcf5475d25a83d2676b95cfbbaa9c7d5757a00377d51
MD5 f4f2b3f9688d99eaf43f0c08094217c0
BLAKE2b-256 65cbe1e24f2fa3b39e9a80baad41de7ebe8d51355df7903665247e13fadde422

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page