サイマルラジオ moOdeラジオ

pulse.phpから表示するmoOde radioイメージロゴをいくつか作成してみました。またラジオ局名に記号が含まれているとサイマルラジオからは正常に読み取れないので修正

pulse.phpイメージロゴ

サイマルラジオ moOde radio pulse.php imgファイル(300×60)

 

20220731 moOde radio imgファイル追加


simul.py修正(再生)

220行目付近command = a と b (記号)を文字列として認識しないのでシングルコーテーションで囲むようにします。

    # ListBOX
    for i in lb.curselection():
        a = (lb.get(i)); b = (lb.get(i));
        command = ("echo '" + a + "' | awk '{print $NF}'")
        a = (subprocess.Popen(command, stdout=subprocess.PIPE, shell=True).communicate()[0]).decode('utf-8')
        a = a.strip()
        command = ("echo '" + b + "' | grep radiko")
        b = (subprocess.Popen(command, stdout=subprocess.PIPE, shell=True).communicate()[0]).decode('utf-8')
        b = b.strip()

simul.py修正(imgロゴ vol.list)

vol.listの検索も失敗、ここは削除、置き換えをします。対象 ()&’
322行目付近以下を修正

        # moOde
        if csra == False and nhk == False:
            csv_moode = ""
            with open(radio_dir+"cfg_radio.csv", 'r') as f:
                for csvid in f:
                    if re.search(proc, csvid):
                        csv_moode = csvid
                if len(csv_moode) != 0 and len(proc) != 0:
                    st = std; stc()
                    csv_moode = csv_moode.strip()
                    command = ("echo " + csv_moode + " | awk -F',' '{print $3}'")
                    st = (subprocess.Popen(command, stdout=subprocess.PIPE, shell=True).communicate()[0]).decode('utf-8')
                else:
                    time.sleep(3)
                    st = std; stc()
                    command = ("mpc | awk 'NR==1' | awk -F':' '{print $1}'")
                    st = (subprocess.Popen(command, stdout=subprocess.PIPE, shell=True).communicate()[0]).decode('utf-8')
                # (image data,vol.list)
                st = st.strip()
                st = re.sub('\(', '', st)
                st = re.sub('\)', '', st)
                st = re.sub('&', '_', st)
                st = re.sub('\'', '', st)
                subprocess.run("echo '" + st + "' > /tmp/moode_id", shell=True)
                subprocess.run("test -e /var/www/html/img/'" + st + ".jpg' ; echo $? > /tmp/test_id", shell=True)
                stc()
        else: # pulse.php image data (1)
            f = open('/tmp/test_id','w')
            f.write('1\n')
            f.close()

simul.py修正(img_file_click)

63行目付近

# img_file
def img_file_click():
    command = ("ps ax | grep pulseaudio | grep -v grep | awk '{print $NF}'")
    pulse = (subprocess.Popen(command, stdout=subprocess.PIPE, shell=True).communicate()[0]).decode('utf-8')
    pulse = pulse.strip()
    if pulse == "--start":
        messagebox.showinfo('simul radio', 'PulseAudio')
    else:
        t = (subprocess.Popen("cat /tmp/test_id", stdout=subprocess.PIPE, shell=True).communicate()[0]).decode('utf-8')
        t = t.strip()
        if t == "0":
            img = (subprocess.Popen("cat /tmp/moode_id", stdout=subprocess.PIPE, shell=True).communicate()[0]).decode('utf-8')
            img = img.strip()
            messagebox.showinfo('simul radio', img + '.jpg')
        else:
            subprocess.run("xterm -e less /tmp/moode_id &", shell=True)

pulse.phpのimgロゴ、vol設定はサイマルラジオからPlayしたときに表示適用されます。moOde playerはサイマルラジオのPlayと連動して再生を開始、表示しますがボリュームの値は反映されません。img_fileボタンをクリックするとロゴ画像作成設定済みの場合はメッセージボックスで表示。リストボックスの表示はDR P8 Jazz (320K)ですが()の無いDR P8 Jazz 320Kになります。vol.listのラジオ局名も同じ名称を使用します。

moOde audioのラジオメニューはアルファベット順に並んでいることからサイマルラジオのfavoriteボタンやmoodeボタンをジャンル別、ラジオ局などに変更してみました。
All.Listボタン moOde radioの聴取可能な全リストをアルファベット順に(参照程度)
Uncat…ed(Uncategorized)未分類 各ボタンに振り分けた以外のリスト(大雑把)
各ボタンのリスト登録は登録したいラジオ局をフォーカス(コピー完了)登録したいリストを選択、List.Editボタンで編集。ダブルコーテーションを打つ、マウス中ボタンでペースト、ダブルコーテーションで囲む。編集終了
リストの作成次第でまた違った楽しみ方ができそうです。