elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Recopilación Tutoriales y Manuales Hacking, Seguridad, Privacidad, Hardware, etc


+  Foro de elhacker.net
|-+  Programación
| |-+  Scripting
| | |-+  [PYTHON PYGAME MIXER] Como puedo reproducir una serie de canciones en bucle?
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: [PYTHON PYGAME MIXER] Como puedo reproducir una serie de canciones en bucle?  (Leído 3,712 veces)
Panic0

Desconectado Desconectado

Mensajes: 218



Ver Perfil
[PYTHON PYGAME MIXER] Como puedo reproducir una serie de canciones en bucle?
« en: 19 Febrero 2022, 18:49 pm »

Hola a todos, como estan?

Estoy haciendo un reproducor en python3, y tengo un pequeño problema.

La cosa es que quiero reproducir una serie de canciones las cuales estan en una lista, ya saben, hice lo que cualquiera haria, poner un for y dentro de ese for que vaya tomando el string y vaya reproduciendo todo... Pero no funciona

Les dejo el codigo :)
Código:
#Librerias
#pygame
#mutagen
#tinytag

from pygame import mixer
from mutagen.mp3 import MP3
from tinytag import TinyTag
import os
import time


clear = lambda :(os.system("clear"))


songs = ["path_song","path_song2"]

mixer.init()


for song in songs:

    tag = TinyTag.get(song)

    mixer.music.load(song)

    mixer.music.set_volume(0.2)
    mixer.music.play()

    song_duration = MP3(song)
    song_duration = song_duration.info.length
    song_duration = round(song_duration)


def duration_time(song_duration):
    end_minute       = 0
    end_beginning    = 0
    end_aux_duration = 0
    while True:
        if end_aux_duration == song_duration:
            break
        else:
            end_beginning = end_beginning + 1
            end_aux_duration = end_aux_duration + 1
            if end_beginning == 60:
                end_minute = end_minute + 1
                end_beginning = end_beginning - 60
    end_aux_duration =  str(end_minute),":",str(end_beginning).zfill(2)
    end_duration = "".join(end_aux_duration)


    minute       = 0
    beginning    = 0
    aux_duration = 0
    while True:
        if aux_duration == song_duration:
            break
        else:
            beginning = beginning + 1
            aux_duration = aux_duration + 1
            time.sleep(1)
            clear()
            if beginning == 60:
                minute = minute + 1
                beginning = beginning - 60

        print(f"{minute}:",f"{beginning}".zfill(2), " ------ O ------ ",end_duration)




duration_time(song_duration)
    



Gracias!!!


« Última modificación: 19 Febrero 2022, 18:53 pm por Panic0 » En línea

Los ataques de pánico suelen comenzar de forma súbita, sin advertencia.
.xAk.


Desconectado Desconectado

Mensajes: 395


F0r3v3R NeWbI3


Ver Perfil WWW
Re: [PYTHON PYGAME MIXER] Como puedo reproducir una serie de canciones en bucle?
« Respuesta #1 en: 20 Febrero 2022, 04:32 am »

Código:
pygame.mixer.music.play(-1)
un entero positivo indicaría repetir n número de veces.

la lista la puedes cargar pygame.mixer.music.load inicio y pygame.mixer.music.queue añadir y que todo forme parte de un solo conjunto.

mira, cargarlo así quiero decir: fuente

Código
  1. import pygame
  2. import time
  3.  
  4. pygame.mixer.init()
  5. pygame.display.init()
  6.  
  7. screen = pygame.display.set_mode ( ( 420 , 240 ) )
  8.  
  9. playlist = list()
  10. playlist.append ( "music3.mp3" )
  11. playlist.append ( "music2.mp3" )
  12. playlist.append ( "music1.mp3" )
  13.  
  14. pygame.mixer.music.load ( playlist.pop() )  # Get the first track from the playlist
  15. pygame.mixer.music.queue ( playlist.pop() ) # Queue the 2nd song
  16. pygame.mixer.music.set_endevent ( pygame.USEREVENT )    # Setup the end track event
  17. pygame.mixer.music.play()           # Play the music
  18.  
  19. running = True
  20. while running:
  21.   for event in pygame.event.get():
  22.      if event.type == pygame.USEREVENT:    # A track has ended
  23.         if len ( playlist ) > 0:       # If there are more tracks in the queue...
  24.            pygame.mixer.music.queue ( playlist.pop() ) # Q

eso del -1 y positivos ... no se cómo funcionaría en lista. Es imaginación que piense eso con lista. He leido por ahí que con un load puedes cargar directamente una lista. Pero no puedo afirmar o si he leido cuentos urbanos.

si me quieres hacer caso, céntrate en un solo pygame.mixer.music.play() sólo soy aficionado

SaludOS


« Última modificación: 20 Febrero 2022, 08:35 am por .xAk. » En línea


Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
pygame(python)
Scripting
desnight 0 2,323 Último mensaje 29 Febrero 2008, 15:25 pm
por desnight
Reproducir Canciones (.wav) En Batch! by RockoX!
Scripting
leogtz 9 10,294 Último mensaje 28 Mayo 2008, 08:17 am
por Crazy.sx
Instalar portatil-altavoces y reproducir 2 canciones a la vez
Multimedia
Dem0ny 0 2,987 Último mensaje 30 Noviembre 2008, 19:03 pm
por Dem0ny
[SOLUCIONADO]reproducir canciones dentro de un jar
Java
danielo- 7 9,574 Último mensaje 14 Marzo 2010, 01:28 am
por 1mpuls0
China prohíbe reproducir ciertas canciones en Internet
Noticias
wolfbcn 5 2,940 Último mensaje 17 Enero 2011, 16:00 pm
por chillinfart
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines