RetroArch 1.3 audio stutter nVidia Shield K1

[QUOTE=Radius;33552]Not sure what your issue is, I run with vsync on and 64ms on an NVdia shield portable that’s way slower than the k1 and I don’t get stuttering, also I’m using mainline SNES9x, not NEXT. Mupen is borked on my device since the lollipop update but other than that I have no issues.[/QUOTE]

Then I’m shit out of luck, you are using Android 5.1.1, yes? If not, that’s why, Android Lollipop sucks ass when it comes to performance, what refresh rate is your emulator set at? I tried to set to the estimated rate, nothing. I tried going down all the way to 59.200 Hz, most was reduced, but that is low. I tried to enable hard GPU sync, vsync, turned it off. I can’t even install APK files despite having Super SU installed on my tablet (it’s rooted and unlocked). I am on the verge of losing my sanity, and if I understand you guys right, Android is a lost cause as it’s getting worse and worse with each new version. I concluded that because of this, there’s no hope.

I don’t know what else to do, short of installing older versions, but I can’t because ES Explorer gives me an “app could not be installed” bullshit error. I have “install apps from unknown sources” enabled, what else could it be? I am on the verge of giving up, flat out 100%, turning my tail and not doing a damn thing. If only there was a way for me to roll back to 4.4.4 on the K1 tablet, but the XDA developers can’t seem to find out info on how to do this. So right now…I’m pissed, I’m annoyed and I just want to punch a wall. Why? Because I fucked up and stupidly and seemingly squandered 200 dollars on a tablet that can’t run emulators worth shit. Ugh…!

Thanks a lot nVidia for installing Lollipop.

-_-

[QUOTE=nintendonerd1889;33551]Whoops, yeah, so a couple of things, one, the Snes9x Next core (based off of 1.52 as far as I know), seems to run somewhat better and has less stuttering, not as accurate as 1.53, but I can’t really tell any diff in terms of which is more accurate. What confuses me is that the estimated refresh rate is constantly fluctuating, it never stays constant as it estimates the value. Threaded video has been disabled, isn’t there an app that can test the true refresh rate of the screen, and then I enter that instead of letting RA guess the accurate value? I disabled the overlay first time I ran this app, it crowds the screen since I use a controller (way easier to navigate and play), And as a last test, could the custom viewport resolution being 1080 impact performance at all? Mostly curious.

To sum up:

Audio buffer is set to 128 ms Refresh rate: set to the one that it detects in the emulator 59.784 Hz Core: Snes9x 1.53 (testing this currently) Vsync: Disabled

The games where it’s most noticeable are games with enhancement chips; I’ll record another video as a test. But the Snes9x Next core did yield less stuttering, oddly enough.

Edit: And dammit all to hell the crackling doesn’t go away with the Hz this high, like…at all, this is really starting to piss me off a lot. I feel cursed, I feel like I made a huge mistake in many ways…dammit… OpenGL app reported 60 fps flat, which is different.

I made a mistake in spending money on there as there is absolutely no open in seeing performance boost, that, and I can’t install 1.2.2, so… Oh and to add insult to injury, I can’t seem to install RetroArch 1.2.2 from the download server, it tells me “App did not install” using ES File Explorer, and this device is rooted and unlocked, so, IDFK. -_-

So…yeah, I’m stuck, SOL, unable to install older versions. Could it be that it’s detecting the 1.3.0 version and refuses to install via ES explorer?[/QUOTE]

Threaded video off would increase the realtime requirements, I recommend you leave that on for Android

Also, other programs and services running in the background can affect your performance adversely. Try to disable as many background services in the background.

Yep I’m running 5.1.

Fucking hell, then I really am shit out of luck. Surprise surprise, first GBA Temp and now this. What the hell was I thinking when I got this thing? Well, like an idiot, I thought I could run a myriad of emulators on here. Nope, I was wrong and now, this is my comeuppance for spending that much money. sigh I am so pissed off right now. I located a 4.4.4 KitKat ROM for the Shield, I just don’t know how to install it, and do you know why I can’t install 1.2.2? Why the ES File Explorer is disallowing, despite that I’ve rooted?

