SQ6QV current script

From BATC Wiki
Revision as of 20:35, 29 February 2020 by SQ6QV (talk | contribs) (Created page with "<code> @echo off set STATION=SQ6QV set STATION_DESC=via QO-100, JO81BE Legnica, Poland set NAME=Tomasz rem 6639 5000 QPSK FEC 2/3 rem 5945 5000 QPSK FEC 3/5 rem 5315 400...")
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search
The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.

@echo off set STATION=SQ6QV set STATION_DESC=via QO-100, JO81BE Legnica, Poland set NAME=Tomasz


rem 6639 5000 QPSK FEC 2/3

rem 5945 5000 QPSK FEC 3/5

rem 5315 4000 QPSK FEC 2/3 long - ??

rem 3955 4000 QPSK FEC 1/2 long - ??

rem 3986 3000 QPSK FEC 2/3 long - ??

rem 2656 2000 QPSK FEC 2/3 long - ??

rem 1289 1000 QPSK FEC 2/3 short - D0/D2 rem 1325 1000 QPSK FEC 2/3 long <--USE THIS rem 1296 1000 QPSK FEC 2/3 long +pilots

rem 986 1000 QPSK FEC 1/2 long - D4

rem 1207 333 32APSK FEC 3/4 long pilots rem 903 250 32APSK FEC 3/4 long pilots rem 625 250 32APSK FEC 3/4 long pilots rem 451 125 32APSK FEC 3/4 long pilots use 456 640x480

rem 861 333 16APSK FEC 2/3 long pilots - USE 859!

rem 741 333 8PSK FEC 3/4 long rem 726 333 8PSK FEC 3/4 long + pilots


rem 662 500 QPSK FEC 2/3 long

rem 995 500 QPSK FEC 2/3 long


rem 661 333 8PSK FEC 2/3 long

rem 646 333 8PSK FEC 2/3 long +pilots

rem 860 333 8PSK FEC 9/10 long pilots



rem 462 125 32APSK FEC 3/4 long rem 451 125 32APSK FEC 3/4 long +pilots

rem 442 333 QPSK FEC 2/3 long - ??

rem 240 66 32APSK FEC 3/4 long

rem 190 66 16APSK FEC 3/4 long

rem enter TS bitrate here:

set TS=859

set TS=%1

rem set TS=1325


set AUDIO_RATE=64

set AUDIO_SAMPLE_RATE=22050

SET OUTPUT_IP=192.168.10.208:2244 rem SET OUTPUT_IP=192.168.10.75:2244 rem SET OUTPUT_IP=127.0.0.1:2244

set /a TS_NO_AUDIO=%TS%-%AUDIO_RATE% set /a VIDEO_RATE=%TS_NO_AUDIO% * 75 / 100 set /a BUFSIZE=%VIDEO_RATE% *20 / 10

set /a TSBITRATE=%TS% * 1000 echo ------------------------- echo TS rate: %TS% kbit echo Video: %VIDEO_RATE% kbit echo Audio: %AUDIO_RATE% kbit

set /a MAX_VIDEO_RATE=VIDEO_RATE set /a Min_VIDEO_RATE=VIDEO_RATE


rem HEIGHT -65 set TEXTY=660

set TEXTY=1030 rem set TEXTY=655 set /a TEXTYY=%TEXTY% +22 set TEXTCOL=0x33CCFFEE set T2_SIZE=50 set DATECOL=0xFFCC00FF

set TEXT_CMD=-vf "drawtext=fontfile='hemi.ttf':text=%%{gmtime\\:%%d %%b %%Y %%X}:x=10:y=10:fontsize=%T2_SIZE%:fontcolor=%DATECOL%:shadowcolor=0x00007f9f:shadowx=2:shadowy=2, drawtext=fontfile='hemi.ttf':text='%STATION%':x=25:y=%TEXTY%:fontsize=%T2_SIZE%:fontcolor=%TEXTCOL%:shadowcolor=0x00007f9f:shadowx=2:shadowy=2, drawtext=fontfile='hemi.ttf':text='%STATION_DESC%':x=320:y=%TEXTYY%:fontsize=20:fontcolor=%TEXTCOL%:shadowcolor=0x00007f9f:shadowx=2:shadowy=2"

