imp_helper.sh 4.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158
  1. #!/bin/sh
  2. #Run impdbg commands sequentially
  3. set -x
  4. export WZMINI_CFG=/opt/wz_mini/wz_mini.conf
  5. [ -f $WZMINI_CFG ] && source $WZMINI_CFG
  6. DELAY_BETWEEN=2
  7. RE_RUN_DELAY=60
  8. PARM=1
  9. hi_res_monitor() {
  10. if [[ "$RTSP_HI_RES_ENABLED" == "true" ]]; then
  11. if [[ "$RTSP_HI_RES_ENC_PARAMETER" != "" ]]; then
  12. if [ -f /opt/wz_mini/tmp/.T20 ]; then
  13. if [[ $RTSP_HI_RES_ENC_PARAMETER =~ "^[0|1|2|4|8]$" ]]; then
  14. /system/bin/impdbg --enc_rc_s 0:0:4:$RTSP_HI_RES_ENC_PARAMETER
  15. sleep $DELAY_BETWEEN
  16. PARM=$((PARM+1))
  17. else
  18. echo "Invalid encoder value"
  19. fi
  20. else
  21. if [[ $RTSP_HI_RES_ENC_PARAMETER =~ "^[0|1|2|4|8]$" ]]; then
  22. /system/bin/impdbg --enc_rc_s 0:44:4:$RTSP_HI_RES_ENC_PARAMETER
  23. sleep $DELAY_BETWEEN
  24. PARM=$((PARM+1))
  25. else
  26. echo "Invalid encoder value"
  27. fi
  28. fi
  29. fi
  30. if [[ "$RTSP_HI_RES_MAX_BITRATE" != "" ]]; then
  31. if [ -f /opt/wz_mini/tmp/.T20 ]; then
  32. /system/bin/impdbg --enc_rc_s 0:28:4:$RTSP_HI_RES_MAX_BITRATE
  33. sleep $DELAY_BETWEEN
  34. PARM=$((PARM+1))
  35. else
  36. /system/bin/impdbg --enc_rc_s 0:52:4:$RTSP_HI_RES_MAX_BITRATE
  37. sleep $DELAY_BETWEEN
  38. PARM=$((PARM+1))
  39. fi
  40. fi
  41. if [[ "$RTSP_HI_RES_TARGET_BITRATE" != "" ]]; then
  42. if [ -f /opt/wz_mini/tmp/.T20 ]; then
  43. echo "not supported on T20"
  44. else
  45. /system/bin/impdbg --enc_rc_s 0:48:4:$RTSP_HI_RES_TARGET_BITRATE
  46. sleep $DELAY_BETWEEN
  47. PARM=$((PARM+1))
  48. fi
  49. fi
  50. if [[ "$RTSP_HI_RES_FPS" != "" ]]; then
  51. if [ -f /opt/wz_mini/tmp/.T20 ]; then
  52. /system/bin/impdbg --enc_rc_s 0:8:4:$RTSP_HI_RES_FPS
  53. sleep $DELAY_BETWEEN
  54. PARM=$((PARM+1))
  55. else
  56. /system/bin/impdbg --enc_rc_s 0:80:4:$RTSP_HI_RES_FPS
  57. sleep $DELAY_BETWEEN
  58. PARM=$((PARM+1))
  59. fi
  60. fi
  61. if [ $PARM == 1 ]; then
  62. echo "No Hi-Res imp variables enabled, check Low-Res"
  63. fi
  64. low_res_monitor
  65. else
  66. echo "Hi-Res RTSP not enabled"
  67. low_res_monitor
  68. fi
  69. }
  70. low_res_monitor () {
  71. if [[ "$RTSP_LOW_RES_ENABLED" == "true" ]]; then
  72. if [[ "$RTSP_LOW_RES_ENC_PARAMETER" != "" ]]; then
  73. if [ -f /opt/wz_mini/tmp/.T20 ]; then
  74. if [[ $RTSP_LOW_RES_ENC_PARAMETER =~ "^[0|1|2|4|8]$" ]]; then
  75. /system/bin/impdbg --enc_rc_s 1:0:4:$RTSP_LOW_RES_ENC_PARAMETER
  76. sleep $DELAY_BETWEEN
  77. PARM=$((PARM+1))
  78. else
  79. echo "Invalid encoder value"
  80. fi
  81. else
  82. if [[ $RTSP_LOW_RES_ENC_PARAMETER =~ "^[0|1|2|4|8]$" ]]; then
  83. /system/bin/impdbg --enc_rc_s 1:44:4:$RTSP_LOW_RES_ENC_PARAMETER
  84. sleep $DELAY_BETWEEN
  85. PARM=$((PARM+1))
  86. else
  87. echo "Invalid encoder value"
  88. fi
  89. fi
  90. fi
  91. if [[ "$RTSP_LOW_RES_MAX_BITRATE" != "" ]]; then
  92. if [ -f /opt/wz_mini/tmp/.T20 ]; then
  93. /system/bin/impdbg --enc_rc_s 1:28:4:$RTSP_LOW_RES_MAX_BITRATE
  94. sleep $DELAY_BETWEEN
  95. PARM=$((PARM+1))
  96. else
  97. /system/bin/impdbg --enc_rc_s 1:52:4:$RTSP_LOW_RES_MAX_BITRATE
  98. sleep $DELAY_BETWEEN
  99. PARM=$((PARM+1))
  100. fi
  101. fi
  102. if [[ "$RTSP_LOW_RES_TARGET_BITRATE" != "" ]]; then
  103. if [ -f /opt/wz_mini/tmp/.T20 ]; then
  104. echo "not supported on T20"
  105. else
  106. /system/bin/impdbg --enc_rc_s 1:48:4:$RTSP_LOW_RES_TARGET_BITRATE
  107. sleep $DELAY_BETWEEN
  108. PARM=$((PARM+1))
  109. fi
  110. fi
  111. if [[ "$RTSP_LOW_RES_FPS" != "" ]]; then
  112. if [ -f /opt/wz_mini/tmp/.T20 ]; then
  113. /system/bin/impdbg --enc_rc_s 1:8:4:$RTSP_LOW_RES_FPS
  114. sleep $DELAY_BETWEEN
  115. PARM=$((PARM+1))
  116. else
  117. /system/bin/impdbg --enc_rc_s 1:80:4:$RTSP_LOW_RES_FPS
  118. sleep $DELAY_BETWEEN
  119. PARM=$((PARM+1))
  120. fi
  121. fi
  122. if [ $PARM == 1 ]; then
  123. echo "No Low-Res imp variables enabled, exit"
  124. break
  125. fi
  126. else
  127. echo "Low-Res RTSP not enabled"
  128. if [[ "$RTSP_HI_RES_ENABLED" == "true" ]] && [ $PARM -gt 1 ]; then
  129. hi_res_monitor
  130. else
  131. break
  132. fi
  133. fi
  134. }
  135. while true; do
  136. hi_res_monitor
  137. echo "Restart imp_helper.sh, sleep for $RE_RUN_DELAY"
  138. sleep $RE_RUN_DELAY
  139. done