Improving ABR Video Performance at Pinterest
Pinterest has enhanced video performance through Adaptive Bitrate (ABR) streaming, utilizing HTTP Live Streaming (HLS) and Dynamic Adaptive Streaming over HTTP (DASH).To reduce startup latency, Pinterest embedded manifest files in API responses, eliminating multiple network round trips to fetch manifests.MemCache was incorporated to mitigate the overhead on API endpoints for fetching manifests, reducing latency.Customizing the manifest loading process in players (AVPlayer and ExoPlayer) allowed for direct access to manifest information, bypassing unnecessary downloads.Both iOS and Android platforms implemented these solutions, resulting in significant improvements in startup latency and user engagement.By manipulating manifest loading, clients can fine-tune video quality control, limiting bitrate renditions for specific UI surfaces.The project was led by Liang Ma and Sterling Li, whose technical expertise played a crucial role in its success.This enhancement complements Pinterest's engineering initiatives, which aim to improve the user experience and drive engagement.To explore further, visit Pinterest's Engineering Blog, Pinterest Labs, and Careers page for open roles.