Próbuję uzyskać zrzut ekranu z lokalnego płatnego opłaty, aby użyć rozpoznawania obrazu, aby dowiedzieć się, jak zatłoczone jest. Próbuję użyć FFMPEG, aby wyodrębnić zrzut ekranu za każdym razem, gdy polecenie jest uruchomione z AWS Lambda. Moim problemem jest to, że nie mogę wyodrębnić żadnego obrazu z pliku M3U8.

http://roads.mk/315/video-kameri.

Kiedy otworzę jedną z kamer, strumień na żywo pojawia się jako normalny, ale kiedy kliknij prawym przyciskiem myszy, aby skopiować adres, dostaję link blob

BLOB: http://roads.mk/cb301be0-3e70-4d09-af2b-3f3d44ee8f4f .

Na szczęście na mobilnej wersji witryny natychmiast pobiera plik M3U8 po kliknięciu łącza. Po umieszczeniu FFMPEG za pomocą polecenia

ffmpeg -i "gradsko_1.m3u8" -vf fps=1/3600 grad%04d.jpg

Dostaję odpowiedź


[hls @ 000000ce3d26d700] Skip ('#EXT-X-VERSION:3')
[hls @ 000000ce3d26d700] Opening 'gradsko_1-586008.ts' for reading
[hls @ 000000ce3d26d700] Failed to open segment 586008 of playlist 0
[hls @ 000000ce3d26d700] Opening 'gradsko_1-586009.ts' for reading
[hls @ 000000ce3d26d700] Failed to open segment 586009 of playlist 0
[hls @ 000000ce3d26d700] Opening 'gradsko_1-586010.ts' for reading
[hls @ 000000ce3d26d700] Failed to open segment 586010 of playlist 0
[hls @ 000000ce3d26d700] Skip ('#EXT-X-VERSION:3')
    Last message repeated 3 times
[hls @ 000000ce3d26d700] Error when loading first segment 'gradsko_1-585991.ts'
gradsko_1.m3u8: Immediate exit requested
Exiting normally, received signal 2.```

From what I could tell, the stream seems to be protected. 
Any way to get inside this? I would only need a single screenshot with no audio since the program would run once an hour/on command for a very general estimate. I'm just starting out with ffmpeg so any tips would be greatly appreciated.
0
Matej Petrovski 4 sierpień 2020, 14:15

1 odpowiedź

Najlepsza odpowiedź

To działa dla mnie: ffmpeg -i http://streaming1.neotel.net.mk:8080/hls/romanovce_3.m3u8 -vframes 1 -q:v 2 output.jpg

FYI: Jeśli najpierw pobierzesz listę odtwarzania (M3U8) na dysk lokalny, a następnie spróbuj go użyć - wpadniesz na dwa problemy.

  1. URL w liście odtwarzania są teraz nieprawidłowe, ponieważ były one w stosunku do serwera.
  2. Lista odtwarzania jest szybko datowany względny, ponieważ jest to na żywo, a serwer utrzymuje tylko kilka segmentów.
0
Markus Schumann 4 sierpień 2020, 21:47