massej / RadioHLSConverter.backend.serverless

RadioHLSConverter.backend.serverless
GNU General Public License v3.0
7 stars 2 forks source link

cannot play back a public radio station that uses m3u chunks (windows 11) #1

Closed ultraleetj closed 2 years ago

ultraleetj commented 2 years ago

I did the following to reproduce: followed the instructions in the read me and used the following source URL into the appsettings.json https://streaming.rtvc.gov.co/Radio_Web_Mas_Colombia/Web_Mas_Colombia.stream/playlist.m3u8

which I presume to be the master file that sends the m3u8 chunks to be played. I ran the app using command line and when I run it the following diagnostic output comes up, along with an error to check the buffer length configuration

C:\inProgress\runtemp\RadioHLSConverter.backend.serverless>RadioHLSConverter.backend.serverless.exe --urls="http://127.0.0.1:5000" info: Startup[0] In production environment - version 1.0.8.0! info: Microsoft.Hosting.Lifetime[14] Now listening on: http://127.0.0.1:5000 info: Microsoft.Hosting.Lifetime[0] Application started. Press Ctrl+C to shut down. info: Microsoft.Hosting.Lifetime[0] Hosting environment: Production info: Microsoft.Hosting.Lifetime[0] Content root path: C:\inProgress\runtemp\RadioHLSConverter.backend.serverless info: Microsoft.AspNetCore.Hosting.Diagnostics[1] Request starting HTTP/1.0 GET http://127.0.0.1/api/Radio/0 - - info: Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker[3] Route matched with {action = "GetRadio", controller = "Radio"}. Executing controller action with signature System.Threading.Tasks.Task1[Microsoft.AspNetCore.Mvc.IActionResult] GetRadio(Int32) on controller RadioHLSConverter.backend.serverless.Radio.RadioController (RadioHLSConverter.backend.serverless). info: RadioController[0] Connected client - GetRadio - IP : 127.0.0.1 - Radio ID : 0 - Radio Name : mascolombia - convert (best quality) info: RadioController[0] Error, cannot load first segment, please check buffer length configuration! at RadioHLSConverter.backend.serverless.Services.HLSRadioConverterService.ConvertHLSRadio(Int32 radioId, CancellationToken cancellationToken) in F:\Documents\Project-Delphi\RadioHLSConverter.backend.serverless\RadioHLSConverter.backend.serverless\Services\HLSRadioConverterService.cs:line 79 at RadioHLSConverter.backend.serverless.Radio.RadioController.GetRadio(Int32 radioId) in F:\Documents\Project-Delphi\RadioHLSConverter.backend.serverless\RadioHLSConverter.backend.serverless\Controllers\Radio\RadioController.cs:line 89 info: Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker[2] Executed action RadioHLSConverter.backend.serverless.Radio.RadioController.GetRadio (RadioHLSConverter.backend.serverless) in 390.3437ms info: Microsoft.AspNetCore.Hosting.Diagnostics[2] Request finished HTTP/1.0 GET http://127.0.0.1/api/Radio/0 - - - 200 0 audio/aac 494.6593ms info: FFMpegConverterService[0] Error, "ffmpeg" throw an exception, please check if "ffmpeg" is installed or inside "ffmpeg-binaries" folder and check your appsettings.json configuration! ffmpeg exited with non-zero exit-code (1 - ffmpeg version n5.0-4-g911d7f167c-20220323 Copyright (c) 2000-2022 the FFmpeg developers built with gcc 11.2.0 (crosstool-NG 1.24.0.533_681aaef) configuration: --prefix=/ffbuild/prefix --pkg-config-flags=--static --pkg-config=pkg-config --cross-prefix=x86_64-w64-mingw32- --arch=x86_64 --target-os=mingw32 --enable-gpl --enable-version3 --disable-debug --disable-w32threads --enable-pthreads --enable-iconv --enable-libxml2 --enable-zlib --enable-libfreetype --enable-libfribidi --enable-gmp --enable-lzma --enable-fontconfig --enable-libvorbis --enable-opencl --disable-libpulse --enable-libvmaf --disable-libxcb --disable-xlib --enable-amf --enable-libaom --enable-avisynth --enable-libdav1d --enable-libdavs2 --disable-libfdk-aac --enable-ffnvcodec --enable-cuda-llvm --enable-frei0r --enable-libgme --enable-libass --enable-libbluray --enable-libmp3lame --enable-libopus --enable-librist --enable-libtheora --enable-libvpx --enable-libwebp --enable-lv2 --enable-libmfx --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libopenh264 --enable-libopenjpeg --enable-libopenmpt --enable-librav1e --enable-librubberband --enable-schannel --enable-sdl2 --enable-libsoxr --enable-libsrt --enable-libsvtav1 --enable-libtwolame --enable-libuavs3d --disable-libdrm --disable-vaapi --enable-libvidstab --enable-vulkan --enable-libshaderc --enable-libplacebo --enable-libx264 --enable-libx265 --enable-libxavs2 --enable-libxvid --enable-libzimg --enable-libzvbi --extra-cflags=-DLIBTWOLAME_STATIC --extra-cxxflags= --extra-ldflags=-pthread --extra-ldexeflags= --extra-libs=-lgomp --extra-version=20220323 libavutil 57. 17.100 / 57. 17.100 libavcodec 59. 18.100 / 59. 18.100 libavformat 59. 16.100 / 59. 16.100 libavdevice 59. 4.100 / 59. 4.100 libavfilter 8. 24.100 / 8. 24.100 libswscale 6. 4.100 / 6. 4.100 libswresample 4. 3.100 / 4. 3.100 libpostproc 56. 3.100 / 56. 3.100 \\.\pipe\f5dc7705-ab3b-406c-bef3-9ab764578837: Invalid data found when processing input) at FFMpegCore.FFMpegArgumentProcessor.HandleCompletion(Boolean throwOnError, Int32 exitCode, IReadOnlyList1 errorData) at FFMpegCore.FFMpegArgumentProcessor.ProcessAsynchronously(Boolean throwOnError, FFOptions ffMpegOptions) at RadioHLSConverter.backend.serverless.Services.FFMpegConverterService.<>cDisplayClass11_0.<b0>d.MoveNext() in F:\Documents\Project-Delphi\RadioHLSConverter.backend.serverless\RadioHLSConverter.backend.serverless\Services\FFMpegConverterService.cs:line 96

If any further information is needed I will be glad to provide it.

massej commented 2 years ago

Hi @ultraleetj,

Many thanks for reporting this issue.

I fixed the issue into version v1.0.9.

Best,

ultraleetj commented 2 years ago

this works a charm, thanks so much! as far as I can gather there is no way to get currently song titles correct? due to the way these stations work

massej commented 2 years ago

It's definitely a good thing to integrate.

I will add this feature on the to-do list,

I think there are a few stations that are sending the song titles but often the radio don't send any title information.

Many thanks for the suggestions,