Opened 7 years ago

Closed 7 years ago

#6280 closed defect (fixed)

I/O error while converting AMR files

Reported by: Samuel Owned by:
Priority: minor Component: avformat
Version: git-master Keywords: AMR regression
Cc: Blocked By:
Blocking: Reproduced by developer: yes
Analyzed by developer: no

Description

Summary of the bug:
Convertion of AMR files stop and give an I/O error.

How to reproduce:
% ffmpeg.exe -i "sample_NB.amr" -vn -f s16be -ar 48000 -ac 2 NUL

ffmpeg version N-80999-gf41e37b Copyright (c) 2000-2016 the FFmpeg developers
  built with gcc 5.4.0 (GCC)
  configuration: --enable-gpl --enable-version3 --disable-w32threads --enable-dxva2 --enable-libmfx --enable-nvenc --enable-avisynth --enable-bzlib --enable-libebur128 --enable-fontconfig --enable-frei0r --enable-gnutls --enable-iconv --enable-libass --enable-libbluray --enable-libbs2b --enable-libcaca --enable-libfreetype --enable-libgme --enable-libgsm --enable-libilbc --enable-libmodplug --enable-libmp3lame --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libopenjpeg --enable-libopus --enable-librtmp --enable-libschroedinger --enable-libsnappy --enable-libsoxr --enable-libspeex --enable-libtheora --enable-libtwolame --enable-libvidstab --enable-libvo-amrwbenc --enable-libvorbis --enable-libvpx --enable-libwavpack --enable-libwebp --enable-libx264 --enable-libx265 --enable-libxavs --enable-libxvid --enable-libzimg --enable-lzma --enable-decklink --enable-zlib
  libavutil      55. 28.100 / 55. 28.100
  libavcodec     57. 50.100 / 57. 50.100
  libavformat    57. 41.100 / 57. 41.100
  libavdevice    57.  0.102 / 57.  0.102
  libavfilter     6. 47.100 /  6. 47.100
  libswscale      4.  1.100 /  4.  1.100
  libswresample   2.  1.100 /  2.  1.100
  libpostproc    54.  0.100 / 54.  0.100
Splitting the commandline.
Reading option '-y' ... matched as option 'y' (overwrite output files) with argument '1'.
Reading option '-v' ... matched as option 'v' (set logging level) with argument '9'.
Reading option '-loglevel' ... matched as option 'loglevel' (set logging level) with argument '99'.
Reading option '-report' ... matched as option 'report' (generate a report) with argument '1'.
Reading option '-i' ... matched as input file with argument 'sample_NB.amr'.
Reading option '-vn' ... matched as option 'vn' (disable video) with argument '1'.
Reading option '-f' ... matched as option 'f' (force format) with argument 's16be'.
Reading option '-ar' ... matched as option 'ar' (set audio sampling rate (in Hz)) with argument '48000'.
Reading option '-ac' ... matched as option 'ac' (set number of audio channels) with argument '2'.
Reading option 'NUL' ... matched as output file.
Finished splitting the commandline.
Parsing a group of options: global .
Applying option y (overwrite output files) with argument 1.
Applying option v (set logging level) with argument 9.
Applying option loglevel (set logging level) with argument 99.
Applying option report (generate a report) with argument 1.
Successfully parsed a group of options.
Parsing a group of options: input file sample_NB.amr.
Successfully parsed a group of options.
Opening an input file: sample_NB.amr.
[file @ 033da660] Setting default whitelist 'file,crypto'
[amr @ 033d9ce0] Format amr probed with size=2048 and score=100
[amr @ 033d9ce0] Before avformat_find_stream_info() pos: 6 bytes read:32768 seeks:0 nb_streams:1
[amr @ 033d9ce0] All info found
[amr @ 033d9ce0] Estimating duration from bitrate, this may be inaccurate
[amr @ 033d9ce0] After avformat_find_stream_info() pos: 1606 bytes read:32768 seeks:0 frames:50
Input #0, amr, from 'sample_NB.amr':
  Duration: 00:00:49.86, bitrate: 12 kb/s
    Stream #0:0, 50, 1/8000: Audio: amr_nb (samr / 0x726D6173), 8000 Hz, mono, flt
