I tried the DVD-Shrink method and it wasn't accurate enough to satisfy me. The key frames in the TR47 MPEG-2 stream are 12 frames apart and this simply isn't good enough. Granted, you can make it a lot better but your options end up being either leaving 15 frames of black screen in there (less than a second's worth) or losing a few frames of the video before and after the black screen.
I could do it perfectly if I wanted to re-encode; which I don't. Can you explain how to do it without any re-encoding?