Opened 5 years ago

Last modified 5 years ago

#8091 new defect

Sound replacing stopped working

Reported by: ConcludingPrague Owned by:
Priority: normal Component: undetermined
Version: git-master Keywords: regression
Cc: Blocked By:
Blocking: Reproduced by developer: no
Analyzed by developer: no

Description

Sound replacing stopped working

ffmpeg.exe -i new_audio.mp3 -i audio_and_video.mp4 -c copy out.mp4

not works with:
ffmpeg-20190730-b3b7523-win64-shared.zip
ffmpeg-20190821-661a9b2-win64-shared.zip

works with ffmpeg-20190608-b6ca032-win64-shared.zip and earlier.

Attachments (3)

new_audio.mp3 (112.2 KB ) - added by ConcludingPrague 5 years ago.
audio_and_video.mp4 (107.1 KB ) - added by ConcludingPrague 5 years ago.
console_output.txt (76.3 KB ) - added by ConcludingPrague 5 years ago.

Download all attachments as: .zip

Change History (8)

by ConcludingPrague, 5 years ago

Attachment: new_audio.mp3 added

by ConcludingPrague, 5 years ago

Attachment: audio_and_video.mp4 added

comment:1 by Carl Eugen Hoyos, 5 years ago

Keywords: regression added
Version: unspecifiedgit-master

Please provide the failing command line together with the complete, uncut console output to make this a valid ticket.

comment:2 by Gyan, 5 years ago

Change since 11d3b03fcb2baae4324aac9481b9bd4a171d4345

The MP3 demuxer does not set any stream disposition, so the MP4's audio stream is scored higher.

Workaround is to map explicitly:

ffmpeg.exe -i new_audio.mp3 -i audio_and_video.mp4 -map 1 -map -1:a -map 0:a -c copy out.mp4

by ConcludingPrague, 5 years ago

Attachment: console_output.txt added

comment:3 by ConcludingPrague, 5 years ago

ffmpeg.exe -report -v 9 -loglevel 99 -i new_audio.mp3 -i audio_and_video.mp4 -c copy out.mp4 > console_output.txt 2>&1
ffmpeg started on 2019-08-21 at 16:54:17
Report written to "ffmpeg-20190821-165417.log"
Command line:
ffmpeg.exe -report -v 9 -loglevel 99 -i new_audio.mp3 -i audio_and_video.mp4 -c copy out.mp4
ffmpeg version N-94600-g661a9b274b Copyright (c) 2000-2019 the FFmpeg developers
  built with gcc 9.1.1 (GCC) 20190807
  configuration: --disable-static --enable-shared --enable-gpl --enable-version3 --enable-sdl2 --enable-fontconfig --enable-gnutls --enable-iconv --enable-libass --enable-libdav1d --enable-libbluray --enable-libfreetype --enable-libmp3lame --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libopenjpeg --enable-libopus --enable-libshine --enable-libsnappy --enable-libsoxr --enable-libtheora --enable-libtwolame --enable-libvpx --enable-libwavpack --enable-libwebp --enable-libx264 --enable-libx265 --enable-libxml2 --enable-libzimg --enable-lzma --enable-zlib --enable-gmp --enable-libvidstab --enable-libvorbis --enable-libvo-amrwbenc --enable-libmysofa --enable-libspeex --enable-libxvid --enable-libaom --enable-libmfx --enable-amf --enable-ffnvcodec --enable-cuvid --enable-d3d11va --enable-nvenc --enable-nvdec --enable-dxva2 --enable-avisynth --enable-libopenmpt
  libavutil      56. 33.100 / 56. 33.100
  libavcodec     58. 55.100 / 58. 55.100
  libavformat    58. 31.101 / 58. 31.101
  libavdevice    58.  9.100 / 58.  9.100
  libavfilter     7. 58.100 /  7. 58.100
  libswscale      5.  6.100 /  5.  6.100
  libswresample   3.  6.100 /  3.  6.100
  libpostproc    55.  6.100 / 55.  6.100
