DmitryScaletta / twitch-dlp

Download regular/sub-only/hidden twitch VODs from start during live broadcast
https://npmjs.com/package/twitch-dlp
15 stars 0 forks source link

ffmpeg: "Conversion failed!" when video has muted segments #8

Closed superbonaci closed 1 month ago

superbonaci commented 2 months ago

failed

$ npx twitch-dlp https://www.twitch.tv/videos/2203484052
Downloading video access token
Downloading video metadata
Downloading video manifest
Downloading fragments list
[download] 100.0% of ~      11GB at      11MB/s ETA 00:00:00 (frag 1473/1473)
ffmpeg version 7.0.1 Copyright (c) 2000-2024 the FFmpeg developers
  built with Apple clang version 15.0.0 (clang-1500.3.9.4)
  configuration: --prefix=/opt/homebrew/Cellar/ffmpeg/7.0.1 --enable-shared --enable-pthreads --enable-version3 --cc=clang --host-cflags= --host-ldflags='-Wl,-ld_classic' --enable-ffplay --enable-gnutls --enable-gpl --enable-libaom --enable-libaribb24 --enable-libbluray --enable-libdav1d --enable-libharfbuzz --enable-libjxl --enable-libmp3lame --enable-libopus --enable-librav1e --enable-librist --enable-librubberband --enable-libsnappy --enable-libsrt --enable-libssh --enable-libsvtav1 --enable-libtesseract --enable-libtheora --enable-libvidstab --enable-libvmaf --enable-libvorbis --enable-libvpx --enable-libwebp --enable-libx264 --enable-libx265 --enable-libxml2 --enable-libxvid --enable-lzma --enable-libfontconfig --enable-libfreetype --enable-frei0r --enable-libass --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libopenjpeg --enable-libspeex --enable-libsoxr --enable-libzmq --enable-libzimg --disable-libjack --disable-indev=jack --enable-videotoolbox --enable-audiotoolbox --enable-neon
  libavutil      59.  8.100 / 59.  8.100
  libavcodec     61.  3.100 / 61.  3.100
  libavformat    61.  1.100 / 61.  1.100
  libavdevice    61.  1.100 / 61.  1.100
  libavfilter    10.  1.100 / 10.  1.100
  libswscale      8.  1.100 /  8.  1.100
  libswresample   5.  1.100 /  5.  1.100
  libpostproc    58.  1.100 / 58.  1.100
Input #0, concat, from '/Users/memetix_/twitch-dlp/SWIMMING IN SHARK INFESTED WATERS FOR SUBS 🌊 - (1 SUB = 1 JUMP IN WATER) [v2203484052].mp4-list.txt':
  Duration: N/A, start: 0.000000, bitrate: N/A
  Stream #0:0: Audio: aac (LC) ([15][0][0][0] / 0x000F), 44100 Hz, stereo, fltp, 100 kb/s
  Stream #0:1: Video: h264 (High) ([27][0][0][0] / 0x001B), yuv420p(tv, bt709, progressive), 1920x1080, 60 fps, 60 tbr, 90k tbn
  Stream #0:2: Data: timed_id3 (ID3  / 0x20334449)
Stream mapping:
  Stream #0:1 -> #0:0 (copy)
  Stream #0:0 -> #0:1 (copy)
Output #0, mp4, to '/Users/memetix_/twitch-dlp/SWIMMING IN SHARK INFESTED WATERS FOR SUBS 🌊 - (1 SUB = 1 JUMP IN WATER) [v2203484052].mp4':
  Metadata:
    encoder         : Lavf61.1.100
  Stream #0:0: Video: h264 (High) (avc1 / 0x31637661), yuv420p(tv, bt709, progressive), 1920x1080, q=2-31, 60 fps, 60 tbr, 90k tbn
  Stream #0:1: Audio: aac (LC) (mp4a / 0x6134706D), 44100 Hz, stereo, fltp, 100 kb/s
Press [q] to stop, [?] for help
[mpegts @ 0x110e04080] Packet corrupt (stream = 1, dts = 327643830).
[aac_adtstoasc @ 0x6000002fc190] Error parsing ADTS frame header!
[mp4 @ 0x1328065a0] Error applying bitstream filters to an output packet for stream #1: Invalid data found when processing input
[aost#0:1/copy @ 0x130e760b0] Error submitting a packet to the muxer: Invalid data found when processing input
    Last message repeated 1 times
[out#0/mp4 @ 0x6000014f8000] Error muxing a packet
[out#0/mp4 @ 0x6000014f8000] Task finished with error code: -1094995529 (Invalid data found when processing input)
[out#0/mp4 @ 0x6000014f8000] Terminating thread with return code -1094995529 (Invalid data found when processing input)
[out#0/mp4 @ 0x6000014f8000] video:1752333KiB audio:42868KiB subtitle:0KiB other streams:0KiB global headers:0KiB muxing overhead: 0.259095%
size= 1799852KiB time=00:59:32.43 bitrate=4127.3kbits/s speed= 140x
Conversion failed!
DmitryScaletta commented 2 months ago

Thanks for the report. Looks like it happens only for videos with muted segments. For now use yt-dlp for public twitch videos until I find how to solve this issue.

superbonaci commented 2 months ago

Can be related https://github.com/lay295/TwitchDownloader/issues/1139

superbonaci commented 2 months ago

now fails the same video:

$ npx twitch-dlp 'https:/www.twitch.tv/videos/2203484052'
/Users/memetix_/twitch-dlp/twitch-dlp.js:615
  throw new Error('Wrong link');
        ^

Error: Wrong link
    at parseLink (/Users/memetix_/twitch-dlp/twitch-dlp.js:615:9)
    at main (/Users/memetix_/twitch-dlp/twitch-dlp.js:682:32)
    at Object.<anonymous> (/Users/memetix_/twitch-dlp/twitch-dlp.js:824:1)
    at Module._compile (node:internal/modules/cjs/loader:1504:14)
    at Module._extensions..js (node:internal/modules/cjs/loader:1588:10)
    at Module.load (node:internal/modules/cjs/loader:1282:32)
    at Module._load (node:internal/modules/cjs/loader:1098:12)
    at TracingChannel.traceSync (node:diagnostics_channel:315:14)
    at wrapModuleLoad (node:internal/modules/cjs/loader:215:24)
    at Function.executeUserEntryPoint [as runMain] (node:internal/modules/run_main:158:5)

Node.js v22.5.1
DmitryScaletta commented 2 months ago

I think it should remain opened until it fixed.

DmitryScaletta commented 1 month ago

Can be related lay295/TwitchDownloader#1139

Thanks for pointing out. It was really helpful.

The issue is fixed in v0.2.9