How to turn multicast IPTV to Http Live Stream so that mobile devices could watch TV via browser directly instead of a player (such as VLC)?
See Multicast & Udpxy: https://openwrt.org/docs/guide-user/network/wan/udp_multicast
First question is "are the streams encrypted and/or require DRM?" Most commercial content falls in that category, to prevent what you want to do for "non-buyer" use (one person buys stream, posts a web page for "anyone" to view it). If your IPTV requires a "box" for each TV, it likely falls into that category.
Assuming you have a "clear" stream, you'll need to transcode it. Several ways to do this, but if you're trying to do it "real time", likely well beyond the power of a router to do the task. You really need a moderately powerful CPU (by desktop standards) with a GPU to handle real-time transcode (decode and encode both) of broadcast-quality streams.
I've already achieved that every device could watch multicast IPTV channel through igmpproxy and http stream through udpxy , using Potplayer or VLC player.There shall not be any encryption.
My IPTV stream is h264+mp2 and HLS require h264 + AAC /MP3/AC3 ,so the audio has to be transcoded.
Google showed me 'ffmpeg' is one of the ways.I tried it and it worked great! But the load of cpu is quite heavy.Transcoding just one channel , cpu idle went down to about 50%.That was terrible.
No reason the router has to be the transcoder. If you have a media pc on your network for example that might be an option, it can snarf the multicast and transcode to the http stream.
Router has some advantages , like low power consumption.Soft router with Openwrt x86 should be a nice choice to do this job.