rem timestamps set TEXT_CMD=-vf "drawtext=fontfile='hemi.ttf':text=%%{gmtime\\:%%X}_fr_%%{frame_num}:x=10:y=10:fontsize=100:fontcolor=%DATECOL%:shadowcolor=0x00007f9f:shadowx=2:shadowy=2, drawtext=fontfile='hemi.ttf':text='%STATION%':x=25:y=%TEXTY%:fontsize=%T2_SIZE%:fontcolor=%TEXTCOL%:shadowcolor=0x00007f9f:shadowx=2:shadowy=2, drawtext=fontfile='hemi.ttf':text='%STATION_DESC%':x=320:y=%TEXTYY%:fontsize=20:fontcolor=%TEXTCOL%:shadowcolor=0x00007f9f:shadowx=2:shadowy=2" rem without time set TEXT_CMD=-vf "drawtext=fontfile='hemi.ttf':text='%STATION%':x=25:y=%TEXTY%:fontsize=%T2_SIZE%:fontcolor=%TEXTCOL%:shadowcolor=0x00007f9f:shadowx=2:shadowy=2,drawtext=fontfile='hemi.ttf':text='%STATION_DESC%':x=200:y=%TEXTYY%:fontsize=20:fontcolor=%TEXTCOL%:shadowcolor=0x00007f9f:shadowx=2:shadowy=2" rem set TEXT_CMD=

rem 43240 udp set OUTPUT_STREAM=-f mpegts -muxrate %TS%k -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="%STATION%" -metadata service_name="%STATION% %NAME%" -y "udp://%OUTPUT_IP%?pkt_size=43240&bitrate=%TSBITRATE%" set OUTPUT_STREAM=-f mpegts -muxrate %TS%k -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="%STATION%" -metadata service_name="%STATION% %NAME%" -y "udp://%OUTPUT_IP%?pkt_size=43240" rem 1326 udp - lower latency rem set OUTPUT_STREAM=-f mpegts -muxrate %TS%k -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="%STATION%" -metadata service_name="%STATION% %NAME%" -y "udp://%OUTPUT_IP%?pkt_size=1316"

rem TCP OUTPUT rem set OUTPUT_STREAM=-f mpegts -muxrate %TS%k -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="%STATION%" -metadata service_name="%STATION% %NAME%" -y "tcp://0.0.0.0:2244%?listen"


set VIDEO_DEVICE="vMix Video" set AUDIO_SOURCE="vMix Audio"

rem set VIDEO_DEVICE="OBS-Camera" rem set AUDIO_SOURCE="OBS-Audio"

set RESOLUTION=640x480 rem set RESOLUTION=730x410 rem set RESOLUTION=864x480 rem set RESOLUTION=768x480 set RESOLUTION=1280x720 rem set RESOLUTION=1920x1080

rem set RESCALE= rem set RESCALE=-vf crop=1440:1080,scale=640:480

set FPS=-r 25 rem set FPS=


set AUDIO_PARAMS=-af "highpass=f=250,lowpass=f=6000 " -acodec aac -aac_coder twoloop -aac_pns disable -ar %AUDIO_SAMPLE_RATE% -ac 1 rem set AUDIO_PARAMS=-acodec aac -aac_coder twoloop -aac_pns disable rem set AUDIO_PARAMS=-af "highpass=f=250, lowpass=f=4000" -acodec ac3 -ar 22050 -ac 1 rem set AUDIO_PARAMS=-af "highpass=f=250, lowpass=f=4000" -acodec mp2 -ar 22050 -ac 1 set AUDIO_PARAMS=-af highpass=f=250,lowpass=f=4000 -acodec aac -aac_coder twoloop -aac_pns disable -ar %AUDIO_SAMPLE_RATE% -ac 1

rem hq set VIDEO_CODEC=-pix_fmt yuv444p16le -vcodec hevc_nvenc -preset hq -profile:v main10 -cbr 1 -rc cbr_hq rem -forced-idr 1


rem BEST QUALITY set VIDEO_CODEC=-pix_fmt yuv444p16le -vcodec hevc_nvenc -preset slow -tune psnr -profile:v main10 -rc-lookahead 25 -spatial_aq 1 -temporal-aq 1 -vsync 0 -threads 4 -cbr 1 -rc cbr_hq -surfaces 4

set VIDEO_CODEC=-pix_fmt yuv420p -vcodec hevc_nvenc -preset slow -tune psnr -profile:v main -rc-lookahead 35 -spatial_aq 1 -cbr 1 -rc cbr_hq -surfaces 20 rem set VIDEO_CODEC=-pix_fmt yuv420p -vcodec hevc_nvenc -preset slow -profile:v main -rc-lookahead 35 -spatial_aq 1 -cbr 1 -rc cbr_hq -surfaces 20