Splitting the commandline.
Reading option '-report' ... matched as option 'report' (generate a report) 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 '-i' ... matched as input url with argument 'new_audio.mp3'.
Reading option '-i' ... matched as input url with argument 'audio_and_video.mp4'.
Reading option '-c' ... matched as option 'c' (codec name) with argument 'copy'.
Reading option 'out.mp4' ... matched as output url.
Finished splitting the commandline.
Parsing a group of options: global .
Applying option report (generate a report) with argument 1.
Applying option v (set logging level) with argument 9.
Applying option loglevel (set logging level) with argument 99.
Successfully parsed a group of options.
Parsing a group of options: input url new_audio.mp3.
Successfully parsed a group of options.
Opening an input file: new_audio.mp3.
[NULL @ 000000000058a2c0] Opening 'new_audio.mp3' for reading
[file @ 000000000058ba00] Setting default whitelist 'file,crypto'
[mp3 @ 000000000058a2c0] Format mp3 probed with size=8192 and score=51
id3v2 ver:4 flags:00 len:160
[mp3 @ 000000000058a2c0] pad 576 0
[mp3 @ 000000000058a2c0] Skipping 0 bytes of junk at 901.
[mp3 @ 000000000058a2c0] Before avformat_find_stream_info() pos: 901 bytes read:32768 seeks:0 nb_streams:1
[mp3 @ 000000000058a2c0] demuxer injecting skip 1105 / discard 0
[mp3float @ 000000000059fa80] skip 1105 / discard 0 samples due to side data
[mp3float @ 000000000059fa80] skip 1105/1152 samples
[mp3 @ 000000000058a2c0] All info found
[mp3 @ 000000000058a2c0] After avformat_find_stream_info() pos: 53125 bytes read:65536 seeks:0 frames:50
Input #0, mp3, from 'new_audio.mp3':
  Metadata:
    title           : Sustain
    artist          : RalaiyX3
    TBPM            : 135
    genre           : Dance/dancy
    encoded_by      : LAME in FL Studio 11
    date            : 2013
    encoder         : Lavf58.30.100
  Duration: 00:00:03.03, start: 0.025057, bitrate: 303 kb/s
    Stream #0:0, 50, 1/14112000: Audio: mp3, 44100 Hz, stereo, fltp, 302 kb/s
    Metadata:
      encoder         : LAME3.100
    Side data:
      replaygain: track gain - -12.100000, track peak - unknown, album gain - unknown, album peak - unknown, 
Successfully opened the file.
Parsing a group of options: input url audio_and_video.mp4.
Successfully parsed a group of options.
Opening an input file: audio_and_video.mp4.
[NULL @ 00000000005a82c0] Opening 'audio_and_video.mp4' for reading
[file @ 00000000005bddc0] Setting default whitelist 'file,crypto'
[mov,mp4,m4a,3gp,3g2,mj2 @ 00000000005a82c0] Format mov,mp4,m4a,3gp,3g2,mj2 probed with size=2048 and score=100
[mov,mp4,m4a,3gp,3g2,mj2 @ 00000000005a82c0] ISO: File Type Major Brand: isom
[mov,mp4,m4a,3gp,3g2,mj2 @ 00000000005a82c0] Unknown dref type 0x206c7275 size 12
[mov,mp4,m4a,3gp,3g2,mj2 @ 00000000005a82c0] Processing st: 0, edit list 0 - media time: 0, duration: 270270
[mov,mp4,m4a,3gp,3g2,mj2 @ 00000000005a82c0] Unknown dref type 0x206c7275 size 12
[mov,mp4,m4a,3gp,3g2,mj2 @ 00000000005a82c0] Processing st: 1, edit list 0 - media time: 0, duration: 133138
[mov,mp4,m4a,3gp,3g2,mj2 @ 00000000005a82c0] rfps: 23.833333 0.014876
[mov,mp4,m4a,3gp,3g2,mj2 @ 00000000005a82c0] rfps: 23.833333 0.014876
[mov,mp4,m4a,3gp,3g2,mj2 @ 00000000005a82c0] rfps: 23.916667 0.002574
[mov,mp4,m4a,3gp,3g2,mj2 @ 00000000005a82c0] rfps: 23.916667 0.002574
[mov,mp4,m4a,3gp,3g2,mj2 @ 00000000005a82c0] rfps: 24.000000 0.000420
[mov,mp4,m4a,3gp,3g2,mj2 @ 00000000005a82c0] rfps: 24.000000 0.000420
[mov,mp4,m4a,3gp,3g2,mj2 @ 00000000005a82c0] rfps: 24.083333 0.008413
[mov,mp4,m4a,3gp,3g2,mj2 @ 00000000005a82c0] rfps: 24.083333 0.008413
[mov,mp4,m4a,3gp,3g2,mj2 @ 00000000005a82c0] rfps: 48.000000 0.001680
[mov,mp4,m4a,3gp,3g2,mj2 @ 00000000005a82c0] rfps: 48.000000 0.001680
[mov,mp4,m4a,3gp,3g2,mj2 @ 00000000005a82c0] rfps: 120.000000 0.010498
[mov,mp4,m4a,3gp,3g2,mj2 @ 00000000005a82c0] rfps: 120.000000 0.010498
[mov,mp4,m4a,3gp,3g2,mj2 @ 00000000005a82c0] rfps: 23.976024 0.000000
[mov,mp4,m4a,3gp,3g2,mj2 @ 00000000005a82c0] rfps: 47.952048 0.000000
[mov,mp4,m4a,3gp,3g2,mj2 @ 00000000005a82c0] Before avformat_find_stream_info() pos: 109707 bytes read:36142 seeks:1 nb_streams:2
[h264 @ 0000000000595580] nal_unit_type: 7(SPS), nal_ref_idc: 3
[h264 @ 0000000000595580] nal_unit_type: 8(PPS), nal_ref_idc: 3
[h264 @ 0000000000595580] nal_unit_type: 5(IDR), nal_ref_idc: 1
[h264 @ 0000000000595580] Format yuv420p chosen by get_format().
[h264 @ 0000000000595580] Reinit context to 864x480, pix_fmt: yuv420p
[mov,mp4,m4a,3gp,3g2,mj2 @ 00000000005a82c0] All info found
[mov,mp4,m4a,3gp,3g2,mj2 @ 00000000005a82c0] After avformat_find_stream_info() pos: 29517 bytes read:68910 seeks:2 frames:2
Input #1, mov,mp4,m4a,3gp,3g2,mj2, from 'audio_and_video.mp4':
  Metadata:
    major_brand     : isom
    minor_version   : 512
    compatible_brands: isomiso2avc1mp41
    encoder         : Lavf58.27.103
  Duration: 00:00:03.02, start: 0.000000, bitrate: 290 kb/s
    Stream #1:0(und), 1, 1/90000: Video: h264 (Main), 1 reference frame (avc1 / 0x31637661), yuv420p(tv, bt709, left), 854x480 (864x480) [SAR 1:1 DAR 427:240], 0/1, 156 kb/s, 23.98 fps, 23.98 tbr, 90k tbn, 47.95 tbc (default)
    Metadata:
      handler_name    : ISO Media file produced by Google Inc. Created on: 04/28/2019.
    Stream #1:1(eng), 1, 1/44100: Audio: aac (LC) (mp4a / 0x6134706D), 44100 Hz, stereo, fltp, 126 kb/s (default)
    Metadata:
      handler_name    : SoundHandler
