PDF, Audio & Video to Markdown: OCR + Transcripts avatar

PDF, Audio & Video to Markdown: OCR + Transcripts

Pricing

from $0.60 / 1,000 text pages

Go to Apify Store
PDF, Audio & Video to Markdown: OCR + Transcripts

PDF, Audio & Video to Markdown: OCR + Transcripts

PDFs, scans, audio and video to clean, LLM-ready Markdown: tables preserved, auto OCR, timestamped transcripts with SRT/VTT subtitles (Whisper), video keyframes, RAG chunks. Pay per page or minute.

Pricing

from $0.60 / 1,000 text pages

Rating

0.0

(0)

Developer

Marcel Tomas

Marcel Tomas

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

4 hours ago

Last modified

Share

Turn PDFs, scans, recordings and videos into clean, LLM-ready Markdown — from $1 per 1,000 pages and $0.48 per hour of audio.

Feed your AI agents, RAG pipelines and automations with text they can actually use, from one Actor:

  • PDFs and images: text pages are read directly from the PDF (fast and exact); scanned pages and images are OCR'd automatically, only where needed, so you never pay OCR prices for pages that already contain text.
  • Audio and video: MP3, WAV, M4A, OGG, FLAC, MP4, MOV, WebM, MKV → timestamped transcript (Whisper large-v3 turbo, 99+ languages), segments, SRT/VTT subtitles and optional video keyframes as images.

✅ Headings, lists and tables preserved as Markdown ✅ Automatic OCR in 9 languages ✅ Transcripts with timestamps + subtitles ✅ Keyframes from videos ✅ Ready-made RAG chunks ✅ No subscription

Why this Actor

This ActorTypical PDF extractors
Price$0.001 per text page, $0.003 per OCR page (lower on paid plans)$0.003–0.02 per PDF, $0.002–0.015 per OCR page
OCROnly on pages that need it (auto)Every page, or not at all
OutputMarkdown with headings, lists, tables, page markers + optional chunksPlain text
Words broken across linesRe-joined (custo-/mers → customers), real hyphens keptLeft broken
Failed filesFreeOften charged
Transcription$0.008 per audio minute ($0.48/hour), $0.003 with your own Groq key$0.01–0.04 per minute

Example

Input:

{
"sources": ["https://arxiv.org/pdf/1706.03762"],
"includeChunks": true
}

Output (shortened):

{
"source": "https://arxiv.org/pdf/1706.03762",
"status": "ok",
"pageCount": 15,
"textLayerPages": 15,
"ocrPages": 0,
"markdown": "<!-- page 1 -->\n...\n## Abstract\n\nThe dominant sequence transduction models are based on complex recurrent or convolutional neural networks ...",
"chunks": [{ "index": 0, "pageFrom": 1, "pageTo": 1, "text": "...", "chars": 1480 }],
"processingMs": 799
}

15 pages in under a second, 35 RAG chunks, cost $0.015.

Audio/video input:

{
"sources": ["https://example.com/podcast-episode-42.mp3"],
"includeSubtitles": true
}

Output (shortened):

{
"source": "https://example.com/podcast-episode-42.mp3",
"status": "ok",
"mediaType": "audio",
"durationSec": 1834.2,
"minutesTranscribed": 31,
"language": "english",
"markdown": "**[00:00]** Welcome back to the show. Today we talk about ...",
"segments": [{ "start": 0, "end": 4.2, "text": "Welcome back to the show." }],
"srt": "1\n00:00:00,000 --> 00:00:04,200\nWelcome back to the show.\n..."
}

Use cases

  • RAG & AI agents: index reports, manuals, papers and contracts with page-level citations.
  • Invoices, receipts and scans: get searchable text from scanned PDFs and photos.
  • Podcasts, meetings, webinars, lectures: transcripts for search, summaries and show notes; subtitles for publishing.
  • Video for AI: transcript + keyframes give a multimodal model the whole video at a fraction of the cost.
  • Automations: n8n, Make, Zapier or the Apify API — send a file URL, get Markdown back.
  • MCP tool: let Claude, ChatGPT or Cursor call it through the Apify MCP server.

