#! /bin/bash PATHRPI="/home/pi/rpidatv/bin" PATHSCRIPT="/home/pi/rpidatv/scripts" CONFIGFILE=$PATHSCRIPT"/rpidatvconfig.txt" get_config_var() { lua - "$1" "$2" </dev/null 2>/dev/null sudo killall h264 >/dev/null 2>/dev/null sudo killall rpidatv >/dev/null 2>/dev/null sudo killall cat >/dev/null 2>/dev/null sudo killall hello_encode.bin >/dev/null 2>/dev/null sudo killall h264yuv >/dev/null 2>/dev/null sudo killall raspivid >/dev/null 2>/dev/null sudo killall express_server >/dev/null 2>/dev/null #---- Launch FBCP ---- #sudo killall fbcp #fbcp & # --------------- #sudo killall uv4l detect_audio() { devicea="/proc/asound/card1" if [ -e "$devicea" ]; then AUDIO_CARD=1 else AUDIO_CARD=0 fi if [ "$AUDIO_CARD" == 1 ]; then echo Audio Card present else echo Audio Card Absent fi } MODE_INPUT=$(get_config_var modeinput $CONFIGFILE) TSVIDEOFILE=$(get_config_var tsvideofile $CONFIGFILE) PATERNFILE=$(get_config_var paternfile $CONFIGFILE) UDPINADDR=$(get_config_var udpinaddr $CONFIGFILE) CALL=$(get_config_var call $CONFIGFILE) CHANNEL=$CALL"-rpidatv" FREQ_OUTPUT=$(get_config_var freqoutput $CONFIGFILE) BATC_OUTPUT=$(get_config_var batcoutput $CONFIGFILE) OUTPUT_BATC="-f flv rtmp://fms.batc.tv/live/"$BATC_OUTPUT"/"$BATC_OUTPUT MODE_OUTPUT=$(get_config_var modeoutput $CONFIGFILE) SYMBOLRATEK=$(get_config_var symbolrate $CONFIGFILE) GAIN=$(get_config_var rfpower $CONFIGFILE) PIDVIDEO=$(get_config_var pidvideo $CONFIGFILE) PIDPMT=$(get_config_var pidpmt $CONFIGFILE) SERVICEID=$(get_config_var serviceid $CONFIGFILE) #v4l2-ctl --overlay=0 PIN_I=12 PIN_Q=13 detect_audio let SYMBOLRATE=SYMBOLRATEK*1000 FEC=$(get_config_var fec $CONFIGFILE) let FECNUM=FEC let FECDEN=FEC+1 case "$MODE_OUTPUT" in IQ) FREQUENCY_OUT=0 OUTPUT=videots MODE=IQ #GAIN=0 ;; QPSKRF) FREQUENCY_OUT=$FREQ_OUTPUT OUTPUT=videots MODE=RF ;; BATC) #MODE_INPUT=BATC OUTPUT=$OUTPUT_BATC ;; DIGITHIN) FREQUENCY_OUT=0 OUTPUT=videots DIGITHIN_MODE=1 MODE=DIGITHIN #GAIN=0 ;; DTX1) MODE=PARALLEL FREQUENCY_OUT=2 OUTPUT=videots DIGITHIN_MODE=0 #GAIN=0 ;; DATVEXPRESS) sudo nice -n -30 ./express_server & FREQUENCY_OUT=$FREQ_OUTPUT let FREQ_OUTPUTHZ=FREQ_OUTPUT*1000000 OUTPUT="udp://127.0.0.1:1314?pkt_size=1316&buffer_size=1316" echo "set freq "$FREQ_OUTPUTHZ >> /tmp/expctrl echo "set fec "$FECNUM"/"$FECDEN >> /tmp/expctrl echo "set srate "$SYMBOLRATE >> /tmp/expctrl echo "set level "$GAIN >> /tmp/expctrl ;; esac #CALL="F5OEO" #CHANNEL="rpidatv" #SYMBOLRATE=100000 #FECNUM=7 #FECDEN=8 VIDEO_FPS=15 #0=Mode IQ, else QPSK directly modulated # TODO .......... if(mode #FREQUENCY_OUT=0 # MODEVIDEO : FILETS,PATERN,PATERNAUDIO,CAMH264,CAMH264AUDIO,CAMMPEG2,IPTS,TESTMODE,CARRIER,BATC #TSVIDEOFILE=/home/pi/UglyDATVRelease/mire250.TS #PATERNFILE=/home/pi/mire.jpg OUTPUT_IP="udp://230.0.0.1:10000?pkt_size=1316&buffer_size=1316" OUTPUT_QPSK="videots" # ************************ OUTPUT MODE DEFINITION ****************** #OUTPUT=$OUTPUT_IP #OUTPUT=$OUTPUT_QPSK MODE_DEBUG=quiet #MODE_DEBUG=debug #BITRATE AVEC 5% # BITRATE TS THEORIC let BITRATE_TS=SYMBOLRATE*2*188*FECNUM/204/FECDEN #let BITRATE_TS=SYMBOLRATE*2*188*FECNUM/204/FECDEN+1000 #let BITRATE_VIDEO=(BITRATE_TS*7)/10-72000 audio let BITRATE_VIDEO=(BITRATE_TS*7)/10-72000 #let DELAY=BITRATE_VIDEO*10 #let DELAY=(BITRATE_VIDEO*8)/10 let DELAY=(BITRATE_VIDEO*8)/10 let SYMBOLRATE_K=SYMBOLRATE/1000 if [ "$BITRATE_VIDEO" -lt 150000 ]; then VIDEO_WIDTH=352 VIDEO_HEIGHT=288 else VIDEO_WIDTH=720 VIDEO_HEIGHT=576 fi if [ "$BITRATE_VIDEO" -lt 150000 ]; then VIDEO_FPS=15 else VIDEO_FPS=25 fi sudo rm videoes sudo rm videots sudo rm netfifo mkfifo videoes mkfifo videots mkfifo netfifo echo "************************************" echo Bitrate TS $BITRATE_TS echo Bitrate Video $BITRATE_VIDEO echo Size $VIDEO_WIDTH x $VIDEO_HEIGHT at $VIDEO_FPS fps echo "************************************" echo "ModeINPUT="$MODE_INPUT case "$MODE_INPUT" in "CAMH264") if [ "$AUDIO_CARD" == 0 ]; then # ******************************* VIDEO ONLY ************************************ #sudo nice -n -30 $PATHRPI"/h264" videoes $BITRATE_VIDEO $VIDEO_WIDTH $VIDEO_HEIGHT & sudo modprobe bcm2835-v4l2 VIDEO_WIDTH=720 VIDEO_HEIGHT=576 #OVERLAY ENABLE ! BE SURE NOT TO BE ON RF MODE !!!! #v4l2-ctl --overlay=1 v4l2-ctl --set-fmt-video=width=$VIDEO_WIDTH,height=$VIDEO_HEIGHT,pixelformat=4 #SET FRAMERATE -- OK -- v4l2-ctl -p $VIDEO_FPS v4l2-ctl --set-ctrl video_bitrate=$BITRATE_VIDEO v4l2-ctl --set-ctrl repeat_sequence_header=1 v4l2-ctl --set-ctrl h264_i_frame_period=25 sleep 1 #sudo nice -n -30 cat /dev/video0 > videoes & ########### TEST UV4L ############################ #uv4l --driver raspicam --auto-video_nr --encoding h264 --width $VIDEO_WIDTH --height $VIDEO_HEIGHT --framerate 25 --bitrate $BITRATE_VIDEO --inline-headers --text-overlay --text-filename /home/pi/rpidatv/text.json #cat /dev/video0 > videoes & #./tsudpsend videots 230.0.0.2 10000 $BITRATE_TS & #$PATHRPI"/mnc" -l -p 10000 230.0.0.2 > netfifo & sudo $PATHRPI"/rpidatv" -i videots -s $SYMBOLRATE_K -c $FECNUM"/"$FECDEN -f $FREQUENCY_OUT -p $GAIN -m $MODE -x $PIN_I -y $PIN_Q & sudo nice -n -30 $PATHRPI"/ffmpeg" -loglevel $MODE_DEBUG -analyzeduration 100 -probesize 2048 -ac 1 -thread_queue_size 512 -f lavfi -i "sine=frequency=500:beep_factor=4:sample_rate=48000:duration=3600" -r $VIDEO_FPS -ss 0:0:4 -fpsprobesize 0 -analyzeduration 0 -thread_queue_size 512 -f h264 -i /dev/video0 -vcodec copy -minrate:v $BITRATE_VIDEO -maxrate:v $BITRATE_VIDEO -blocksize 1880 -acodec mp2 -ab 64K -ar 48k -ac 1 -strict experimental -flags:a -global_header -f mpegts -blocksize 1880 -mpegts_original_network_id 1 -mpegts_transport_stream_id 1 -mpegts_service_id $SERVICEID -mpegts_pmt_start_pid $PIDPMT -mpegts_start_pid $PIDVIDEO -metadata service_provider=$CALL -metadata service_name=$CHANNEL -bufsize 1880 -muxrate $BITRATE_TS -y $OUTPUT & #======================================== OK SANS AUDIO ============================================================ #sudo nice -n -30 $PATHRPI"/ffmpeg" -loglevel $MODE_DEBUG -analyzeduration 0 -r $VIDEO_FPS -fpsprobesize 0 -analyzeduration 0 -ss 0:0:4 -f h264 -r $VIDEO_FPS -i /dev/video0 -vcodec copy -minrate:v $BITRATE_VIDEO -maxrate:v $BITRATE_VIDEO -bufsize 1K -blocksize 188 -strict experimental -f mpegts -blocksize 188 -mpegts_original_network_id 1 -mpegts_transport_stream_id 1 -mpegts_service_id $SERVICEID -mpegts_pmt_start_pid $PIDPMT -mpegts_start_pid $PIDVIDEO -metadata service_provider=$CALL -metadata service_name=$CHANNEL -bufsize 188 -muxrate $BITRATE_TS -y $OUTPUT & #sudo nice -n -30 $PATHRPI"/ffmpeg" -loglevel $MODE_DEBUG -analyzeduration 100 -r 25 -async 25 -fpsprobesize 0 -analyzeduration 0 -thread_queue_size 512 -i videoes -f h264 -r $VIDEO_FPS -vcodec copy -minrate:v $BITRATE_VIDEO -maxrate:v $BITRATE_VIDEO -blocksize 1880 -strict experimental -f mpegts -blocksize 1880 -mpegts_original_network_id 1 -mpegts_transport_stream_id 1 -mpegts_service_id $SERVICEID -mpegts_pmt_start_pid $PIDPMT -mpegts_start_pid $PIDVIDEO -metadata service_provider=$CALL -metadata service_name=$CHANNEL -bufsize 1880 -muxrate $BITRATE_TS -y $OUTPUT & else echo cam with audio sudo modprobe bcm2835-v4l2 #v4l2-ctl --overlay=1 v4l2-ctl --set-fmt-video=width=$VIDEO_WIDTH,height=$VIDEO_HEIGHT,pixelformat=4 v4l2-ctl -p $VIDEO_FPS v4l2-ctl --set-ctrl video_bitrate=$BITRATE_VIDEO v4l2-ctl --set-ctrl repeat_sequence_header=1 v4l2-ctl --set-ctrl h264_i_frame_period=25 sleep 1 #sudo nice -n -30 cat /dev/video0 > videoes & sudo $PATHRPI"/rpidatv" -i videots -s $SYMBOLRATE_K -c $FECNUM"/"$FECDEN -f $FREQUENCY_OUT -p $GAIN -m $MODE -x $PIN_I -y $PIN_Q & sudo nice -n -30 arecord -f S16_LE -r 48000 -c 1 -M -D hw:1 | sudo nice -n -30 $PATHRPI"/ffmpeg" -loglevel $MODE_DEBUG -itsoffset -00:00:0.8 -analyzeduration 0 -probesize 2048 -fpsprobesize 0 -ac 1 -thread_queue_size 512 -i - -analyzeduration 0 -r $VIDEO_FPS -ss 0:0:4 -fpsprobesize 0 -f h264 -i /dev/video0 -vcodec copy -blocksize 1880 -strict experimental -async 2 -acodec mp2 -ab 64K -ar 48k -ac 1 -flags -global_header -f mpegts -blocksize 1880 -mpegts_original_network_id 1 -mpegts_transport_stream_id 1 -mpegts_service_id $SERVICEID -mpegts_pmt_start_pid $PIDPMT -mpegts_start_pid $PIDVIDEO -metadata service_provider=$CALL -metadata service_name=$CHANNEL -bufsize 1880 -muxrate $BITRATE_TS -y $OUTPUT & fi ;; # ******************************* VIDEO ONLY MPEG-2 ************************************ "CAMMPEG-2") VIDEO_WIDTH=352 VIDEO_HEIGHT=288 VIDEO_FPS=25 echo MPEG-2 if [ "$AUDIO_CARD" == 1 ]; then #-------------- WITHH SOUNDCARD ------------ sudo modprobe bcm2835-v4l2 v4l2-ctl --set-fmt-video=width=$VIDEO_WIDTH,height=$VIDEO_HEIGHT,pixelformat=0 v4l2-ctl -p $VIDEO_FPS #v4l2-ctl --overlay=1 let DELAY=(BITRATE_VIDEO*8)/10 sleep 1 sudo $PATHRPI"/rpidatv" -i videots -s $SYMBOLRATE_K -c $FECNUM"/"$FECDEN -f $FREQUENCY_OUT -p $GAIN -m $MODE -x $PIN_I -y $PIN_Q & sudo nice -n -30 arecord -f S16_LE -r 48000 -c 1 -M -D hw:1 |sudo nice -n -30 $PATHRPI"/ffmpeg" -loglevel $MODE_DEBUG -itsoffset -00:00:0.8 -analyzeduration 0 -probesize 2048 -fpsprobesize 0 -ac 1 -thread_queue_size 512 -i - -f v4l2 -framerate $VIDEO_FPS -video_size "$VIDEO_WIDTH"x"$VIDEO_HEIGHT" -i /dev/video0 -fflags nobuffer -vcodec mpeg2video -s "$VIDEO_WIDTH"x"$VIDEO_HEIGHT" -b:v $BITRATE_VIDEO -minrate:v $BITRATE_VIDEO -maxrate:v $BITRATE_VIDEO -f mpegts -blocksize 1880 -strict experimental -acodec mp2 -ab 64K -ar 48k -ac 1 -mpegts_original_network_id 1 -mpegts_transport_stream_id 1 -mpegts_service_id $SERVICEID -mpegts_pmt_start_pid $PIDPMT -mpegts_start_pid $PIDVIDEO -metadata service_provider=$CALL -metadata service_name=$CHANNEL -muxrate $BITRATE_TS -y $OUTPUT & else #---------------- WITH AUDIO TONE ------------- #buffer -s 1880 -b 100 < videots >netfifo & sudo modprobe bcm2835-v4l2 v4l2-ctl --set-fmt-video=width=$VIDEO_WIDTH,height=$VIDEO_HEIGHT,pixelformat=0 v4l2-ctl -p $VIDEO_FPS #v4l2-ctl --overlay=1 sleep 1 #echo ezcap #v4l2-ctl -d /dev/video1 -i 1 -s 9 --set-fmt-video=width=720,height=576,pixelformat=0 #v4l2-ctl -d /dev/video1 --set-parm=15 sudo $PATHRPI"/rpidatv" -i videots -s $SYMBOLRATE_K -c $FECNUM"/"$FECDEN -f $FREQUENCY_OUT -p $GAIN -m $MODE -x $PIN_I -y $PIN_Q & sudo $PATHRPI"/ffmpeg" -loglevel $MODE_DEBUG -itsoffset -00:00:0.2 -analyzeduration 0 -probesize 2048 -fpsprobesize 0 -re -ac 1 -f lavfi -thread_queue_size 512 -i "sine=frequency=500:beep_factor=4:sample_rate=48000:duration=3600" -f v4l2 -framerate $VIDEO_FPS -video_size "$VIDEO_WIDTH"x"$VIDEO_HEIGHT" -i /dev/video0 -fflags nobuffer -vcodec mpeg2video -s "$VIDEO_WIDTH"x"$VIDEO_HEIGHT" -b:v $BITRATE_VIDEO -minrate:v $BITRATE_VIDEO -maxrate:v $BITRATE_VIDEO -f mpegts -blocksize 1880 -strict experimental -acodec mp2 -ab 64K -ar 48k -ac 1 -mpegts_original_network_id 1 -mpegts_transport_stream_id 1 -mpegts_service_id $SERVICEID -mpegts_pmt_start_pid $PIDPMT -mpegts_start_pid $PIDVIDEO -metadata service_provider=$CALL -metadata service_name=$CHANNEL -muxrate $BITRATE_TS -y $OUTPUT & fi ;; # ffmpeg -y -f image2 -r 1/5 -i img%03d.jpg -pix_fmt yuv420p -r 25 output.mp4 # ******************************* VIDEO ONLY PATERN ************************************ "PATERNAUDIO") VIDEO_WIDTH=720 VIDEO_HEIGHT=576 FPS=0.5 #BITRATE_TS=1700000 #PATERNFILE=./mire.jpg # $PATHRPI"/ffmpeg" -loglevel $MODE_DEBUG -f image2 -framerate $FPS -s 720x576 -loop 1 -i ./mire720.jpg -r 1/1000 -vcodec mpeg2video -r $FPS -b:v $BITRATE_VIDEO -minrate:v $BITRATE_VIDEO -maxrate:v $BITRATE_VIDEO -t 0:0:1 -y mire.mpg #buffer -s 188 -m 188000 < videots >netfifo & sudo $PATHRPI"/rpidatv" -i videots -s $SYMBOLRATE_K -c $FECNUM"/"$FECDEN -f $FREQUENCY_OUT -p $GAIN -m $MODE -x $PIN_I -y $PIN_Q & sudo nice -n -30 $PATHRPI"/ffmpeg" -loglevel $MODE_DEBUG -probesize 2048 -itsoffset -00:00:0.2 -ac 1 -f lavfi -thread_queue_size 512 -re -i "sine=frequency=300:beep_factor=4:sample_rate=48000:duration=3600" -re -fflags flush_packets -f image2 -r $FPS -video_size "$VIDEO_WIDTH"x"$VIDEO_HEIGHT" -loop 1 -i $PATERNFILE -vf scale="$VIDEO_WIDTH":"$VIDEO_HEIGHT" -vcodec mpeg2video -r $FPS -s "$VIDEO_WIDTH"x"$VIDEO_HEIGHT" -b:v $BITRATE_VIDEO -minrate:v $BITRATE_VIDEO -maxrate:v $BITRATE_VIDEO -strict experimental -acodec mp2 -ab 64K -ar 48k -ac 1 -f mpegts -mpegts_original_network_id 1 -mpegts_transport_stream_id 1 -mpegts_service_id 100 -mpegts_pmt_start_pid $PIDPMT -mpegts_start_pid $PIDVIDEO -metadata service_provider=$CALL -metadata service_name=$CHANNEL -muxrate $BITRATE_TS -y $OUTPUT & #mkfifo mireloop.ts #./tsloop mire.ts > mireloop.ts & #./tspcrrestamp mireloop.ts $BITRATE_TS > videots & #sudo nice -n -30 arecord -f S16_LE -r 48000 -c 1 -M -D hw:1 |sudo nice -n -30 $PATHRPI"/ffmpeg" -loglevel $MODE_DEBUG -itsoffset -00:00:0.2 -analyzeduration 0 -probesize 2048 -fpsprobesize 0 -ac 1 -fflags nobuffer -i - -f image2 -framerate $FPS -video_size "$VIDEO_WIDTH"x"$VIDEO_HEIGHT" -i $PATERNFILE -vf scale=352:288 -r 15 -vcodec mpeg2video -s "$VIDEO_WIDTH"x"$VIDEO_HEIGHT" -b:v $BITRATE_VIDEO -minrate:v $BITRATE_VIDEO -maxrate:v $BITRATE_VIDEO -f mpegts -strict experimental -async 2 -acodec mp2 -ab 64K -ar 48k -ac 1 -mpegts_original_network_id 1 -mpegts_transport_stream_id 1 -mpegts_service_id $SERVICEID -mpegts_pmt_start_pid $PIDPMT -mpegts_start_pid $PIDVIDEO -metadata service_provider=$CALL -metadata service_name=$CHANNEL -muxrate $BITRATE_TS -y $OUTPUT & #sudo nice -n -30 $PATHRPI"/ffmpeg" -loglevel $MODE_DEBUG -max_delay 0 -fflags nobuffer -i $PATERNFILE -vf scale=352:288 -r 15 -vcodec mpeg2video -s 352x288 -b:v $BITRATE_VIDEO -minrate:v $BITRATE_VIDEO -maxrate:v $BITRATE_VIDEO -f mpegts -max_delay $DELAY -blocksize 1504 -f mpegts -max_delay $DELAY -blocksize 1504 -mpegts_original_network_id 1 -mpegts_transport_stream_id 1 -mpegts_service_id $SERVICEID -mpegts_pmt_start_pid $PIDPMT -mpegts_start_pid $PIDVIDEO -metadata service_provider=$CALL -metadata service_name=$CHANNEL -bufsize 1880 -muxrate $BITRATE_TS -y $OUTPUT & ;; # ******************************* VIDEO ONLY PATERN ************************************ "PATERNH264") sudo nice -n -30 $PATHRPI"/ffmpeg" -loglevel $MODE_DEBUG -i $PATERNFILE -vf scale=352:288 -pix_fmt yuv420p -y patern.yuv $PATHRPI"/h264yuv" videoes patern.yuv & #sudo sudo $PATHRPI"/rpidatv" videots $SYMBOLRATE_K $FECNUM 0 $FREQUENCY_OUT $GAIN $DIGITHIN_MODE & sudo $PATHRPI"/rpidatv" -i videots -s $SYMBOLRATE_K -c $FECNUM"/"$FECDEN -f $FREQUENCY_OUT -p $GAIN -m $MODE -x $PIN_I -y $PIN_Q & sudo nice -n -30 $PATHRPI"/ffmpeg" -loglevel $MODE_DEBUG -analyzeduration 0 -probesize 2048 -r 25 -async 25 -fpsprobesize 0 -i videoes -max_delay 0 -fflags nobuffer -f h264 -r $VIDEO_FPS -vcodec copy -blocksize 1504 -f mpegts -max_delay $DELAY -blocksize 1504 -mpegts_original_network_id 1 -mpegts_transport_stream_id 1 -mpegts_service_id $SERVICEID -mpegts_pmt_start_pid $PIDPMT -mpegts_start_pid $PIDVIDEO -metadata service_provider=$CALL -metadata service_name=$CHANNEL -bufsize 1880 -muxrate $BITRATE_TS -y $OUTPUT & ;; # ******************************* VIDEO/AUDIO PATERN ************************************ "OLDPATERNAUDIOH264") $PATHRPI"/ffmpeg" -loglevel $MODE_DEBUG -i $PATERNFILE -vf scale=1440:720 -pix_fmt yuv420p -y patern.yuv $PATHRPI"/h264yuv" videoes patern.yuv 1440 720 $BITRATE_VIDEO 1 & sudo $PATHRPI"/rpidatv" -i videots -s $SYMBOLRATE_K -c $FECNUM"/"$FECDEN -f $FREQUENCY_OUT -p $GAIN -m $MODE & sudo nice -n -30 $PATHRPI"/ffmpeg" -loglevel $MODE_DEBUG -probesize 2048 -ac 1 -f lavfi -thread_queue_size 512 -i "sine=frequency=500:beep_factor=4:sample_rate=48000:duration=3600" -f h264 -r 1 -analyzeduration 0 -thread_queue_size 512 -i videoes -f h264 -r 1 -vcodec copy -strict experimental -acodec mp2 -ab 64K -ar 48k -ac 1 -flags -global_header -f mpegts -blocksize 1504 -mpegts_original_network_id 1 -mpegts_transport_stream_id 1 -mpegts_service_id 100 -mpegts_pmt_start_pid $PIDPMT -mpegts_start_pid $PIDVIDEO -metadata service_provider=$CALL -metadata service_name=$CHANNEL -muxrate $BITRATE_TS -y $OUTPUT & ;; # *********************************** TRANSPORT STREAM INPUT THROUGH IP ****************************************** "IPTSIN") #sudo $PATHRPI"/rpidatv" videots $SYMBOLRATE_K $FECNUM 0 $FREQUENCY_OUT $GAIN $DIGITHIN_MODE & sudo $PATHRPI"/rpidatv" -i videots -s $SYMBOLRATE_K -c $FECNUM"/"$FECDEN -f $FREQUENCY_OUT -p $GAIN -m $MODE -x $PIN_I -y $PIN_Q & PORT=10000 $PATHRPI"/mnc" -l -i eth0 -p $PORT $UDPINADDR > videots & ;; # *********************************** TRANSPORT STREAM INPUT FILE ****************************************** "FILETS") sudo $PATHRPI"/rpidatv" -i $TSVIDEOFILE -l -s $SYMBOLRATE_K -c $FECNUM"/"$FECDEN -f $FREQUENCY_OUT -p $GAIN -m $MODE -x $PIN_I -y $PIN_Q & ;; # *********************************** CARRIER ****************************************** "CARRIER") echo ====================== CARRIER ========================== sudo $PATHRPI"/rpidatv" -i videots -s $SYMBOLRATE_K -c $FECNUM"/"$FECDEN -f $FREQUENCY_OUT -p $GAIN -m $MODE -x $PIN_I -y $PIN_Q & ;; # *********************************** TESTMODE ****************************************** "TESTMODE") sudo $PATHRPI"/rpidatv" -i videots -s $SYMBOLRATE_K -c $FECNUM"/"$FECDEN -f $FREQUENCY_OUT -p $GAIN -m $MODE -x $PIN_I -y $PIN_Q & ;; # *********************************** BATC ****************************************** "BATC") $PATHRPI"/h264" videoes $BITRATE_VIDEO $FPS & sudo nice -n -30 $PATHRPI"/ffmpeg" -loglevel $MODE_DEBUG -analyzeduration 0 -probesize 2048 -r 25 -async 25 -fpsprobesize 0 -i videoes -max_delay 0 -fflags nobuffer -f h264 -r $VIDEO_FPS -vcodec copy -blocksize 1504 -f mpegts -max_delay $DELAY -blocksize 1504 -mpegts_original_network_id 1 -mpegts_transport_stream_id 1 -mpegts_service_id 100 -mpegts_pmt_start_pid $PIDPMT -mpegts_start_pid $PIDVIDEO -metadata service_provider=$CALL -metadata service_name=$CHANNEL -bufsize 1880 -muxrate $BITRATE_TS -y $OUTPUT_BATC & ;; esac #../mnc/mnc -l -i eth0 -p 10000 230.1.0.1 > videots #cat videots > /dev/null & #sudo killall ffmpeg #sudo killall h264 #sudo killall rpidatv #sudo killall cat #sudo killall hello_encode.bin