allwinner-midware/app/InitScript/r16-pv1/netease.init

181 lines
5.1 KiB
Bash
Executable File

#!/bin/sh /etc/rc.common
# Copyright (C) 2006-2011 OpenWrt.org
START=120
STOP=120
USE_PROCD=1
DEPEND=netease_wifi_service,netease_voice_service,boot,netease_player_service
PROG_VOICE=/bin/netease_voice
PROG_CC=/usr/sbin/netease_control_center
PROG_PLAYER=/usr/bin/ihwplayer
PROG_LE_APP=/usr/bin/app_nevsps_bt
PROG_WIFI_APP=/bin/app_wifi_manager
PROG_OTA=/usr/bin/ota
PROG_ALARMER=/usr/bin/alarmer
PROG_KPLAYER=/usr/bin/KPlayer
PROG_SPLAYER=/usr/bin/SPlayer
OOM_ADJ=2
LOG=/tmp/netease.init.log
GOROOT=/usr/share/golang/
init_dbus() {
echo "init dbus" >> $LOG
if [ -x /tmp/dbus_env.sh ]
then
DBUS_DAEMON_ON=`ps | grep "dbus-daemon --fork" | grep -v grep | wc -l`
if [ "$DBUS_DAEMON_ON" == "1" ]
then
source /tmp/dbus_env.sh
else
echo "-----------------" >> /mnt/UDISK/reboot.log
date -R >> /mnt/UDISK/reboot.log
reboot -f
fi
else
export $(dbus-launch)
echo "export DBUS_SESSION_BUS_ADDRESS=\"$DBUS_SESSION_BUS_ADDRESS\"" > /tmp/dbus_env.sh
echo "export DBUS_SESSION_BUS_PID=\"$DBUS_SESSION_BUS_PID\"" >> /tmp/dbus_env.sh
chmod +x /tmp/dbus_env.sh
fi
echo "wzj: DBUS_SESSION_BUS_ADDRESS=\"$DBUS_SESSION_BUS_ADDRESS\"" >> $LOG
}
enable_soundcard() {
echo "set r16 audio pass through"
amixer cset iface=MIXER,name='DACR Mixer AIF1DA0R Switch' 1
amixer cset iface=MIXER,name='DACL Mixer AIF1DA0L Switch' 1
amixer cset iface=MIXER,name='Left Output Mixer DACL Switch' 1
amixer cset iface=MIXER,name='Right Output Mixer DACR Switch' 1
amixer cset iface=MIXER,name='Phoneout Mixer Right Output Mixer Switch' 1
amixer cset iface=MIXER,name='HP_L Mux' 1
amixer cset iface=MIXER,name='HP_R Mux' 0
amixer cset iface=MIXER,name='Headphone Switch' 1
amixer cset iface=MIXER,name='Phoneout Switch' 1
amixer cset iface=MIXER,name='headphone volume' 59
amixer cset iface=MIXER,name='phoneout volume' 0
}
start_voice() {
echo "start voice" >> $LOG
echo $DBUS_SESSION_BUS_ADDRESS >> $LOG
procd_open_instance
procd_set_param oom_adj $OOM_ADJ
procd_set_param command $PROG_VOICE -D >> /tmp/voicelog 2>&1
procd_set_param respawn
procd_append_param limits core=unlimited
procd_set_param env DBUS_SESSION_BUS_ADDRESS=$DBUS_SESSION_BUS_ADDRESS
procd_close_instance
}
start_cc() {
echo "start cc" >> $LOG
echo $DBUS_SESSION_BUS_ADDRESS >> $LOG
procd_open_instance
procd_set_param oom_adj $OOM_ADJ
procd_set_param command $PROG_CC
procd_set_param respawn
procd_append_param limits core=unlimited
procd_set_param env DBUS_SESSION_BUS_ADDRESS=$DBUS_SESSION_BUS_ADDRESS
procd_close_instance
}
start_player() {
echo "start player" >> $LOG
echo $DBUS_SESSION_BUS_ADDRESS >> $LOG
procd_open_instance
procd_set_param oom_adj $OOM_ADJ
procd_set_param command $PROG_PLAYER -D
procd_set_param respawn
procd_append_param limits core=unlimited
procd_set_param env DBUS_SESSION_BUS_ADDRESS=$DBUS_SESSION_BUS_ADDRESS GOROOT=$GOROOT
procd_close_instance
}
start_wifi() {
echo "start wifi" >> $LOG
procd_open_instance
procd_set_param oom_adj $OOM_ADJ
procd_set_param command $PROG_WIFI_APP -D >> /tmp/wifilog
procd_set_param respawn
procd_append_param limits core=unlimited
procd_set_param env DBUS_SESSION_BUS_ADDRESS=$DBUS_SESSION_BUS_ADDRESS GOROOT=$GOROOT
procd_close_instance
}
start_ble() {
echo "start ble" >> $LOG
procd_open_instance
procd_set_param oom_adj $OOM_ADJ
procd_set_param command $PROG_LE_APP -D >> /tmp/blelog
procd_set_param respawn
procd_append_param limits core=unlimited
procd_set_param env DBUS_SESSION_BUS_ADDRESS=$DBUS_SESSION_BUS_ADDRESS GOROOT=$GOROOT
procd_close_instance
}
start_ota() {
echo "start ota" >> $LOG
procd_open_instance
procd_set_param oom_adj $OOM_ADJ
procd_set_param command $PROG_OTA -D >> /tmp/otalog
procd_set_param respawn
procd_append_param limits core=unlimited
procd_set_param env DBUS_SESSION_BUS_ADDRESS=$DBUS_SESSION_BUS_ADDRESS GOROOT=$GOROOT
procd_close_instance
}
start_alarmer() {
echo "start ota" >> $LOG
procd_open_instance
procd_set_param oom_adj $OOM_ADJ
procd_set_param command $PROG_ALARMER -D >> /tmp/otalog
procd_set_param respawn
procd_append_param limits core=unlimited
procd_set_param env DBUS_SESSION_BUS_ADDRESS=$DBUS_SESSION_BUS_ADDRESS GOROOT=$GOROOT
procd_close_instance
}
start_dlna() {
echo "start dlna" >> $LOG
procd_open_instance
procd_set_param oom_adj $OOM_ADJ
procd_set_param command $PROG_KPLAYER -D >> /tmp/dlnalog
procd_set_param respawn
procd_append_param limits core=unlimited
procd_set_param env DBUS_SESSION_BUS_ADDRESS=$DBUS_SESSION_BUS_ADDRESS GOROOT=$GOROOT
procd_close_instance
}
start_airplay() {
echo "start airplay" >> $LOG
procd_open_instance
procd_set_param oom_adj $OOM_ADJ
procd_set_param command $PROG_SPLAYER -D >> /tmp/airplaylog
procd_set_param respawn
procd_append_param limits core=unlimited
procd_set_param env DBUS_SESSION_BUS_ADDRESS=$DBUS_SESSION_BUS_ADDRESS GOROOT=$GOROOT
procd_close_instance
}
start_all() {
echo "start all" >> $LOG
$PROG_CC > /dev/null 2>&1 &
$PROG_PLAYER -D > /dev/null 2>&1 &
$PROG_VOICE -D > /dev/null 2>&1 &
}
start_service() {
# enable_soundcard
#/etc/bluetooth/btenable.sh on
init_dbus
start_dlna
start_airplay
#start_ble
start_ota
start_alarmer
}