iQIYI Knowledge Unified Audio‑Video Playback Architecture
iQIYI Knowledge’s universal audio‑video playback architecture decouples player, business logic, SDKs and page lifecycles via observer patterns and adapters, enabling seamless scene switching across multiple windows—including floating and short‑video panes—without interrupting playback, simplifying third‑party integration and reducing development overhead.
With economic development, basic consumption has shifted to a focus on self‑recognition and knowledge consumption. The rise of mobile internet, mobile payment, and unlimited‑traffic services has cultivated a habit of paying for content and knowledge, laying the commercial foundation for knowledge service platforms.
Early knowledge service platforms were mainly audio‑only, with simple playback requirements. As content consumption upgraded, video became a dominant format, and platforms that started with audio began to integrate video, creating mixed audio‑video scenarios and smooth scene switching, which posed significant technical challenges.
The iQIYI Knowledge technical team early on designed a universal audio‑video playback architecture to address these challenges. This article shares the practice of that architecture.
Product Forms – The platform supports multiple playback windows such as video window, audio window, video floating window, audio floating window, short‑video window, short‑video floating window, and audio control console. Users can switch between these scenes smoothly without interrupting playback.
The main technical challenge is the seamless transition between scenes without affecting the player’s state, ensuring continuous, fluid audiovisual experience.
Key Features of the Universal Playback Architecture :
1) Supports various audio‑video fusion scenarios and rapid integration of new scenes.
2) Scene switching does not affect the player’s playback state; the player is unaware of scene changes.
Decoupling Strategies :
3.1 Decoupling Player and Business Logic – Direct coupling leads to high maintenance cost as each business must synchronize player state. The solution uses the observer pattern: a Playback Business Manager acts as the observable, distributing player state changes to business modules, while business modules act as observers that update their state and request player actions through the manager.
3.2 Decoupling Player and Playback SDK – Third‑party content (e.g., Ximalaya, Qingting FM) provides different SDKs. A unified playback protocol is defined so that upper‑level business only calls standardized interfaces, while adapters translate these calls to specific SDKs. This enables rapid integration of new SDKs without affecting business code.
3.3 Decoupling Player and Distribution Pages – To avoid playback interruption when navigating between pages, a non‑intrusive solution is adopted: a transparent container is injected into each page’s root layout, allowing the player to persist across page transitions. Lifecycle hijacking modules manage the player’s lifecycle independently of page lifecycles.
Three floating‑window approaches were evaluated: Android 8.0+ picture‑in‑picture, system overlay, and per‑page floating window. The third approach was chosen for its compatibility across Android versions and no permission requirements.
Overall, the iQIYI Knowledge team built a decoupled, extensible playback system that supports multi‑scene audio‑video playback, rapid third‑party integration, and seamless user experience across pages.
Conclusion and Outlook – The unified architecture significantly improves user experience and reduces development overhead. Ongoing innovations aim to further enhance performance and support additional playback scenarios.
iQIYI Technical Product Team
The technical product team of iQIYI
How this landed with the community
Was this worth your time?
0 Comments
Thoughtful readers leave field notes, pushback, and hard-won operational detail here.