Divarion_D
|
0f773b9758
|
refactor(streaming): extract map/scodec/source/HLS/FLV helpers with tests
Continue breaking up createChannelItem, startMovie and startStream by pulling
five self-contained blocks into pure, tested helpers:
- resolveOutputMap() — VOD -map selection (custom > strip-subs > copy-all)
- subtitleCodecForContainer() — mp4->mov_text, mkv->srt, else copy
- resolveChannelSource() — channel source string -> [serverId, path], rewriting
s:<server>:<path> to the remote getFile API URL
- buildHlsMpegtsOutput() — HLS/mpegts segmenter output args
- buildFlvOutput() — shared FLV output wrapper (RTMP relay + external
push, previously two identical lines)
The startStream extractions pass the conditional $rOptions/$rFLVOptions in as
parameters, so the control flow is unchanged. Behaviour preserved.
StreamProcessMovieOutputTest covers map precedence, container->codec mapping,
every source-resolution branch, HLS output assembly, and FLV wrapping.
Verified: php -l clean, make gates green, phpunit 360/360 green.
|
2026-08-07 19:31:18 +03:00 |
|