Opened 7 months ago

Closed 7 months ago

Last modified 7 months ago

#9166 closed defect (fixed)

Concat File Referencing UNC Paths from Windows Broken by 4.3.2

Reported by: Josh Barnard Owned by:
Priority: important Component: avformat
Version: git-master Keywords: concat regression
Cc: jbarnard@gmail.com Blocked By:
Blocking: Reproduced by developer: no
Analyzed by developer: no

Description

Summary of the bug:
I'm running ffmpeg on Windows 10. I have a PowerShell script which populates a concat file with a list of UNC paths. That script is broken by upgrade to FFmpeg 4.3.2 (and fixed by downgrade back to 4.3.1 with no other build changes).

How to reproduce:
Create a concat file like the following:

#VideosToConcatenate
file '\\myserver\archive\file1.mp4'
file '\\myserver\archive\file2.mp4'

Run the following commands in PowerShell or cmd.exe:

PS> cd \\myserver\archive
PS> ffmpeg -f concat -safe 0 -i ConcatFile.tmp -codec copy Output.mp4
ffmpeg version n4.3.2 Copyright (c) 2000-2021 the FFmpeg developers
  built with gcc 9.3-win32 (GCC) 20200320
  configuration: --arch=x86_64 --target-os=mingw32 --cross-prefix=x86_64-w64-mingw32- --pkg-config=pkg-config --pkg-config-flags=--static --prefix=/home/barndawgie/repos/ffmpeg-cross-compile-script/ffmpeg_install --extra-libs='-lstdc++ -lbz2' --extra-cflags='-static-libgcc -static-libstdc++ -static -O3 -s -I/home/barndawgie/repos/ffmpeg-cross-compile-script/ffmpeg_install/include' --extra-cxxflags='-static-libgcc -static-libstdc++ -static -O3 -s' --extra-ldflags='-static-libgcc -static-libstdc++ -static -O3 -s -L/home/barndawgie/repos/ffmpeg-cross-compile-script/ffmpeg_install/lib' --extra-ldexeflags='-static-libgcc -static-libstdc++ -static -O3 -s' --extra-ldsoflags='-static-libgcc -static-libstdc++ -static -O3 -s' --logfile=./config.log --enable-nonfree --enable-gpl --enable-libfdk-aac --enable-libx264 --enable-libx265 --enable-libxml2 --enable-libopenjpeg --enable-libaom --enable-libmp3lame --enable-openssl --enable-libfreetype --enable-libfontconfig --enable-libfribidi --enable-libass
  libavutil      56. 51.100 / 56. 51.100
  libavcodec     58. 91.100 / 58. 91.100
  libavformat    58. 45.100 / 58. 45.100
  libavdevice    58. 10.100 / 58. 10.100
  libavfilter     7. 85.100 /  7. 85.100
  libswscale      5.  7.100 /  5.  7.100
  libswresample   3.  7.100 /  3.  7.100
  libpostproc    55.  7.100 / 55.  7.100
[concat @ 000001cfd3cb36c0] Impossible to open 'C:\\myserver\archive\file1.mp4'
C:\Users\BarnD\AppData\Local\Temp\ConcatFile.tmp: No such file or directory

Note that some component appears to incorrectly be adding the "C:" to the start of the UNC path.

Change History (8)

comment:1 by Josh Barnard, 7 months ago

Cc: jbarnard@gmail.com added

comment:2 by Carl Eugen Hoyos, 7 months ago

Please test current FFmpeg git head.

comment:3 by Josh Barnard, 7 months ago

This is also broken when run from master:

PS> Join-Videos -BaseName "H. M. S. Surprise"
ffmpeg version N-101759-g7fc8ba9068 Copyright (c) 2000-2021 the FFmpeg developers
  built with gcc 9.3-win32 (GCC) 20200320
  configuration: --arch=x86_64 --target-os=mingw32 --cross-prefix=x86_64-w64-mingw32- --pkg-config=pkg-config --pkg-config-flags=--static --prefix=/home/barndawgie/repos/ffmpeg-cross-compile-script/ffmpeg_install --extra-libs='-lstdc++ -lbz2' --extra-cflags='-static-libgcc -static-libstdc++ -static -O3 -s -I/home/barndawgie/repos/ffmpeg-cross-compile-script/ffmpeg_install/include' --extra-cxxflags='-static-libgcc -static-libstdc++ -static -O3 -s' --extra-ldflags='-static-libgcc -static-libstdc++ -static -O3 -s -L/home/barndawgie/repos/ffmpeg-cross-compile-script/ffmpeg_install/lib' --extra-ldexeflags='-static-libgcc -static-libstdc++ -static -O3 -s' --extra-ldsoflags='-static-libgcc -static-libstdc++ -static -O3 -s' --logfile=./config.log --enable-nonfree --enable-gpl --enable-libfdk-aac --enable-libx264 --enable-libx265 --enable-libxml2 --enable-libopenjpeg --enable-libaom --enable-libmp3lame --enable-openssl --enable-libfreetype --enable-libfontconfig --enable-libfribidi --enable-libass
  libavutil      56. 72.100 / 56. 72.100
  libavcodec     58.135.100 / 58.135.100
  libavformat    58. 77.100 / 58. 77.100
  libavdevice    58. 14.100 / 58. 14.100
  libavfilter     7.111.100 /  7.111.100
  libswscale      5. 10.100 /  5. 10.100
  libswresample   3. 10.100 /  3. 10.100
  libpostproc    55. 10.100 / 55. 10.100
[concat @ 00000265593436c0] Impossible to open 'C:\\barndawgserver\JoshMusic\Raw Audiobooks\HMS Surprise\H. M. S. Surprise-Part01.mp3'
C:\Users\BarnD\AppData\Local\Temp\tmp6463.tmp: No such file or directory
Join-Videos: Video concatenation failed

comment:4 by Carl Eugen Hoyos, 7 months ago

Keywords: regression added
Priority: normalimportant
Version: 4.3.2git-master

comment:5 by Marton Balint, 7 months ago

As a workaround you can explicitly specify protocol scheme in the ffconcat file, e.g.:

file 'file:\\myserver\archive\file1.mp4'
Last edited 7 months ago by Marton Balint (previous) (diff)

comment:6 by Josh Barnard, 7 months ago

That workaround works for me. Thanks!

comment:7 by Carl Eugen Hoyos, 7 months ago

Resolution: fixed
Status: newclosed

comment:8 by Carl Eugen Hoyos, 7 months ago

Component: undeterminedavformat
Note: See TracTickets for help on using tickets.