Ok, thanks. 

But would it be possible to 
- add silence samples at the end of the wav file so that is is a multiple of 1152
- convert it to an mp3
- and get the exact same number of samples with no change between wav duration and mp3 duration

Because I just test with a wav file that is 8640000 samples = 7500 * 1152
and when I convert it to an mp3, I get 8641152 samples

Thanks again for your insights


-----------------------------------------------------------------------
Martin RATINAUD
-----------------------------------------------------------------------


On Mon, Dec 16, 2019 at 5:30 PM Måns Rullgård <mans@mansr.com> wrote:
Martin Ratinaud <martinratinaud@gmail.com> writes:

> Hi Måns and thanks very much
>
> Though it seems the resulting file is 7939544 samples
>
> and 7939544 / 1152 = 6891.965277777777
>
> So it's not a multiple of 1152 unless I'm missing something ?

That difference is due to a rounding error in the stream length
calculation.

> On Mon, Dec 16, 2019 at 3:48 PM Måns Rullgård <mans@mansr.com> wrote:
>
>> Martin Ratinaud <martinratinaud@gmail.com> writes:
>>
>> > Hi all,
>> >
>> > I'm converting a file called vocals.wav to vocals.mp3
>> >  vocals.wav
>> > <
>> https://drive.google.com/file/d/1he1eCJag1G8iGkgL932jy_mXuLT_khGM/view?usp=drive_web
>> >
>> > For this I'm using this command
>> >
>> > ```
>> > sox vocals.wav vocals.mp3
>> > ```
>> > and here is the result of the corresponding files
>> >
>> > - original file
>> > ```
>> > soxi /Users/martin/Downloads/split-test/vocals.wav
>> >
>> > Input File     : '/Users/martin/Downloads/split-test/vocals.wav'
>> > Channels       : 2
>> > Sample Rate    : 44100
>> > Precision      : 16-bit
>> > Duration       : 00:03:00.00 = 7938000 samples = 13500 CDDA sectors
>> > File Size      : 31.8M
>> > Bit Rate       : 1.41M
>> > Sample Encoding: 16-bit Signed Integer PCM
>> > ```
>> >
>> > - converted file
>> > ```
>> > soxi /Users/martin/Downloads/split-test/vocals.mp3
>> >
>> > Input File     : '/Users/martin/Downloads/split-test/vocals.mp3'
>> > Channels       : 2
>> > Sample Rate    : 44100
>> > Precision      : 16-bit
>> > Duration       : 00:03:00.04 = 7939544 samples = 13502.6 CDDA sectors
>> > File Size      : 2.88M
>> > Bit Rate       : 128k
>> > Sample Encoding: MPEG audio (layer I, II or III)
>> > ```
>> >
>> > You can see that the duration is not the same which is weird and the number
>> > of samples also changed.
>> > In fact, 1544 samples have been added to the beginning of the file
>> >
>> > If I try to launch `sox -V vocals.mp3 vocals-trimmed.mp3 trim 1544s` it
>> > does not work
>>
>> MP3 files have to have a multiple of 1152 samples.  This can't be
>> avoided.  If the input isn't such a multiple, it will be padded by the
>> encoder.
>>
>>
>
> _______________________________________________
> Sox-users mailing list
> Sox-users@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/sox-users
>

--
Måns Rullgård