paul · spencer
case · podmorph
home work github
case · podmorph Podcasts → TikToks with AI captain mcfunshine · 2024
lead architect · cross-platform · 2024

Podmorph

I led the development of a cross-platform application that uses AI to transform podcasts and radio programmes into video content for social media. I built it from scratch across 7 platforms. The most important part wasn’t the AI — it was making sure the AI didn’t make things up.

platforms
7
framework
Kotlin MPP
ai services
6+
ui
Compose MP

i. Overview

A collaboration between Captain McFunshine’s Software Engineering, Overcoat Media, an independent project leader, and an independent designer. Native applications across iOS, Android, Windows, macOS (x64 + ARM), Linux (x64 + ARM) — one Kotlin Multiplatform codebase, seven shipping targets. 2024.

PodMorph landing page showing AI podcast-to-video transformation interface
plate i — landing page, podcast to video transformation

ii. Architecture & Cross-Platform

As Lead Architect, I designed and implemented a comprehensive cross-platform solution:

  • Architected and implemented a comprehensive Kotlin Multiplatform (KMP) solution delivering native applications for 7 platforms.
  • Collaboratively designed and implemented the UI using Compose Multiplatform, enabling consistent interfaces across all supported platforms.
  • Established a robust Model-View-Intent (MVI) architecture for predictable state management and UI interactions.
  • Implemented client-server architecture to control AI interaction and balance processing between local devices and cloud resources.
  • Integrated multiple AI services with fallback mechanisms to ensure service continuity.
PodMorph transcript editor for podcast content review
plate ii — transcript editor
PodMorph programme descriptions and metadata management
plate iii — programme metadata

iii. Cloud & API Integration

I developed a robust cloud infrastructure to handle complex media processing:

  • Designed cloud-based processing workflow using Azure Container Instances and AWS S3 for data storage.
  • Implemented PostgreSQL management with data models for user accounts, projects, payments and content artifacts.
  • Orchestrated multiple AI services — Groq, Anthropic, OpenAI, Fal.ai, Whisper, Google Vertex AI — with fallback mechanisms.
  • Built optimised media processing pipelines for transcription, summarisation, and text/image/video generation.
  • Created secure API communication using Ktor with proper authentication and error handling.
PodMorph AI selection interface for video generation
plate iv — AI image selection for video segments

iv. Media Processing

The heart of PodMorph lies in its sophisticated media processing capabilities:

  • Developed advanced text-to-image generation workflows using multiple AI models (DALL-E, Flux, Idiogram) for diverse creative outputs.
  • Created sophisticated audio/video processing using FFMPEG for precise clip extraction and multi-layer composition.
  • Implemented intelligent text overlay systems with dynamic sizing and multi-layer outlining for readability.
  • Built systems to automatically synchronise text animations with audio using segment timings.
  • Integrated NLP for entity recognition, sentiment analysis, and quote extraction.

v. Key Contributions

  • Owned architecture and development of the product end to end.
  • Created a complete AI processing pipeline from audio transcription to fully-rendered social media content.
  • Implemented intelligent content transformation with multiple specialised outputs (Twitter threads, Instagram Reels, LinkedIn posts).
  • Developed sophisticated content verification algorithms to ensure AI-generated content matches source material.
  • Built a consistent cross-platform user experience that feels native on each supported operating system.
  • Designed intelligent fallback mechanisms throughout the system to ensure reliability during API outages.

vi. Stack

Kotlin MultiplatformCompose MultiplatformMVI Azure Container InstancesAWS S3 PostgreSQLExposed ORMHikariCP GroqAnthropicOpenAIFal.aiWhisperGoogle Vertex AI FFMPEGKtor GitHub ActionsDocker

No mail program is configured for this browser, so here is the address:

spencerpj@gmail.com