NixOS / nixpkgs

Nix Packages collection & NixOS
MIT License
17.6k stars 13.76k forks source link

ffmpeg always throws segmentation fault at conversion #271313

Closed DontEatOreo closed 9 months ago

DontEatOreo commented 10 months ago

Describe the bug

FFmpeg crashes with a segmentation fault error when trying to convert any video or audio file, regardless of the input or output format, codec, or filter options.

Steps To Reproduce

Steps to reproduce the behavior:

  1. Install ffmpeg with clang version 16.0.6
  2. Run any conversion command, such as ffmpeg -i input.mp4 output.mp3
  3. Observe that FFmpeg exits with a segmentation fault error as soon as the conversion process begins.

Expected behavior

Successful conversion, provided valid arguments are used

Additional context

Using ffmpeg built with clang version 16.0.6 always causes this issue while ffmpeg built with clang version 11.1.0 does not

Notify maintainers

@Atemu

Metadata

Please run nix-shell -p nix-info --run "nix-info -m" and paste the result.

[user@system:~]$ nix-shell -p nix-info --run "nix-info -m"
 - system: `"aarch64-darwin"`
 - host os: `Darwin 23.1.0, macOS 14.1.1`
 - multi-user?: `yes`
 - sandbox: `no`
 - version: `nix-env (Nix) 2.18.1`
 - channels(root): `"nixpkgs"`
 - nixpkgs: `/nix/var/nix/profiles/per-user/root/channels/nixpkgs`

Priorities

Add a :+1: reaction to issues you find important.

Atemu commented 10 months ago

I can't reproduce this with 8fe28ecb250fcd75ff53ebd46a04f4ca952896f0. Which revision of Nixpkgs are you on?

Also, what's the source file here? Which codecs and container?

Try nix run github:nixos/nixpkgs/8fe28ecb250fcd75ff53ebd46a04f4ca952896f0#ffmpeg -- -i input.mp4 output.mp3.

jdelStrother commented 10 months ago

Hm, I don't see it when encoding to mp3. But I do always see it when encoding to mp4, on an M1 Macbook Pro:

$ nix run github:nixos/nixpkgs/8fe28ecb250fcd75ff53ebd46a04f4ca952896f0#ffmpeg -- -y -i https://www.larmoire.info/jellyfish/media/jellyfish-3-mbps-hd-h264.mkv ./foo.mp4
ffmpeg version 6.0 Copyright (c) 2000-2023 the FFmpeg developers
  built with clang version 16.0.6
  configuration: --disable-static --prefix=/nix/store/eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee-ffmpeg-6.0 --target_os=darwin --arch=aarch64 --pkg-config=pkg-config --enable-gpl --enable-version3 --disable-nonfree --enable-shared --enable-pic --disable-small --enable-runtime-cpudetect --disable-gray --enable-swscale-alpha --enable-hardcoded-tables --enable-safe-bitstream-reader --enable-pthreads --disable-w32threads --disable-os2threads --enable-network --enable-pixelutils --datadir=/nix/store/0zn8xjkc2z1cxh6hj099vh3v1l29p8zd-ffmpeg-6.0-data/share/ffmpeg --enable-ffmpeg --disable-ffplay --enable-ffprobe --bindir=/nix/store/eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee-ffmpeg-6.0-bin/bin --enable-avcodec --enable-avdevice --enable-avfilter --enable-avformat --enable-avutil --enable-postproc --enable-swresample --enable-swscale --libdir=/nix/store/eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee-ffmpeg-6.0-lib/lib --incdir=/nix/store/eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee-ffmpeg-6.0-dev/include --enable-doc --enable-htmlpages --enable-manpages --mandir=/nix/store/eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee-ffmpeg-6.0-man/share/man --enable-podpages --enable-txtpages --docdir=/nix/store/eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee-ffmpeg-6.0-doc/share/doc/ffmpeg --disable-alsa --enable-bzlib --disable-libcelt --disable-cuda --disable-cuda-llvm --enable-libdav1d --disable-libfdk-aac --disable-libflite --enable-fontconfig --enable-libfreetype --disable-frei0r --disable-libfribidi --disable-libgme --enable-gnutls --disable-libgsm --disable-ladspa --enable-libmp3lame --disable-libaom --enable-libass --disable-libbluray --disable-libbs2b --disable-libdc1394 --disable-libdrm --enable-iconv --disable-libjack --disable-libmfx --disable-libmodplug --disable-libmysofa --enable-libopus --disable-librsvg --enable-libsrt --enable-libssh --disable-libtensorflow --enable-libtheora --disable-libv4l2 --disable-v4l2-m2m --disable-vaapi --enable-vdpau --enable-libvorbis --disable-libvmaf --enable-libvpx --disable-libwebp --disable-xlib --disable-libxcb --disable-libxcb-shm --disable-libxcb-xfixes --disable-libxcb-shape --disable-libxml2 --enable-lzma --disable-cuvid --disable-nvdec --disable-nvenc --disable-openal --disable-opencl --disable-libopencore-amrnb --disable-opengl --disable-libopenh264 --disable-libopenjpeg --disable-libopenmpt --disable-libpulse --disable-librav1e --disable-libsvtav1 --disable-librtmp --enable-sdl2 --enable-libsoxr --enable-libspeex --disable-libvidstab --disable-libvo-amrwbenc --enable-libx264 --enable-libx265 --disable-libxavs --enable-libxvid --disable-libzmq --enable-libzimg --enable-zlib --disable-vulkan --disable-libglslang --disable-libsmbclient --disable-debug --enable-optimizations --disable-extra-warnings --disable-stripping --cc=clang --cxx=clang++
  libavutil      58.  2.100 / 58.  2.100
  libavcodec     60.  3.100 / 60.  3.100
  libavformat    60.  3.100 / 60.  3.100
  libavdevice    60.  1.100 / 60.  1.100
  libavfilter     9.  3.100 /  9.  3.100
  libswscale      7.  1.100 /  7.  1.100
  libswresample   4. 10.100 /  4. 10.100
  libpostproc    57.  1.100 / 57.  1.100
Input #0, matroska,webm, from 'https://www.larmoire.info/jellyfish/media/jellyfish-3-mbps-hd-h264.mkv':
  Metadata:
    encoder         : libebml v1.2.0 + libmatroska v1.1.0
    creation_time   : 2016-02-06T03:58:03.000000Z
  Duration: 00:00:30.03, start: 0.000000, bitrate: 2984 kb/s
  Stream #0:0(eng): Video: h264 (High), yuv420p(tv, bt709, progressive), 1920x1080 [SAR 1:1 DAR 16:9], 29.97 fps, 29.97 tbr, 1k tbn (default)