rem VBR!!! rem set VIDEO_CODEC=-pix_fmt yuv420p -vcodec hevc_nvenc -preset slow -profile:v main -level 4 -rc-lookahead 25 -spatial_aq 1 -temporal-aq 1 -vsync 0 -threads 4 -2pass 1 -rc cbr_hq -surfaces 10 rem set VIDEO_CODEC=-pix_fmt yuv420p -vcodec hevc_nvenc -preset slow -profile:v main -tune psnr -rc-lookahead 25 -spatial_aq 1 -temporal-aq 1 -threads 4 -g 250 -rc cbr_hq -surfaces 10

rem set /a MIN_VIDEO_RATE=%TS_NO_AUDIO% * 20 / 100 rem set /a MAX_VIDEO_RATE=%TS_NO_AUDIO% * 75 / 100

rem BEST_QUALITY_SOFTWARE -require HAL9000 :D rem set VIDEO_CODEC=-pix_fmt yuv420p -vcodec libx265 -preset faster -profile:v main -rc-lookahead 15 -spatial_aq 1 -temporal-aq 1 -vsync 0 -threads 4 -rc cbr_hq -surfaces 4 rem set /a MIN_VIDEO_RATE=%TS_NO_AUDIO% * 20 / 100 rem set /a MAX_VIDEO_RATE=%TS_NO_AUDIO% * 90 / 100


rem set VIDEO_CODEC=-vcodec h264_qsv

rem HQ 264 rem set VIDEO_CODEC=-pix_fmt yuv420p -vcodec nvenc_h264 -preset medium -profile:v main -rc-lookahead 25 -spatial_aq 1 -temporal-aq 1 -vsync 0 -cbr 1 -threads 4 -rc cbr_hq -forced-idr 1


rem compatible with hardware decoders rem set VIDEO_CODEC=-pix_fmt yuv420p -vcodec hevc_nvenc -preset slow -profile:v main -rc-lookahead 15 -spatial_aq 1 -cbr 1 -rc cbr_hq -surfaces 4

rem set VIDEO_CODEC=-pix_fmt yuv420p -vcodec hevc_nvenc -preset slow -profile:v main -rc-lookahead 25 -spatial_aq 1 -cbr 1 -rc cbr_hq -surfaces 4


rem H264 rem set VIDEO_CODEC=-pix_fmt yuv420p -vcodec nvenc_h264 -preset medium -profile:v main -cbr 1 -rc cbr_hq -forced-idr 1


rem ffmpeg -f dshow -i video=%VIDEO_DEVICE% -rtbufsize 100k -f dshow -i audio=%AUDIO_SOURCE% -sample_rate %AUDIO_SAMPLE_RATE% -audio_buffer_size 100k %FILTERS% -s %RESOLUTION% -r %FPS% %VIDEO_CODEC% -b:v %VIDEO_RATE%k -minrate:v %VIDEO_RATE%k -maxrate:v %VIDEO_RATE%k -bufsize:v %BUFSIZE%k -ab %AUDIO_RATE%k %AUDIO_PARAMS% %TEXT_CMD% %OUTPUT_STREAM% rem ffmpeg -f dshow -i video=%VIDEO_DEVICE%:audio=%AUDIO_SOURCE% -sample_rate %AUDIO_SAMPLE_RATE% -audio_buffer_size 100k %FILTERS% -s %RESOLUTION% -r %FPS% %VIDEO_CODEC% -b:v %VIDEO_RATE%k -minrate:v %VIDEO_RATE%k -maxrate:v %VIDEO_RATE%k -bufsize:v %BUFSIZE%k -ab %AUDIO_RATE%k %AUDIO_PARAMS% %TEXT_CMD% %OUTPUT_STREAM%

ffmpeg -f dshow -i video=%VIDEO_DEVICE%:audio=%AUDIO_SOURCE% -sample_rate %AUDIO_SAMPLE_RATE% -audio_buffer_size 100k %FILTERS% -s %RESOLUTION% %FPS% %RESCALE% %VIDEO_CODEC% -b:v %VIDEO_RATE%k -minrate:v %MIN_VIDEO_RATE%k -maxrate:v %MAX_VIDEO_RATE%k -bufsize:v %BUFSIZE%k -ab %AUDIO_RATE%k %AUDIO_PARAMS% %TEXT_CMD% %OUTPUT_STREAM%