Content transformation tool that converts written medical and scientific materials into professionally structured audio scripts suitable for podcasts, educational videos, audiobooks, and voiceover narration.
Key Capabilities:
✅ Use this skill when:
❌ Do NOT use when:
Integration:
abstract-summarizer (content condensation), lay-summary-gen (patient-friendly language)medical-translation (multi-language scripts), voice-cloning-tool (AI narration)Convert written text to conversational audio style:
python
from scripts.audio_writer import AudioScriptWriter
writer = AudioScriptWriter()
# Transform written content
script = writer.convert_to_audio(
source_text=research_paper,
format="podcast", # podcast, video, lecture, audiobook
target_audience="medical_students",
duration_minutes=15
)
print(script.spoken_text)
# Converts: "The pathophysiology of diabetes mellitus involves..."
# To: "So what exactly happens in diabetes? Well, it all starts when..."
Transformation Rules:
Written StyleAudio StyleExample"Furthermore""Plus"Less formal transitions" et al.""and their colleagues"Expand abbreviationsNumbers in textSpoken numbers"15%" → "15 percent"Long sentences15-20 word maxBreak into digestible chunksPassive voiceActive voice"was observed" → "we saw"CitationsOmit or footnote"(Smith et al., 2024)" → [reference tone]
Create phonetic spelling for medical terms:
python
# Generate pronunciation guide
pronunciation = writer.create_pronunciation_guide(
text=script,
include_phonetic=True,
include_syllables=True
)
# Output:
# "Hyperlipidemia: hi-per-lip-i-DEE-mee-uh"
# "Metformin: met-FOR-min"
# "Atherosclerosis: ath-er-oh-skleh-ROH-sis"
Guide Elements:
Calculate speaking duration and mark pacing cues:
python
# Analyze timing
timing = writer.calculate_timing(
script=script,
speaking_rate="conversational", # slow, conversational, fast
include_pauses=True
)
print(f"Estimated duration: {timing.duration_minutes} minutes")
print(f"Word count: {timing.word_count}")
print(f"Pace: {timing.words_per_minute} WPM")
Speaking Rates:
StyleWPMUse CaseSlow/Educational120-130Patient education, complex topicsConversational140-160Podcasts, general audienceFast/News170-190Time-constrained contentVariableVariesDynamic pacing with pauses
Pacing Cues:
text
[BREATHE] - Brief pause for narrator
[PAUSE 2s] - Two-second pause for emphasis
[SLOW DOWN] - Reduce pace for key point
[SPEED UP] - Increase energy/excitement
[BEAT] - Dramatic pause
Generate scripts for different audio formats:
python
# Podcast episode
podcast = writer.create_podcast_script(
content=article,
episode_format="interview", # solo, interview, panel
include_intro_music=True,
ad_breaks=[5, 12] # minutes
)
# Educational video
video = writer.create_video_script(
content=lecture_slides,
visual_cues=True, # Mark where visuals change
b_roll_notes=True # Suggest supplemental footage
)
Format Types:
FormatCharacteristicsBest ForPodcastConversational, segments, adsLong-form content, interviewsVideoVisual cues, B-roll notesYouTube, educational platformsLectureStructured, Q&A breaksOnline courses, trainingAudiobookChapter markers, consistent toneTextbooks, memoirsNewsTight, factual, quickResearch briefs, updates
Scenario: Convert published study to 15-minute podcast episode.
bash
# Convert paper to podcast script
python scripts/main.py \
--input paper.pdf \
--format podcast \
--duration 15 \
--style conversational \
--include-intro-outro \
--output podcast_script.txt
# Generate pronunciation guide
python scripts/main.py \
--input podcast_script.txt \
--generate-pronunciation \
--output pronunciation_guide.txt
Structure:
text
[INTRO MUSIC 5s]
HOST: Welcome to Medical Research Today. I'm your host...
[BREATHE]
HOST: Today we're diving into a fascinating study about...
[PAUSE]
HOST: So what did the researchers find? Well...
[BREATHE]
HOST: Dr. Smith, one of the study authors, explains...
[SOUND BITE: Interview clip]
...
[OUTRO MUSIC]
Scenario: Convert lecture notes to video script for online course.
python
# Create lecture script
lecture = writer.create_lecture_script(
notes=lecture_content,
duration=45, # minutes
break_intervals=[15, 30], # minutes for student breaks
interaction_points=True # "Pause and think..." prompts
)
# Add visual cues
script = writer.add_visual_cues(
script=lecture,
slide_transitions=True,
animation_notes=True
)
Lecture Elements:
Scenario: Create audio guide for diabetes management.
python
# Patient-friendly script
patient_script = writer.create_patient_script(
medical_content=diabetes_guide,
reading_level=6, # 6th grade
empathetic_tone=True,
key_points_highlighted=True
)
# Slow, clear pacing
patient_script.adjust_pacing(
wpm=130,
pause_after_sentences=1.5 # seconds
)
Patient Script Features:
Scenario: Adapt live presentation to YouTube video format.
bash
# Convert presentation script
python scripts/main.py \
--input presentation_transcript.txt \
--format video \
--platform youtube \
--include-hooks true \
--engagement-cues true \
--output youtube_script.txt
YouTube Optimization:
From research paper to published podcast:
bash
# Step 1: Extract and summarize content
python scripts/main.py \
--input paper.pdf \
--extract-key-points \
--output key_points.txt
# Step 2: Convert to audio script
python scripts/main.py \
--input key_points.txt \
--format podcast \
--duration 20 \
--output raw_script.txt
# Step 3: Add production elements
python scripts/main.py \
--input raw_script.txt \
--add-music-cues \
--add-sound-effects \
--add-pacing-marks \
--output production_script.txt
# Step 4: Generate pronunciation guide
python scripts/main.py \
--input production_script.txt \
--generate-pronunciation \
--output pronunciations.txt
# Step 5: Create timing breakdown
python scripts/main.py \
--input production_script.txt \
--calculate-timing \
--output timing_breakdown.txt
Python API:
python
from scripts.audio_writer import AudioScriptWriter
from scripts.pronunciation import PronunciationGuide
from scripts.timing import TimingCalculator
# Initialize
writer = AudioScriptWriter()
pronouncer = PronunciationGuide()
timing = TimingCalculator()
# Read source material
with open("research_article.txt", "r") as f:
content = f.read()
# Step 1: Convert to spoken format
script = writer.convert_to_audio(
text=content,
format="podcast",
target_duration=15, # minutes
audience="general_medical"
)
# Step 2: Add production elements
script_with_cues = writer.add_production_cues(
script=script,
music_stings=True,
transition_effects=True
)
# Step 3: Generate pronunciation guide
medical_terms = pronouncer.extract_terms(script_with_cues)
pronunciation_guide = pronouncer.create_guide(medical_terms)
# Step 4: Calculate timing
timing_analysis = timing.calculate(
script=script_with_cues,
speaking_rate=150 # WPM
)
# Export complete production package
writer.export_production_package(
script=script_with_cues,
pronunciation=pronunciation_guide,
timing=timing_analysis,
output_dir="podcast_production/"
)
Content Quality:
Audio Optimization:
Production Quality:
Before Recording:
Content Issues:
Audio Issues:
Production Issues:
Available in references/ directory:
audio_writing_best_practices.md - Broadcast writing guidelinesmedical_pronunciation_guide.md - Common terms phoneticspodcast_production_standards.md - Industry format standardsaccessibility_guidelines.md - Inclusive audio contentplatform_requirements.md - YouTube, Spotify, Apple specsvoice_care_tips.md - Narrator health and performanceLocated in scripts/ directory:
main.py - CLI interface for script conversionaudio_writer.py - Core text-to-audio transformationpronunciation.py - Medical terminology phoneticstiming.py - Duration calculation and pacingformat_templates.py - Podcast, video, lecture templatesvoice_direction.py - Narrator cues and directionaccessibility.py - Alternative format generationParameterTypeDefaultRequiredDescription--input, -istring-NoInput text file path--output, -ostring-NoOutput JSON file path (default: stdout)--textstring-NoDirect text input (alternative to --input)--duration, -dint5NoTarget duration in minutes--pace, -pstringnormalNoSpeaking pace (slow, normal, fast)--style, -sstringconversationalNoScript style (conversational, formal, educational)
bash
# Convert from file
python scripts/main.py --input article.txt --duration 5 --output script.json
# Direct text input
python scripts/main.py --text "Medical research findings..." --duration 3
# From stdin
cat article.txt | python scripts/main.py --duration 5 --style conversational
# With specific style and pace
python scripts/main.py --input paper.txt --style educational --pace slow
Risk IndicatorAssessmentLevelCode ExecutionPython script executed locallyLowNetwork AccessNo external API callsLowFile System AccessRead input files, write output filesLowInstruction TamperingStandard prompt guidelinesLowData ExposureOutput saved only to specified locationLow
bash
# Python 3.7+
# No additional packages required (uses standard library)
Current Stage: Draft
Next Review Date: 2026-03-06
Known Issues: None
Planned Improvements:
🎙️ Pro Tip: The best audio scripts sound natural when spoken. Always read your script aloud before finalizing—if you stumble over a sentence, your narrator will too. Revise for the ear, not the eye.