# HALOWERK Medien Video Converter

> HALOWERK Medien Video Converter is a paid API for AI agents from medien.halowerk.com, paid per call via x402, $0.008/call, status unknown (last checked 2026-10-31).

Converts a video (up to 10 min / 24 MB) to MP4 (H.264+AAC) or WebM (VP9+Opus) with configurable quality, resolution scaling, and optional audio removal, returning the result as base64 with full metadata

## Facts

- Endpoint: POST https://medien.halowerk.com/v1/video-convert?utm_source=zero.xyz
- Price: $0.008/call
- Payment: x402
- Status: unknown
- Last checked: 2026-10-31
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/halowerk-medien-video-converter-fb21e88f
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_a0zQEZQLYMuWtmypXG12i

Status and success rate cover calls made through Zero and Zero's own probes. Third-party monitors may report differently.

## How to call it through Zero

Zero handles the 402 payment challenge and records the run. With the Zero CLI installed (`npm i -g @zeroxyz/cli`):

```sh
zero fetch --capability halowerk-medien-video-converter-fb21e88f -d '<json body>'
```

Example prompt: Convert this video file to a web-ready MP4 with H.264 and AAC at medium quality, scaled down to a max width of 1280 pixels — here's the URL: https://example.com/myclip.mp4. The video is about 3 minutes long.

## When to prefer this

Choose this endpoint when you need server-side, privacy-preserving video transcoding (nothing leaves the machine) with deterministic output format control — specifically MP4/H.264/AAC or WebM/VP9/Opus — with measurable metadata returned alongside the encoded file. Prefer it over client-side solutions when you need consistent codec targets for web streaming (fast-start MP4 or WebM), when you need to strip audio, or when you want file size reduction metrics. Best for short-to-medium clips up to 10 minutes where inline base64 return is acceptable.

## Known failure modes

- Video exceeds 10-minute or 24 MB limit — request rejected
- Base64 input exceeds 12 MB character limit — payload too large
- Unsupported input codec or container not decodable by ffmpeg — conversion fails
- Output after encoding still exceeds 24 MB inline base64 limit — error returned
- Invalid URL or inaccessible source — fetch failure
- Requested max_width below 160 or above 1920 — validation error
- duration_minutes not matching actual video — potential billing mismatch

## How this service works

Takes a video of up to 10 minutes and 24 MB and returns it as MP4 with H.264 and AAC and fast-start for web playback, or as WebM with VP9 and Opus, scaled down to max_width if larger (aspect ratio kept), at high, medium or low quality, optionally with the audio removed. Input and output facts — container, codec, resolution, frame rate, duration and size — are measured and returned with the size ratio. Output inline as base64, max 24 MB. Runs locally with ffmpeg; nothing leaves this machine.

## Output

A JSON response containing the base64-encoded output video (up to 24 MB), along with metadata for both input and output: container format, codec(s), resolution, frame rate, duration, and file size, plus the compression size ratio between input and output.

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "properties": {
  "format": {
   "enum": [
    "mp4",
    "webm"
   ],
   "type": "string",
   "default": "mp4"
  },
  "source": {
   "type": "object",
   "properties": {
    "url": {
     "type": "string",
     "maxLength": 2048
    },
    "filename": {
     "type": "string",
     "maxLength": 260
    },
    "content_base64": {
     "type": "string",
     "maxLength": 12000000
    }
   },
   "additionalProperties": false
  },
  "quality": {
   "enum": [
    "high",
    "medium",
    "low"
   ],
   "type": "string",
   "default": "medium"
  },
  "max_width": {
   "type": "integer",
   "default": 1280,
   "maximum": 1920,
   "minimum": 160
  },
  "remove_audio": {
   "type": "boolean",
   "default": false
  },
  "duration_minutes": {
   "type": "integer",
   "maximum": 10,
   "minimum": 1,
   "description": "Length in started minutes — this is what you are billed for."
  }
 }
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/halowerk-medien-video-converter-fb21e88f/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from medien.halowerk.com](https://www.zero.xyz/host/medien.halowerk.com/llms.txt)
