You can do that even with Blender, although it will not be extremely simple for a program novice. Here is something you need to know:
- you have to create a "sequence", composed by sound track, and an image that is shown for all the sound track length.
- then you have to "render" it, as an "animation" to a video+audio output format
- blender sequences are created as frames, not "seconds": the binding between frames and duration depends on the "animation" frame rate you decide, eg: setting it to 25 f/s would mean that you need
25 f/s * 60 s/minute * 3 minutes = 4500 frames of Blender animation to get a "video" 3 minutes long. You need to tell Blender how many frames your animation needs to be. Later on this.
You can show seconds instead of frames in the "timeline" changing this setting:
The output format of an animation can be everything from an image sequence (1 every frame) to a video file container like an .avi, with many codec (as supported by th bundled FFmpeg libraries, so many formats available).
- you set start and end frame in render setting > "frame range"
- you set the frame rate in render settings > "frame rate"
- every frame size will be what you decide in render settings > "resolution"
- you set the output folder, filename, container file, video and audio codec in render settings > "output" and "encoding"
You will need some practice with all this.
I would do:
- setup desired resolution, frame rate, output and encoding settings
- switch to video layout and load the audio in a strip, position it so that it starts from frame 1
- Note its length (eg: 4446 frames) in the right-side edit strip that appears when you select the imported audio strip. You need to tell Blender that your animation will be 4446 frames long
- set this value in as resolution > frame range > end frame (start frame should be 1 of course), but also in the bottom timeline. This resizes "working area" from the default 250 frames to enough frames to contain all your sound file.
- Now add another strip, with the image you choose. This will result in a little strip (a few frames long, just enough to allow you to select it)
You need to position the image strip so that's starting at 1 and then extend its end until it reaches last frame of the animation (4446 in the example above). To do this right select the whole little strip, and in the right-side edit strip change its end frame from what it is (eg: 26) to the same last frame of the animation (4446 in the example)
more or less it should be done: you will end with something like this ( I also show here how you can display the waveform - hint: you could also edit its levels...)
you just need to tell Blender to "render the animation", that for you will mean "create the video".
- It will be slow, compared to similar specialized softwares, but it should work well (this slowness is a small price you have to pay but Blender can - .in the future - allow you, apart this basic video editing usage, more possibilities that only a few expensive other programs can allow you).
I also suggest you to start with shorter frame range (eg enough for a 30 seconds video) to practice.
To be honest, although it could be simpler than it looks, it will need a bit of practice with standard Blender basic commands like grab, zoom. But it is well worth imho, and if you like the workflow, and the possibilities, there is a lot more you can do, it's just a sort of a "primer".