For Pluto, it works only if the URL filter is on and correctly set. Also, if you are having any kind of connection issues, that too can cause problems. To see any connection issues, I use the command:
cat /var/log/syslog | egrep "Multiple HTTP"
This will mostly show segments that were dropped, causing issues. If a segment is dropped that is needed, then you can get issues with fast forward and rewind. I found that stopping and starting the movie from that point tends to clean up the issue, if it is dropped segments.
For the URL filter, you can see where the problem starts to occur and then look in the log for
cat /var/log/syslog | egrep "Serving"
Assuming that the filters are only filtering the bad segments, this would then show the good segments. If you find a segment that is different than all the other segments, it is probably the issue and needs to be filtered out. It is always possible that pluto changes their ad links and the filter may need to be updated. Many times it is channel specific, so giving a specific example would be good.
NOTE: "Multiple HTTP" requires NOTICE level logging, while "Serving" requires INFO level logging to see it.