Successfully opened the file.
Parsing a group of options: output file NUL.
Applying option vn (disable video) with argument 1.
Applying option f (force format) with argument s16be.
Applying option ar (set audio sampling rate (in Hz)) with argument 48000.
Applying option ac (set number of audio channels) with argument 2.
Successfully parsed a group of options.
Opening an output file: NUL.
[file @ 033da8c0] Setting default whitelist 'file,crypto'
Successfully opened the file.
detected 1 logical cores
[graph 0 input from stream 0:0 @ 034db1a0] Setting 'time_base' to value '1/8000'
[graph 0 input from stream 0:0 @ 034db1a0] Setting 'sample_rate' to value '8000'
[graph 0 input from stream 0:0 @ 034db1a0] Setting 'sample_fmt' to value 'flt'
[graph 0 input from stream 0:0 @ 034db1a0] Setting 'channel_layout' to value '0x4'
[graph 0 input from stream 0:0 @ 034db1a0] tb:1/8000 samplefmt:flt samplerate:8000 chlayout:0x4
[audio format for output stream 0:0 @ 034dbbc0] Setting 'sample_fmts' to value 's16'
[audio format for output stream 0:0 @ 034dbbc0] Setting 'sample_rates' to value '48000'
[audio format for output stream 0:0 @ 034dbbc0] Setting 'channel_layouts' to value '0x3'
[audio format for output stream 0:0 @ 034dbbc0] auto-inserting filter 'auto-inserted resampler 0' between the filter 'Parsed_anull_0' and the filter 'audio format for output stream 0:0'
[AVFilterGraph @ 033d29e0] query_formats: 4 queried, 6 merged, 3 already done, 0 delayed
[auto-inserted resampler 0 @ 034c7c40] [SWR @ 034dc000] Using fltp internally between filters
[auto-inserted resampler 0 @ 034c7c40] [SWR @ 034dc000] Matrix coefficients:
[auto-inserted resampler 0 @ 034c7c40] [SWR @ 034dc000] FL: FC:0.707107 
[auto-inserted resampler 0 @ 034c7c40] [SWR @ 034dc000] FR: FC:0.707107 
[auto-inserted resampler 0 @ 034c7c40] ch:1 chl:mono fmt:flt r:8000Hz -> ch:2 chl:stereo fmt:s16 r:48000Hz
[s16be @ 034c6340] Using AVStream.codec to pass codec parameters to muxers is deprecated, use AVStream.codecpar instead.
Output #0, s16be, to 'NUL':
  Metadata:
    encoder         : Lavf57.41.100
    Stream #0:0, 0, 1/48000: Audio: pcm_s16be, 48000 Hz, stereo, s16, 1536 kb/s
    Metadata:
      encoder         : Lavc57.50.100 pcm_s16be
Stream mapping:
  Stream #0:0 -> #0:0 (amr_nb (amrnb) -> pcm_s16be (native))
Press [q] to stop, [?] for help
cur_dts is invalid (this is harmless if it occurs once at the start per stream)
size=    7320kB time=00:00:39.03 bitrate=1536.0kbits/s speed=78.1x    
sample_NB.amr: I/O error
[output stream 0:0 @ 034dbae0] EOF on sink link output stream 0:0:default.
No more output streams to write to, finishing.
size=    9349kB time=00:00:49.86 bitrate=1536.0kbits/s speed=77.8x    
video:0kB audio:9349kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: 0.000000%
Input file #0 (sample_NB.amr):
  Input stream #0:0 (audio): 2493 packets read (79776 bytes); 2493 frames decoded (398880 samples); 
  Total: 2493 packets (79776 bytes) demuxed
Output file #0 (NUL):
  Output stream #0:0 (audio): 2494 frames encoded (2393280 samples); 2494 packets muxed (9573120 bytes); 
  Total: 2494 packets (9573120 bytes) muxed
2493 frames successfully decoded, 0 decoding errors
[AVIOContext @ 034db020] Statistics: 0 seeks, 2494 writeouts
[AVIOContext @ 033da800] Statistics: 79782 bytes read, 0 seeks

Attachments (2)

sample_NB.amr (77.9 KB ) - added by Samuel 7 years ago.
AMR_#6280
sample_WB.amr (4.0 KB ) - added by Samuel 7 years ago.
AMR_WB_#6280

Download all attachments as: .zip

Change History (5)

by Samuel, 7 years ago

Attachment: sample_NB.amr added

AMR_#6280

by Samuel, 7 years ago

Attachment: sample_WB.amr added

AMR_WB_#6280

comment:1 by Samuel, 7 years ago

It was reported by a user using the FFmpeg latest version.
I just used mine on my old CPU (no SSE2) computer to see if i can reproduce it, and it given the same result that his log.

It generate a file that is not readable/streamable (output pipe: ) by the renderer.

Last edited 7 years ago by Samuel (previous) (diff)

comment:2 by Carl Eugen Hoyos, 7 years ago

Component: undeterminedavformat
Keywords: regression added; I/O error removed
Priority: normalminor
Reproduced by developer: set
Status: newopen
Version: 3.2.1git-master

Regression since 56ae5926 / 5417efbb

comment:3 by Carl Eugen Hoyos, 7 years ago

Resolution: fixed
Status: openclosed
Note: See TracTickets for help on using tickets.