QWinFF media converter (Bionic64). WAV conversion to mp3

Issues and / or general discussion relating to Puppy

Moderator: Forum moderators

Post Reply
User avatar
greengeek
Posts: 1354
Joined: Thu Jul 16, 2020 11:06 pm
Has thanked: 495 times
Been thanked: 185 times

QWinFF media converter (Bionic64). WAV conversion to mp3

Post by greengeek »

I just want to highlight the usefulness of QWinFF - which is a front end gui for ffmpeg.
(QWinFF is available ootb in Bionic64 rightclick menu - I'm not sure about other pups yet)
(QWinFF can do much more than wav-mp3 conversion but that is what I needed at the time)

I have been trying to convert various media formats recently and one of the tasks was to transform a large directory of .WAV files into mp3 files.

Usually I will do this sort of thing one file at a time using mhwaveedit or ffconvert multimedia converter - but the sheer number of files made this an unsuitable method.

I noticed in Tahr32 6.0.6 there is a right-click option to convert an entire directory of wavs to mp3 using "wav2mp3" and this worked well for most wav files but did not work for me on this occasion.

At first I thought it might be that the file extension was capitalised ".WAV" so I converted some to lowercase ".wav" but still no success. In the end it seems that the problem was that my .WAV files were encoded as RIFF MS adpcm which is a microsoft codec.

wav2mp3 did not have the ability to see those files as wavs - it told me that no wavs could be found.

Then I discovered that Bionic64 has QWinFF in it's rightclick menu and I was able to rightclick the directory holding the WAV files and have them all converted to mp3 easily.

QWinFF had a very clear interface and was so straightforward. Looks like a very capable utility.

I don't know if it is available on other pups or just Bionic64 - but it is well worth a look if you are wanting to convert media files.

EDIT :
see here for a simple script for wav-mp3 batch conversion

Last edited by greengeek on Thu Jul 08, 2021 7:42 pm, edited 4 times in total.
User avatar
rcrsn51
Posts: 1289
Joined: Sun Aug 23, 2020 4:26 pm
Been thanked: 311 times

Re: QWinFF media converter (Bionic64). WAV conversion.

Post by rcrsn51 »

What happens with one of these problem files if you try to convert it directly using lame?

Code: Select all

lame input.wav output.mp3
User avatar
greengeek
Posts: 1354
Joined: Thu Jul 16, 2020 11:06 pm
Has thanked: 495 times
Been thanked: 185 times

Re: QWinFF media converter (Bionic64). WAV conversion.

Post by greengeek »

rcrsn51 wrote: Wed Jul 07, 2021 1:36 pm

What happens with one of these problem files if you try to convert it directly using lame?

Code: Select all

lame input.wav output.mp3

Thanks, i will try this out tonight.

User avatar
greengeek
Posts: 1354
Joined: Thu Jul 16, 2020 11:06 pm
Has thanked: 495 times
Been thanked: 185 times

Re: QWinFF media converter (Bionic64). WAV conversion.

Post by greengeek »

rcrsn51 wrote: Wed Jul 07, 2021 1:36 pm

What happens with one of these problem files if you try to convert it directly using lame?

Code: Select all

lame input.wav output.mp3

Result as follows:

Code: Select all

root# lame input.wav output.mp3
Unsupported data format: 0x0002
root# 

EDIT : I then tried to see if ffprobe would give me some info but got an error:

Code: Select all

root# ffprobe input.wav
ffprobe: relocation error: /usr/lib/libswresample.so.0: symbol av_calloc, version LIBAVUTIL_52 not defined in file libavutil.so.52 with link time reference

- so then i tried a basic ffmpeg conversion to see what info it provided:

Code: Select all

root# ffmpeg -i input.wav some.mp3
ffmpeg version 3.1.2 Copyright (c) 2000-2016 the FFmpeg developers
  built with gcc 4.7 (Debian 4.7.2-5)
  configuration: --prefix=/mnt/sda6/ffmpeg-static-master/sffmpeg/build --datadir=/mnt/sda6/ffmpeg-static-master/sffmpeg/build/etc --disable-shared --enable-static --enable-gpl --enable-version3 --enable-nonfree --disable-doc --disable-debug --disable-ffplay --disable-ffserver --disable-outdevs --enable-runtime-cpudetect --enable-memalign-hack --extra-cflags='-I/mnt/sda6/ffmpeg-static-master/sffmpeg/build/include --static' --extra-ldflags=-L/mnt/sda6/ffmpeg-static-master/sffmpeg/build/lib --extra-libs='-lstdc++ -lexpat -ldl' --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libfaac --enable-libfdk-aac --enable-libmp3lame --enable-libspeex --enable-libtheora --enable-libvorbis --enable-libx264 --enable-libx265 --enable-libxvid --enable-libvpx --enable-libopus --enable-librtmp --enable-libfreetype --enable-libass --enable-avresample --enable-x11grab
  libavutil      55. 28.100 / 55. 28.100
  libavcodec     57. 48.101 / 57. 48.101
  libavformat    57. 41.100 / 57. 41.100
  libavdevice    57.  0.101 / 57.  0.101
  libavfilter     6. 47.100 /  6. 47.100
  libavresample   3.  0.  0 /  3.  0.  0
  libswscale      4.  1.100 /  4.  1.100
  libswresample   2.  1.100 /  2.  1.100
  libpostproc    54.  0.100 / 54.  0.100
Guessed Channel Layout for Input Stream #0.0 : mono
Input #0, wav, from 'input.wav':
  Metadata:
    Rock            : 
  Duration: 00:00:57.60, bitrate: 64 kb/s
    Stream #0:0: Audio: adpcm_ms ([2][0][0][0] / 0x0002), 16000 Hz, 1 channels, s16, 64 kb/s
[mp3 @ 0xc664600] Using AVStream.codec to pass codec parameters to muxers is deprecated, use AVStream.codecpar instead.
Output #0, mp3, to 'some.mp3':
  Metadata:
    Rock            : 
    TSSE            : Lavf57.41.100
    Stream #0:0: Audio: mp3 (libmp3lame), 16000 Hz, mono, s16p
    Metadata:
      encoder         : Lavc57.48.101 libmp3lame
Stream mapping:
  Stream #0:0 -> #0:0 (adpcm_ms (native) -> mp3 (libmp3lame))
Press [q] to stop, [?] for help
Multiple frames in a packet from stream 0
size=     165kB time=00:00:56.27 bitrate=  24.1kbits/s speed=71.7x    
video:0kB audio:165kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: 0.143178%
root# 

The result was a playable file so maybe that gives me a syntax that could potentially be used for batch conversion?

User avatar
greengeek
Posts: 1354
Joined: Thu Jul 16, 2020 11:06 pm
Has thanked: 495 times
Been thanked: 185 times

Re: QWinFF media converter (Bionic64). WAV conversion to mp3

Post by greengeek »

I just came up with this script that i can put in the directory containing my WAVs and have it process each WAV using that ffmpeg syntax.
I also found a way on stackexchange to get it to process lowercase wavs at the same time. (using {.WAV,.wav} syntax )

Code: Select all

#! /bin/bash
#Put in directory containing .WAV and/or .wav files then click.
#Converts .WAV and/or .wav files to mp3
clear
for file in *{.WAV,.wav}; do
FILE=$file
BASE=$(echo "${FILE%.*}")
ffmpeg -i $file $BASE.mp3
done

Seems to work ok.

User avatar
rcrsn51
Posts: 1289
Joined: Sun Aug 23, 2020 4:26 pm
Been thanked: 311 times

Re: QWinFF media converter (Bionic64). WAV conversion to mp3

Post by rcrsn51 »

Just out of curiosity, what happens if you run the "file" command on one of these files?

Code: Select all

file input.wav
User avatar
Luke2021
Posts: 26
Joined: Thu Jul 01, 2021 2:19 pm
Has thanked: 7 times

Re: QWinFF media converter (Bionic64). WAV conversion to mp3

Post by Luke2021 »

rcrsn51 wrote: Thu Jul 08, 2021 11:03 am

Just out of curiosity, what happens if you run the "file" command on one of these files?

Should be

Code: Select all

ffmpeg -i input.wav output.mp3
User avatar
rcrsn51
Posts: 1289
Joined: Sun Aug 23, 2020 4:26 pm
Been thanked: 311 times

Re: QWinFF media converter (Bionic64). WAV conversion to mp3

Post by rcrsn51 »

Luke2021 wrote: Thu Jul 08, 2021 1:50 pm
rcrsn51 wrote: Thu Jul 08, 2021 11:03 am

Just out of curiosity, what happens if you run the "file" command on one of these files?

Should be

Code: Select all

ffmpeg -i input.wav output.mp3

?????

I don't think that you understand the purpose of the "file" command. It's to see how Linux identifies the content of the file. That will help to select the appropriate conversion tool.

User avatar
greengeek
Posts: 1354
Joined: Thu Jul 16, 2020 11:06 pm
Has thanked: 495 times
Been thanked: 185 times

Re: QWinFF media converter (Bionic64). WAV conversion to mp3

Post by greengeek »

rcrsn51 wrote: Thu Jul 08, 2021 11:03 am

Just out of curiosity, what happens if you run the "file" command on one of these files?

Code: Select all

file input.wav

Code: Select all

root# file input.wav
input.wav: RIFF (little-endian) data, WAVE audio, Microsoft ADPCM, mono 16000 Hz
root#

and here is what ffmpeg sees the file as:

Code: Select all

Stream #0:0: Audio: adpcm_ms ([2][0][0][0] / 0x0002), 16000 Hz, 1 channels, s16, 64 kb/s
User avatar
rcrsn51
Posts: 1289
Joined: Sun Aug 23, 2020 4:26 pm
Been thanked: 311 times

Re: QWinFF media converter (Bionic64). WAV conversion to mp3

Post by rcrsn51 »

Interesting. I guess that's sufficiently different from a conventional .wav file that the lame-based encoders can't handle it.

Thanks.

User avatar
mikeslr
Posts: 2915
Joined: Mon Jul 13, 2020 11:08 pm
Has thanked: 175 times
Been thanked: 893 times

Re: QWinFF media converter (Bionic64). WAV conversion to mp3

Post by mikeslr »

Your post reminded me about shinobar's FFConvert. Rather than hijack this thread, I've posted about it here, viewtopic.php?f=88&t=3429

Post Reply

Return to “Users”