I can’t even test nightly builds because they too refuse to install over an existing installation.

Why don’t you reset to factory defaults? I just tried mupen on the tablet, there are some weird input issues, but it works fine once you change latency to 96 or 112ms

[QUOTE=Radius;33561]Why don’t you reset to factory defaults? I just tried mupen on the tablet, there are some weird input issues, but it works fine once you change latency to 96 or 112ms[/QUOTE]

Not sure how, this tablet is rooted and unlocked, so I can’t easily revert back to those, unless you meant the emulator defaults. Maybe I’m just cursed, I don’t know. Couldn’t I remove the app, re-download it and try again? Would that work? As of now, no, I’ve no way since I have an unlocked bootloader and custom ROM thanks to ADB Tools, a guide on the XDA developer forums.

Sigh

My head hurts…

I’m not trying to make things worse, I promise I’m not. I’m just trying to figure out what the hell is going on and why it’s acting so weird on the same tablet and OS as you have. Short of deleting the app, reinstalling or somehow getting 1.2.2 to install via ES Explorer… >.< This is probably karma for my past stupidity on here. If I can get help from a friend to flash 4.4.4 on here, I’d get better results.

No, just to factory defaults, it’s really easy. Download the factory images https://developer.nvidia.com/gameworksdownload And follow the instructions

[QUOTE=Radius;33563]No, just to factory defaults, it’s really easy. Download the factory images https://developer.nvidia.com/gameworksdownload And follow the instructions[/QUOTE]

Even though I already flashed it with that very image after I rooted it? This this is unlocked and rooted, I can’t just simply use that image, unless you mean the Mod Manager that I have on here, I dunno man.

This is the guide I followed to root it http://forum.xda-developers.com/shield-tablet/development/root-root-nvidia-shield-tablet-lollipop-t2972316 I’m not going to go any further unless I know exactly how I’m to reset everything with the custom bootloader that I have. That, and it’ll wipe everything off the internal storage, will it not?

sigh I’m just…I wish it didn’t come to this :frowning:

I’m literally on the verge of crying out of pure frustration, I’ve never had this much trouble with other apps, but damn, Lollipop sucks ass, I need to install KitKat 4.4.4 somehow. sigh

uh… idk if you download the image and run flash-all it will be exactly as it came from the factory yes it will wipe everything

[QUOTE=Radius;33565]uh… idk if you download the image and run flash-all it will be exactly as it came from the factory yes it will wipe everything[/QUOTE]

Ugh…dammit all to hell…I wish it didn’t have to come to this…ugh, I undoubtedly sound like a desperate loser I’m sure, given this situation that I’m in. I hope I don’t end up bricking this thing. I don’t get how other users can run it fine but I can’t, on the same damn device as they are. I don’t get why I’m the only user on here that’s having this issue. It makes no sense.

I would think uninstalling the app and reinstalling would suffice, as I did go from 1.2.2 to 1.3.0 without deleting the config files from the previous version, though I don’t know if that has any bearing or relevance to the issue. Just a theory, I know when upgrading it on the Wii or Windows, it’s recommended to do so, hmm.

@Radius: Can u upload your Retroarch cfg for nintendonerd. that should sort things out if it’s the same device.

@twinaphex: i mostly made my decision after playing around with audio latency, but i never touched screen refresh rate. If i ever happn to have some spare time i might try again, but I doubt its gonna change things, seeing how I actually noticed slow downs/frame drops.

Glad to hear you’re bringin back perf-focus to mupen. :slight_smile:

I think until you try these things you shouldn’t really make blanket statements saying there have been performance regressions in 1.3.0 vs. 1.2.2, that’s all. I am pretty sure that the default audio output latency before was set to 128ms, and that when it was set to 64ms by default for all platforms, most Android devices simply cannot cope with that, hence why you should increase the latency. Any OS other than Android, a default audio latency of 64ms runs fine, but Android requires 96 or 128ms on most devices.