What you get per document

FieldMeaning
markdownThe whole document as Markdown, with invisible <!-- page N --> markers (optional)
chunksOptional: the Markdown split on paragraph/table boundaries (size and overlap configurable), each with its page range
pagesOptional: raw text per page, the method used (text-layer, ocr, empty) and OCR confidence (0–100)
MetadataFile type, size, page count, title, author, creation date
StatsPages processed, text-layer pages, OCR pages, mean OCR confidence, characters
statusok, partial (page limit or budget reached — you still get what was processed) or error (with the reason, not charged)

For audio and video:

FieldMeaning
markdownTranscript as Markdown, one paragraph per ~minute with **[mm:ss]** timestamps
segmentsSentence-level segments with start/end seconds (on by default)
srt, vttSubtitles (turn on Subtitles)
keyframesVideo frames (scene changes or every N seconds) as image URLs in your key-value store, with their timestamps
MetadataMedia type, duration, detected language, minutes transcribed

Quick start

  1. Paste one or more direct links to PDF, image (PNG, JPEG, TIFF, WebP, GIF, BMP), audio or video files.
  2. Documents: keep OCR = Auto and pick the OCR languages: English, Spanish, Catalan, French, German, Italian, Portuguese, Dutch, Polish.
  3. Audio/video: transcription is on by default and detects the language; set it only if detection struggles. Turn on Subtitles or Keyframes if you need them.
  4. For RAG, turn on RAG chunks and choose a chunk size.

Pricing (pay per event)

EventFree planPaid plans
pdf-page — page read from its text layer$0.001down to $0.0006
ocr-page — scanned page or image processed with OCR$0.003down to $0.0018
audio-minute — one started minute of audio transcribed$0.008down to $0.005
audio-minute-byok — same, with your own Groq API key$0.003down to $0.002
keyframe — one video frame extracted and stored$0.001down to $0.0006

That is $1 per 1,000 text pages, $3 per 1,000 OCR pages and $0.48 per hour of audio on the free plan. Never charged: files that cannot be downloaded or are not supported. Set a max-charge limit and the run stops cleanly at it, still delivering what was already processed.

Without your own key, free-plan accounts can transcribe up to 30 minutes per run. Add a Groq API key to lift the cap and pay the lower audio-minute-byok price (Groq bills you for the transcription itself).

FAQ

Does it work with scanned PDFs? Yes. In Auto mode each page is checked: pages with a text layer are read directly, scanned pages are OCR'd at 300 DPI.

Are my files stored? Files are downloaded into your run, processed and deleted from the run's temporary disk. Results stay in your own Apify storage. PDFs and images are processed entirely inside the run (no third-party service). For transcription, the audio track is sent to Groq's Whisper API; with your own key, under your Groq account.

Which languages can be transcribed? Whisper large-v3 turbo supports 99+ languages and detects the language automatically.

Long recordings? Audio is split into 10-minute parts and joined back with continuous timestamps. Default limit 120 minutes per file (maxMediaMinutes, up to 600).

What about tables? Simple column layouts become Markdown tables. Complex tables (merged cells, rotated text) are kept as text.

Can I process only some pages? Yes: set a page range such as 1-5,8,10-.

Password-protected PDFs? They cannot be opened without the password.

Limits? Up to 1 GB per file and 2,000 pages per document (defaults: 200 MB, 300 pages).

Good to know

  • Only direct file links. Links to YouTube, social networks or other platform pages are rejected. Process only files you have the right to use.
  • Transcript quality depends on audio quality; music, cross-talk and heavy accents lower accuracy.
  • OCR quality depends on scan quality; use the per-page confidence to spot weak pages.

Support

Open an issue on the Actor's Issues tab with the run ID. Feature requests welcome.