FamiTracker 0.4.1.1 pre-release

Discuss NSF files, FamiTracker, MML tools, or anything else related to NES music.

Moderator: Moderators

Imperial
Posts: 45
Joined: Sun Sep 08, 2013 7:03 pm

Re: FamiTracker 0.4.1.1 pre-release

Post by Imperial »

@cpow: Better yet, I just used Famitracker to export a sound effect as an NES, then ran it under fceux. There is absolutely a delay in Famitracker which alters the sound. It is longer, choppier, and it feels like, as you said, the rendering or something is getting in the way. In the emulator, it's nice and quick.

As it is, this build of Famitracker lets me compose and gives me a rough idea of the sound, but not an accurate one. That's not a huge problem, as far as I'm concerned, because you should test the sound anyway, unless this could potentially stall/crash the program or damage any data.

And now I'll get to work on rebuilding the program. :)

Edit: Btw, what would it take to add MIDI support?
Imperial
Posts: 45
Joined: Sun Sep 08, 2013 7:03 pm

Re: FamiTracker 0.4.1.1 pre-release

Post by Imperial »

Regarding _X:
Names starting with a _ are reserved for the "system" (roughly compiler+libc) on all systems. In this particular case, _X happens to be #define:d to 0x40, so compilation fails.
That's why.
User avatar
cpow
NESICIDE developer
Posts: 1097
Joined: Mon Oct 13, 2008 7:55 pm
Location: Minneapolis, MN
Contact:

Re: FamiTracker 0.4.1.1 pre-release

Post by cpow »

Imperial wrote:@cpow: Better yet, I just used Famitracker to export a sound effect as an NES, then ran it under fceux. There is absolutely a delay in Famitracker which alters the sound. It is longer, choppier, and it feels like, as you said, the rendering or something is getting in the way. In the emulator, it's nice and quick.
Yeah I am looking into optimizations. Nothing concrete yet.
Imperial wrote:As it is, this build of Famitracker lets me compose and gives me a rough idea of the sound, but not an accurate one. That's not a huge problem, as far as I'm concerned, because you should test the sound anyway, unless this could potentially stall/crash the program or damage any data.
My general disclaimer is the same as what jsr uses for beta versions. Don't use Qt FamiTracker for anything serious...yet. It is very much a beta beta and there's still some things in it that I know are not quite right [keyboard shortcuts, etc.] but progress is slowly being made. Choppy sound should not crash the program.

Imperial wrote:And now I'll get to work on rebuilding the program. :)

Edit: Btw, what would it take to add MIDI support?
[/quote]
I just need to find a cross-platformy way to do MIDI, preferably something I can just compile in like SDL. I haven't looked for such a thing but if it exists and you know of it I'll gladly put it on my list.
User avatar
cpow
NESICIDE developer
Posts: 1097
Joined: Mon Oct 13, 2008 7:55 pm
Location: Minneapolis, MN
Contact:

Re: FamiTracker 0.4.1.1 pre-release

Post by cpow »

Imperial wrote:Regarding _X:
Names starting with a _ are reserved for the "system" (roughly compiler+libc) on all systems. In this particular case, _X happens to be #define:d to 0x40, so compilation fails.
That's why.
Yes but that's slightly strange given the _X is a *member* of a *class*. But #define does what #define does...regardless of scope...oh well. I have posted to FamiTracker forum and we'll just carry on with the change on our side. When you're satisfied with the OpenBSD build would you mind creating a pull request on GitHub for the necessary changes [including this one]?
Imperial
Posts: 45
Joined: Sun Sep 08, 2013 7:03 pm

Re: FamiTracker 0.4.1.1 pre-release

Post by Imperial »

Well, C preprocessor does text replacement, and all. :)

And sure, I'll give you a hand here.

Edit: Pull request.
User avatar
Memblers
Site Admin
Posts: 4044
Joined: Mon Sep 20, 2004 6:04 am
Location: Indianapolis
Contact:

Re: FamiTracker 0.4.1.1 pre-release

Post by Memblers »

cpow wrote: I just need to find a cross-platformy way to do MIDI, preferably something I can just compile in like SDL. I haven't looked for such a thing but if it exists and you know of it I'll gladly put it on my list.
Previously I was on the search for this too, it's been a couple years since I looked but at the time this seemed to be the best I could find: http://portmedia.sourceforge.net/portmidi/
So far I've only used it in Windows though.
Imperial
Posts: 45
Joined: Sun Sep 08, 2013 7:03 pm

