Can ffmpeg input mp4 and convert it to m4b or m4a? Can mp4 audio/video be converted to m4b using ffmpeg command line tool.(in vb.net)

I've spent the last few days trying various query combinations to find an answer but to no avail.

What I have found is that m4a/m4b is the same container as mp4, the difference being m4a/m4b contains no video signal.

When I tried to convert mp4 directly to m4b, I ended up with an output m4b much larger than the original mp4 and the m4b still contained video.

I am using a code example from CodeProject. I am able to convert from mp4 to mp3 and from mp3 to m4b but mp4 to m4b still contains the video portion of the file.

So, can ffmpeg input mp4 and convert it to m4b or m4a directly or is it a 2 step process, mp4 to mp3 then mp3 to m4b? If it is a 1 step process, could you point me in the direction of the documentation so I can learn how to do it.

Thanks
This might be a bit late but if it helps I've got a working PowerShell script that I use to create chapterized m4b files which I am assuming you are trying to do since you list m4b. 

I use the following command for mp3 format files 

ffmpeg -f concat -safe 0 -i list.txt -vn -y -b:a 64k -acodec aac -ac 2 temp.m4a


If its already in AAC format (MP4) it's even simpler

ffmpeg -f concat -safe 0 -i list.txt -c copy temp.m4a


list.txt is a simple list of all the files to combine into a single m4a, 1 file per line. I found this to work much better than trying to do it using INPUT and listing all the files on the command line. That method always seemed to break for me.

Once this is done you can inject the chapters and rename to m4b all in a single command line. 

ffmpeg -i "ffmetadata.txt" -i "temp.m4a" -map_metadata 1 -codec copy "$artist - $albumSanitized.m4b"