Successfully opened the file.
Parsing a group of options: output url out.mp4.
Applying option c (codec name) with argument copy.
Successfully parsed a group of options.
Opening an output file: out.mp4.
[file @ 00000000005c5d00] Setting default whitelist 'file,crypto'
Successfully opened the file.
Output #0, mp4, to 'out.mp4':
  Metadata:
    title           : Sustain
    artist          : RalaiyX3
    TBPM            : 135
    genre           : Dance/dancy
    encoded_by      : LAME in FL Studio 11
    date            : 2013
    encoder         : Lavf58.31.101
    Stream #0:0(und), 0, 1/90000: Video: h264 (Main), 1 reference frame (avc1 / 0x31637661), yuv420p(tv, bt709, left), 854x480 (0x0) [SAR 1:1 DAR 427:240], 0/1, q=2-31, 156 kb/s, 23.98 fps, 23.98 tbr, 90k tbn, 90k tbc (default)
    Metadata:
      handler_name    : ISO Media file produced by Google Inc. Created on: 04/28/2019.
    Stream #0:1(eng), 0, 1/44100: Audio: aac (LC) (mp4a / 0x6134706D), 44100 Hz, stereo, fltp, 126 kb/s (default)
    Metadata:
      handler_name    : SoundHandler
Stream mapping:
  Stream #1:0 -> #0:0 (copy)
  Stream #1:1 -> #0:1 (copy)
Press [q] to stop, [?] for help
cur_dts is invalid st:0 (0) [init:1 i_done:0 finish:0] (this is harmless if it occurs once at the start per stream)
cur_dts is invalid st:1 (0) [init:1 i_done:0 finish:0] (this is harmless if it occurs once at the start per stream)
cur_dts is invalid st:1 (0) [init:1 i_done:0 finish:0] (this is harmless if it occurs once at the start per stream)
No more output streams to write to, finishing.
frame=   72 fps=0.0 q=-1.0 Lsize=     107kB time=00:00:02.99 bitrate= 293.3kbits/s speed= 136x    
video:57kB audio:47kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: 3.338194%
Input file #0 (new_audio.mp3):
  Input stream #0:0 (audio): 0 packets read (0 bytes); 
  Total: 0 packets (0 bytes) demuxed
Input file #1 (audio_and_video.mp4):
  Input stream #1:0 (video): 72 packets read (58628 bytes); 
  Input stream #1:1 (audio): 130 packets read (47657 bytes); 
  Total: 202 packets (106285 bytes) demuxed
Output file #0 (out.mp4):
  Output stream #0:0 (video): 72 packets muxed (58628 bytes); 
  Output stream #0:1 (audio): 130 packets muxed (47657 bytes); 
  Total: 202 packets (106285 bytes) muxed
0 frames successfully decoded, 0 decoding errors
[AVIOContext @ 000000000281cdc0] Statistics: 2 seeks, 4 writeouts
[AVIOContext @ 0000000000593c80] Statistics: 65536 bytes read, 0 seeks
[AVIOContext @ 000000000058e7c0] Statistics: 145801 bytes read, 2 seeks

Last edited 5 years ago by ConcludingPrague (previous) (diff)

comment:5 by ConcludingPrague, 5 years ago

Another workaround:

ffmpeg.exe -i new_audio.mp3 -an -i audio_and_video.mp4 -c copy out.mp4
Note: See TracTickets for help on using tickets.