seanhood 1 Posted September 5, 2022 Share Posted September 5, 2022 First of all, I didn't see a similar topic to this posted, and I hope it's in the correct area of the forum. The Issue: SVG Images are failing to show when importing an M3U playlist into Emby TV. The playlist imports and works as expected, images show up initially but then no longer show. Emby ends up producing multiple 0 byte .webp files. I believe the core of the problem is that the bundled ffmpeg isn't compiled with support for SVG. I'm running the `emby/embyserver:4.6.4.0` version container image Sample M3U Playlist: #EXTM3U #EXTINF:-1 tvg-logo="https://sounds.files.bbci.co.uk/3.1.5/networks/bbc_radio_one/blocks-white_default.svg",group-title="National",BBC - Radio 1 http://a.files.bbci.co.uk/media/live/manifesto/audio/simulcast/hls/uk/sbr_med/ak/bbc_radio_one.m3u8 ... #EXTINF:-1 tvg-logo="https://sounds.files.bbci.co.uk/3.1.5/networks/bbc_6music/blocks-white_default.svg",group-title="National",BBC - Radio 6 Music http://a.files.bbci.co.uk/media/live/manifesto/audio/simulcast/hls/uk/sbr_med/ak/bbc_6music.m3u8 ... Logs: 2022-09-05 20:52:52.748 Debug App: ConvertImageToLocal item 379328 - image url: https://sounds.files.bbci.co.uk/3.1.5/networks/bbc_6music/blocks-white_default.svg 2022-09-05 20:52:52.749 Info HttpClient: GET https://sounds.files.bbci.co.uk/3.1.5/networks/bbc_6music/blocks-white_default.svg 2022-09-05 20:52:53.003 Debug ProviderManager: Saving image to /config/metadata/livetv/eb7b99b73ba643998a98d0a3f0473c8d/metadata/poster.svg 2022-09-05 20:52:53.012 Info MediaImageConverter: ProcessRun 'ffmpeg convert-image' Execute: /bin/ffmpeg -i "/config/metadata/livetv/eb7b99b73ba643998a98d0a3f0473c8d/metadata/poster.svg" "/config/cache/images/conver 2022-09-05 20:52:53.013 Debug MediaImageConverter: ProcessRun 'ffmpeg convert-image' Started. 2022-09-05 20:52:53.033 Info MediaImageConverter: ProcessRun 'ffmpeg convert-image' Process exited with code 1 2022-09-05 20:52:53.036 Error MediaImageConverter: ffmpeg image conversion failed for /config/metadata/livetv/eb7b99b73ba643998a98d0a3f0473c8d/metadata/poster.svg 2022-09-05 20:52:53.039 Error ImageProcessor: Image conversion failed for /config/metadata/livetv/eb7b99b73ba643998a98d0a3f0473c8d/metadata/poster.svg *** Error Report *** Version: 4.6.4.0 Command line: /system/EmbyServer.dll -programdata /config -ffdetect /bin/ffdetect -ffmpeg /bin/ffmpeg -ffprobe /bin/ffprobe -restartexitcode 3 Operating system: Linux version 5.4.0-124-generic (buildd@lcy02-amd64-019) (gcc version 7.5.0 (Ubuntu 7.5.0-3ubuntu1~18.04)) #140~18.04.1-Ubuntu SMP Fri Aug 5 11:43:34 Framework: .NET Core 3.1.13 OS/Process: x64/x64 Runtime: system/System.Private.CoreLib.dll Processor count: 1 Data path: /config Application path: /system System.Exception: System.Exception: ffmpeg image conversion failed for /config/metadata/livetv/eb7b99b73ba643998a98d0a3f0473c8d/metadata/poster.svg at Emby.Server.MediaEncoding.ImageConversion.MediaImageConverter.ConvertImage(String inputPath, String outputPath) at Emby.Drawing.ImageProcessor.GetSupportedImage(String originalImagePath, DateTimeOffset dateModified) Source: Emby.Server.MediaEncoding TargetSite: Void MoveNext() 2022-09-05 20:52:53.050 Error ImageProcessor: Error encoding image *** Error Report *** Version: 4.6.4.0 Command line: /system/EmbyServer.dll -programdata /config -ffdetect /bin/ffdetect -ffmpeg /bin/ffmpeg -ffprobe /bin/ffprobe -restartexitcode 3 Operating system: Linux version 5.4.0-124-generic (buildd@lcy02-amd64-019) (gcc version 7.5.0 (Ubuntu 7.5.0-3ubuntu1~18.04)) #140~18.04.1-Ubuntu SMP Fri Aug 5 11:43:34 Framework: .NET Core 3.1.13 OS/Process: x64/x64 Runtime: system/System.Private.CoreLib.dll Processor count: 1 Data path: /config Application path: /system System.Exception: System.Exception: SKCodec had an error reading /config/metadata/livetv/eb7b99b73ba643998a98d0a3f0473c8d/metadata/poster.svg at Emby.Drawing.Skia.SkiaEncoder.EncodeImage(String inputPath, String outputPath, Boolean autoOrient, Nullable`1 orientation, Int32 quality, ImageProcessingOptions options, ImageFormat selectedOutputForma at Emby.Drawing.ImageProcessor.ProcessImage(ImageProcessingOptions options, CancellationToken cancellationToken) Source: Emby.Drawing.Skia TargetSite: System.String EncodeImage(System.String, System.String, Boolean, System.Nullable`1[MediaBrowser.Model.Drawing.ImageOrientation], Int32, MediaBrowser.Controller.Drawing.ImageProcessingOptions, Med When I manually run the command it's erroring on, I get this output. Googling the last line in this error brings me to: https://stackoverflow.com/questions/48216871/ffmpeg-support-for-svg-rasterization / # /bin/ffmpeg -i "/config/metadata/livetv/b3d268e26f7d7cc3671634cedc5626f6/metadata/poster.svg" "/config/cache/images/converted-images/ece73f47c1af02c2bf5fdb015bf0208a.webp" ffmpeg version 4.3.0-emby_2021_02_27 Copyright (c) 2000-2021 the FFmpeg developers and softworkz for Emby LLC built with gcc 8.3.0 (crosstool-NG 1.24.0) Execution Date: 2022-09-05 21:49:09 [image2 @ 0xa77e00] Could not find codec parameters for stream 0 (Video: svg, none): unspecified size Consider increasing the value for the 'analyzeduration' and 'probesize' options Input #0, image2, from '/config/metadata/livetv/b3d268e26f7d7cc3671634cedc5626f6/metadata/poster.svg': Duration: 00:00:00.04, start: 0.000000, bitrate: 826 kb/s Stream #0:0: Video: svg, none, 25 tbr, 25 tbn, 25 tbc Stream mapping: Stream #0:0 -> #0:0 (? (?) -> webp (libwebp_anim)) Decoder (codec svg) not found for input stream #0:0 Can see that ffmpeg isn't compiled with `--enable-librsvg` / # ffmpeg -version Execution Date: 2022-09-05 21:51:38 ffmpeg version 4.3.0-emby_2021_02_27 Copyright (c) 2000-2021 the FFmpeg developers and softworkz for Emby LLC built with gcc 8.3.0 (crosstool-NG 1.24.0) configuration: --cc=x86_64-emby-linux-gnu-gcc --prefix=/home/embybuilder/Buildbot/x64/ffmpeg-x64/staging --disable-debug --disable-doc --disable-ffplay --disable-vdpau --disable-xlib --enable-chromaprint --enable-fontconfig --enable-gnutls --enable-gpl --enable-iconv --enable-libass --enable-libdav1d --enable-libfreetype --enable-libfribidi --enable-libmp3lame --enable-libopus --enable-libtheora --enable-libvorbis --enable-libvpx --enable-libwebp --enable-libx264 --enable-libzvbi --enable-pic --enable-version3 --enable-libx265 --enable-cuda-llvm --enable-cuvid --enable-libmfx --enable-nvdec --enable-nvenc --enable-vaapi --enable-opencl --enable-cross-compile --cross-prefix=x86_64-emby-linux-gnu- --arch=x86_64 --target-os=linux --enable-shared --disable-static --pkg-config=pkg-config --pkg-config-flags=--static --extra-libs='-lm -lstdc++ -pthread' libavutil 56. 36.100 / 56. 36.100 libavcodec 58. 62.100 / 58. 62.100 libavformat 58. 35.100 / 58. 35.100 libavdevice 58. 9.101 / 58. 9.101 libavfilter 7. 69.101 / 7. 69.101 libswscale 5. 6.100 / 5. 6.100 libswresample 3. 6.100 / 3. 6.100 libpostproc 55. 6.100 / 55. 6.100 Link to comment Share on other sites More sharing options...
Luke 37099 Posted September 5, 2022 Share Posted September 5, 2022 Hi, technically this is not really an image format. Right now our image processing libraries that we use currently don't support them, but it's on our to do list for future updates. Thanks. Link to comment Share on other sites More sharing options...
seanhood 1 Posted October 20, 2022 Author Share Posted October 20, 2022 Thanks for the reply! Since I'm hosting the m3u8, I think I can do the SVG->PNG translation myself for now. 1 Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now