增加测试文件
This commit is contained in:
parent
258b2ad3e0
commit
41622cab44
BIN
file/cover.jpg
Normal file
BIN
file/cover.jpg
Normal file
Binary file not shown.
After Width: | Height: | Size: 582 KiB |
BIN
file/pause.png
Normal file
BIN
file/pause.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 8.6 KiB |
BIN
file/play.png
Normal file
BIN
file/play.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 17 KiB |
62
file/林俊杰-光阴副本.lrc
Normal file
62
file/林俊杰-光阴副本.lrc
Normal file
@ -0,0 +1,62 @@
|
||||
[00:00.00] 曲 COMPOSER : 林俊杰
|
||||
[00:01.00] 词 LYRICS : 易家扬
|
||||
[00:02.00] 编曲 MUSIC ARRANGEMENT : 林俊杰
|
||||
[00:03.00] 制作人 : 林俊杰
|
||||
[00:21.86]
|
||||
[00:24.38]星空拉着路人 记忆碰撞年轮
|
||||
[00:29.48]最后一圈 往前奔
|
||||
[00:35.95]月晕下的孤魂 被过去戳的好疼
|
||||
[00:41.94]看来时路出神
|
||||
[00:45.12]
|
||||
[00:48.54]人在赛道跑着 撑着 争着 忍着
|
||||
[00:51.49]心在黑里跪着 吼着 问着 等着
|
||||
[00:53.84]你在人海游着 抖着 躲着 沉着
|
||||
[00:57.49]我呢 目送着那些痴愚瞋
|
||||
[01:01.25]跟自己对峙过了 就别闹了 别复制问号 这胜负已分
|
||||
[01:11.64]
|
||||
[01:13.27]等光阴的副本孤单又安静在天上呼唤二次人生
|
||||
[01:18.77]等翻页了之后遗憾和暗黑的物质我得让它滚
|
||||
[01:24.85]等穿越了无声的冰川无言的低谷绿芽败中求胜
|
||||
[01:31.60]我加上我们
|
||||
[01:34.97]
|
||||
[01:37.15]拿那光阴的副本看看我还有 多少个不朽或是永恒
|
||||
[01:43.48]我是个到终点然而又要起跑的人
|
||||
[01:49.54]不怕未来路上愤怒的雷神
|
||||
[01:55.84]我保护我们
|
||||
[01:58.95]
|
||||
[02:27.31]另外一次如果 另外一次结果 另外一次 假如我
|
||||
[02:38.34]那时的惊叹号 那些梦真没老 等我来要
|
||||
[02:48.48]
|
||||
[02:51.34]等光阴的副本忽然说暂停的人生之后还有人生
|
||||
[02:57.46]等交换了所有苦闷给苍白的世界又能打几分
|
||||
[03:03.19]等听多了无声的世界无言的世间有笑也有引恨
|
||||
[03:09.28]我怀念我们
|
||||
[03:13.03]
|
||||
[03:15.74]拿那光阴的副本看看我那些不忘的不退或是不肯
|
||||
[03:22.60]我输过 是没错 哼 然而我 还没认
|
||||
[03:28.24]多少哑口无语 只为听一声
|
||||
[03:34.58]我很爱我们
|
||||
[03:38.78]
|
||||
[04:07.62] 曲 COMPOSER: 林俊杰 JJ LIN
|
||||
[04:07.84] 词 LYRICS: 易家扬
|
||||
[04:08.06]
|
||||
[04:08.27] 制作人 PRODUCER: 林俊杰 JJ LIN
|
||||
[04:08.49] 配唱制作 VOCAL PRODUCTION: 林俊杰 JJ LIN
|
||||
[04:08.71] 制作协力 PRODUCTION ASSISTANCE: 黄冠龙 ALEX.D / 周信廷 SHiN CHOU / 蔡凯升 Kai Tsai
|
||||
[04:08.92]
|
||||
[04:09.14] 编曲 MUSIC ARRANGEMENT: 林俊杰 JJ LIN
|
||||
[04:09.36] 吉他 GUITAR:黄冠龙 ALEX.D
|
||||
[04:09.57] 低音吉他 BASS GUITAR: Andy Peterson
|
||||
[04:09.79] 鼓 DRUMS:Ash Soan
|
||||
[04:10.01] 大提琴 CELLO:庄家欢 Olivia Chuang
|
||||
[04:10.23] 弦乐 STRINGS:国际首席爱乐乐团
|
||||
[04:10.44] 和声编写 BACKGROUND VOCAL ARRANGEMENT: 林俊杰 JJ LIN
|
||||
[04:10.66] 和声 BACKGROUND VOCALS: 林俊杰 JJ LIN
|
||||
[04:10.88]
|
||||
[04:11.09] 录音室 RECORDING STUDIO: THE JFJ BLUE ROOM (Singapore) / ALEX.D Studio (Taipei) / Crosstown studio (Malaysia) / The Windmill Studio (Norfolk,England) / IdeaNique Studio (Singapore) / 中国剧院录 音棚 (Beijing)
|
||||
[04:11.31] 录音师 RECORDING ENGINEER: 林俊杰 JJ LIN / 黄冠龙ALEX.D / Ananth / Ash Soan / 洪俊扬 JY / 陈子健 ZJ / 李巍
|
||||
[04:11.53]
|
||||
[04:11.74] 混音室 MIXING STUDIO: mixHaus (Encino, CA)
|
||||
[04:11.96] 混音师 MIXING ENGINEER: Richard Furch
|
||||
[04:12.18] 后期母带处理制作人 MASTERING PRODUCER: 林俊杰 JJ LIN
|
||||
[04:12.40] 后期母带处理录音室 MASTERING STUDIO: Bernie Grundman Mastering, LA
|
BIN
file/林俊杰-光阴副本.wav
Normal file
BIN
file/林俊杰-光阴副本.wav
Normal file
Binary file not shown.
@ -13,12 +13,12 @@ from PyQt6.QtGui import QPixmap, QIcon, QPalette, QColor
|
||||
class MusicPlayer(QMainWindow):
|
||||
def __init__(self):
|
||||
super().__init__()
|
||||
self.setWindowTitle("Python 音乐播放器")
|
||||
self.setWindowTitle("DreamLife|MusicPlayer")
|
||||
self.setGeometry(300, 200, 400, 500)
|
||||
self.initUI()
|
||||
pygame.mixer.init()
|
||||
|
||||
self.lyrics = [] # 解析后的歌词列表 [(时间戳, 歌词)]
|
||||
self.lyrics = [] # 解析后的歌词列表 [(时间戳, 歌词)]
|
||||
self.current_lyric_index = 0 # 当前歌词索引
|
||||
self.is_playing = False # 播放状态
|
||||
self.music_length = 0 # 音乐总时长(秒)
|
||||
@ -66,7 +66,7 @@ class MusicPlayer(QMainWindow):
|
||||
self.control_layout = QHBoxLayout()
|
||||
self.control_layout.setAlignment(Qt.AlignmentFlag.AlignCenter)
|
||||
self.play_button = QPushButton()
|
||||
self.play_button.setIcon(QIcon("D:/Downloads/play.png"))
|
||||
self.play_button.setIcon(QIcon("file/play.png"))
|
||||
self.play_button.setIconSize(QSize(52, 52)) # 明确设置图标尺寸
|
||||
self.play_button.setStyleSheet("border: none;")
|
||||
self.play_button.clicked.connect(self.toggle_play_pause)
|
||||
@ -84,7 +84,7 @@ class MusicPlayer(QMainWindow):
|
||||
self.central_widget.setStyleSheet(f"background-color: {color};")
|
||||
|
||||
def load_cover(self):
|
||||
cover_path = "D:/Downloads/cover.jpg"
|
||||
cover_path = "file/cover.jpg"
|
||||
if os.path.exists(cover_path):
|
||||
pixmap = QPixmap(cover_path)
|
||||
self.cover_label.setPixmap(pixmap.scaled(256, 256, Qt.AspectRatioMode.KeepAspectRatio))
|
||||
@ -92,7 +92,7 @@ class MusicPlayer(QMainWindow):
|
||||
self.cover_label.setText("封面未找到")
|
||||
|
||||
def load_lyrics(self):
|
||||
lyrics_path = "D:/Downloads/林俊杰-光阴副本.lrc"
|
||||
lyrics_path = "file/林俊杰-光阴副本.lrc"
|
||||
if os.path.exists(lyrics_path):
|
||||
try:
|
||||
with open(lyrics_path, 'r', encoding='utf-8') as file:
|
||||
@ -122,7 +122,7 @@ class MusicPlayer(QMainWindow):
|
||||
self.pause_music()
|
||||
|
||||
def play_music(self):
|
||||
music_path = "D:/Downloads/林俊杰-光阴副本.wav"
|
||||
music_path = "file/林俊杰-光阴副本.wav"
|
||||
if os.path.exists(music_path):
|
||||
try:
|
||||
pygame.mixer.music.load(music_path)
|
||||
@ -131,7 +131,7 @@ class MusicPlayer(QMainWindow):
|
||||
self.start_time = time.time()
|
||||
self.pause_time = 0
|
||||
self.timer.start(500)
|
||||
self.play_button.setIcon(QIcon("D:/Downloads/pause.png"))
|
||||
self.play_button.setIcon(QIcon("file/pause.png"))
|
||||
self.is_playing = True
|
||||
except Exception as e:
|
||||
print("播放音乐时出错:", e)
|
||||
@ -143,7 +143,7 @@ class MusicPlayer(QMainWindow):
|
||||
pygame.mixer.music.unpause() # 直接恢复播放
|
||||
self.start_time = time.time() - self.pause_time
|
||||
self.timer.start(500)
|
||||
self.play_button.setIcon(QIcon("D:/Downloads/pause.png"))
|
||||
self.play_button.setIcon(QIcon("file/pause.png"))
|
||||
self.is_playing = True
|
||||
except Exception as e:
|
||||
print("继续播放时出错:", e)
|
||||
@ -153,7 +153,7 @@ class MusicPlayer(QMainWindow):
|
||||
self.pause_time = time.time() - self.start_time
|
||||
pygame.mixer.music.pause()
|
||||
self.timer.stop()
|
||||
self.play_button.setIcon(QIcon("D:/Downloads/play.png"))
|
||||
self.play_button.setIcon(QIcon("file/play.png"))
|
||||
self.is_playing = False
|
||||
|
||||
def seek_music(self):
|
||||
@ -165,7 +165,7 @@ class MusicPlayer(QMainWindow):
|
||||
self.current_lyric_index = self.find_lyric_index(new_time)
|
||||
self.update_lyrics_display()
|
||||
self.timer.start(500)
|
||||
self.play_button.setIcon(QIcon("D:/Downloads/pause.png"))
|
||||
self.play_button.setIcon(QIcon("file/pause.png"))
|
||||
self.is_playing = True
|
||||
|
||||
def find_lyric_index(self, current_time):
|
||||
|
Loading…
x
Reference in New Issue
Block a user