Sigh My head’s starting to hurt and my hope is starting to run out, I can’t install 1.2.2 or the nightly build because ES Explorer keeps spout out a “could not install app” error. I can’t reduce the crackling save I adjust the Hz all the way down to nearly 59.00 Hz flat (and the OpenGL app reports 60 Hz exact ever time, so IDK). Top that off with the fact that Lollipop 5.1.1 is really sucking ass when it comes to performance degradation on the same tablet that other developers have, I don’t know what to do anymore, I don’t even know what, if anything, can be done to improve performance for Lollipop users. I did locate a ROM for 4.4.4 KitKat, but it’s for the Shield Tablet and not the K1 (which are the same device really). The only other thing I can think of is when I updated from 1.2.2 a a few days ago, I didn’t remove the config files and that somehow created a conflict, so I can try removing 1.3.0 and then the config files and re-download 1.3.0. I just…sigh really don’t know what else to do -_-

I should also note that my device is rooted with the stock nVidia ROM, 5.1.1 and not that BS that is 6.0 Marshmallow (which I imagine would be far worse), so I can’t just reset back to the default factory settings without going through some convoluted process on XDA. That being said, I’ll:

  • Uninstall app
  • Remove all config files
  • Attempt to install 1.2.2 to see how it fares, if not, delete it
  • Delete config files again (if generated)
  • Install 1.3.0 once more in a clean state and adjust buffer to 96 or 128 ms

Other apps don’t give me this much trouble, but I’m not blaming the app, I’m blaming the sodding OS.

Edit: Turns out with ADB tools, APK files can be forced-installed via command prompt

So I can try that as well.

[QUOTE=nintendonerd1889;33586]Sigh My head’s starting to hurt and my hope is starting to run out, I can’t install 1.2.2 or the nightly build because ES Explorer keeps spout out a “could not install app” error. I can’t reduce the crackling save I adjust the Hz all the way down to nearly 59.00 Hz flat (and the OpenGL app reports 60 Hz exact ever time, so IDK). Top that off with the fact that Lollipop 5.1.1 is really sucking ass when it comes to performance degradation on the same tablet that other developers have, I don’t know what to do anymore, I don’t even know what, if anything, can be done to improve performance for Lollipop users. I did locate a ROM for 4.4.4 KitKat, but it’s for the Shield Tablet and not the K1 (which are the same device really). The only other thing I can think of is when I updated from 1.2.2 a a few days ago, I didn’t remove the config files and that somehow created a conflict, so I can try removing 1.3.0 and then the config files and re-download 1.3.0. I just…sigh really don’t know what else to do -_-

I should also note that my device is rooted with the stock nVidia ROM, 5.1.1 and not that BS that is 6.0 Marshmallow (which I imagine would be far worse), so I can’t just reset back to the default factory settings without going through some convoluted process on XDA. That being said, I’ll:

  • Uninstall app
  • Remove all config files
  • Attempt to install 1.2.2 to see how it fares, if not, delete it
  • Delete config files again (if generated)
  • Install 1.3.0 once more in a clean state and adjust buffer to 96 or 128 ms

Other apps don’t give me this much trouble, but I’m not blaming the app, I’m blaming the sodding OS.

Edit: Turns out with ADB tools, APK files can be forced-installed via command prompt

So I can try that as well.[/QUOTE]

Those other apps either try to sync by Vsync or by audio, not both at the same time. And the implicit auto frameskipping and huge audio buffers ‘masks’ whatever inadequacies there are in these halfbaked syncing solutions. RetroArch has higher demands because it tries to sync by both audio and video at the same time (like real game consoles do), but when it works, it’s lovely.

If Android cannot cope with that, then that is not a blemish on RA. We are not going to purposefully cripple RA just because some operating system is so bad that it cannot cope with these realtime demands on most generic devices.

Honestly we’ve been over this before. i’d say cut down on the sob stories and focus more on actually testing what we are telling you to do. We’re going in circles here.

