Frustration got the better part of Kyle Shanahan's temper in his debut Sunday as 49ers coach, and he apologized for yelling at officials who didn't hear his shouts for a timeout before a delay-of-game penalty.