Post subject: Capturing AVI from FCEU 0.98.12
Site Admin, Skilled player (1254)
Joined: 4/17/2010
Posts: 11475
Location: Lake Char­gogg­a­gogg­man­chaugg­a­gogg­chau­bun­a­gung­a­maugg
As was found out, blip's build doesn't capture avi correctly, so one needs recompiled build by Dacicus - fceu-0.98.12-avifix http://code.google.com/p/fceu/downloads/list It also requires DLL It may be downloaded from here. You just must rename it to 'libz-1.dll' Also increasing emulation speed dumps sound wrong. Don't do it with .98.12
Warning: When making decisions, I try to collect as much data as possible before actually deciding. I try to abstract away and see the principles behind real world events and people's opinions. I try to generalize them and turn into something clear and reusable. I hate depending on unpredictable and having to make lottery guesses. Any problem can be solved by systems thinking and acting.
Post subject: Capturing AVI from FCEU 0.98.16
Editor, Player (69)
Joined: 6/22/2005
Posts: 1050
The FCEU sync history has version 0.98.16 in a separate section by itself. That version has a well-documented AVI dumping problem: Video is blank, but audio is intact (sources: 1, 2, 3, 1337). I ran into this issue while replacing some old AVI encodes, such as [1026] NES Chip 'n Dale: Rescue Rangers "2 players" by dragonxyk in 09:29.22. It also happened with 0.98.16's multitrack version. The advice in the posts linked above about using version 0.98.15 worked for that run; I also used 0.98.28 successfully. The question comes up about whether there is some run made with 0.98.16 that does not sync in any earlier or later versions, as the sync history implies there may be. Another question is just what the problem is with 0.98.16's AVI dumping. I investigated that second question by comparing some source files between 0.98.16 and 0.98.28, hereafter referred to as .16 and .28, respectively. src\drivers\win\aviout.c in .28 has an #ifdef _USE_SHARED_MEMORY_ block at the beginning that does something with the palette. It's not there in .16. Replacing the aviout.c file in .16 with the one from .28 allows non-blank AVI dumps. There's another problem in .16, however. If you open the Config -> Video window and then close it, the palette gets corrupted. This happens even if you don't make any changes to the video configuration. I compared src\drivers\win\video.c between the two versions and found that the one in .28 uses a variable in the InitializeDDraw function with this comment:
//only init the palette the first time through
Sure enough, replacing .16's video.c with the one from .28 eliminates the palette glitch. However, this also requires a change to src\video.c: Adding an #ifdef _USE_SHARED_MEMORY_ block around the if(XBuf) statement in the FCEU_KillVirtualVideo function. Otherwise, I get a compilation error about mapXBuf being undefined. NOTE: I compared the versions of aviout.c and video.c between .16 and .28, and I don't believe that just replacing the files like I described will cause problems. I don't know C++, however, so someone may want to verify that. Here's an archive See below for two fixed versions of .16: fceu-avifix.exe fixes just the AVI dumping, and fceu-avipalfix.exe fixes both the AVI dumping and the palette. Do you want the sources to one or both? EDIT: Updated archive with the compiled files and source is here.
Current Projects: TAS: Wizards & Warriors III.
Site Admin, Skilled player (1254)
Joined: 4/17/2010
Posts: 11475
Location: Lake Char­gogg­a­gogg­man­chaugg­a­gogg­chau­bun­a­gung­a­maugg
Warning: When making decisions, I try to collect as much data as possible before actually deciding. I try to abstract away and see the principles behind real world events and people's opinions. I try to generalize them and turn into something clear and reusable. I hate depending on unpredictable and having to make lottery guesses. Any problem can be solved by systems thinking and acting.
Joined: 10/14/2013
Posts: 335
Location: Australia
The zlib dll file in "fceu-0-98-12-avifix.7z" is mislabeled "libz-1.dlll" (note the three "l"s as opposed to the intended two in "dll") and is missing from the "fceu-0-98-16-avifix.7z" archive.
I'm not as active as I once was, but I can be reached here if I should be needed.
Site Admin, Skilled player (1254)
Joined: 4/17/2010
Posts: 11475
Location: Lake Char­gogg­a­gogg­man­chaugg­a­gogg­chau­bun­a­gung­a­maugg
LOL, fixed.
Warning: When making decisions, I try to collect as much data as possible before actually deciding. I try to abstract away and see the principles behind real world events and people's opinions. I try to generalize them and turn into something clear and reusable. I hate depending on unpredictable and having to make lottery guesses. Any problem can be solved by systems thinking and acting.
Player (74)
Joined: 8/29/2016
Posts: 14
Location: Toaster :0
Damn, I was actually struggling with that avi problem on 98.16 a while back around June last year. Ended up using OBS to record it, which resulted in awful audio. Good to see this working now. Made a 4k of JXQ's Shatterhand TAS for memes. Link to video