microservices in SVP Ingest
what is ingest system?
VOD videos
encoding/transcoding
multi bitrate streaming
publishing
video archive
how it was done before?
2 and more years ago
- developed by Aptoma
- synchronized encoding
- slow (avg 2x duration of video)
- x264 with ffmpeg - static presets
1 year ago and now
- async encoding
- static assignment (server-file)
- x264 episode engine - static presets
- queues support (ee)
what we used?
Communication
Rabbit MQ
Video Encoding
x264 + ffmpeg
x264 + episode engine
VCE 2.0
NVENC
Other tools
- ImageMagic
- ffprobe / mediainfo
- chef
Hardware
4x macPro
12 cores 3Ghz
32GB ram
FirePro D500
SAN / Thunderbolt storage
PCIe memory
list of microservices
video uploader
- HTTP partial upload
- ftp upload
- rsync
video validator
- ffprobe/mediainfo
thumbnails generator
- imagemagic (montage)
- ffmpeg
poster image generator
- ffmpeg
video encoder
- x264 (ffmpeg)
- x264 (episode engine)
- x265 (ffmpeg)
- nvenc (h.264/h.265 hardware)
- VCE 2.0 (h.264/h.265 hardware)
cdn publisher
- akamai integration
- avilo integration
- own cdn (telenor users)
api publisher
- svp api integration
workflow
advantages
high scalability
publishing partial encoded streams
impact on qualities (slow/fast encoding)
prioritization in queues
multi encoders/cdn support
Svp ingest system
By Konrad Pietrzkiewicz
Svp ingest system
- 634