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 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.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

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

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

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

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

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

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

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

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

        # 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()

        if self.num_radio_selected == -1:
+3 −5
Numéro de 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

player = MediaPlayer()
radio_flux = Media("http://live.leanstream.co/CJOTFM-MP3")  # on définit le flux
player.set_media(radio_flux)  # on charge le flux
media = Media("http://live.leanstream.co/CJOTFM-MP3")  # on définit le flux
player.set_media(media)  # on charge le flux
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

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é

        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 Numéro de ligne de diff Ligne de diff
@@ -7,8 +7,10 @@ import tkinter as tk
from tkinter import ttk, Scale, HORIZONTAL
from PIL import Image, ImageTk
import csv
from vlc import Media, MediaPlayer, Meta

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

# 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.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
        # - on charge la configuration du volume sauvegardée
        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.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
        # self.root.after(2000, self.now_playing_info)
        self.root.mainloop()
+1 −1
Numéro de ligne d'origine Numéro de ligne de diff Ligne de diff
38
 No newline at end of file
42
 No newline at end of file