Send fMP4 and TS segments to different HLS clients

Hi All,


Our server can generate either fMP4 or TS segments for HLS. We want to target heterogeneous HLS clients (versions of iOS, OS X, tvOS, and other HLS clients). Some of them support fMP4. Some support only TS. We want to deliver fMP4 as long as the clients are fMP4 compatible. For others, we have to send TS segments. Currently we have to hardcode user agents so that we can deliver right format to right HLS clients. But this could become a convoluted and error prone solution in the long run.

I was thinking if we can specify some flag in master playlist, then HLS client can make its own decisions on which format to use. But obviously, there's no such flag defined in HLS spec and no HLS client can do that.

Can anyone who ran into similar situation recommend a better way to handle it?


Thanks in advance!