Force-pushed with an update of the plugin matcher (replay support), and also removed the custom HLSStream subclass.
As said, live streams are geo-blocked for me and show a warning message stream instead, so it's possible that the actual live streams still require the custom HLSStream implementation.
$ ./script/test-plugin-urls.py ltv_lsm_lv
:: Finding streams for URL: https://ltv.lsm.lv/lv/tiesraide/lr1
:: Found streams: 360p, 720p, 1080p, worst, best
:: Finding streams for URL: https://ltv.lsm.lv/lv/tiesraide/lr2
:: Found streams: 360p, 720p, 1080p, worst, best
:: Finding streams for URL: https://ltv.lsm.lv/lv/tiesraide/lr3
:: Found streams: 360p, 720p, 1080p, worst, best
:: Finding streams for URL: https://ltv.lsm.lv/lv/tiesraide/lr4
:: Found streams: 360p, 720p, 1080p, worst, best
:: Finding streams for URL: https://ltv.lsm.lv/lv/tiesraide/lr5
:: Found streams: 360p, 720p, 1080p, worst, best
:: Finding streams for URL: https://ltv.lsm.lv/lv/tiesraide/lr6
:: Found streams: 360p, 720p, 1080p, worst, best
:: Finding streams for URL: https://ltv.lsm.lv/lv/tiesraide/ltv1
:: Found streams: 360p, 720p, 1080p, worst, best
:: Finding streams for URL: https://ltv.lsm.lv/lv/tiesraide/ltv7
:: Found streams: 360p, 720p, 1080p, worst, best
:: Finding streams for URL: https://ltv.lsm.lv/lv/tiesraide/visiem
:: Found streams: 360p, 720p, 1080p, worst, best
:: Finding streams for URL: https://replay.lsm.lv/lv/tiesraide/ltv7/sporta-studija-aizkulises
:: Found streams: 360p, 720p, 1080p, worst, best
:: Finding streams for URL: https://replay.lsm.lv/ru/efir/ltv7/sporta-studija-aizkulises
:: Found streams: 360p, 720p, 1080p, worst, best