[QUOTE=nintendonerd1889;33586]Sigh My head’s starting to hurt and my hope is starting to run out, I can’t install 1.2.2 or the nightly build because ES Explorer keeps spout out a “could not install app” error. I can’t reduce the crackling save I adjust the Hz all the way down to nearly 59.00 Hz flat (and the OpenGL app reports 60 Hz exact ever time, so IDK). Top that off with the fact that Lollipop 5.1.1 is really sucking ass when it comes to performance degradation on the same tablet that other developers have, I don’t know what to do anymore, I don’t even know what, if anything, can be done to improve performance for Lollipop users. I did locate a ROM for 4.4.4 KitKat, but it’s for the Shield Tablet and not the K1 (which are the same device really). The only other thing I can think of is when I updated from 1.2.2 a a few days ago, I didn’t remove the config files and that somehow created a conflict, so I can try removing 1.3.0 and then the config files and re-download 1.3.0. I just…sigh really don’t know what else to do -_-

I should also note that my device is rooted with the stock nVidia ROM, 5.1.1 and not that BS that is 6.0 Marshmallow (which I imagine would be far worse), so I can’t just reset back to the default factory settings without going through some convoluted process on XDA. That being said, I’ll:

  • Uninstall app
  • Remove all config files
  • Attempt to install 1.2.2 to see how it fares, if not, delete it
  • Delete config files again (if generated)
  • Install 1.3.0 once more in a clean state and adjust buffer to 96 or 128 ms

Other apps don’t give me this much trouble, but I’m not blaming the app, I’m blaming the sodding OS.

Edit: Turns out with ADB tools, APK files can be forced-installed via command prompt

So I can try that as well.[/QUOTE]

There is no convoluted process, go into fastboot and run flash-all.bat in an environment with fastboot, adb and the USB drivers

[QUOTE=Twinaphex;33588]Those other apps either try to sync by Vsync or by audio, not both at the same time. And the implicit auto frameskipping and huge audio buffers ‘masks’ whatever inadequacies there are in these halfbaked syncing solutions. RetroArch has higher demands because it tries to sync by both audio and video at the same time (like real game consoles do), but when it works, it’s lovely.

If Android cannot cope with that, then that is not a blemish on RA. We are not going to purposefully cripple RA just because some operating system is so bad that it cannot cope with these realtime demands on most generic devices.

Honestly we’ve been over this before. i’d say cut down on the sob stories and focus more on actually testing what we are telling you to do. We’re going in circles here.[/QUOTE] As I stated before, not blaming the app, I’m blaming Google on botching Lollipop and Marshmallow for the degraded performance, and I know you guys are working hard to compensate for Google’s shortcomings in their recent OSes, for that you forever have my gratitude. Nevertheless, there are things I’ll try and I do ultimately have a way to install apps, ADB tools being one such method should other methods fail for one reason or another. If I upset you, I apologize, I’m just trying to figure out my options before I flash the OS again. Anyways, I’ll remove the config files and the 1.3.0 app, try 1.2.2 and if that doesn’t work, then yes,I’ll flash the OS.

At least I’m not trying to run this on my ZTE Sonata phone.

I will do that as a last resort, there are other things that I’m going to try before I flash the OS (speaking of that, I still do have the 3.1.1 recovery image from nVidia, which contains 5.1.1), so I will try to delete the config files and reinstall the app, whether it’s 1.2.2 or 1.3.0, I’ll get back to you on that today. Bad wording on my part, I wasn’t sure on how to re-flash the OS, that’s all.

Apologies. There’s still hope.

Edit: Big update and things are looking better

So, I found an app that lets me install APKs no problem, and installed a nightly build from yesterday. Threaded video: On Vsync: On Buffer: 224 Screen refresh rate: 59.840 Hz (I believe)

I noticed little to no crackling and no degradation in performance running Star Fox, the game where the issue was most noticeable. What I’ll do is test nightly builds as they are readily available but so far, this is looking a lot better on my end. Why? I don’t know :smiley:

@twinaphex: Ok, I did some more thorough testing. I used 1.3 from Playstore and 1.2.2 from the archive (no cam, no loc) and got following results:

1.2.2 running FBA and Metal Slug: 64ms Audio Latency - very minor crackling 96ms Audio Latency - no crackling noticable

1.3 running FBA and Metal Slug: 64ms Audio Latency - Major crackling 96ms Audio Latency - some audio crackling still noticable (during intro/how to play, but also during play; worse than 1.2.2 on 64ms) 128ms Audio Latency - ver minor crackling (approx like 64ms on 1.2.2)

