Opened 5 months ago

Last modified 7 weeks ago

#9764 new defect

MP3 decoding errors on ARMv4 hardware

Reported by: David Fletcher Owned by:
Priority: normal Component: avcodec
Version: git-master Keywords: mp3 arm
Cc: Blocked By:
Blocking: Reproduced by developer: no
Analyzed by developer: no

Description

Summary of the bug: There is distortion, especially for low bitrate stations, using the FFmpeg fixed point mp3 decoder on older (ARMv4) processors. This does not occur using the same configuration in x86 or more modern/capable ARM processors.

The problem can be worked around using the libmad MP3 decoder which works perfectly on the ARMv4 processor (see patch http://ffmpeg.org/pipermail/ffmpeg-devel/2022-May/295941.html. But this just works around the issue rather than fixing it. I spent a lot of time looking at the fixed point math routines, especially libavcodec/arm/mpegaudiodsp_fixed_armv6.S. This is the main place there's ARM6 specific code - I wrote a new version of this for AMRv4 but it didn't fix the issue.

How to reproduce:

I've made a demonstration of transcoding an MP3 radio stream and saving it to file. It is saved in the AU format (this is useful in my application, changing the output format does not solve the issue). Relevant files are in "mp3_decode_ARMv4_errors.tar.gz" uploaded to upload.ffmpeg.org.

transcode_v4_ffmpeg.c - program to do the transcoding (Instructions to compile are at the top of this file. It makes use of static libraries for form a static binary. In the case of the ARMv4 hardware this is required as part of reducing binary size to get it onto the filesystem of the embedded board which has only 32MB storage, and 32MB RAM. I followed the same static route for the ARMv7 case - use of static libraries is not the issue).

output_armv4t.au - output from the ARMv4 system - listenable, but poor quality
output_arm7.au - output from the ARMv7 system - very good quality sound

Below is debug output generated from both systems, and also the configuration used to compile the libraries. This differs between the systems as for ARM4 it's a cross-compilation on another machine, whereas for ARM7 the compiler exists on the same machine that the binary will run on.

Arm 7 implimentation:

./transcode_v4_ffmpeg
[NULL @ 0xdcd260] Opening 'http://stream.live.vc.bbcmedia.co.uk/bbc_world_service' for reading
[http @ 0xdcd5c0] Setting default whitelist 'http,https,tls,rtp,tcp,udp,crypto,httpproxy,data'
[tcp @ 0xdd0130] Original list of addresses:
[tcp @ 0xdd0130] Address 132.185.209.55 port 80
[tcp @ 0xdd0130] Address 132.185.210.58 port 80
[tcp @ 0xdd0130] Address 132.185.209.58 port 80
[tcp @ 0xdd0130] Address 132.185.210.72 port 80
[tcp @ 0xdd0130] Interleaved list of addresses:
[tcp @ 0xdd0130] Address 132.185.209.55 port 80
[tcp @ 0xdd0130] Address 132.185.210.58 port 80
[tcp @ 0xdd0130] Address 132.185.209.58 port 80
[tcp @ 0xdd0130] Address 132.185.210.72 port 80
[tcp @ 0xdd0130] Starting connection attempt to 132.185.209.55 port 80
[tcp @ 0xdd0130] Successfully connected to 132.185.209.55 port 80
[http @ 0xdcd5c0] request: GET /bbc_world_service HTTP/1.1
User-Agent: Lavf/LIBAVFORMAT_VERSION
Accept: */*
Range: bytes=0-
Connection: close
Host: stream.live.vc.bbcmedia.co.uk
Icy-MetaData: 1

[http @ 0xdcd5c0] Metadata update for StreamTitle: BBC World Service Online
[mp3 @ 0xdcd260] Format mp3 probed with size=65536 and score=50
[mp3 @ 0xdcd260] Skipping 28 bytes of junk at 0.
[mp3 @ 0xdcd260] Before avformat_find_stream_info() pos: 28 bytes read:65679 seeks:0 nb_streams:1
[mp3 @ 0xdcd260] All info found
[mp3 @ 0xdcd260] After avformat_find_stream_info() pos: 9244 bytes read:65679 seeks:0 frames:50
Input #0, mp3, from 'http://stream.live.vc.bbcmedia.co.uk/bbc_world_service':

Metadata:

icy-br : 56
icy-pub : 0
icy-name : BBC Radio
icy-description : BBC Radio
StreamTitle : BBC World Service Online

Duration: N/A, start: 0.000000, bitrate: 56 kb/s
Stream #0:0, 50, 1/14112000: Audio: mp3, 24000 Hz, stereo, s16p, 56 kb/s

Frame rate 1: 24000
[file @ 0xde1000] Setting default whitelist 'file,crypto,data'
[SWR @ 0xdfe350] Using s16p internally between filters
Incoming bit rate: 14492400Frame rate: 24000

(I noted that the incoming bit rate is shown incorrectly, while shown ok on the ARMv4 version. Probably something about 32bit of 64bit and the printf formatting)

Arm 4 implementation:

./transcode_v4_ffmpeg
[NULL @ 0x187120] Opening 'http://stream.live.vc.bbcmedia.co.uk/bbc_world_service' for reading
[http @ 0x187470] Setting default whitelist 'http,https,tls,rtp,tcp,udp,crypto,httpproxy,data'
[tcp @ 0x189f50] Original list of addresses:
[tcp @ 0x189f50] Address 132.185.209.59 port 80
[tcp @ 0x189f50] Address 132.185.210.58 port 80
[tcp @ 0x189f50] Address 132.185.209.71 port 80
[tcp @ 0x189f50] Address 132.185.210.69 port 80
[tcp @ 0x189f50] Interleaved list of addresses:
[tcp @ 0x189f50] Address 132.185.209.59 port 80
[tcp @ 0x189f50] Address 132.185.210.58 port 80
[tcp @ 0x189f50] Address 132.185.209.71 port 80
[tcp @ 0x189f50] Address 132.185.210.69 port 80
[tcp @ 0x189f50] Starting connection attempt to 132.185.209.59 port 80
[tcp @ 0x189f50] Successfully connected to 132.185.209.59 port 80
[http @ 0x187470] request: GET /bbc_world_service HTTP/1.1
User-Agent: Lavf/LIBAVFORMAT_VERSION
Accept: */*
Range: bytes=0-
Connection: close
Host: stream.live.vc.bbcmedia.co.uk
Icy-MetaData: 1

[http @ 0x187470] Metadata update for StreamTitle: BBC World Service Online
[mp3 @ 0x187120] Format mp3 probed with size=65536 and score=50
[mp3 @ 0x187120] Skipping 85 bytes of junk at 0.
[mp3 @ 0x187120] Before avformat_find_stream_info() pos: 85 bytes read:65679 seeks:0 nb_streams:1
[mp3 @ 0x187120] All info found
[mp3 @ 0x187120] After avformat_find_stream_info() pos: 9301 bytes read:65679 seeks:0 frames:50
Input #0, mp3, from 'http://stream.live.vc.bbcmedia.co.uk/bbc_world_service':

Metadata:

icy-br : 56
icy-pub : 0
icy-name : BBC Radio
icy-description : BBC Radio
StreamTitle : BBC World Service Online

Duration: N/A, start: 0.000000, bitrate: 56 kb/s
Stream #0:0, 50, 1/14112000: Audio: mp3, 24000 Hz, stereo, s16p, 56 kb/s

Frame rate 1: 24000
[file @ 0x194020] Setting default whitelist 'file,crypto,data'
[SWR @ 0x1ac220] Using s16p internally between filters
Incoming bit rate: 56000Frame rate: 24000

Configuration of FFmpeg libraries

FFmpeg version: ffmpeg-master-b67572c (current on 2nd May 2022)

ARMv7 (native compilation on Raspberry Pi)

./configure --disable-everything --disable-avdevice --disable-swscale --disable-postproc --disable-avfilter --disable-encoders --enable-encoder='pcm_s16be,pcm_mulaw' --disable-filters --enable-shared --disable-muxers --enable-muxer=au --disable-bsfs --enable-bsf=remove_extradata --disable-decoders --enable-decoder=mp3 --disable-doc --disable-protocols --enable-protocol='http,file' --disable-demuxers --enable-demuxer='mp3,mpegts' --disable-parsers --disable-libxcb --disable-bzlib --disable-iconv --disable-lzma --disable-xlib --disable-zlib --disable-cuda --disable-cuvid --disable-nvenc --disable-vaapi --disable-vdpau --disable-libv4l2 --extra-cflags='-ffast-math' --disable-iconv --disable-linux-perf --disable-debug --enable-small --disable-vfp --disable-neon --enable-asm --enable-gpl --enable-nonfree

Environment:
gcc version 10.2.1 20210110 (Raspbian 10.2.1-6+rpi1)
Linux version 5.15.32-v7+
Processor: RP3A0 - ARMv7 Processor rev 4 (v7l)

ARMv4T (cross-compilation on Slackware linux)

./configure --disable-everything --disable-avdevice --disable-swscale --disable-postproc --disable-avfilter --disable-encoders --enable-encoder='pcm_s16be,pcm_mulaw' --disable-filters --enable-shared --disable-muxers --enable-muxer=au --disable-bsfs --enable-bsf=remove_extradata --disable-decoders --enable-decoder=mp3 --disable-doc --disable-protocols --enable-protocol='http,file' --disable-demuxers --enable-demuxer='mp3,mpegts' --disable-parsers --disable-libxcb --disable-bzlib --disable-iconv --disable-lzma --disable-xlib --disable-zlib --disable-cuda --disable-cuvid --disable-nvenc --disable-vaapi --disable-vdpau --disable-libv4l2 --extra-cflags='-ffast-math -I/opt/crosstool/gcc-4.1.0-glibc-2.3.2/arm-9tdmi-linux-gnu/arm-9tdmi-linux-gnu/include/ -I/tmp/reciva/root/include/ -I/tmp/reciva/root/usr/include/' --enable-cross-compile --cross-prefix=/opt/crosstool/gcc-4.1.0-glibc-2.3.2/arm-9tdmi-linux-gnu/bin/arm-9tdmi-linux-gnu- --arch=armv4t --target-os=linux --prefix=/tmp/reciva/root --disable-iconv --tempprefix=/home/dif/tmp/ --pkg-config=/usr/bin/pkg-config --disable-linux-perf --disable-debug --enable-small --disable-vfp --disable-neon --enable-asm --enable-gpl --enable-nonfree

Environment
gcc version 4.1.0
Compilation machine: Linux version 2.4.22
Target machine running code: Linux version 2.4.26-vrs1-bast2
Processor: Arm920Tid(wb) rev 0 (v4l)


Quite likely the ARMv4 version is using some code in FFmpeg that is very little used. ARMv4 has no floating point CPU, whereas ARM7 does - not both were configured to use the fixed point mp3 decoder (from reading the code this is a default unless you specifically ask for the floating point version).

The cross-compilation environment is ancient (a consequence of the target system, the Reciva Radio platform being ~16-17 years old). But compilation runs without errors other than lines 123 of libavutil/error.c which throw an error about "wrong type of argument to unary minus" - this can be resolved by commenting out the offending line and making the function return -1. This has no effect on the primary mp3 decoding issue. Multiple other libraries compiled using the same cross-compilation system and also making machine code optimisations are working fine (wolfSSL, libmad, fdk-aac-free(libfdk-aac).

There could be a compiler issue, but I think it's more likely something about the fixed point math routines used in FFmpeg. Working with version 5.0.1 I got this issue, but all tests were repeated using git-master.

Attachments (6)

s-32-44100.mp3 (285.6 KB ) - added by David Fletcher 7 weeks ago.
Example input file
s-32-44100_arm4 (truncated).au (2.2 MB ) - added by David Fletcher 7 weeks ago.
Output from ARMv4 machine - distorted
s-32-44100_x86 (truncated).au (2.2 MB ) - added by David Fletcher 7 weeks ago.
Output from X86-64 machine - not distorted
transcode_v4_ffmpeg_1.c (32.4 KB ) - added by David Fletcher 7 weeks ago.
Transcode (based in example in source tree), modified from previously uploated to fetch the example MP3 insrtead of an internet radio stream
s-32-44100_with_ffmpeg (truncated).au (2.2 MB ) - added by David Fletcher 7 weeks ago.
File converted using the ffmpeg application - still distorted
s-32-44100_no-fast-math (truncated).au (2.2 MB ) - added by David Fletcher 7 weeks ago.
Output from ARMv4 machine without fast-math and with optimisations disabled

Change History (15)

comment:1 by David Fletcher, 5 months ago

I can't get into the FTP upload site. The files mentioned in the ticket can be downloaded here instead:
http://www.megapico.co.uk/sharpfin/mp3_decode_ARMv4_errors_9764.tar.gz

(7.1MB, note this is a slow connection)

Last edited 5 months ago by David Fletcher (previous) (diff)

comment:2 by Carl Eugen Hoyos, 2 months ago

Keywords: mp3 arm added

Please attach a short input sample file and provide the command line that you tested together with the complete, uncut console output to make this a valid ticket.

by David Fletcher, 7 weeks ago

Attachment: s-32-44100.mp3 added

Example input file

comment:3 by David Fletcher, 7 weeks ago

Example of the console output running on the ARMv4 machine (in this case using the transcode_v4_ffmpeg.c file already attached compiled against the latest source, snapshot N-107787-gc469c3c3b1). The transcode_v4_ffmpeg.c file was updated to read the source file (s-32-44100.mp3) which is attached to this ticket rather than the internet radio stream originally read. This is selected as characteristic of a low bitrate internet stream which is where the problem on arm4 hardware comes to light.

./transcode_arm4 
[NULL @ 0x191d30] Opening 'http://www.megapico.co.uk/sharpfin/s-32-44100.mp3' for reading
[http @ 0x192060] Setting default whitelist 'http,https,tls,rtp,tcp,udp,crypto,httpproxy,data'
[tcp @ 0x194b20] Original list of addresses:
[tcp @ 0x194b20] Address 80.229.167.224 port 80
[tcp @ 0x194b20] Interleaved list of addresses:
[tcp @ 0x194b20] Address 80.229.167.224 port 80
[tcp @ 0x194b20] Starting connection attempt to 80.229.167.224 port 80
[tcp @ 0x194b20] Successfully connected to 80.229.167.224 port 80
[http @ 0x192060] request: GET /sharpfin/s-32-44100.mp3 HTTP/1.1
User-Agent: Lavf/59.30.100
Accept: */*
Range: bytes=0-
Connection: close
Host: www.megapico.co.uk
Icy-MetaData: 1


[mp3 @ 0x191d30] Format mp3 probed with size=131072 and score=51
id3v2 ver:3 flags:00 len:65526
[mp3 @ 0x191d30] Skipping 0 bytes of junk at 65536.
[mp3 @ 0x191d30] Before avformat_find_stream_info() pos: 65536 bytes read:131445 seeks:0 nb_streams:1
[mp3 @ 0x191d30] All info found
[mp3 @ 0x191d30] Estimating duration from bitrate, this may be inaccurate
[mp3 @ 0x191d30] After avformat_find_stream_info() pos: 71680 bytes read:131445 seeks:0 frames:50
Input #0, mp3, from 'http://www.megapico.co.uk/sharpfin/s-32-44100.mp3':
  Metadata:
    title           : 190130
    album           : Podnews
    artist          : James Cridland
    album_artist    : James Cridland
    comment         : Visit https://podnews.net to get our daily newsletter, free
    track           : 190130
    RAD             : {"remoteAudioData":{"episodeID":"generic","trackingUrls":["https://podnews.net/rad"],"events":[{"eventTime":"00:00:00.000","label":"RAD0"}, {"eventTime":"00:00:56.570","label":"RAD50"}],"podcastID":"podnews"}}
    genre           : Podcast
    copyright       : Amazingly Brilliant Pty Ltd
    encoded_by      : Hindenburg Journalist Pro 1.82.2312
    date            : 2019
  Duration: 00:00:56.72, start: 0.000000, bitrate: 41 kb/s
  Stream #0:0, 50, 1/14112000: Audio: mp3, 44100 Hz, stereo, s16p, 32 kb/s
Frame rate 1: 44100
Too much data!!
[file @ 0x198540] Setting default whitelist 'file,crypto,data'
[SWR @ 0x1ae790] Using s16p internally between filters
Incoming bit rate: 32000Frame rate: 44100
[AVIOContext @ 0x198590] Statistics: 9215276 bytes written, 2 seeks, 37 writeouts
[AVIOContext @ 0x19d820] Statistics: 292407 bytes read, 0 seeks

The output on ARMv4 is distorted relative to the original. The same code running on X86-64 (intel i5) produces output that is not distorted.

by David Fletcher, 7 weeks ago

Output from ARMv4 machine - distorted

by David Fletcher, 7 weeks ago

Output from X86-64 machine - not distorted

by David Fletcher, 7 weeks ago

Attachment: transcode_v4_ffmpeg_1.c added

Transcode (based in example in source tree), modified from previously uploated to fetch the example MP3 insrtead of an internet radio stream

comment:4 by David Fletcher, 7 weeks ago

Example output files uploaded, truncated to 2.5MB limit

comment:5 by Carl Eugen Hoyos, 7 weeks ago

Is the issue not reproducible with ffmpeg, the application?

comment:6 by David Fletcher, 7 weeks ago

ffmpeg (the application) is not built in the configuration used here - it's the libraries that are being used: libavformat.a libavcodec.a libswresample.a libavutil.a

The configuration of the source code aims to minimise the size of the libraries due to total available storage on the ARMv4 device being 32MB. Using --disable-avfilter seems to prevent ffmpeg from building but all the required libraries are still built.

If you do build ffmpeg (--enable-avfilter) it ends up with at least a minimum number of filters included. It refuses to run without them so it's not reproducing the situation from the transcode_aac example file (which is adapted here to test the libraries).

I will try the ffmpeg application and report back, but it's not really reproducing the same situation as using the libraries direct.

comment:7 by David Fletcher, 7 weeks ago

I attached additional USB storage to enable me to run ffmpeg (the application) and do the conversion of mp3. The output remains very distorted even using the main application instead of the transcode program and libraries.

I'll attach the file truncated for the 2.5MB upload limit (s-32-44100_with_ffmpeg (truncated).au) and output listing from the conversion is below.

Thanks for looking at this - there's definitely something wrong not just my transcode app. Using ffmpeg with libmad as an mp3 decoder removes this problem completely.

./ffmpeg -i s-32-44100.mp3 s-32-44100_with_ffmpeg.au
ffmpeg version N-107787-gc469c3c3b1 Copyright (c) 2000-2022 the FFmpeg developers
  built with gcc 4.1.0 (GCC)
  configuration: --disable-doc --disable-libxcb --disable-bzlib --disable-iconv --disable-lzma --disable-xlib --disable-zlib --disable-cuda --disable-cuvid --disable-nvenc --disable-vaapi --disable-vdpau --disable-libv4l2 --extra-cflags='-ffast-math \ -I/opt/crosstool/gcc-4.1.0-glibc-2.3.2/arm-9tdmi-linux-gnu/arm-9tdmi-linux-gnu/include/ \ -I/tmp/reciva/root/include/ -I/tmp/reciva/root/usr/include/' --enable-cross-compile --cross-prefix=/opt/crosstool/gcc-4.1.0-glibc-2.3.2/arm-9tdmi-linux-gnu/bin/arm-9tdmi-linux-gnu- --arch=armv4t --target-os=linux --prefix=/tmp/reciva/root --disable-iconv --tempprefix=/home/dif/tmp/ --pkg-config=/usr/bin/pkg-config --disable-linux-perf --disable-debug --enable-small --disable-vfp --disable-neon --enable-asm --enable-gpl --enable-nonfree --disable-vfp
  libavutil      57. 33.101 / 57. 33.101
  libavcodec     59. 42.101 / 59. 42.101
  libavformat    59. 30.100 / 59. 30.100
  libavdevice    59.  8.101 / 59.  8.101
  libavfilter     8. 46.103 /  8. 46.103
  libswscale      6.  8.102 /  6.  8.102
  libswresample   4.  8.100 /  4.  8.100
  libpostproc    56.  7.100 / 56.  7.100
[mp3 @ 0x13e78d0] Estimating duration from bitrate, this may be inaccurate
Input #0, mp3, from 's-32-44100.mp3':
  Metadata:
    title           : 190130
    album           : Podnews
    artist          : James Cridland
    album_artist    : James Cridland
    comment         : Visit https://podnews.net to get our daily newsletter, free
    track           : 190130
    RAD             : {"remoteAudioData":{"episodeID":"generic","trackingUrls":["https://podnews.net/rad"],"events":[{"eventTime":"00:00:00.000","label":"RAD0"}, {"eventTime":"00:00:56.570","label":"RAD50"}],"podcastID":"podnews"}}
    genre           : Podcast
    copyright       : Amazingly Brilliant Pty Ltd
    encoded_by      : Hindenburg Journalist Pro 1.82.2312
    date            : 2019
  Duration: 00:00:56.72, start: 0.000000, bitrate: 41 kb/s
  Stream #0:0: Audio: mp3, 44100 Hz, stereo, fltp, 32 kb/s
Stream mapping:
  Stream #0:0 -> #0:0 (mp3 (mp3float) -> pcm_s16be (native))
Press [q] to stop, [?] for help
Output #0, au, to 's-32-44100_with_ffmpeg.au':
  Metadata:
    title           : 190130
    album           : Podnews
    artist          : James Cridland
    album_artist    : James Cridland
    comment         : Visit https://podnews.net to get our daily newsletter, free
    track           : 190130
    RAD             : {"remoteAudioData":{"episodeID":"generic","trackingUrls":["https://podnews.net/rad"],"events":[{"eventTime":"00:00:00.000","label":"RAD0"}, {"eventTime":"00:00:56.570","label":"RAD50"}],"podcastID":"podnews"}}
    genre           : Podcast
    copyright       : Amazingly Brilliant Pty Ltd
    encoded_by      : Hindenburg Journalist Pro 1.82.2312
    date            : 2019
    encoder         : Lavf59.30.100
  Stream #0:0: Audio: pcm_s16be ([3][0][0][0] / 0x0003), 44100 Hz, stereo, s16, 1411 kb/s
    Metadata:
      encoder         : Lavc59.42.101 pcm_s16be
size=    9765kB time=00:00:56.65 bitrate=1411.9kbits/s speed=0.147x     
video:0kB audio:9765kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: 0.001040%



by David Fletcher, 7 weeks ago

File converted using the ffmpeg application - still distorted

comment:8 by Carl Eugen Hoyos, 7 weeks ago

Please also try without -ffast-math and with --disable-optimizations

comment:9 by David Fletcher, 7 weeks ago

Here's the latest output without -ffast-math and with --disable-optimizations. Unfortunately there's no change, the output on ARMv4 is still distorted. I'll upload as s-32-44100_no-fast-math.au.

# ./ffmpeg -i s-32-44100.mp3 s-32-44100_no-fast-math.au
ffmpeg version N-107787-gc469c3c3b1 Copyright (c) 2000-2022 the FFmpeg developers
  built with gcc 4.1.0 (GCC)
  configuration: --disable-doc --disable-libxcb --disable-bzlib --disable-iconv --disable-lzma --disable-xlib --disable-zlib --disable-cuda --disable-cuvid --disable-nvenc --disable-vaapi --disable-vdpau --disable-libv4l2 --extra-cflags=' -I/opt/crosstool/gcc-4.1.0-glibc-2.3.2/arm-9tdmi-linux-gnu/arm-9tdmi-linux-gnu/include/ -I/tmp/reciva/root/include/ -I/tmp/reciva/root/usr/include/' --enable-cross-compile --cross-prefix=/opt/crosstool/gcc-4.1.0-glibc-2.3.2/arm-9tdmi-linux-gnu/bin/arm-9tdmi-linux-gnu- --arch=armv4t --target-os=linux --prefix=/tmp/reciva/root --disable-iconv --tempprefix=/home/dif/tmp/ --pkg-config=/usr/bin/pkg-config --disable-linux-perf --disable-debug --enable-small --disable-vfp --disable-neon --enable-asm --enable-gpl --enable-nonfree --disable-vfp --disable-optimizations
  libavutil      57. 33.101 / 57. 33.101
  libavcodec     59. 42.101 / 59. 42.101
  libavformat    59. 30.100 / 59. 30.100
  libavdevice    59.  8.101 / 59.  8.101
  libavfilter     8. 46.103 /  8. 46.103
  libswscale      6.  8.102 /  6.  8.102
  libswresample   4.  8.100 /  4.  8.100
  libpostproc    56.  7.100 / 56.  7.100
[mp3 @ 0x13e9e30] Estimating duration from bitrate, this may be inaccurate
Input #0, mp3, from 's-32-44100.mp3':
  Metadata:
    title           : 190130
    album           : Podnews
    artist          : James Cridland
    album_artist    : James Cridland
    comment         : Visit https://podnews.net to get our daily newsletter, free
    track           : 190130
    RAD             : {"remoteAudioData":{"episodeID":"generic","trackingUrls":["https://podnews.net/rad"],"events":[{"eventTime":"00:00:00.000","label":"RAD0"}, {"eventTime":"00:00:56.570","label":"RAD50"}],"podcastID":"podnews"}}
    genre           : Podcast
    copyright       : Amazingly Brilliant Pty Ltd
    encoded_by      : Hindenburg Journalist Pro 1.82.2312
    date            : 2019
  Duration: 00:00:56.72, start: 0.000000, bitrate: 41 kb/s
  Stream #0:0: Audio: mp3, 44100 Hz, stereo, fltp, 32 kb/s
Stream mapping:
  Stream #0:0 -> #0:0 (mp3 (mp3float) -> pcm_s16be (native))
Press [q] to stop, [?] for help
Output #0, au, to 's-32-44100_no-fast-math.au':
  Metadata:
    title           : 190130
    album           : Podnews
    artist          : James Cridland
    album_artist    : James Cridland
    comment         : Visit https://podnews.net to get our daily newsletter, free
    track           : 190130
    RAD             : {"remoteAudioData":{"episodeID":"generic","trackingUrls":["https://podnews.net/rad"],"events":[{"eventTime":"00:00:00.000","label":"RAD0"}, {"eventTime":"00:00:56.570","label":"RAD50"}],"podcastID":"podnews"}}
    genre           : Podcast
    copyright       : Amazingly Brilliant Pty Ltd
    encoded_by      : Hindenburg Journalist Pro 1.82.2312
    date            : 2019
    encoder         : Lavf59.30.100
  Stream #0:0: Audio: pcm_s16be ([3][0][0][0] / 0x0003), 44100 Hz, stereo, s16, 1411 kb/s
    Metadata:
      encoder         : Lavc59.42.101 pcm_s16be
size=    9765kB time=00:00:56.65 bitrate=1411.9kbits/s speed=0.14x     
video:0kB audio:9765kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: 0.001040%


by David Fletcher, 7 weeks ago

Output from ARMv4 machine without fast-math and with optimisations disabled

Note: See TracTickets for help on using tickets.