On my Nokia n900 I use VLC, android phones usually mxplayer. Also on android you can install the Vu+ Player, it works fine with most enigma2 boxes. I think it was pulled from playstore recently, but there may be a new version. If you can't find it, I can try to find the apk I used to install it.
For transcoding, first create a playlist for VLC. The easiest way is to use OpenWebif and click on the TV icon next to a bouquet and it will download an m3u file with all the channels in the bouquet. On linux I used the following command to start VLC:
cvlc -vvv bouquet.m3u --network-caching=4000 --extraintf="http" --http-port 8080 --sout-transcode-threads=4 --sout '#transcode{vcodec=h264,vb=500,scale=0.4,acodec=mp4a,ab=64,channels=2,samplerate=48000}:http{mux=ts,dst=:8002/}'
I used it with VLC 2.02 on Linux, but the command should work on other versions. I think on windows you would use something like vlc -Idummy or vlc -Ihttp and remove the extrainf setting...
Port 8080 will need to be opened on your router to give you access to VLC's web interface.
Port 8002 will need to be opened on your router to give access to the transcoded stream.
Of course you can use any ports you like...
You can play with the vb=500 (video bit rate) setting to try higher/lower rates.
You can play with the scale=0.4 setting which resizes the stream.
You may also want to adjust how many threads depending on your cpu...
Use your browser to connect to the VLC web interface (http://address:8080) and from there you can choose which channel and press the play button to start. Then use your player and point it at http://address:8002