Sonic and Sega Retro Message Board: Need help with Gens/GS II AV sync - Sonic and Sega Retro Message Board

Jump to content

Hey there, Guest!  (Log In · Register) Help
Page 1 of 1
    Locked Forum

Need help with Gens/GS II AV sync

#1 User is offline GerbilSoft 

Posted 29 March 2015 - 11:29 AM

  • RickRotate'd.
  • Posts: 2846
  • Joined: 11-January 03
  • Gender:Male
  • Location:USA
  • Project:Gens/GS
  • Wiki edits:5,000 + one spin
For a while now, I've been stuck on AV sync issues with Gens/GS II. The current Qt UI is a terrible offender, mostly caused by PortAudio being awful: once it starts stuttering, it gets progressively worse.

Yesterday, I wrote a simple SDL frontend to see if I could clear it up. The massive stuttering went away, but in its place is audio lag. The audio's at least 4 frames behind video. Reducing the audio buffer causes dropped frames. Also, I need a good way to implement frameskipping.

I'm looking to see if anyone here has written emulator frontends before and can help me out with the sync issues. The simple SDL frontend is available in my git repository, and it requires cmake, SDL 1.2, and a recent gcc or MSVC (2010+). If using MSVC, make sure you specify: -G "NMake Makefiles" when running CMake, since I'm not sure if the Visual Studio project generator will work correctly.

Git URLs:
- git URL for cloning: git://
- gitweb for gens-sdl-basic-frontend branch: http://www.dusers.dr...-basic-frontend

EDIT: The SDL frontend doesn't have controller input functionality right now, but that isn't needed to tell that there's audio lag. Sonic 1's intro demo should be enough.

EDIT 2: Added a mapping for one controller. 6BTN on port 1:
Key mapping:
- MD:  | Up | Down | Left | Right | Start | A | B | C |  Mode  | X | Y | Z |
- Kbd: | Up | Down | Left | Right | Enter | A | S | D | RShift | Q | W | E |

This post has been edited by GerbilSoft: 29 March 2015 - 02:10 PM
Reason for edit: Added a 6BTN on port 1.

Page 1 of 1
    Locked Forum

1 User(s) are reading this topic
0 members, 1 guests, 0 anonymous users