Re: FamiTracker 0.4.1.1 pre-release

Post by Imperial »

Memblers wrote:
cpow wrote: I just need to find a cross-platformy way to do MIDI, preferably something I can just compile in like SDL. I haven't looked for such a thing but if it exists and you know of it I'll gladly put it on my list.
Previously I was on the search for this too, it's been a couple years since I looked but at the time this seemed to be the best I could find: http://portmedia.sourceforge.net/portmidi/
So far I've only used it in Windows though.
From portmidi's README_LINUX.txt:
README_LINUX.txt for PortMidi
Roger Dannenberg
14 Oct 2009

To make PortMidi, you need cmake and the Java SDK
It might not be a big deal, but then the dependencies would include Qt 4, SDL, wine-dev, cmake, gmake, and Java. Personally, I don't feel that great about needing Java just do MIDI. Since MIDI isn't crucial, you might use PortMidi but make it a completely optional component at build-time. (EDIT:) Granted, of course, those are all things you should probably have installed as a programmer anyway.

I'm just thinking about this in the case of maintaining a BSD port for Nesicide in the future.
Imperial
Posts: 45
Joined: Sun Sep 08, 2013 7:03 pm

Re: FamiTracker 0.4.1.1 pre-release

Post by Imperial »

It just occurred to me that Qt and SDL are both available to C4droid. I don't know that it'll be compatible with Qt4 or not, but that'll come up.

So, let me see if I can get FamiTracker on Android, hmm? :)

Edit: It looks like it should compile, but there are a couple of errors similar to those I came across earlier while building on OpenBSD. If it succeeds, I'm really curious how it will look and work, or if it will at all, on Android... And yes, I have those wine headers on my Nexus now.

I emailed the author of C4droid about building FamiTracker and got this quick (and slightly snarky) response:
Qt can't be used at the same time with SDL, these input/output systems are independent and incompatible on Android.
P.S. I don't know why someone uses SDL with Qt...
darkhog
Posts: 192
Joined: Tue Jun 28, 2011 2:39 pm

Re: FamiTracker 0.4.1.1 pre-release

Post by darkhog »

tepples wrote:Here's what I have in FT/Wine
FT_Wine_cfg.png
44.1 kHz, 16-bit, 250 ms buffer, high-pass 16 Hz, low-pass -24 dB 12 kHz, 100% volume

By "half speed" I don't mean the pitch was low. I mean it sounds like frames of audio were being repeated, and low pitches were distorted beyond recognition. The slowdown tended to increase when I navigated through menus and dialogs and especially when I alt-tabbed to Firefox to write my testing report. Xfce Task Manager reported fairly high CPU usage.

Yesterday, I got FCEUX audio working in Wine. So it appears Wine audio improved greatly from the version in 10.04 to the version I'm running.

EDIT: cpow's burn-down list
When I was using Linux, I've had similar issue to what you are describing. What I've done was to stop using shitty ALSA and used PulseAudio. If you are already PulseAudio, please tell me your PA configuration. Maybe all that is needed is to change few things? Most likely when I'll see your PA configuration (if you are already using it), I'd be able to tell what's wrong.
lidnariq
Posts: 11432
Joined: Sun Apr 13, 2008 11:12 am

Re: FamiTracker 0.4.1.1 pre-release

Post by lidnariq »

darkhog wrote:shitty ALSA and used PulseAudio
<snicker>
<laugh>
<guffaw>
<roll on the floor laughing>

Oh man, oh man, do you even realize what you said? That's comedy gold.

PulseAudio is a terrible wrapper around ALSA that marginally less terrible than the previous terrible wrapper around ALSA (dmix). I'd try disabling dmix before I tried enabling that piece of crap.
User avatar
cpow
NESICIDE developer
Posts: 1097
Joined: Mon Oct 13, 2008 7:55 pm
Location: Minneapolis, MN
Contact:

FamiTracker 0.4.2.3 pre-release

Post by cpow »

I've put out a 32-bit Linux [Ubuntu 12.10] build of Qt FamiTracker here.

Still a 'pre-release' but many things have been getting significantly better with it in recent days, so I figured it's time to try to get some user feedback.

It's based on MFC FamiTracker 0.4.2.

You *should* only need SDL 1.2 to get it up and running. And, since I had to tell tepples I'm sure others might want to know:

Code: Select all

LD_LIBRARY_PATH=. ./famitracker &
Do ^ this where you extract the tarball to start it.
Post Reply