Now, as a matter of fact, RA 1.3 is still totally usable as a 2D-Emulator. For science, I wanted to try Mupen64 cores (both most recent and 1.0.0.2); but on 1.3 the 1.0.0.2 core does not display graphics correctly (so something has been changed here). Trying Mario 64, only Mario’s head is visible in the beginning; Zelda Master Quest only shows the logo and then some random geometry. On 1.2.2, in order to get a crackle free experience on Mupen 1.0.0.2, I had to set Audio Latency to 128ms.

Now with the newest core, no setting whatsoever changed the crackling (I tried all the way up to 224ms and tried fiddling with the refresh rate and vsync). What is interesting, is that with 1.0.0.2 core Zelda Framerate actually fixes to 20fps (as intended with the rom), while latest core readouts are all over the place (30ish fps, going up and down). However, the emulation obviously runs in slow motion (it takes way longer for link to cross the first screen on his horse than with 1.0.0.2 core) so I’m thinking the latest core just really needs some performance face lifting done. Again though, performance (speed of emulation) and crackling feels sensibly worse on 1.3 than 1.2.2 with the same core/config.

I’d love to contribute on a more technical level, but this is as far as I can get time-whise and with my knowledge. If there is any not too time intensive logging method to help you out, let me know!

Regarding Mupen, I have perfect sound on the latest RetroArch with the latest core at 64ms. The latest mupen defaults to cached interpreter so that may be the whole issue here. Just change it to dynarec.

Mupen 64 SM64 test:

NVIDIA SHIELD Tablet (84ms audio latency on superpowered latency test)

  • SM64, stock config audio crackles
  • SM64, dynarec perfect audio at 64ms

Google Nexus 5 (55MS audio latency on superpowered latency test)

  • SM64, stock config audio crackles
  • SM64, dynarec audio crackles at 64ms, and up to 128ms but the core can’t really keep up perfect FPS on this device so it’s a moot point, if it can’t run at target FPS THERE WILL BE CRACKLING

Nvidia Shield Portable (202MS audio latency on superpowered latency test)

  • SM64, stock config audio crackles
  • SM64, dynarec audio crackles at 64ms, at 128ms it’s perfect

FBA Metal Slug X

NVIDIA SHIELD Tablet (84ms audio latency on superpowered latency test)

  • perfect at stock config (even at 64ms)

Google Nexus 5 (55MS audio latency on superpowered latency test)

  • perfect at stock config (even at 64ms)

Nvidia Shield Portable (202MS audio latency on superpowered latency test)

  • perfect at stock config (even at 64ms)

So yeah idk. Gotta note, only overlay input works on mupen for now, something’s off with the JNI code but it didn’t prevent me from testing.

I think I’ll do some testing myself, ABX testing if need be (might be too far), but I can try different builds, oddly enough, I noticed better audio crackling reduction in the 1/22/16 nightly build,

1.3.0 official: Buffer size: 196 ms Refresh rate: 59.500 hz Threaded video: on Vsync: on Game tested: Star Fox (NTSC) Result: Audio crackling, even at a high buffer size

1/22/16 nightly: Buffer size: 196 ms Refresh rate: 59.500 Hz Threaded video: on Vsync: on Game tested: Star Fox (NTSC) Result: No audio crackling at all on this build, not sure how this is even happening.

This is the game that gives the most problems on the Snes9x core, thank goodness I didn’t try this on my ZTE phone, that thing’s barely 1 GHz with <1 GB of RAM on it. Also noted that the Snes9x Next has even less audio-related issues. Specs-wise, the Shield more than meets it, so I suspect that something is running in the background that shouldn’t be, I can install Greenify and disable apps I don’t need.

@Radius: Thx for the comparison. I had dynarec enabled, but as u noticed mobile devices can’t run latest mupen on full speed (the S5 is about the same as my Xperia Z3C)

So the problem with the mupen core is real. Also, as nintendonerd shows, something seems to be off with the official 1.3 release, apparently already fixed in nightlies so thags fine I guess.

As a general idea, maybe for the next release on the playstore settings should default to something mkre compatible.