I recorded an audio using Audacity, then increased its volume 10 times using ffmpeg. When I am sending this audio as attachment to my friends to test, then people with older iPhones are able to hear it fine (volume is still low though), but people on iPhone 14 and higher are not hearing my voice in the mp3 at all.

Actually, on iPhone 14 and higher, my voice is there in audio, but its so low in volume that it's almost inaudible, impossible to hear. I can hear it if I strain really really a lot. Other things on the phone are playing fine, audio settings are showing full.

If I add a background music to the audio using ffmpeg, then people on iPhone 14 and higher are only hearing the music, not my voice. What is happening here?

Edit: This is certainly a ffmpeg issue. I increased volume in input file using audacity and tried playing the new file on iPhone 14, it has somewhat higher volume, can hear myself a little but still not much. In any case, whatever Audacity did to increase volume, that worked, and whatever ffmpeg is doing with my below command, it's not working at all.

My question is: Do I need to adjust some frequency etc options/settings in the input when using ffmpeg to increase the volume? What ffmpeg command can I use to fix the issue, so that volume increased files play on all devices? Thanks

Here is the ffmpeg command I am using to increase volume in my recorded audio. Output mp3 file from below command is uploaded here: https://tbrjar.com/audio_test/z1.mp3

and here's the original input file as recorded by audacity: https://tbrjar.com/audio_test/input.mp3

% ffmpeg -ss 00:00:00 -i input.mp3 -to 00:00:05 -filter:a "volume=10" -c:a libmp3lame z1.mp3
ffmpeg version 2024-03-04-git-e30369bc1c-full_build-www.gyan.dev Copyright (c) 2000-2024 the FFmpeg developers
      built with gcc 13.2.0 (Rev5, Built by MSYS2 project)
      configuration: --enable-gpl --enable-version3 --enable-static --pkg-config=pkg
    conf --disable-w32threads --disable-autodetect --enable-fontconfig --enable-icon
    v --enable-gnutls --enable-libxml2 --enable-gmp --enable-bzlib --enable-lzma --e
    nable-libsnappy --enable-zlib --enable-librist --enable-libsrt --enable-libssh -
    -enable-libzmq --enable-avisynth --enable-libbluray --enable-libcaca --enable-sd
    l2 --enable-libaribb24 --enable-libaribcaption --enable-libdav1d --enable-libdav
    s2 --enable-libuavs3d --enable-libzvbi --enable-librav1e --enable-libsvtav1 --en
    able-libwebp --enable-libx264 --enable-libx265 --enable-libxavs2 --enable-libxvi
    d --enable-libaom --enable-libjxl --enable-libopenjpeg --enable-libvpx --enable-
    mediafoundation --enable-libass --enable-frei0r --enable-libfreetype --enable-li
    bfribidi --enable-libharfbuzz --enable-liblensfun --enable-libvidstab --enable-l
    ibvmaf --enable-libzimg --enable-amf --enable-cuda-llvm --enable-cuvid --enable-
    ffnvcodec --enable-nvdec --enable-nvenc --enable-dxva2 --enable-d3d11va --enable
    -libvpl --enable-libshaderc --enable-vulkan --enable-libplacebo --enable-opencl
    --enable-libcdio --enable-libgme --enable-libmodplug --enable-libopenmpt --enabl
    e-libopencore-amrwb --enable-libmp3lame --enable-libshine --enable-libtheora --e
    nable-libtwolame --enable-libvo-amrwbenc --enable-libcodec2 --enable-libilbc --e
    nable-libgsm --enable-libopencore-amrnb --enable-libopus --enable-libspeex --ena
    ble-libvorbis --enable-ladspa --enable-libbs2b --enable-libflite --enable-libmys
    ofa --enable-librubberband --enable-libsoxr --enable-chromaprint
      libavutil      58. 40.100 / 58. 40.100
      libavcodec     60. 41.100 / 60. 41.100
      libavformat    60. 23.100 / 60. 23.100
      libavdevice    60.  4.100 / 60.  4.100
      libavfilter     9. 17.100 /  9. 17.100
      libswscale      7.  6.100 /  7.  6.100
      libswresample   4. 14.100 /  4. 14.100
      libpostproc    57.  4.100 / 57.  4.100
    Input #0, mp3, from 'luck1.mp3':
      Duration: 00:00:54.02, start: 0.025057, bitrate: 133 kb/s
      Stream #0:0: Audio: mp3 (mp3float), 44100 Hz, stereo, fltp, 133 kb/s
            encoder         : LAME3.100
    Stream mapping:
      Stream #0:0 -> #0:0 (mp3 (mp3float) -> mp3 (libmp3lame))
    Press [q] to stop, [?] for help
    Output #0, mp3, to 'z1.mp3':
        TSSE            : Lavf60.23.100
      Stream #0:0: Audio: mp3, 44100 Hz, stereo, fltp
            encoder         : Lavc60.41.100 libmp3lame
    [out#0/mp3 @ 00000000001a7340] video:0KiB audio:79KiB subtitle:0KiB other stream
    s:0KiB global headers:0KiB muxing overhead: 0.313639%
    size=      79KiB time=00:00:05.00 bitrate= 129.5kbits/s speed=18.2x
  • Try one of these: file.io/JWqYkyt8PQ7t
    – Hydranix
    Commented Jun 29 at 5:41
  • Hi Hydranix, have you only changed codex, or some other settings also in each of these files?
    – Smith Kumar
    Commented Jun 29 at 6:04
  • @Hydranix the AIFF extension file played fine. Could you please let me know the command you used with ffmpeg to produce that file? Will I need to download or rebuild ffmpeg to get this codex working? Many thanks!
    – Smith Kumar
    Commented Jun 29 at 6:17
  • The question seems to ask several things at once, do you want to know why a track only plays on certain iPhones, why Audacity works differently than ffmpeg or how to boost volume with ffmpeg? Please edit the question to focus on the specifc problem you want to solve (and remove the parts not relevant), it will increase your chance of getting useful answers.
    – nohillside
    Commented Jun 29 at 8:02
  • @nohillside I simply wanted to provide all the steps I took and tried to get things working. I want to know why ffmpeg volume increased files are not working on some devices and what ffmpeg command I can use to fix the issue. I'll edit the question with this info. Thanks Commented Jun 29 at 8:07


You must log in to answer this question.

Browse other questions tagged .