What's new

hq2x/lq2x filters cause audio problems

Irrenmann

New member
Hi everyone

I was hoping someone knowledgeable could help me resolve the following problem. I wanted to try River City Ransom EX in Visual Boy Advance because I know hq2x and/or lq2x would look great on those cartoony 80s graphics. :evil: It looks as good as I had hoped, but when I activate one of these filters, the audio seems to experience a sort of "lag" and eventually gets totally out of sequence. Thing is, it doesn't seem to be a straight performance problem-it still happens even when i turn off all the other bells and whistles, make the size smaller, etc. My GeForce FX 5950 Overclocked should be able to handle this, right? So what is going on with the sound?

Can anyone give me some advice? Thanks in advance. I'm so close to River City Ransom perfection... :huh:
 

Clements

Active member
Moderator
Irrenmann said:
My GeForce FX 5950 Overclocked should be able to handle this, right? So what is going on with the sound?

It's a bit more complicated than that, hq filters are limited by a combination of the graphics card (performance varies with GeForce/ATi, and speed of card), AGP Bus, CPU among others, so your system may be limited in any one of these (probably the AGP which you can't do much about.) The sound problems are certainly caused by your PC not getting 100% speed, causing lag which is most noticable with the sound.

My system cannot handle hq2x at certain resolutions either with 0 frameskip, so I turn on a frameskip of 1, which fixes all the problems. So, change the frameskip until the game is smooth enough, or use another less hardware intensive filter.
 

smcd

Active member
If you have trouble with hq2x, just use AdvanceMAME 2x, it looks almost as good and runs a LOT smoother. My mom/brother's PC uses this since it doesn't like the hq2x in a window size larger than 1x.
 
OP
I

Irrenmann

New member
sethmcdoogle said:
If you have trouble with hq2x, just use AdvanceMAME 2x, it looks almost as good and runs a LOT smoother. My mom/brother's PC uses this since it doesn't like the hq2x in a window size larger than 1x.

You're right, that one looks good too, and I have been using it. Still, it bothered me that the other filters resulted in audio problems as soon as they were activated.

Mr. Moderator, I will default to your judgement about this being a performance problem. If some of you wouldn't mind giving me a little more info based on your experiences, what sort of system do I need to push Visual Boy Advance without these sorts of problems? I'm running the aforementioned graphics card on a 4x AGP bus-big problem, I guess. I have an Athlon XP 2000+ and 512 MB PC2100 RAM-since this isn't doing it, what would you recommend in the way of a system that can? Or is the GB Advance so tough to emulate that some ROMs will have performance problems, period?

Thanks for the tips.
 

Clements

Active member
Moderator
I wouldn't worry about this particular filter not running too well, it really is a very stressing filter, mainly to the comparitive complexity of the filter compared to the other less complex (and much faster) filters. The filter benefits from AGP 8x, and my card with 8x AGP could out-perform faster cards (like Ti4200s) that were on AGP 4x, so it definitely is a factor. It will run badly on pretty much any system, PCI-Express will no doubt help a great deal here.

There was a big thread about this on ZSNES board before it was hacked where MaxSt (author of the filter) posted an AGP executable to benchmark the various hq filters in an attempt to get data to improve the speed of the filter (in the end MaxSt said that he really couldn't do much more to speed it up).

I still have that benchmark so I'll attach it so you can test your system out. I believe the command line options are /2 (for hq2x) /3 (for hq3x) and it defaults to hq4x. There are others which I've forgotten..

For me, I get from the output:

HQ mode : HQ4X
Buffer : 1024 x 896 x 16bit
----------------------------
Blitter : AGP
Top speed = 927 fps (1622 Mb/s)
----------------------------

You can use this result to guage the performance of your PC with the filters. If it's much more then some of your other settings are perhaps slowing it.

Other than the 1 frameskip (don't use automatic frameskip, it's too slow and choppy on fast systems), I use the Direct3D render engine (I find it faster) with Kode54's 1.7.2 CVS build of VBA.
 

smcd

Active member
My system handles hq2x decently enough. AMD 2500+, 512MB PC2700, ATi 9600 Pro (using 8x AGP mode)
 

cooliscool

Nintendo Zealot
HQ mode : HQ4X
Buffer : 1024 x 896 x 16bit
----------------------------
Blitter : AGP
Top speed = 1000 fps (1750 Mb/s)
----------------------------


W00t. :happy:
 

-Shadow-

Banned
HQ mode : HQ4X
Buffer : 1024 x 896 x 16bit
----------------------------
Blitter : AGP
Top speed = 571 fps (999 Mb/s)
----------------------------

OMG , i really need a Mobo which supports AGP 8x ( ok , i can turn it on , but it crashes all the time when i do so ) o_O
 
OP
I

Irrenmann

New member
Sorry to resurrect year-old thread, but...

HQ mode : HQ4X
Buffer : 1024 x 896 x 16bit
----------------------------
Blitter : AGP
Top speed = 281 fps (491 Mb/s)
----------------------------


I bought a new Asus K8V SE Deluxe, a gigabyte of Corsair PC3200 RAM (CAS latency 2.5), a Athlon64 3000+, and am using the same video card as before but of course now on AGP 8x and overclocked even more. And my score on the posted testing utility is still awful! What am I doing wrong? My system has gotta be screwed up!
 

ScottJC

At your service, dood!
Which graphics card would that be?

Also, that utility may not reflect what happens in say, ZSNES, try that with a high resolution and HQ4X and see how well it runs, Tales of Phantasia is a great test as it has very fast moving pictures. *will post screenie later on*

Here's a shot of a very quickly and ever-changing picture running on HQ4X, I resized the pic to be more download friendly so its from 1280x1024 to 640x480.

While a game is running in ZSNES hit the F1 key and select "Show FPS" and hit enter, you'll get your framerate on the screen.

I get just slightly more than what Cooliscool gets with the AGP test utility though.
 
Last edited:

suanyuan

New member
I like to run VBA with hq2x filter. But when hq2x filter is enable, some games run a little bit slow, such as F-ZERO.

So I download the source code of VBA 1.72, and do some minor modifications.

(1) I add some dynamic frame control mechanism in IDisplay::render() function. After doing that, the render function of display class always try to keep 45 FPS, no matter which frequency emulator core to call the IDisplay::render().

(2) Second I use ICC 8.1 to optimize VBA.

The result I get is about 15% faster than official optimzed VBA 1.72 version. I have attached two pictures running F-Zero with 3x window size, hq2x filter, 0 frame skip, no throttle.

I also upload the compiled VBA, I hope it may help.
 
Last edited:

suanyuan

New member
I think dynamic skip frame is a not bad idea, but nobody interested. So let me explain a little bit the reason why I add frame control in display class since VBA already have frame skip mechanism. And any comments and corrections is more than welcome.

(1) VBA frame skip mechanism is fixed in skipping order. For example if you choosing skip 1 frame, then VBA always drop second frame. In some games, for example F-Zero, this cause the track don't show up.

(2) No matter how big the CPU loading of GBA core is, VBA frame skip mechanism drop the same amount of frames. In title screen the cpu core may be free, but in middle of game the CPU may be busy. Always skip the same amount of frames don't make sense to me.

(3) Frame skip automatic didn't take the display rendering overhead into account. If you run a game usin large window size (x3 for example), and use high cpu demand filter (hq2x for example), the image process take about 10 - 20 ms in my computer. So I think it's more make sense to determine how long to sleep after display rendering not before.
 

Top