I'm not sure, but someone reported that it SFMLTheora became choppy with the latest github version, so I tried, and it did indeed become choppy.
I checked the frame time with GetFrameTime and I got very low values like 1-3, and my CPU usage flew, so I figured out that something went wrong with whatever it is capping the framerate.
In SFMLTheoraTest, I used EnableVerticalSync to cap the framerate, so I changed that to SetFramerateLimit(60) and it works, I told the guy who reported the bug to change that line, and it works for him too.
Edit:
I made a simple test to demonstrate what I mean:
#include <iostream>
#include <SFML/Graphics.hpp>
int main()
{
sf::RenderWindow renderWnd(sf::VideoMode(800, 600, 32), "VSync Test");
renderWnd.EnableVerticalSync(true);
while (renderWnd.IsOpened()) {
sf::Event sfEvent;
while (renderWnd.PollEvent(sfEvent)) {
if (sfEvent.Type == sf::Event::Closed)
renderWnd.Close();
if ((sfEvent.Type == sf::Event::KeyPressed)) {
switch (sfEvent.Key.Code) {
case sf::Keyboard::Escape:
{
renderWnd.Close();
break;
}
}
}
}
renderWnd.Clear();
renderWnd.Display();
std::cout<<renderWnd.GetFrameTime()<<"\n";
}
return 0;
}
The values of GetFrameTime are within the range of 0-2 for me, but sometimes peaks at 9-13.
Change the line
EnableVerticalSync(true)
to
SetFramerateLimit(60)
and the values of GetFrameTime becomes higher at 16-23. (which is roughly 60 fps, working as expected)
Can you test it and see if it's the same for you?