+38099 200-3839
 
: TVeez Украина / RTM Ukraine
: 2008
: WPF (XAML)
: Windows

Ознайомтеся з нашими послугами

Indoor Player

Розробка професійної високопродуктивної платформи для централізованого управління розподіленою мережею рекламних екранів, медіафасадів та вуличнихПроблема та початкові завдання

Початкові вимоги замовника зводилися до реалізації незалежних медіаплеєрів, які керувалися б конфігураційними файлами у форматі XML. Проект передбачав створення та безшовну інтеграцію до єдиної мережі мовлення наступних ключових компонентів:

  • Відеоплеєр: модуль для циклічного відтворення важких комерційних відеороликів високої роздільної здатності (MPEG2/4, AVI, WMV) та графіки.
  • WPF Годинник: віджет, що кастомізується, точного часу для інформування аудиторії.
  • Бегучий рядок: модуль плавної трансляції текстових новин та оголошень з динамічним підвантаженням даних з локальних або віддалених XML/RSS ресурсів.
  • Модуль відеотрансляції (Video Capture): компонент для перехоплення та виведення «живого» потокового зображення із зовнішніх джерел (ТВ-тюнерів або камер) прямо всередину рекламного лейауту.

На етапі поштучного тестування компонентів завдання видавалося вирішеним. Однак практика — річ уперта. Як тільки всі ці плеєри були запущені одночасно на одній машині для формування складного рекламного екрану, вимоги змінилися кардинально.

Типові рішення не справлялися з паралельним навантаженням: між відтворенням роликів виникали мікрозатримки і "чорні екрани", процесор був перевантажений на 100%, а системна пам'ять стрімко витікала, що призводило до зависання.

Реалізоване рішення

Замість накладання тимчасових програмних «латок» ми повністю перепроектували архітектуру системи, зробивши ставку на максимальну продуктивність нативних WPF-компонентів (XAML). Ми глибоко поринули у корінь проблеми оптимізації ресурсів:

  • Нульові затримки: Переписали логіку фонового кешування та передзавантаження контенту, що повністю усунуло паузи та мерехтіння при зміні плейлистів та переході від одного важкого відеоролика до іншого.
  • Оптимізація CPU: Перевели рендеринг відеопотоків на апаратне прискорення відеокарти, знизивши навантаження на центральний процесор до мінімальних значень.
  • Боротьба з витоками пам'яті (Memory Leaks): Реалізували жорсткий контроль життєвого циклу об'єктів та медіа-контекстів. Система здатна працювати безперервно в режимі 24/7/365 без накопичення сміття в оперативній пам'яті.

Результат

Ми успішно здали проект, істотно перевершивши жорсткі технічні очікування замовника щодо стабільності та енергоефективності софту. Розроблені нами WPF-контролі довели свою непотоплюваність у реальних умовах експлуатації.

Сьогодні наше рішення стабільно управляє трансляцією більш ніж на 500 рекламних моніторах та медіафасадах по всій Україні.