Unplayable gif output by VHS. The .mp4 output works as expected but not the .gif output. A gif is created but it's unplayable.
Setup
OS: LinuxLite
Shell: Bash
Terminal Emulator: xfce4-terminal
Terminal Multiplexer: None
VHS Version: vhs version v0.8.0 (88e634f)
To Reproduce
Run the below code in your terminal.
vhs demo2.tape
Source Code
Below is the content of my demo2.tape file I am using to create the .gif output.
Output out.gif
# Set WindowBar Colorful
Set FontSize 30
Set Width 3000
Set Height 1000
Set Framerate 30
Sleep 1
Type "# Here's a brief demonstration of the XYZ"
Sleep 2
Backspace 41
Sleep 1
Sleep 2
Ctrl+L
Sleep 1
Type `# As you go through XYZ, it will start recording your activities`
Sleep 2
Enter 1
Sleep 1
Type `# So, let's start with searching and navigating through the logs`
Sleep 3
Enter 1
Sleep 5
Expected behavior
VHS should be creating a .gif file that can be viewed in a browser.
Screenshots
None
Additional context
Below is the output that I get.
File: demo2.tape
Output .gif out.gif
Set FontSize 30
Set Width 3000
Set Height 1000
Set Framerate 30
Sleep 1s
Type # Here's a brief demonstration of the XYZ
Sleep 2s
Backspace 41
Sleep 1s
Sleep 2s
Ctrl L
Sleep 1s
Type # As you go through XYZ, it will start recording your activities
Sleep 2s
Enter 1
Sleep 1s
Type # So, let's start with searching and navigating through the logs
Sleep 3s
Enter 1
Sleep 5s
Creating out.gif...
ffmpeg version 6.1.1-3ubuntu5 Copyright (c) 2000-2023 the FFmpeg developers
built with gcc 13 (Ubuntu 13.2.0-23ubuntu3)
configuration: --prefix=/usr --extra-version=3ubuntu5 --toolchain=hardened --libdir=/usr/lib/x86_64-linux-gnu --incdir=/usr/include/x86_64-linux-gnu --arch=amd64 --enable-gpl --disable-stripping --disable-omx --enable-gnutls --enable-libaom --enable-libass --enable-libbs2b --enable-libcaca --enable-libcdio --enable-libcodec2 --enable-libdav1d --enable-libflite --enable-libfontconfig --enable-libfreetype --enable-libfribidi --enable-libglslang --enable-libgme --enable-libgsm --enable-libharfbuzz --enable-libmp3lame --enable-libmysofa --enable-libopenjpeg --enable-libopenmpt --enable-libopus --enable-librubberband --enable-libshine --enable-libsnappy --enable-libsoxr --enable-libspeex --enable-libtheora --enable-libtwolame --enable-libvidstab --enable-libvorbis --enable-libvpx --enable-libwebp --enable-libx265 --enable-libxml2 --enable-libxvid --enable-libzimg --enable-openal --enable-opencl --enable-opengl --disable-sndio --enable-libvpl --disable-libmfx --enable-libdc1394 --enable-libdrm --enable-libiec61883 --enable-chromaprint --enable-frei0r --enable-ladspa --enable-libbluray --enable-libjack --enable-libpulse --enable-librabbitmq --enable-librist --enable-libsrt --enable-libssh --enable-libsvtav1 --enable-libx264 --enable-libzmq --enable-libzvbi --enable-lv2 --enable-sdl2 --enable-libplacebo --enable-librav1e --enable-pocketsphinx --enable-librsvg --enable-libjxl --enable-shared
libavutil 58. 29.100 / 58. 29.100
libavcodec 60. 31.102 / 60. 31.102
libavformat 60. 16.100 / 60. 16.100
libavdevice 60. 3.100 / 60. 3.100
libavfilter 9. 12.100 / 9. 12.100
libswscale 7. 5.100 / 7. 5.100
libswresample 4. 12.100 / 4. 12.100
libpostproc 57. 3.100 / 57. 3.100
Input #0, image2, from '/tmp/vhs36284546/frame-text-%05d.png':
Duration: 00:00:32.60, start: 0.000000, bitrate: N/A
Stream #0:0: Video: png, rgba(pc, gbr/bt709/iec61966-2-1), 2850x840, 25 fps, 25 tbr, 25 tbn
Input #1, image2, from '/tmp/vhs36284546/frame-cursor-%05d.png':
Duration: 00:00:32.60, start: 0.000000, bitrate: N/A
Stream #1:0: Video: png, rgba(pc, gbr/bt709/iec61966-2-1), 2850x840, 25 fps, 25 tbr, 25 tbn
Input #2, lavfi, from 'color=#171717:s=3000x1000':
Duration: N/A, start: 0.000000, bitrate: N/A
Stream #2:0: Video: wrapped_avframe, yuv420p, 3000x1000 [SAR 1:1 DAR 3:1], 25 fps, 25 tbr, 25 tbn
Stream mapping:
Stream #0:0 (png) -> overlay
Stream #1:0 (png) -> overlay
Stream #2:0 (wrapped_avframe) -> scale:default
paletteuse:default -> Stream #0:0 (gif)
Press [q] to stop, [?] for help
[in#0/image2 @ 0x64b48b15cb40] Thread message queue blocking; consider raising the thread_queue_size option (current value: 8)
[in#1/image2 @ 0x64b48b16eac0] Thread message queue blocking; consider raising the thread_queue_size option (current value: 8)
Host your GIF on vhs.charm.sh: vhs publish <file>.gif
Describe the bug
Unplayable gif output by VHS. The
.mp4
output works as expected but not the.gif
output. A gif is created but it's unplayable.Setup
To Reproduce
Run the below code in your terminal.
Source Code
Below is the content of my
demo2.tape
file I am using to create the.gif
output.Expected behavior
VHS should be creating a
.gif
file that can be viewed in a browser.Screenshots
None
Additional context
Below is the output that I get.