Stream mapping:
  Stream #0:0 -> #0:0 (h264 (native) -> h264 (libx264))
Press [q] to stop, [?] for help
[libx264 @ 0x14ce06c80] using SAR=1/1
[libx264 @ 0x14ce06c80] using cpu capabilities: ARMv8 NEON
[libx264 @ 0x14ce06c80] profile High, level 4.0, 4:2:0, 8-bit
[libx264 @ 0x14ce06c80] 264 - core 163 - H.264/MPEG-4 AVC codec - Copyleft 2003-2021 - http://www.videolan.org/x264.html - options: cabac=1 ref=3 deblock=1:0:0 analyse=0x3:0x113 me=hex subme=7 psy=1 psy_rd=1.00:0.00 mixed_ref=1 me_range=16 chroma_me=1 trellis=1 8x8dct=1 cqm=0 deadzone=21,11 fast_pskip=1 chroma_qp_offset=-2 threads=12 lookahead_threads=2 sliced_threads=0 nr=0 decimate=1 interlaced=0 bluray_compat=0 constrained_intra=0 bframes=3 b_pyramid=2 b_adapt=1 b_bias=0 direct=1 weightb=1 open_gop=0 weightp=2 keyint=250 keyint_min=25 scenecut=40 intra_refresh=0 rc_lookahead=40 rc=crf mbtree=1 crf=23.0 qcomp=0.60 qpmin=0 qpmax=69 qpstep=4 ip_ratio=1.40 aq=1:1.00
Output #0, mp4, to './foo.mp4':
  Metadata:
    encoder         : Lavf60.3.100
  Stream #0:0(eng): Video: h264 (avc1 / 0x31637661), yuv420p(tv, bt709, progressive), 1920x1080 [SAR 1:1 DAR 16:9], q=2-31, 29.97 fps, 19001 tbn (default)
    Metadata:
      encoder         : Lavc60.3.100 libx264
    Side data:
      cpb: bitrate max/min/avg: 0/0/0 buffer size: 0 vbv_delay: N/A
fish: Job 1, 'nix run github:nixos/nixpkgs/8f…' terminated by signal SIGSEGV (Address boundary error)

lldb suggests it's a crash in mbtree_propagate_list_neon:

* thread #35, stop reason = EXC_BAD_ACCESS (code=1, address=0x37a0c57a0)
    frame #0: 0x00000001031f264c libx264.163.dylib`mbtree_propagate_list_neon + 192
