Valider 38496142 rédigé par Thorfin89's avatar Thorfin89
Parcourir les fichiers

Info OK - reste à soigner l'apparence

parent 76688c27
Chargement en cours
Chargement en cours
Chargement en cours
Chargement en cours
+0 −2
Numéro de ligne d'origine Ligne d'origine Numéro de ligne de diff Ligne de diff
@@ -161,8 +161,6 @@ radio_flux = Media("http://live.leanstream.co/CJOTFM-MP3") # on définit le flu
player.set_media(radio_flux)  # on charge le flux
player.set_media(radio_flux)  # on charge le flux
player.play()  # on lance l'écoute de la radio
player.play()  # on lance l'écoute de la radio


info_flux = player.event_manager()  # on récupère l'information du flux

memo_info = ""  # pour mémoriser le titre
memo_info = ""  # pour mémoriser le titre


while True:  # boucle principale
while True:  # boucle principale
+9 −4
Numéro de ligne d'origine Ligne d'origine Numéro de ligne de diff Ligne de diff
@@ -4,6 +4,7 @@


# import ----------------------------------
# import ----------------------------------
from vlc import Instance
from vlc import Instance
from vlc import Media, MediaPlayer, Meta


''' installer le paquet python-vlc :
''' installer le paquet python-vlc :
    $ sudo pip3 install python-vlc
    $ sudo pip3 install python-vlc
@@ -21,11 +22,13 @@ class Radio(Pupitre):


    def radio_flux(self, flux):
    def radio_flux(self, flux):
        print(flux)
        print(flux)
        media = self.instance.media_new(flux)
        self.media = self.instance.media_new(flux)
        self.player.set_media(media)
        self.player.set_media(self.media)
        self.radio_play()
        self.radio_play()
        self.now_playing_info()


    def radio_play(self):
    def radio_play(self):
        self.radio_on = True
        self.player.play()
        self.player.play()


    def radio_pause(self):
    def radio_pause(self):
@@ -33,6 +36,7 @@ class Radio(Pupitre):


    def flux_stop(self):
    def flux_stop(self):
        self.player.stop()
        self.player.stop()
        self.radio_on = False


    def volume(self, vol_potar):
    def volume(self, vol_potar):
        # on récupère la valeur du potentiomètre de volume
        # on récupère la valeur du potentiomètre de volume
@@ -74,7 +78,8 @@ class Radio(Pupitre):
        print(self.num_radio_selected)
        print(self.num_radio_selected)


        # changement de page automatique
        # changement de page automatique
        if (self.num_radio_selected + 1) % 20 == 0 and self.num_radio_selected != -1:  # si le numéro est un multiple de 20
        if (
                self.num_radio_selected + 1) % 20 == 0 and self.num_radio_selected != -1:  # si le numéro est un multiple de 20
            self.page_back()
            self.page_back()


        if self.num_radio_selected == -1:
        if self.num_radio_selected == -1:
+3 −5
Numéro de ligne d'origine Ligne d'origine Numéro de ligne de diff Ligne de diff
@@ -2,17 +2,15 @@ from time import sleep
from vlc import Media, MediaPlayer, Meta
from vlc import Media, MediaPlayer, Meta


player = MediaPlayer()
player = MediaPlayer()
radio_flux = Media("http://live.leanstream.co/CJOTFM-MP3")  # on définit le flux
media = Media("http://live.leanstream.co/CJOTFM-MP3")  # on définit le flux
player.set_media(radio_flux)  # on charge le flux
player.set_media(media)  # on charge le flux
player.play()  # on lance l'écoute de la radio
player.play()  # on lance l'écoute de la radio


info_flux = player.event_manager()  # on récupère l'information du flux

memo_info = ""  # pour mémoriser le titre
memo_info = ""  # pour mémoriser le titre


while True:  # boucle principale
while True:  # boucle principale


    flux_info = radio_flux.get_meta(Meta.NowPlaying)  # on récupère l'info sur le titre actuel
    flux_info = media.get_meta(Meta.NowPlaying)  # on récupère l'info sur le titre actuel
    if flux_info and flux_info != memo_info:    # si le titre donné et est différent de celui mémorisé
    if flux_info and flux_info != memo_info:    # si le titre donné et est différent de celui mémorisé


        info_display = flux_info[4:len(flux_info) - 3]  # on 'nettoie' le titre (caractères au début et à la fin)
        info_display = flux_info[4:len(flux_info) - 3]  # on 'nettoie' le titre (caractères au début et à la fin)
+26 −1
Numéro de ligne d'origine Ligne d'origine Numéro de ligne de diff Ligne de diff
@@ -7,8 +7,10 @@ import tkinter as tk
from tkinter import ttk, Scale, HORIZONTAL
from tkinter import ttk, Scale, HORIZONTAL
from PIL import Image, ImageTk
from PIL import Image, ImageTk
import csv
import csv
from vlc import Media, MediaPlayer, Meta


mute = False  # le son n'est pas coupé au démarrage
mute = False  # le son n'est pas coupé au démarrage
radio_on = False  # mémorise le fait d'écouter une radio ou pas
bg_color, bg_color_light = "#206080", "#2F6F8F"  # couleur de fond
bg_color, bg_color_light = "#206080", "#2F6F8F"  # couleur de fond


# Chargement du fichier CSV contenant les informations : Nom, Pays, Type, Url, Logo
# Chargement du fichier CSV contenant les informations : Nom, Pays, Type, Url, Logo
@@ -110,6 +112,10 @@ class Pupitre:
        self.lbl_radio_selected = ttk.Label(self.menu, background=bg_color_light)
        self.lbl_radio_selected = ttk.Label(self.menu, background=bg_color_light)
        self.lbl_radio_selected.place(width=225, height=225, x=33, y=33)
        self.lbl_radio_selected.place(width=225, height=225, x=33, y=33)


        # affiche les infos sur le titre en cours d'écoute
        self.now_playing = ttk.Label(self.menu, background=bg_color_light)
        self.now_playing.place(width=240, height=100, x=30, y=300)

        # potentiomètre de volume
        # potentiomètre de volume
        # - on charge la configuration du volume sauvegardée
        # - on charge la configuration du volume sauvegardée
        lecture = open("webradiopi.cfg", "r")
        lecture = open("webradiopi.cfg", "r")
@@ -220,5 +226,24 @@ class Pupitre:
        self.lbl_info_radio.place(width=270, height=30, x=10, y=270)
        self.lbl_info_radio.place(width=270, height=30, x=10, y=270)
        self.lbl_info_radio.config(bg=bg_color)
        self.lbl_info_radio.config(bg=bg_color)


    def now_playing_info(self):

        if self.radio_on:
            flux_info = self.media.get_meta(Meta.NowPlaying)  # on récupère l'info sur le titre actuel

            if flux_info:
                # on 'nettoie' le titre (caractères au début et à la fin)
                info_display = flux_info[4:len(flux_info) - 3]

                if info_display[0:3] == " - ":  # si l'info commence par un tiret (pub, commentaire...)
                    info = "** " + info_display[3:] + " **"
                else:
                    info = info_display

                self.now_playing.config(text=info)

        self.root.after(2000, self.now_playing_info)

    def boucle(self):  # boucle principale de tkinter
    def boucle(self):  # boucle principale de tkinter
        # self.root.after(2000, self.now_playing_info)
        self.root.mainloop()
        self.root.mainloop()
+1 −1
Numéro de ligne d'origine Ligne d'origine Numéro de ligne de diff Ligne de diff
38
42
 No newline at end of file
 No newline at end of file