ffmpeg timecode and -r Following up on this question: ffmpeg drawtext timecode source framerate

I want to change the frame rate of a file, scale it down and burn the timecode in one operation.

ffmpeg -i in.mpg -r 24 -vf "scale=-2:360, drawtext=timecode='00\:00\:00\:00': r=24:" out.mpg

When I do this, the timecode is relative to the source frame rate, not the output. So if my input FPS is 59.94, I get this timecode sequence: 

00:00:00:02
00:00:00:04
00:00:00:07
00:00:00:09


How can I tell drawtext to use destination frame numbers instead of source?
Use a filter to reduce the framerate beforehand

ffmpeg -i in.mpg -vf "fps=24,scale=-2:360,drawtext=timecode='00\:00\:00\:00': r=24" out.mpg