Я написал java-программу, которая принимает кадры с камеры с помощью rtsp, создает файл MPEG2-TS вместе с index.m3u8. Эта генерация ts выполняется путем простого добавления PAT/PMT и т. д. с помощью простых операций на уровне битов (т. Е. Без использования какой-либо библиотеки, такой как ffmpeg). Я могу воспроизвести индексный файл с помощью ----
hls.js :
Windows (Chrome, Firefox работает довольно хорошо)
Android (firefox воспроизводится нормально, но обновленный хром не может воспроизводиться, он говорит, что HLS.js не поддерживается. После удаления обновлений хрома он может воспроизводиться)
iOS (safari и chrome могут играть довольно хорошо)
clappr.js - я думаю, что это довольно эффективная библиотека
Windows (Chrome, firefox работает довольно хорошо)
Android (Chrome, firefox работает нормально)
iOS ( Safari и Chrome могут воспроизводиться довольно хорошо)
VLC хорошо воспроизводится в Windows, Android и iOS (MAC)
Android Media Player воспроизводит хорошо, когда я интегрировал его в свое приложение для Android.
AVPlayer в iOS (MAC/iPhone/iPAD): он просто не может воспроизвести TS!
Я довольно смущен и не знаю, в чем на самом деле проблема. Я думаю, что у Apple есть некоторые ограничения на ts (т.е. им нужно больше данных в ts). Может ли кто-нибудь помочь в этом отношении?
Если этой информации недостаточно для решения проблемы, предложите, я предоставлю.