Script for generate IPTV with OBS + FFMPEG + NVIDIA card OR cpu INTEL
Forum rules
This forum is run by the BATC (British Amateur Television Club), it is service made freely available to all interested parties, please do not abuse this privilege.
Thank you
This forum is run by the BATC (British Amateur Television Club), it is service made freely available to all interested parties, please do not abuse this privilege.
Thank you
Re: Script for generate IPTV with OBS + FFMPEG + NVIDIA card OR cpu INTEL
Very nice - saves me trying to do this. Would it be possible to build it without requiring .NET download - i.e. as a standalone windows programme, perhaps QT and GCC ?
Also can you add full HD to the resolutions?
Mike
Also can you add full HD to the resolutions?
Mike
-
- Posts: 32
- Joined: Fri Nov 17, 2017 3:05 pm
Re: Script for generate IPTV with OBS + FFMPEG + NVIDIA card OR cpu INTEL
Hello Mike,
Thank you for the report, I added full HD option and made some modifications. Also trying to include a Mqtt client, to "speak" with Pluto, have some success with the few topics exposed.
For the development, I use Visual Studio for the moment, maybe I will have a look at QT...
73,
Roland F8CHK
Thank you for the report, I added full HD option and made some modifications. Also trying to include a Mqtt client, to "speak" with Pluto, have some success with the few topics exposed.
For the development, I use Visual Studio for the moment, maybe I will have a look at QT...
73,
Roland F8CHK
Re: Script for generate IPTV with OBS + FFMPEG + NVIDIA card OR cpu INTEL
This is very good thankyou.
I can use it with VMix and DATV Express, but it only works with DATV Express version 1.25LP14, it will not work with LP17 or LP18.
The problem appears to be the bit rate drops on a still image such as a test card and then DATV Express stops giving carrier lock. If I play a video the bit rate stays high and DATV Express is happy.
I have a fixed script also and on 333K/s 2/3 H265 that maintains the 440Kb/s and LP17 and 18 are happy with that it is just the auto script plus sending a still image where the issue is.
73 Mike G8LES
I can use it with VMix and DATV Express, but it only works with DATV Express version 1.25LP14, it will not work with LP17 or LP18.
The problem appears to be the bit rate drops on a still image such as a test card and then DATV Express stops giving carrier lock. If I play a video the bit rate stays high and DATV Express is happy.
I have a fixed script also and on 333K/s 2/3 H265 that maintains the 440Kb/s and LP17 and 18 are happy with that it is just the auto script plus sending a still image where the issue is.
73 Mike G8LES
Re: Script for generate IPTV with OBS + FFMPEG + NVIDIA card OR cpu INTEL
I think most people are using Plutos. Perhaps if you increase the rate a little?
Re: Script for generate IPTV with OBS + FFMPEG + NVIDIA card OR cpu INTEL
Thanks. I have a copy of visual studio but I don't buy the full software - too expensive. I am more used to Borland C++ Builder. However that's got a community edition but it keeps changing and breaking all my software. I will have another go with it. I tried QT but it seems to have gone commercial. However, while there is a free version still, I expect that will fall behind in time.roland_F8CHK wrote: ↑Tue Mar 09, 2021 9:59 pmHello Mike,
Thank you for the report, I added full HD option and made some modifications. Also trying to include a Mqtt client, to "speak" with Pluto, have some success with the few topics exposed.
For the development, I use Visual Studio for the moment, maybe I will have a look at QT...
73,
Roland F8CHK
conf_ffmpeg.zip
Mike
Re: Script for generate IPTV with OBS + FFMPEG + NVIDIA card OR cpu INTEL
Hi Roland
Some odd things happening with Ryde RX and the script. Winterhill is OK. What video encoder settings are you deploying?
Mike
Some odd things happening with Ryde RX and the script. Winterhill is OK. What video encoder settings are you deploying?
Mike
-
- Posts: 32
- Joined: Fri Nov 17, 2017 3:05 pm
Re: Script for generate IPTV with OBS + FFMPEG + NVIDIA card OR cpu INTEL
Hi Mike and Mike!,
@G8LES tnx for report, unfortunetly I know nothing about DATV Express, so I am afraid I cannot help you for the moment. What are the differences between LP 14 and others?
@G0MJW, I am using the free community version of Visual Studio 2019 and using C# for coding. I was a fan of Borland C++ some years ago also! and Borland Turbo Pascal back in the 90's I think!
For the video settings, I use the same as Dominique in his script, so you can have a look. I have all the parts to play with a Ryde so I will try to test here.
Attached a version with corrections for the Intel video codecs.
@G8LES tnx for report, unfortunetly I know nothing about DATV Express, so I am afraid I cannot help you for the moment. What are the differences between LP 14 and others?
@G0MJW, I am using the free community version of Visual Studio 2019 and using C# for coding. I was a fan of Borland C++ some years ago also! and Borland Turbo Pascal back in the 90's I think!
For the video settings, I use the same as Dominique in his script, so you can have a look. I have all the parts to play with a Ryde so I will try to test here.
Attached a version with corrections for the Intel video codecs.
Re: Script for generate IPTV with OBS + FFMPEG + NVIDIA card OR cpu INTEL
Hello
Just as a test I tried adding -muxrate 440k in the h265 module and it makes DATV express LP18 happy. LP18 just has a bigger buffer than LP17. Not sure what the other differences are between the later two and LP14.
So now I have established that the muxrate needs stating, how do I auto calculate this muxrate for all the FEC and SR options?
This is OK on a SR =333 and FEC = 2/3
start "Video Transport Stream to DATV Express" /high ^
C:\ffmpeg-4.3.2-2021-02-27-full_build\bin\ffmpeg.exe ^
-rtbufsize 400M ^
-f dshow -thread_queue_size 2048 -i video="vMix Video" -f dshow -thread_queue_size 2048 -i audio="Line 1 (Virtual Audio Cable)" ^
-c:v hevc_nvenc -s %IMAGESIZE% -r %Fi% -bf 0 -profile:v main -pix_fmt yuv420p -preset slow -rc cbr_hq -aspect 16:9 ^
-b:v %VIDRATE% -minrate %VIDRATE% -maxrate %VIDRATE% -bufsize %BUFSIZE% ^
-c:a aac -ac 1 -b:a %AUDIO% -ar 44100 ^
-f mpegts -muxrate 440k -mpegts_original_network_id 1 -mpegts_transport_stream_id 1 -mpegts_service_id 1 -mpegts_pmt_start_pid 4096 -streamid 0:256 -streamid 1:257 ^
-metadata service_provider="IO91LC" -metadata service_name=%callsign% ^
-flush_packets 0 -y ^
-f mpegts "udp://%ip%?pkt_size=1316&bitrate=%BASEVIDRATE%"
Just as a test I tried adding -muxrate 440k in the h265 module and it makes DATV express LP18 happy. LP18 just has a bigger buffer than LP17. Not sure what the other differences are between the later two and LP14.
So now I have established that the muxrate needs stating, how do I auto calculate this muxrate for all the FEC and SR options?
This is OK on a SR =333 and FEC = 2/3
start "Video Transport Stream to DATV Express" /high ^
C:\ffmpeg-4.3.2-2021-02-27-full_build\bin\ffmpeg.exe ^
-rtbufsize 400M ^
-f dshow -thread_queue_size 2048 -i video="vMix Video" -f dshow -thread_queue_size 2048 -i audio="Line 1 (Virtual Audio Cable)" ^
-c:v hevc_nvenc -s %IMAGESIZE% -r %Fi% -bf 0 -profile:v main -pix_fmt yuv420p -preset slow -rc cbr_hq -aspect 16:9 ^
-b:v %VIDRATE% -minrate %VIDRATE% -maxrate %VIDRATE% -bufsize %BUFSIZE% ^
-c:a aac -ac 1 -b:a %AUDIO% -ar 44100 ^
-f mpegts -muxrate 440k -mpegts_original_network_id 1 -mpegts_transport_stream_id 1 -mpegts_service_id 1 -mpegts_pmt_start_pid 4096 -streamid 0:256 -streamid 1:257 ^
-metadata service_provider="IO91LC" -metadata service_name=%callsign% ^
-flush_packets 0 -y ^
-f mpegts "udp://%ip%?pkt_size=1316&bitrate=%BASEVIDRATE%"
Re: Script for generate IPTV with OBS + FFMPEG + NVIDIA card OR cpu INTEL
Mike
The bitrate calculations are all in the F1EJP script (look around line 203 of version 1.16).
Dave
The bitrate calculations are all in the F1EJP script (look around line 203 of version 1.16).
Dave
Re: Script for generate IPTV with OBS + FFMPEG + NVIDIA card OR cpu INTEL
Hello Mike
Normally you can choose -muxrate=%BASEVIDRATE%
I am not implementing this for portdown as it increases kbits / s too much for low SR
73
Dominique
Normally you can choose -muxrate=%BASEVIDRATE%
I am not implementing this for portdown as it increases kbits / s too much for low SR
73
Dominique