libx264.163.dylib`mbtree_propagate_list_neon:
->  0x1031f264c <+192>: ldrh   w3, [x1]
    0x1031f2650 <+196>: ldrsh  w2, [x23, x2, lsl  #1]
    0x1031f2654 <+200>: add    w2, w2, w3
    0x1031f2658 <+204>: cmp    w2, w14

I bisected the issue in nixpkgs to bcbdb800cf7659d6ff36ac114121a056fe8c9656.

I've been trying to use more recent nixpkgs and just overriding the compiler back to clang 11 for ffmpeg, so far without success.

      pkgs.ffmpeg-headless.override {
        x264 = (pkgs.x264.override { stdenv = pkgs.llvmPackages_11.stdenv; });
        stdenv = pkgs.llvmPackages_11.stdenv;
      }

ffmpeg's banner intro confirms that clang 11 was used to build it, but I still see the same segfault 😕

Atemu commented 10 months ago

With that video, I too can reproduce. Simple reproducer:

nix run github:nixos/nixpkgs/8fe28ecb250fcd75ff53ebd46a04f4ca952896f0#ffmpeg -- -i https://www.larmoire.info/jellyfish/media/jellyfish-3-mbps-hd-h264.mkv video.mp4

Let's try and break this down. Decoding works:

nix run github:nixos/nixpkgs/8fe28ecb250fcd75ff53ebd46a04f4ca952896f0#ffmpeg -- -i https://www.larmoire.info/jellyfish/media/jellyfish-3-mbps-hd-h264.mkv -f null /dev/null

Encoding an empty video breaks:

nix run github:nixos/nixpkgs/8fe28ecb250fcd75ff53ebd46a04f4ca952896f0#ffmpeg -- -f rawvideo -r 30 -s 1920x1080 -i /dev/zero -f h264 -y /dev/null

Then x264 directly also breaks (cc @tadeokondrak)

nix run github:nixos/nixpkgs/8fe28ecb250fcd75ff53ebd46a04f4ca952896f0#x264 -- --input-res 1920x1080 /dev/zero -o /dev/null

Changing stdenv back to llvmPackages_11.stdenv doesn't help running x264 directly as you've found... This is all very weird. cc @reckenrode, do you have any ideas?

Atemu commented 10 months ago

As mentioned, changing the stdenv on x264 back to 11 doesn't help. That's why it's extremely weird. I'm currently trying the commit before and after the llvm16 bump in order to find out whether it's actually the cause. (Not sure how thorough @jdelStrother was on that but the staging-next it was part of is the cause.)

reckenrode commented 10 months ago

As mentioned, changing the stdenv on x264 back to 11 doesn't help.

I misread. That’s why I deleted my comment. One change that just overriding wouldn’t fix is cctools-llvm. It uses a few extra things depending on the version. The most likely culprit (the assembler) would still be the clang-based one regardless.

reckenrode commented 10 months ago

I have a fix. The issue is with strip. It’s similar to https://github.com/NixOS/nixpkgs/pull/234868, but the problem manifests as a runtime crash instead of a link failure.

reckenrode commented 10 months ago

Should be fixed in https://github.com/NixOS/nixpkgs/pull/271459. I had to target staging due to the number of rebuilds.

jdelStrother commented 10 months ago

Amazing, thank you. In case it helps anyone who'd like a fix in the meantime, here's a drop-in alternative:

(pkgs.ffmpeg.override {
  x264 = pkgs.x264.overrideAttrs (old: {
    postPatch = old.postPatch
      + pkgs.lib.optionalString (pkgs.stdenv.isDarwin) ''
        substituteInPlace Makefile --replace '$(if $(STRIP), $(STRIP) -x $@)' '$(if $(STRIP), $(STRIP) -S $@)'
      '';
  });
})
DontEatOreo commented 10 months ago

Amazing, thank you. In case it helps anyone who'd like a fix in the meantime, here's a drop-in alternative:

(pkgs.ffmpeg.override {
  x264 = pkgs.x264.overrideAttrs (old: {
    postPatch = old.postPatch
      + pkgs.lib.optionalString (pkgs.stdenv.isDarwin) ''
        substituteInPlace Makefile --replace '$(if $(STRIP), $(STRIP) -x $@)' '$(if $(STRIP), $(STRIP) -S $@)'
      '';
  });
})

FFmpeg still seg faults with this patch on aarch64-darwin on github:nixos/nixpkgs/90dfce28595ed4fe097e703838b63bca16c385dc

jdelStrother commented 10 months ago

@DontEatOreo can you come up with a reproduction step? It seems ok for me with, eg,:

nix shell --expr 'let pkgs=(builtins.getFlake "github:nixos/nixpkgs/90dfce28595ed4fe097e703838b63bca16c385dc").legacyPackages.aarch64-darwin; in (pkgs.ffmpeg.override {x264 = pkgs.x264.overrideAttrs (old: {postPatch = old.postPatch + pkgs.lib.optionalString (pkgs.stdenv.isDarwin) "substituteInPlace Makefile --replace \'$(if $(STRIP), $(STRIP) -x $@)\' \'$(if $(STRIP), $(STRIP) -S $@)\'";});}) ' -c ffmpeg -f rawvideo -r 30 -s 1920x1080 -i /dev/zero -f h264 -y /dev/null
DontEatOreo commented 10 months ago

@DontEatOreo can you come up with a reproduction step? It seems ok for me with, eg,:

nix shell --expr 'let pkgs=(builtins.getFlake "github:nixos/nixpkgs/90dfce28595ed4fe097e703838b63bca16c385dc").legacyPackages.aarch64-darwin; in (pkgs.ffmpeg.override {x264 = pkgs.x264.overrideAttrs (old: {postPatch = old.postPatch + pkgs.lib.optionalString (pkgs.stdenv.isDarwin) "substituteInPlace Makefile --replace \'$(if $(STRIP), $(STRIP) -x $@)\' \'$(if $(STRIP), $(STRIP) -S $@)\'";});}) ' -c ffmpeg -f rawvideo -r 30 -s 1920x1080 -i /dev/zero -f h264 -y /dev/null

Hmm weird, I don't have any issues using the nix shell --expr command you mentioned

$ nix shell --expr 'let pkgs=(builtins.getFlake "github:nixos/nixpkgs/90dfce28595ed4fe097e703838b63bca16c385dc").legacyPackages.aarch64-darwin; in (pkgs.ffmpeg.override {x264 = pkgs.x264.overrideAttrs (old: {postPatch = old.postPatch + pkgs.lib.optionalString (pkgs.stdenv.isDarwin) "substituteInPlace Makefile --replace '\''$(if $(STRIP), $(STRIP) -x $@)'\'' '\''$(if $(STRIP), $(STRIP) -S $@)'\''";});}) ' -c ffmpeg -f rawvideo -r 30 -s 1920x1080 -i /dev/zero -f h264 -y /dev/null

ffmpeg version 6.0 Copyright (c) 2000-2023 the FFmpeg developers
  built with clang version 16.0.6
  configuration: --disable-static --prefix=/nix/store/eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee-ffmpeg-6.0 --target_os=darwin --arch=aarch64 --pkg-config=pkg-config --enable-gpl --enable-version3 --disable-nonfree --enable-shared --enable-pic --disable-small --enable-runtime-cpudetect --disable-gray --enable-swscale-alpha --enable-hardcoded-tables --enable-safe-bitstream-reader --enable-pthreads --disable-w32threads --disable-os2threads --enable-network --enable-pixelutils --datadir=/nix/store/kqb4918km91f7fh5is8bjzvx2934gdh2-ffmpeg-6.0-data/share/ffmpeg --enable-ffmpeg --disable-ffplay --enable-ffprobe --bindir=/nix/store/eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee-ffmpeg-6.0-bin/bin --enable-avcodec --enable-avdevice --enable-avfilter --enable-avformat --enable-avutil --enable-postproc --enable-swresample --enable-swscale --libdir=/nix/store/eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee-ffmpeg-6.0-lib/lib --incdir=/nix/store/eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee-ffmpeg-6.0-dev/include --enable-doc --enable-htmlpages --enable-manpages --mandir=/nix/store/eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee-ffmpeg-6.0-man/share/man --enable-podpages --enable-txtpages --docdir=/nix/store/eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee-ffmpeg-6.0-doc/share/doc/ffmpeg --disable-alsa --enable-bzlib --disable-libcelt --disable-cuda --disable-cuda-llvm --enable-libdav1d --disable-libfdk-aac --disable-libflite --enable-fontconfig --enable-libfreetype --disable-frei0r --disable-libfribidi --disable-libgme --enable-gnutls --disable-libgsm --disable-ladspa --enable-libmp3lame --disable-libaom --enable-libass --disable-libbluray --disable-libbs2b --disable-libdc1394 --disable-libdrm --enable-iconv --disable-libjack --disable-libmfx --disable-libmodplug --disable-libmysofa --enable-libopus --disable-librsvg --enable-libsrt --enable-libssh --disable-libtensorflow --enable-libtheora --disable-libv4l2 --disable-v4l2-m2m --disable-vaapi --enable-vdpau --enable-libvorbis --disable-libvmaf --enable-libvpx --disable-libwebp --disable-xlib --disable-libxcb --disable-libxcb-shm --disable-libxcb-xfixes --disable-libxcb-shape --disable-libxml2 --enable-lzma --disable-cuvid --disable-nvdec --disable-nvenc --disable-openal --disable-opencl --disable-libopencore-amrnb --disable-opengl --disable-libopenh264 --disable-libopenjpeg --disable-libopenmpt --disable-libpulse --disable-librav1e --disable-libsvtav1 --disable-librtmp --enable-sdl2 --enable-libsoxr --enable-libspeex --disable-libvidstab --disable-libvo-amrwbenc --enable-libx264 --enable-libx265 --disable-libxavs --enable-libxvid --disable-libzmq --enable-libzimg --enable-zlib --disable-vulkan --disable-libglslang --disable-libsmbclient --disable-debug --enable-optimizations --disable-extra-warnings --disable-stripping --cc=clang --cxx=clang++
  libavutil      58.  2.100 / 58.  2.100
  libavcodec     60.  3.100 / 60.  3.100
  libavformat    60.  3.100 / 60.  3.100
  libavdevice    60.  1.100 / 60.  1.100
  libavfilter     9.  3.100 /  9.  3.100
  libswscale      7.  1.100 /  7.  1.100
  libswresample   4. 10.100 /  4. 10.100
  libpostproc    57.  1.100 / 57.  1.100
Input #0, rawvideo, from '/dev/zero':
  Duration: N/A, start: 0.000000, bitrate: 746496 kb/s
  Stream #0:0: Video: rawvideo (I420 / 0x30323449), yuv420p, 1920x1080, 746496 kb/s, 30 tbr, 30 tbn
Stream mapping:
  Stream #0:0 -> #0:0 (rawvideo (native) -> h264 (libx264))
Press [q] to stop, [?] for help
[libx264 @ 0x12fe07860] using cpu capabilities: ARMv8 NEON
[libx264 @ 0x12fe07860] profile High, level 4.0, 4:2:0, 8-bit
Output #0, h264, to '/dev/null':
  Metadata:
    encoder         : Lavf60.3.100
  Stream #0:0: Video: h264, yuv420p(progressive), 1920x1080, q=2-31, 30 fps, 30 tbn
    Metadata:
      encoder         : Lavc60.3.100 libx264
    Side data:
      cpb: bitrate max/min/avg: 0/0/0 buffer size: 0 vbv_delay: N/A
frame=640845 fps=480 q=-1.0 Lsize=   45271kB time=05:56:01.40 bitrate=  17.4kbits/s speed=  16x
video:45271kB audio:0kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: 0.000000%
[libx264 @ 0x12fe07860] frame I:2564  Avg QP: 7.00  size:   469
[libx264 @ 0x12fe07860] frame P:161493 Avg QP:10.06  size:    77
[libx264 @ 0x12fe07860] frame B:476788 Avg QP:13.67  size:    69
[libx264 @ 0x12fe07860] consecutive B-frames:  0.8%  0.0%  0.0% 99.2%
[libx264 @ 0x12fe07860] mb I  I16..4: 100.0%  0.0%  0.0%
[libx264 @ 0x12fe07860] mb P  I16..4:  0.0%  0.0%  0.0%  P16..4:  0.0%  0.0%  0.0%  0.0%  0.0%    skip:100.0%
[libx264 @ 0x12fe07860] mb B  I16..4:  0.0%  0.0%  0.0%  B16..8:  0.0%  0.0%  0.0%  direct: 0.0%  skip:100.0%
[libx264 @ 0x12fe07860] 8x8 transform intra:0.0%
[libx264 @ 0x12fe07860] coded y,uvDC,uvAC intra: 0.0% 0.0% 0.0% inter: 0.0% 0.0% 0.0%
[libx264 @ 0x12fe07860] i16 v,h,dc,p: 99%  0%  1%  0%
[libx264 @ 0x12fe07860] i8c dc,h,v,p: 100%  0%  0%  0%
[libx264 @ 0x12fe07860] Weighted P-Frames: Y:0.0% UV:0.0%
[libx264 @ 0x12fe07860] kb/s:17.36
Exiting normally, received signal 2.

can you come up with a reproduction step?

Maybe I didn't apply the patch properly? Well the way I did is to have this:

Amazing, thank you. In case it helps anyone who'd like a fix in the meantime, here's a drop-in alternative:

(pkgs.ffmpeg.override {
  x264 = pkgs.x264.overrideAttrs (old: {
    postPatch = old.postPatch
      + pkgs.lib.optionalString (pkgs.stdenv.isDarwin) ''
        substituteInPlace Makefile --replace '$(if $(STRIP), $(STRIP) -x $@)' '$(if $(STRIP), $(STRIP) -S $@)'
      '';
  });
})

in my environment.systemPackages

@@ -3,7 +3,15 @@
     systemPackages = with pkgs; [
       # CLI Tools
       # Video Related
-      ffmpeg_6-full
+      (pkgs.ffmpeg.override {
+        x264 = pkgs.x264.overrideAttrs (old: {
+          postPatch =
+            old.postPatch
+            + pkgs.lib.optionalString (pkgs.stdenv.isDarwin) ''
+              substituteInPlace Makefile --replace '$(if $(STRIP), $(STRIP) -x $@)' '$(if $(STRIP), $(STRIP) -S $@)'
+            '';
+        });
+      })
       yt-dlp # Video Downloader
DontEatOreo commented 10 months ago

Okay I was able to replicated the issue using yt-dlp feature of cutting videos using the patch:

$ yt-dlp https://youtu.be/kX7ldIKFD60 --progress --console-title --embed-metadata -S "vcodec:h264,ext:mp4:m4a" --download-sections "*0-15" --force-keyframes-at-cuts --no-config-location --verbose

[debug] Command-line config: ['https://youtu.be/kX7ldIKFD60', '--progress', '--console-title', '--embed-metadata', '-S', 'vcodec:h264,ext:mp4:m4a', '--download-sections', '*0-15', '--force-keyframes-at-cuts', '--no-config-location', '--verbose']
[debug] Encodings: locale UTF-8, fs utf-8, pref UTF-8, out utf-8, error utf-8, screen utf-8
[debug] yt-dlp version stable@2023.11.16 from yt-dlp/yt-dlp [24f827875] (pip)
[debug] Python 3.11.6 (CPython arm64 64bit) - macOS-14.1.2-arm64-arm-64bit (OpenSSL 3.0.12 24 Oct 2023)
[debug] exe versions: ffmpeg 6.0 (setts), ffprobe 6.0, rtmpdump 2.4
[debug] Optional libraries: Cryptodome-3.18.0, brotli-1.1.0, certifi-2023.07.22, mutagen-1.47.0, secretstorage-3.3.3, sqlite3-3.43.2, websockets-11.0.3
[debug] Proxy map: {}
[debug] Request Handlers: urllib
[debug] Loaded 1901 extractors
[youtube] Extracting URL: https://youtu.be/kX7ldIKFD60
[youtube] kX7ldIKFD60: Downloading webpage
[youtube] kX7ldIKFD60: Downloading ios player API JSON
[youtube] kX7ldIKFD60: Downloading android player API JSON
[youtube] kX7ldIKFD60: Downloading m3u8 information
[debug] Sort order given by user: vcodec:h264, ext:mp4:m4a
[debug] Sort order given by extractor: quality, res, fps, hdr:12, source, vcodec:vp9.2, channels, acodec, lang, proto
[debug] Formats sorted by: hasvid, ie_pref, vcodec:h264(7), vext:mp4(6), aext:m4a(8), quality, res, fps, hdr:12(7), source, channels, acodec, lang, proto, size, br, asr, hasaud, id
[debug] Default format spec: bestvideo*+bestaudio/best
[info] kX7ldIKFD60: Downloading 1 format(s): 137+140
[info] kX7ldIKFD60: Downloading 1 time ranges: 0.0-15.0
[debug] Invoking ffmpeg downloader on "https://rr3---sn-nv47zn7y.googlevideo.com/videoplayback?expire=1701729471&ei=XwBuZcHBKeWbi9oPyN-9wAg&ip=89.106.102.99&id=o-ADLj0_P60qzqN_-ZVHep1lfct-U4C-Y9K8F1Hv28UsgD&itag=137&source=youtube&requiressl=yes&xpc=EgVo2aDSNQ%3D%3D&mh=0C&mm=31%2C29&mn=sn-nv47zn7y%2Csn-nv47lnsk&ms=au%2Crdu&mv=m&mvi=3&pl=23&initcwndbps=1516250&vprv=1&svpuc=1&mime=video%2Fmp4&gir=yes&clen=36613731&dur=244.827&lmt=1699035745684907&mt=1701707365&fvip=2&keepalive=yes&fexp=24007246&c=IOS&txp=4535434&sparams=expire%2Cei%2Cip%2Cid%2Citag%2Csource%2Crequiressl%2Cxpc%2Cvprv%2Csvpuc%2Cmime%2Cgir%2Cclen%2Cdur%2Clmt&sig=ANLwegAwRAIgMiqa5jBsmPZ7T21gr08ylP9qYkuOdepaCtBoMxIzOqwCIGRkZwvA3BAn8XygXX8LXTW5iCz4lmjFjHVm_b2YxjJ3&lsparams=mh%2Cmm%2Cmn%2Cms%2Cmv%2Cmvi%2Cpl%2Cinitcwndbps&lsig=AM8Gb2swRQIhAPX6j7NEOrOwWL8amRN9y4Fg1dtyfsXT2V_dOQGAZqJKAiBz9HdLw-uSyFPpvF5ae4xp42XKSfj_N4H_Txhh14exmQ%3D%3D", "https://rr3---sn-nv47zn7y.googlevideo.com/videoplayback?expire=1701729471&ei=XwBuZcHBKeWbi9oPyN-9wAg&ip=89.106.102.99&id=o-ADLj0_P60qzqN_-ZVHep1lfct-U4C-Y9K8F1Hv28UsgD&itag=140&source=youtube&requiressl=yes&xpc=EgVo2aDSNQ%3D%3D&mh=0C&mm=31%2C29&mn=sn-nv47zn7y%2Csn-nv47lnsk&ms=au%2Crdu&mv=m&mvi=3&pl=23&initcwndbps=1516250&vprv=1&svpuc=1&mime=audio%2Fmp4&gir=yes&clen=3963790&dur=244.877&lmt=1699034776001956&mt=1701707365&fvip=2&keepalive=yes&fexp=24007246&c=IOS&txp=4532434&sparams=expire%2Cei%2Cip%2Cid%2Citag%2Csource%2Crequiressl%2Cxpc%2Cvprv%2Csvpuc%2Cmime%2Cgir%2Cclen%2Cdur%2Clmt&sig=ANLwegAwRAIgB6r68De3A7mii7M1jZ9IbAVTKVX4BLKzhAv_zggCLVkCIE7MlbsalcgehmqSN9lGhXKB5leG-l0rRSWzPvHOuFwc&lsparams=mh%2Cmm%2Cmn%2Cms%2Cmv%2Cmvi%2Cpl%2Cinitcwndbps&lsig=AM8Gb2swRQIhAPX6j7NEOrOwWL8amRN9y4Fg1dtyfsXT2V_dOQGAZqJKAiBz9HdLw-uSyFPpvF5ae4xp42XKSfj_N4H_Txhh14exmQ%3D%3D"
[download] Destination: Midnight Grand Orchestra『夜を待つよ』Music Video [kX7ldIKFD60].mp4
[debug] ffmpeg command line: ffmpeg -y -loglevel verbose -headers 'User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/93.0.4556.0 Safari/537.36
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Accept-Language: en-us,en;q=0.5
Sec-Fetch-Mode: navigate
' -t 15.0 -i 'https://rr3---sn-nv47zn7y.googlevideo.com/videoplayback?expire=1701729471&ei=XwBuZcHBKeWbi9oPyN-9wAg&ip=89.106.102.99&id=o-ADLj0_P60qzqN_-ZVHep1lfct-U4C-Y9K8F1Hv28UsgD&itag=137&source=youtube&requiressl=yes&xpc=EgVo2aDSNQ%3D%3D&mh=0C&mm=31%2C29&mn=sn-nv47zn7y%2Csn-nv47lnsk&ms=au%2Crdu&mv=m&mvi=3&pl=23&initcwndbps=1516250&vprv=1&svpuc=1&mime=video%2Fmp4&gir=yes&clen=36613731&dur=244.827&lmt=1699035745684907&mt=1701707365&fvip=2&keepalive=yes&fexp=24007246&c=IOS&txp=4535434&sparams=expire%2Cei%2Cip%2Cid%2Citag%2Csource%2Crequiressl%2Cxpc%2Cvprv%2Csvpuc%2Cmime%2Cgir%2Cclen%2Cdur%2Clmt&sig=ANLwegAwRAIgMiqa5jBsmPZ7T21gr08ylP9qYkuOdepaCtBoMxIzOqwCIGRkZwvA3BAn8XygXX8LXTW5iCz4lmjFjHVm_b2YxjJ3&lsparams=mh%2Cmm%2Cmn%2Cms%2Cmv%2Cmvi%2Cpl%2Cinitcwndbps&lsig=AM8Gb2swRQIhAPX6j7NEOrOwWL8amRN9y4Fg1dtyfsXT2V_dOQGAZqJKAiBz9HdLw-uSyFPpvF5ae4xp42XKSfj_N4H_Txhh14exmQ%3D%3D' -headers 'User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/93.0.4556.0 Safari/537.36
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Accept-Language: en-us,en;q=0.5
Sec-Fetch-Mode: navigate
' -t 15.0 -i 'https://rr3---sn-nv47zn7y.googlevideo.com/videoplayback?expire=1701729471&ei=XwBuZcHBKeWbi9oPyN-9wAg&ip=89.106.102.99&id=o-ADLj0_P60qzqN_-ZVHep1lfct-U4C-Y9K8F1Hv28UsgD&itag=140&source=youtube&requiressl=yes&xpc=EgVo2aDSNQ%3D%3D&mh=0C&mm=31%2C29&mn=sn-nv47zn7y%2Csn-nv47lnsk&ms=au%2Crdu&mv=m&mvi=3&pl=23&initcwndbps=1516250&vprv=1&svpuc=1&mime=audio%2Fmp4&gir=yes&clen=3963790&dur=244.877&lmt=1699034776001956&mt=1701707365&fvip=2&keepalive=yes&fexp=24007246&c=IOS&txp=4532434&sparams=expire%2Cei%2Cip%2Cid%2Citag%2Csource%2Crequiressl%2Cxpc%2Cvprv%2Csvpuc%2Cmime%2Cgir%2Cclen%2Cdur%2Clmt&sig=ANLwegAwRAIgB6r68De3A7mii7M1jZ9IbAVTKVX4BLKzhAv_zggCLVkCIE7MlbsalcgehmqSN9lGhXKB5leG-l0rRSWzPvHOuFwc&lsparams=mh%2Cmm%2Cmn%2Cms%2Cmv%2Cmvi%2Cpl%2Cinitcwndbps&lsig=AM8Gb2swRQIhAPX6j7NEOrOwWL8amRN9y4Fg1dtyfsXT2V_dOQGAZqJKAiBz9HdLw-uSyFPpvF5ae4xp42XKSfj_N4H_Txhh14exmQ%3D%3D' -map 0:0 -map 1:0 -f mp4 'file:Midnight Grand Orchestra『夜を待つよ』Music Video [kX7ldIKFD60].mp4.part'
ffmpeg version 6.0 Copyright (c) 2000-2023 the FFmpeg developers
  built with clang version 16.0.6
  configuration: --disable-static --prefix=/nix/store/eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee-ffmpeg-headless-6.0 --target_os=darwin --arch=aarch64 --pkg-config=pkg-config --enable-gpl --enable-version3 --disable-nonfree --enable-shared --enable-pic --disable-small --enable-runtime-cpudetect --disable-gray --enable-swscale-alpha --enable-hardcoded-tables --enable-safe-bitstream-reader --enable-pthreads --disable-w32threads --disable-os2threads --enable-network --enable-pixelutils --datadir=/nix/store/82r6g80fmdsfrxy0ss5sjlbihnj84nni-ffmpeg-headless-6.0-data/share/ffmpeg --enable-ffmpeg --disable-ffplay --enable-ffprobe --bindir=/nix/store/eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee-ffmpeg-headless-6.0-bin/bin --enable-avcodec --enable-avdevice --enable-avfilter --enable-avformat --enable-avutil --enable-postproc --enable-swresample --enable-swscale --libdir=/nix/store/eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee-ffmpeg-headless-6.0-lib/lib --incdir=/nix/store/eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee-ffmpeg-headless-6.0-dev/include --enable-doc --enable-htmlpages --enable-manpages --mandir=/nix/store/eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee-ffmpeg-headless-6.0-man/share/man --enable-podpages --enable-txtpages --docdir=/nix/store/eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee-ffmpeg-headless-6.0-doc/share/doc/ffmpeg --disable-alsa --enable-bzlib --disable-libcelt --disable-cuda --disable-cuda-llvm --enable-libdav1d --disable-libfdk-aac --disable-libflite --enable-fontconfig --enable-libfreetype --disable-frei0r --disable-libfribidi --disable-libgme --enable-gnutls --disable-libgsm --disable-ladspa --enable-libmp3lame --disable-libaom --enable-libass --disable-libbluray --disable-libbs2b --disable-libdc1394 --disable-libdrm --enable-iconv --disable-libjack --disable-libmfx --disable-libmodplug --disable-libmysofa --enable-libopus --disable-librsvg --enable-libsrt --enable-libssh --disable-libtensorflow --enable-libtheora --disable-libv4l2 --disable-v4l2-m2m --disable-vaapi --disable-vdpau --enable-libvorbis --disable-libvmaf --enable-libvpx --disable-libwebp --disable-xlib --disable-libxcb --disable-libxcb-shm --disable-libxcb-xfixes --disable-libxcb-shape --disable-libxml2 --enable-lzma --disable-cuvid --disable-nvdec --disable-nvenc --disable-openal --disable-opencl --disable-libopencore-amrnb --disable-opengl --disable-libopenh264 --disable-libopenjpeg --disable-libopenmpt --disable-libpulse --disable-librav1e --disable-libsvtav1 --disable-librtmp --disable-sdl2 --enable-libsoxr --enable-libspeex --disable-libvidstab --disable-libvo-amrwbenc --enable-libx264 --enable-libx265 --disable-libxavs --enable-libxvid --disable-libzmq --enable-libzimg --enable-zlib --disable-vulkan --disable-libglslang --disable-libsmbclient --disable-debug --enable-optimizations --disable-extra-warnings --disable-stripping --cc=clang --cxx=clang++
  libavutil      58.  2.100 / 58.  2.100
  libavcodec     60.  3.100 / 60.  3.100
  libavformat    60.  3.100 / 60.  3.100
  libavdevice    60.  1.100 / 60.  1.100
  libavfilter     9.  3.100 /  9.  3.100
  libswscale      7.  1.100 /  7.  1.100
  libswresample   4. 10.100 /  4. 10.100
  libpostproc    57.  1.100 / 57.  1.100
[tcp @ 0x600000554090] Starting connection attempt to 173.194.15.72 port 443
[tcp @ 0x600000554090] Successfully connected to 173.194.15.72 port 443
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x125e06090] advanced_editlist does not work with fragmented MP4. disabling.
[h264 @ 0x125e2a180] Reinit context to 1920x1088, pix_fmt: yuv420p
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'https://rr3---sn-nv47zn7y.googlevideo.com/videoplayback?expire=1701729471&ei=XwBuZcHBKeWbi9oPyN-9wAg&ip=89.106.102.99&id=o-ADLj0_P60qzqN_-ZVHep1lfct-U4C-Y9K8F1Hv28UsgD&itag=137&source=youtube&requiressl=yes&xpc=EgVo2aDSNQ%3D%3D&mh=0C&mm=31%2C29&mn=sn-nv47zn7y%2Csn-nv47lnsk&ms=au%2Crdu&mv=m&mvi=3&pl=23&initcwndbps=1516250&vprv=1&svpuc=1&mime=video%2Fmp4&gir=yes&clen=36613731&dur=244.827&lmt=1699035745684907&mt=1701707365&fvip=2&keepalive=yes&fexp=24007246&c=IOS&txp=4535434&sparams=expire%2Cei%2Cip%2Cid%2Citag%2Csource%2Crequiressl%2Cxpc%2Cvprv%2Csvpuc%2Cmime%2Cgir%2Cclen%2Cdur%2Clmt&sig=ANLwegAwRAIgMiqa5jBsmPZ7T21gr08ylP9qYkuOdepaCtBoMxIzOqwCIGRkZwvA3BAn8XygXX8LXTW5iCz4lmjFjHVm_b2YxjJ3&lsparams=mh%2Cmm%2Cmn%2Cms%2Cmv%2Cmvi%2Cpl%2Cinitcwndbps&lsig=AM8Gb2swRQIhAPX6j7NEOrOwWL8amRN9y4Fg1dtyfsXT2V_dOQGAZqJKAiBz9HdLw-uSyFPpvF5ae4xp42XKSfj_N4H_Txhh14exmQ%3D%3D':
  Metadata:
    major_brand     : dash
    minor_version   : 0
    compatible_brands: iso6avc1mp41
    creation_time   : 2023-11-03T18:18:19.000000Z
  Duration: 00:04:04.83, start: 0.000000, bitrate: 1196 kb/s
  Stream #0:0[0x1](und): Video: h264 (High), 1 reference frame (avc1 / 0x31637661), yuv420p(tv, bt709, progressive, left), 1920x1080 (1920x1088) [SAR 1:1 DAR 16:9], 10 kb/s, 23.98 fps, 23.98 tbr, 24k tbn (default)
    Metadata:
      creation_time   : 2023-11-03T18:18:19.000000Z
      handler_name    : ISO Media file produced by Google Inc.
      vendor_id       : [0][0][0][0]
[tcp @ 0x600000540090] Starting connection attempt to 173.194.15.72 port 443
[tcp @ 0x600000540090] Successfully connected to 173.194.15.72 port 443
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x107a04d40] advanced_editlist does not work with fragmented MP4. disabling.
Input #1, mov,mp4,m4a,3gp,3g2,mj2, from 'https://rr3---sn-nv47zn7y.googlevideo.com/videoplayback?expire=1701729471&ei=XwBuZcHBKeWbi9oPyN-9wAg&ip=89.106.102.99&id=o-ADLj0_P60qzqN_-ZVHep1lfct-U4C-Y9K8F1Hv28UsgD&itag=140&source=youtube&requiressl=yes&xpc=EgVo2aDSNQ%3D%3D&mh=0C&mm=31%2C29&mn=sn-nv47zn7y%2Csn-nv47lnsk&ms=au%2Crdu&mv=m&mvi=3&pl=23&initcwndbps=1516250&vprv=1&svpuc=1&mime=audio%2Fmp4&gir=yes&clen=3963790&dur=244.877&lmt=1699034776001956&mt=1701707365&fvip=2&keepalive=yes&fexp=24007246&c=IOS&txp=4532434&sparams=expire%2Cei%2Cip%2Cid%2Citag%2Csource%2Crequiressl%2Cxpc%2Cvprv%2Csvpuc%2Cmime%2Cgir%2Cclen%2Cdur%2Clmt&sig=ANLwegAwRAIgB6r68De3A7mii7M1jZ9IbAVTKVX4BLKzhAv_zggCLVkCIE7MlbsalcgehmqSN9lGhXKB5leG-l0rRSWzPvHOuFwc&lsparams=mh%2Cmm%2Cmn%2Cms%2Cmv%2Cmvi%2Cpl%2Cinitcwndbps&lsig=AM8Gb2swRQIhAPX6j7NEOrOwWL8amRN9y4Fg1dtyfsXT2V_dOQGAZqJKAiBz9HdLw-uSyFPpvF5ae4xp42XKSfj_N4H_Txhh14exmQ%3D%3D':
  Metadata:
    major_brand     : dash
    minor_version   : 0
    compatible_brands: iso6mp41
    creation_time   : 2023-11-03T17:48:52.000000Z
  Duration: 00:04:04.88, start: 0.000000, bitrate: 129 kb/s
  Stream #1:0[0x1](eng): Audio: aac (LC) (mp4a / 0x6134706D), 44100 Hz, stereo, fltp, 5 kb/s (default)
    Metadata:
      creation_time   : 2023-11-03T17:48:52.000000Z
      handler_name    : ISO Media file produced by Google Inc.
      vendor_id       : [0][0][0][0]
Stream mapping:
  Stream #0:0 -> #0:0 (h264 (native) -> h264 (libx264))
  Stream #1:0 -> #0:1 (aac (native) -> aac (native))
Press [q] to stop, [?] for help
[h264 @ 0x125e512f0] Reinit context to 1920x1088, pix_fmt: yuv420p
[graph 0 input from stream 0:0 @ 0x6000000513f0] w:1920 h:1080 pixfmt:yuv420p tb:1/24000 fr:24000/1001 sar:1/1
[libx264 @ 0x125e4f7d0] using SAR=1/1
[libx264 @ 0x125e4f7d0] using cpu capabilities: ARMv8 NEON
[libx264 @ 0x125e4f7d0] profile High, level 4.0, 4:2:0, 8-bit
[libx264 @ 0x125e4f7d0] 264 - core 163 - H.264/MPEG-4 AVC codec - Copyleft 2003-2021 - http://www.videolan.org/x264.html - options: cabac=1 ref=3 deblock=1:0:0 analyse=0x3:0x113 me=hex subme=7 psy=1 psy_rd=1.00:0.00 mixed_ref=1 me_range=16 chroma_me=1 trellis=1 8x8dct=1 cqm=0 deadzone=21,11 fast_pskip=1 chroma_qp_offset=-2 threads=12 lookahead_threads=2 sliced_threads=0 nr=0 decimate=1 interlaced=0 bluray_compat=0 constrained_intra=0 bframes=3 b_pyramid=2 b_adapt=1 b_bias=0 direct=1 weightb=1 open_gop=0 weightp=2 keyint=250 keyint_min=23 scenecut=40 intra_refresh=0 rc_lookahead=40 rc=crf mbtree=1 crf=23.0 qcomp=0.60 qpmin=0 qpmax=69 qpstep=4 ip_ratio=1.40 aq=1:1.00
[graph_1_in_1_0 @ 0x600000051600] tb:1/44100 samplefmt:fltp samplerate:44100 chlayout:stereo
Output #0, mp4, to 'file:Midnight Grand Orchestra『夜を待つよ』Music Video [kX7ldIKFD60].mp4.part':
  Metadata:
    major_brand     : dash
    minor_version   : 0
    compatible_brands: iso6avc1mp41
    encoder         : Lavf60.3.100
  Stream #0:0(und): Video: h264, 1 reference frame (avc1 / 0x31637661), yuv420p(tv, bt709, progressive, left), 1920x1080 (0x0) [SAR 1:1 DAR 16:9], q=2-31, 23.98 fps, 24k tbn (default)
    Metadata:
      creation_time   : 2023-11-03T18:18:19.000000Z
      handler_name    : ISO Media file produced by Google Inc.
      vendor_id       : [0][0][0][0]
      encoder         : Lavc60.3.100 libx264
    Side data:
      cpb: bitrate max/min/avg: 0/0/0 buffer size: 0 vbv_delay: N/A
  Stream #0:1(eng): Audio: aac (LC) (mp4a / 0x6134706D), 44100 Hz, stereo, fltp, delay 1024, 128 kb/s (default)
    Metadata:
      creation_time   : 2023-11-03T17:48:52.000000Z
      handler_name    : ISO Media file produced by Google Inc.
      vendor_id       : [0][0][0][0]
      encoder         : Lavc60.3.100 aac
frame=    0 fps=0.0 q=0.0 size=       0kB time=-577014:32:22.77 bitrate=  -0.0kbits/s speed=N/A

ERROR: ffmpeg exited with code -11
  File "/nix/store/6x12ka70fnnfanzarrggkjg2zsh388wz-python3.11-yt-dlp-2023.11.16/bin/.yt-dlp-wrapped", line 9, in <module>
    sys.exit(main())
  File "/nix/store/6x12ka70fnnfanzarrggkjg2zsh388wz-python3.11-yt-dlp-2023.11.16/lib/python3.11/site-packages/yt_dlp/__init__.py", line 1008, in main
    _exit(*variadic(_real_main(argv)))
  File "/nix/store/6x12ka70fnnfanzarrggkjg2zsh388wz-python3.11-yt-dlp-2023.11.16/lib/python3.11/site-packages/yt_dlp/__init__.py", line 998, in _real_main
    return ydl.download(all_urls)
  File "/nix/store/6x12ka70fnnfanzarrggkjg2zsh388wz-python3.11-yt-dlp-2023.11.16/lib/python3.11/site-packages/yt_dlp/YoutubeDL.py", line 3511, in download
    self.__download_wrapper(self.extract_info)(
  File "/nix/store/6x12ka70fnnfanzarrggkjg2zsh388wz-python3.11-yt-dlp-2023.11.16/lib/python3.11/site-packages/yt_dlp/YoutubeDL.py", line 3486, in wrapper
    res = func(*args, **kwargs)
  File "/nix/store/6x12ka70fnnfanzarrggkjg2zsh388wz-python3.11-yt-dlp-2023.11.16/lib/python3.11/site-packages/yt_dlp/YoutubeDL.py", line 1556, in extract_info
    return self.__extract_info(url, self.get_info_extractor(key), download, extra_info, process)
  File "/nix/store/6x12ka70fnnfanzarrggkjg2zsh388wz-python3.11-yt-dlp-2023.11.16/lib/python3.11/site-packages/yt_dlp/YoutubeDL.py", line 1567, in wrapper
    return func(self, *args, **kwargs)
  File "/nix/store/6x12ka70fnnfanzarrggkjg2zsh388wz-python3.11-yt-dlp-2023.11.16/lib/python3.11/site-packages/yt_dlp/YoutubeDL.py", line 1723, in __extract_info
    return self.process_ie_result(ie_result, download, extra_info)
  File "/nix/store/6x12ka70fnnfanzarrggkjg2zsh388wz-python3.11-yt-dlp-2023.11.16/lib/python3.11/site-packages/yt_dlp/YoutubeDL.py", line 1782, in process_ie_result
    ie_result = self.process_video_result(ie_result, download=download)
  File "/nix/store/6x12ka70fnnfanzarrggkjg2zsh388wz-python3.11-yt-dlp-2023.11.16/lib/python3.11/site-packages/yt_dlp/YoutubeDL.py", line 2922, in process_video_result
    self.process_info(new_info)
  File "/nix/store/6x12ka70fnnfanzarrggkjg2zsh388wz-python3.11-yt-dlp-2023.11.16/lib/python3.11/site-packages/yt_dlp/YoutubeDL.py", line 3335, in process_info
    success, real_download = self.dl(temp_filename, info_dict)
  File "/nix/store/6x12ka70fnnfanzarrggkjg2zsh388wz-python3.11-yt-dlp-2023.11.16/lib/python3.11/site-packages/yt_dlp/YoutubeDL.py", line 3109, in dl
    return fd.download(name, new_info, subtitle)
  File "/nix/store/6x12ka70fnnfanzarrggkjg2zsh388wz-python3.11-yt-dlp-2023.11.16/lib/python3.11/site-packages/yt_dlp/downloader/common.py", line 455, in download
    ret = self.real_download(filename, info_dict)
  File "/nix/store/6x12ka70fnnfanzarrggkjg2zsh388wz-python3.11-yt-dlp-2023.11.16/lib/python3.11/site-packages/yt_dlp/downloader/external.py", line 80, in real_download
    self.report_error('%s exited with code %d' % (
  File "/nix/store/6x12ka70fnnfanzarrggkjg2zsh388wz-python3.11-yt-dlp-2023.11.16/lib/python3.11/site-packages/yt_dlp/YoutubeDL.py", line 1045, in report_error
    self.trouble(f'{self._format_err("ERROR:", self.Styles.ERROR)} {message}', *args, **kwargs)
  File "/nix/store/6x12ka70fnnfanzarrggkjg2zsh388wz-python3.11-yt-dlp-2023.11.16/lib/python3.11/site-packages/yt_dlp/YoutubeDL.py", line 973, in trouble
    tb_data = traceback.format_list(traceback.extract_stack())
jdelStrother commented 10 months ago

yt-dlp is using the top level unpatched ffmpeg by default. You could either redefine ffmpeg with the patch in an overlay, or use (yt-dlp.override { ffmpeg = patched-ffmpeg; })

DontEatOreo commented 10 months ago

yt-dlp is using the top level unpatched ffmpeg by default. You could either redefine ffmpeg with the patch in an overlay, or use (yt-dlp.override { ffmpeg = patched-ffmpeg; })

Oh right... 😅 Thank you!

wch commented 10 months ago

I have a question, as someone who is a nix user but has only dabbled in building nix packages: Is this something that should be picked up in tests for the package?

reckenrode commented 10 months ago

Ideally. The ffmpeg derivation does include a check phase that runs make check. Unfortunately, upstream’s tests didn’t catch this issue.

Atemu commented 10 months ago

It appears that very short test runs don't run into this issue and I believe upstream tests on this are very short.

wch commented 9 months ago

@DontEatOreo I see you closed this -- is this fixed? I don't see any changes in ffmpeg on master. https://github.com/NixOS/nixpkgs/blob/master/pkgs/development/libraries/ffmpeg/generic.nix

Atemu commented 9 months ago

@wch the issue wasn't in ffmpeg but x264.

reckenrode commented 9 months ago

The x264 fix is still waiting in staging for the next staging-next cycle.

DontEatOreo commented 9 months ago

@DontEatOreo I see you closed this -- is this fixed? I don't see any changes in ffmpeg on master. https://github.com/NixOS/nixpkgs/blob/master/pkgs/development/libraries/ffmpeg/generic.nix

@wch The commit 0f0b89f already solved the issue, so I don't see a reason for this issue to remain open

hraban commented 9 months ago

For what it's worth ffmpeg still segfaults for me with ffmpeg from nixpkgs-unstable.

jdelStrother commented 9 months ago

@hraban yep, it's not made it to nixpkgs-unstable yet. See https://nixpk.gs/pr-tracker.html?pr=271459

hraban commented 9 months ago

Lovely tracker, thank you for the info. I didn't realize master could lag that far behind staging.

shilintan commented 5 months ago

meet this problem also, solve this problem by use local file

Atemu commented 5 months ago

@shilintan please create a separate bug report. This issue has long been fixed and yours is likely entirely separate.