Welcome to this site and to TASing. If you wanna learn more, join TASVideos and the SMW Discord group. I can PM you the invites...
using TAStudio by itself to put in frame inputs but I don't know if that's the most efficient
Depends on the person. I prefer to use savestates and keyboard inputs, but always seeing the last inputs on screen. Keep in mind that TAStudio must be used with branches in mind and normal savestates are easier to master for beginners. TAStudio is also buggy sometimes and might introduce desyncs in your movies.
I could be using frame advance and slowdown but that seems harder to me.
Once you get used to frame advance, you'll never use slowdown. Real TASers use frame advance all the time, except when input is trivial or unused (like in transitions). Set a key like enter
to toggle pause/unpause and other key like space
to advance the frames. If you are in full speed and press frame-advance, the game also pauses. If you are paused, it advances 1 frame. If you hold frame-advance, after some time it acts as normal speed for the time you hold the button.
I also don't know much/anything about RAM addresses.
RAM addresses are the values that the game memory hold at the moment. Mario is at some spot of the level, so he has some coordinates. Those take 3 bytes (2 for pixel, 1 for subpixel) per axis. Or the positions, speeds, status, palettes, etco f sprites.
Luckily, SMW is like the most explored game ever. This site has a pretty much complete list of RAM addresses and their purpose. Retro TASers used RAM Watch. Now, we use Lua scripts
to display the RAM on screen, to draw hitboxes and to do a bunch of other things... even bots for rare situations.
SMW TAS'er. My pages:
New TAS blog - old SMW Blog, Youtube - Twitter