>>714
20行目のifの範囲外でpos()使ってて
再生停止時にpos()が呼び出されてるんじゃないか

if() {
 gr.FillSolidRect();
 gr.FillSolidRect();
}
みたいな感じで中括弧でくくってやればおk