@echo off REM Run the Python script to shuffle the lines cd /d "E:\DVB Broadcast\System Files\python" python shuffle_lines.py REM Run the Python script to set the eit.xml start_time cd /d "E:\DVB Broadcast\DVB-S\EPG" python "epg4 - Viasat - 720x576.py" set video_quality=720:576 set channel_logo=720x576 set bitrate=4000k set minbitrate=4000k set maxbitrate=4000k REM Add shuffled_ to shuffle set shuffled=shuffled_ REM Run the FFmpeg command with shuffled entries ffmpeg ^ -stream_loop -1 -f concat -safe 0 -re -i "E:\DVB Broadcast\System Files\playlists\%shuffled%Channel_1_720x576.txt" -i "E:\DVB Broadcast\System Files\logo\720x576\rtl4_1998_720x576.png" -filter_complex "[0:v]scale=%video_quality%,format=yuv420p[base];[1:v]format=argb,colorchannelmixer=aa=0.8[ol];[base][ol]overlay=0:0[out1]" ^ -stream_loop -1 -f concat -safe 0 -re -i "E:\DVB Broadcast\System Files\playlists\%shuffled%Channel_2_720x576.txt" -i "E:\DVB Broadcast\System Files\logo\720x576\rtl5_720x576.png" -filter_complex "[2:v]scale=%video_quality%,format=yuv420p[base];[3:v]format=argb,colorchannelmixer=aa=0.8[ol];[base][ol]overlay=0:0[out2]" ^ -stream_loop -1 -f concat -safe 0 -re -i "E:\DVB Broadcast\System Files\playlists\%shuffled%Channel_3_720x576.txt" -i "E:\DVB Broadcast\System Files\logo\720x576\sbs6_720x576.png" -filter_complex "[4:v]scale=%video_quality%,format=yuv420p[base];[5:v]format=argb,colorchannelmixer=aa=0.9[ol];[base][ol]overlay=0:0[out3]" ^ -stream_loop -1 -f concat -safe 0 -re -i "E:\DVB Broadcast\System Files\playlists\%shuffled%Channel_6_720x576.txt" -i "E:\DVB Broadcast\System Files\logo\720x576\foxkids_720x576.png" -filter_complex "[6:v]scale=%video_quality%,format=yuv420p[base];[7:v]format=argb,colorchannelmixer=aa=0.8[ol];[base][ol]overlay=0:0[out4]" ^ -stream_loop -1 -f concat -safe 0 -re -i "E:\DVB Broadcast\System Files\playlists\%shuffled%Channel_7_720x576.txt" -i "E:\DVB Broadcast\System Files\logo\720x576\vt4 (color)_720x576.png" -filter_complex "[8:v]scale=%video_quality%,format=yuv420p[base];[9:v]format=argb,colorchannelmixer=aa=0.8[ol];[base][ol]overlay=0:0[out5]" ^ -stream_loop -1 -f concat -safe 0 -re -i "E:\DVB Broadcast\System Files\playlists\%shuffled%Channel_8_720x576.txt" -i "E:\DVB Broadcast\System Files\logo\720x576\hallmark_720x576.png" -filter_complex "[10:v]scale=%video_quality%,format=yuv420p[base];[11:v]format=argb,colorchannelmixer=aa=0.8[ol];[base][ol]overlay=0:0[out6]" ^ -stream_loop -1 -f concat -safe 0 -re -i "E:\DVB Broadcast\System Files\playlists\%shuffled%Channel_4_720x576.txt" -i "E:\DVB Broadcast\System Files\logo\720x576\canalplus_rood_720x576.png" -filter_complex "[12:v]scale=%video_quality%,format=yuv420p[base];[13:v]format=argb,colorchannelmixer=aa=0.8[ol];[base][ol]overlay=0:0[out7]" ^ -stream_loop -1 -f concat -safe 0 -re -i "E:\DVB Broadcast\System Files\playlists\%shuffled%Channel_5_720x576.txt" -i "E:\DVB Broadcast\System Files\logo\720x576\canalplus_blauw_720x576.png" -filter_complex "[14:v]scale=%video_quality%,format=yuv420p[base];[15:v]format=argb,colorchannelmixer=aa=0.8[ol];[base][ol]overlay=0:0[out8]" ^ -map "[out1]" ^ -map 0:a ^ -map "[out2]" ^ -map 2:a ^ -map "[out3]" ^ -map 4:a ^ -map "[out4]" ^ -map 6:a ^ -map "[out5]" ^ -map 8:a ^ -map "[out6]" ^ -map 10:a ^ -map "[out7]" ^ -map 12:a ^ -map "[out8]" ^ -map 14:a ^ -c:v:0 mpeg2video -s 720x576 -flags +ildct+ilme -sc_threshold 1000000000 -alternate_scan 1 -trellis 2 -top 1 -dc 10 -g 12 -bf 0 -b:v %bitrate% -minrate %minbitrate% -maxrate %maxbitrate% -bufsize 1.4M ^ -c:a:0 mp2 -strict -2 -b:a 128k -ar 48000 -ac 2 -metadata:s:a:1 language=DUT ^ -c:v:1 mpeg2video -s 720x576 -flags +ildct+ilme -sc_threshold 1000000000 -alternate_scan 1 -trellis 2 -top 1 -dc 10 -g 12 -bf 0 -b:v %bitrate% -minrate %minbitrate% -maxrate %maxbitrate% -bufsize 1.4M ^ -c:a:1 mp2 -strict -2 -b:a 128k -ar 48000 -ac 2 -metadata:s:a:1 language=DUT ^ -c:v:2 mpeg2video -s 720x576 -flags +ildct+ilme -sc_threshold 1000000000 -alternate_scan 1 -trellis 2 -top 1 -dc 10 -g 12 -bf 0 -b:v %bitrate% -minrate %minbitrate% -maxrate %maxbitrate% -bufsize 1.4M ^ -c:a:2 mp2 -strict -2 -b:a 128k -ar 48000 -ac 2 -metadata:s:a:1 language=DUT ^ -c:v:3 mpeg2video -s 720x576 -flags +ildct+ilme -sc_threshold 1000000000 -alternate_scan 1 -trellis 2 -top 1 -dc 10 -g 12 -bf 0 -b:v %bitrate% -minrate %minbitrate% -maxrate %maxbitrate% -bufsize 1.4M ^ -c:a:3 mp2 -strict -2 -b:a 128k -ar 48000 -ac 2 -metadata:s:a:1 language=DUT ^ -c:v:4 mpeg2video -s 720x576 -flags +ildct+ilme -sc_threshold 1000000000 -alternate_scan 1 -trellis 2 -top 1 -dc 10 -g 12 -bf 0 -b:v %bitrate% -minrate %minbitrate% -maxrate %maxbitrate% -bufsize 1.4M ^ -c:a:4 mp2 -strict -2 -b:a 128k -ar 48000 -ac 2 -metadata:s:a:1 language=DUT ^ -c:v:5 mpeg2video -s 720x576 -flags +ildct+ilme -sc_threshold 1000000000 -alternate_scan 1 -trellis 2 -top 1 -dc 10 -g 12 -bf 0 -b:v %bitrate% -minrate %minbitrate% -maxrate %maxbitrate% -bufsize 1.4M ^ -c:a:5 mp2 -strict -2 -b:a 128k -ar 48000 -ac 2 -metadata:s:a:1 language=DUT ^ -c:v:6 mpeg2video -s 720x576 -flags +ildct+ilme -sc_threshold 1000000000 -alternate_scan 1 -trellis 2 -top 1 -dc 10 -g 12 -bf 0 -b:v %bitrate% -minrate %minbitrate% -maxrate %maxbitrate% -bufsize 1.4M ^ -c:a:6 mp2 -strict -2 -b:a 128k -ar 48000 -ac 2 -metadata:s:a:1 language=DUT ^ -c:v:7 mpeg2video -s 720x576 -flags +ildct+ilme -sc_threshold 1000000000 -alternate_scan 1 -trellis 2 -top 1 -dc 10 -g 12 -bf 0 -b:v %bitrate% -minrate %minbitrate% -maxrate %maxbitrate% -bufsize 1.4M ^ -c:a:7 mp2 -strict -2 -b:a 128k -ar 48000 -ac 2 -metadata:s:a:1 language=DUT ^ -program title="RTL4":program_num=0x0001:st=0:st=1 ^ -program title="RTL5":program_num=0x0002:st=2:st=3 ^ -program title="SBS6":program_num=0x0003:st=4:st=5 ^ -program title="FoxKids":program_num=0x0004:st=6:st=7 ^ -program title="VT4":program_num=0x0005:st=8:st=9 ^ -program title="Hallmark":program_num=0x0006:st=10:st=11 ^ -program title="C+Rood":program_num=0x0007:st=12:st=13 ^ -program title="C+Blauw":program_num=0x0008:st=14:st=15 ^ -muxrate 38014700 ^ -f mpegts -y - | ^ tsp -v -b 38014700 ^ -I file ^ -P filter --max-payload-size 0 --negate -s ^ -P scrambler Hallmark --ecmg 192.168.0.4:8888 --super-cas-id 0x06020000 --channel-id 0xFFFC --pid-ecm 0x1EC1 --cp-duration 15 --access-criteria 0002FFFC --stream-id 0x0006 --private-data 4E656F566973696F6E73 ^ -P scrambler C+Rood --ecmg 192.168.0.4:8888 --super-cas-id 0x06020000 --channel-id 0xFFFA --pid-ecm 0x1EC7 --cp-duration 15 --access-criteria 0002FFFA --stream-id 0x0007 --private-data 4E656F566973696F6E73 ^ -P scrambler C+Blauw --ecmg 192.168.0.4:8888 --super-cas-id 0x06020000 --channel-id 0xFFFB --pid-ecm 0x1EC8 --cp-duration 15 --access-criteria 0002FFFB --stream-id 0x0008 --private-data 4E656F566973696F6E73 ^ -P scrambler FoxKids --ecmg 192.168.0.4:8888 --super-cas-id 0x06020000 --channel-id 0xFFF5 --pid-ecm 0x1EC2 --cp-duration 15 --access-criteria 0002FFF5 --stream-id 0x0004 --private-data 4E656F566973696F6E73 ^ -P scrambler VT4 --ecmg 192.168.0.4:8888 --super-cas-id 0x06020000 --channel-id 0xFFFE --pid-ecm 0x1EC3 --cp-duration 15 --access-criteria 0004FFFE --stream-id 0x0005 --private-data 4E656F566973696F6E73 ^ -P scrambler RTL4 --ecmg 192.168.0.4:8888 --super-cas-id 0x06020000 --channel-id 0xFFF4 --pid-ecm 0x1EC4 --cp-duration 15 --access-criteria 0004FFF4 --stream-id 0x0001 --private-data 4E656F566973696F6E73 ^ -P scrambler RTL5 --ecmg 192.168.0.4:8888 --super-cas-id 0x06020000 --channel-id 0xFFF3 --pid-ecm 0x1EC5 --cp-duration 15 --access-criteria 0004FFF3 --stream-id 0x0002 --private-data 4E656F566973696F6E73 ^ -P scrambler SBS6 --ecmg 192.168.0.4:8888 --super-cas-id 0x06020000 --channel-id 0xFFF2 --pid-ecm 0x1EC6 --cp-duration 15 --access-criteria 0004FFF2 --stream-id 0x0003 --private-data 4E656F566973696F6E73 ^ -P cat -c -a 0x0602/0x11F2 ^ -P datainject -r -s localhost:9999 -b 50000 -p 0x11F2 ^ -P datainject -r -s localhost:32000 -b 50000 -p 0x14 ^ -P svrename -n "RTL4" -p "Multichoice" RTL4 ^ -P svrename -n "RTL5" -p "Multichoice" RTL5 ^ -P svrename -n "SBS6" -p "Multichoice" SBS6 ^ -P svrename -n "Fox Kids" -p "Multichoice" FoxKids ^ -P svrename -n "VT4" -p "Multichoice" VT4 ^ -P svrename -n "Hallmark" -p "Multichoice" Hallmark ^ -P svrename -n "C+Rood" -p "Multichoice" C+Rood ^ -P svrename -n "C+Blauw" -p "Multichoice" C+Blauw ^ -P eitinject -f "E:\DVB Broadcast\DVB-S\EPG\eit.xml" ^ -P nit --create --build-service-list-descriptors --network-id 0xFF01 ^ -P analyze -i 30 -o spts.txt ^ -O dektec -d 1 --modulation DVB-S-QPSK -f 1236000000 --convolutional-rate 3/4 --symbol-rate 27500000 --stuffing REM Clean up the temporary shuffled file del E:\DVB Broadcast\System Files\playlists\shuffled_Channel_1_720x576.txt del E:\DVB Broadcast\System Files\playlists\shuffled_Channel_2_720x576.txt del E:\DVB Broadcast\System Files\playlists\shuffled_Channel_3_720x576.txt del E:\DVB Broadcast\System Files\playlists\shuffled_Channel_4_720x576.txt del E:\DVB Broadcast\System Files\playlists\shuffled_Channel_5_720x576.txt del E:\DVB Broadcast\System Files\playlists\shuffled_Channel_6_720x576.txt del E:\DVB Broadcast\System Files\playlists\shuffled_Channel_7_720x576.txt del E:\DVB Broadcast\System Files\playlists\shuffled_Channel_8_720x576.txt pause REM -P datainject -r -s 192.168.0.18:9999 -b 50000 -p 0x11F2 ^ REM -P scrambler SkyOne --ecmg 192.168.0.40:8888 --dvb-csa2 --super-cas-id 0x0b000000 --channel-id 0x6010 --pid-ecm 0x0031 --cp-duration 10 --access-criteria 1000081F --stream-id 0x1001 --private-data 4E656F566973696F6E73 ^ REM -P scrambler SkyPremiere --ecmg 192.168.0.40:8888 --dvb-csa2 --super-cas-id 0x0b000000 --channel-id 0x6010 --pid-ecm 0x0032 --cp-duration 10 --access-criteria 1000081F --stream-id 0x1002 --private-data 4E656F566973696F6E73 ^ REM -P scrambler SkyPremiere2 --ecmg 192.168.0.40:8888 --dvb-csa2 --super-cas-id 0x0b000000 --channel-id 0x6010 --pid-ecm 0x0033 --cp-duration 10 --access-criteria 1000081F --stream-id 0x1003 --private-data 4E656F566973696F6E73 ^ REM -P scrambler SkyPremiere3 --ecmg 192.168.0.40:8888 --dvb-csa2 --super-cas-id 0x0b000000 --channel-id 0x6010 --pid-ecm 0x0034 --cp-duration 10 --access-criteria 1000081F --stream-id 0x1004 --private-data 4E656F566973696F6E73 ^ REM -P scrambler SkyMovieMax --ecmg 192.168.0.40:8888 --dvb-csa2 --super-cas-id 0x0b000000 --channel-id 0x6010 --pid-ecm 0x0035 --cp-duration 10 --access-criteria 1000081F --stream-id 0x1005 --private-data 4E656F566973696F6E73 ^ REM -P scrambler Scifi --ecmg 192.168.0.40:8888 --dvb-csa2 --super-cas-id 0x0b000000 --channel-id 0x6010 --pid-ecm 0x0036 --cp-duration 10 --access-criteria 1000081F --stream-id 0x1006 --private-data 4E656F566973696F6E73 ^ REM -P scrambler ParamountComedy --ecmg 192.168.0.40:8888 --dvb-csa2 --super-cas-id 0x0b000000 --channel-id 0x6010 --pid-ecm 0x0038 --cp-duration 10 --access-criteria 1000081F --stream-id 0x1008 --private-data 4E656F566973696F6E73 ^ REM -P scrambler NickAtNite --ecmg 192.168.0.40:8888 --dvb-csa2 --super-cas-id 0x0b000000 --channel-id 0x6010 --pid-ecm 0x0039 --cp-duration 10 --access-criteria 1000081F --stream-id 0x1009 --private-data 4E656F566973696F6E73 ^ REM -P scrambler DisneyChannel --ecmg 192.168.0.40:8888 --dvb-csa2 --super-cas-id 0x0b000000 --channel-id 0x6010 --pid-ecm 0x0040 --cp-duration 10 --access-criteria 1000081F --stream-id 0x1010 --private-data 4E656F566973696F6E73 ^ REM -P scrambler FoxKids --ecmg 192.168.0.40:8888 --dvb-csa2 --super-cas-id 0x0b000000 --channel-id 0x6010 --pid-ecm 0x0041 --cp-duration 10 --access-criteria 1000081F --stream-id 0x1011 --private-data 4E656F566973696F6E73 ^ REM -P cat -c -a 0x0B00/0x11F2 ^ REM -P filter --max-payload-size 0 --negate -s ^ REM -P datainject -r -s localhost:32000 -b 50000 -p 0x14 ^