The YuE2 and subtitles posts shipped text-only: render_from_art.mjs only READS ogImage/banner, and after the 2026-10-19 bulk migration no script had to write them, so both pages advertised /og-default.jpg and rendered no hero banner. - new metaphors (in build_captions.py, frozen here via sync_prompts_catalog.py), captions, art-meta evidence, banner plan and the five derived files per slug - frontmatter: ogImage + banner in EN and ZH for both posts - scripts/check-assets.mjs is now step 1 of npm run build, so CI fails when a published post lacks a language-correct og card, banner, banner .webp or 400/800 list thumb. It reported 16 problems on the unfixed tree, all here.
42 KiB
title, description, pubDate, category, tags, ogImage, banner, draft
| title | description | pubDate | category | tags | ogImage | banner | draft | |||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Why My AI Songs Kept Losing Their Endings: Running YuE2 on a 12 GB GPU | Twelve Mandarin songs came out exactly 240.000 seconds long with the outros missing. The cause wasn't the lyrics — it was a hard cap, a VRAM ceiling, and a planner that ignores BPM. | 2026-10-20 | ai |
|
/og/yue2-on-a-12gb-gpu-songs-that-lost-their-endings.jpg | /banners/yue2-on-a-12gb-gpu-songs-that-lost-their-endings.jpg | false |
YuE2 is a 3B open-weights music model that sings Mandarin from a style prompt and a lyric sheet. I ran it locally on a 12 GB RTX 3060 through ComfyUI — twelve original songs in one serial queue — and the first batch came back with every single file exactly 240.000 seconds long. That number is not a coincidence, and it is not good news.
Every track was exactly 240.000 seconds
Twelve files, twelve identical durations to the millisecond:
01_A1_..._糖画小仙.mp3 duration=240.000000
02_A2_..._溪边捉云记.mp3 duration=240.000000
03_A3_..._寒露拾桂子.mp3 duration=240.000000
...
I had asked for max_duration=240 because the style guide I was working from
said a 12-section structure would land around three and a half minutes. It
landed on 240 seconds exactly — which means the model never decided to stop.
It ran out of room.
A round number is a confession
YuE2 plans a song with an ABC planner: it reads the lyric sheet, decides how many bars each section gets, and emits a symbolic sketch. The music generator then sings that sketch and ends when the sketch ends. A finished song therefore comes out shorter than the cap you set — it stops on its own.
Here is the tell, and it costs one shell command:
d=$(ffprobe -v error -show_entries format=duration -of csv=p=0 take.mp3)
python -c "print(abs(float('$d') - 240.0) <= 0.005)" # True = hard cut
If the duration equals max_duration to within a few milliseconds, the render
was truncated. The lyric sheet wanted more time than the cap allowed, and the
last thing being sung at the cutoff point got sliced off mid-phrase.
Confirming the outros were actually missing
Duration alone tells you that it was cut, not what was lost. So I pulled the tail of each take and transcribed it with a local speech model (SenseVoice, CPU — it stays running while the GPU renders):
ffmpeg -v error -y -i take.mp3 -ss 232 -t 20 -ar 16000 -ac 1 -c:a pcm_s16le t.wav
curl -s -X POST http://127.0.0.1:20129/v1/audio/transcriptions \
-F "[email protected]" -F "language=zh"
The results were unambiguous:
| Song | Sung up to | What was missing |
|---|---|---|
| 糖画小仙 | final chorus, last line | the entire [Outro] |
| 溪边捉云记 | [Bridge] at 215 s |
solo + final chorus + outro |
| 寒露拾桂子 | [Bridge] at 215 s |
final chorus + outro |
| 纸鸢与旧木偶 | final chorus, line 5 | rest of chorus + outro |
So: not a mixing artefact, not a fade-out. The songs were structurally incomplete.
Three fixes that did nothing, and one that half-worked
1. Raising the BPM — no effect
The obvious reasoning: faster tempo, more syllables per second, more lyrics fit in the same window. I tested this across the batch: the 117 BPM guofeng tracks and the 140 BPM DJ remixes had effectively identical throughput.
YuE2's duration comes from the ABC planner's bar count, not from the BPM token in your style prompt. The BPM tag shapes the feel; it does not buy you room. Stop tuning it for duration.
2. Re-running with the same seed — silently does nothing
ComfyUI was started with --cache-classic, so resubmitting a byte-identical
prompt — same style, same lyrics, same seed — hits the node cache. The job
"completes" in about ten seconds and hands you back the same truncated audio
with a _00002 filename.
It looks like a fast, successful retry. It is a cache hit on a known-bad take.
3. Rolling new seeds — works about 3 times out of 4
The planner's bar allocation depends on the seed, so a different seed really can produce a shorter, complete song from the same lyrics. This rescued three of my four clipped tracks:
| Song | Original | New seed | Result |
|---|---|---|---|
| 溪边捉云记 | clipped at 281 s | 20002 | 279.7 s, complete |
| 外婆的绿搪瓷碗 | clipped at 300 s | 20007 | 251.9 s, complete |
| 北溟有小鱼 | clipped at 300 s | 20005, 30005 | clipped again |
The budget is characters per second — and it isn't constant
I tried to turn this into arithmetic: count the Chinese characters, divide by a throughput figure, get the duration. The measurements refused to cooperate.
| Song | Characters | Cap | Actual | Fits? |
|---|---|---|---|---|
| 糖画小仙 | 556 | 272 s | 258.7 s | ✅ |
| 纸鸢与旧木偶 | 572 | 300 s | 279.9 s | ✅ |
| 溪边捉云记 | 578 | 281 s | 281.0 s | ❌ cut |
| 小楼檐下听雨眠 | 580 | 300 s | 256.3 s | ✅ |
| 画卷小锦鲤 | 634 | 300 s | 285.9 s | ✅ |
| 三楼窗台的蒲公英 | 693 | 329 s | 247.4 s | ✅ |
| 弄堂口的竹蜻蜓 | 692 | 300 s | 250.0 s | ✅ |
Read the last two rows against the third. 693 characters finished in 247 seconds, while 578 characters overflowed 281 seconds. A lyrics-to-duration formula simply does not exist here — the observed throughput ranges from about 2.0 to 2.8 Chinese characters per second, depending on how the planner chops the sections.
So characters are useful for a budget warning, not for setting a timer.
The limit that actually binds: VRAM
Once you accept "give it enough room and let it close naturally", the cap wants to be large. On a 12 GB card it cannot be.
Measured peak VRAM while rendering, sampled every five seconds with
nvidia-smi during the run:
max_duration |
Peak VRAM |
|---|---|
| 240 s | 10.3 GB |
| 272 s | 11.65 GB |
| 278 s | 11.07 GB |
| 281 s | 12.06 GB |
| 300 s | 12.03 GB |
The card has 12.288 GB. 300 seconds is the practical ceiling — past that you are one desktop browser tab away from an out-of-memory abort in the middle of a six-minute render.
The fix
Three changes, all cheap:
- Set the cap to 300 s and let the planner close the song itself. Do not chase a target length; give it headroom and it ends where the music ends.
- Archive clipped takes instead of mixing them in. A take whose duration
equals the cap goes to
未自然结尾\("did not end naturally"). The output folder then contains only complete songs, and re-renders never destroy a usable take. - Cap the seed roulette at three attempts. Different seeds help, but a song whose lyrics genuinely need more than the VRAM ceiling allows will fail forever. Three strikes and you trim the lyric sheet — don't burn an hour of GPU pretending the next seed will be the one.
The song that never fit
One of the twelve never made it. 北溟有小鱼 — 593 characters — failed five times:
| Attempt | Parameters | Result |
|---|---|---|
| 1 | seed 10005, cap 287 s | hit 287 s |
| 2 | seed 10005, cap 300 s | hit 300 s |
| 3 | seed 20005, cap 300 s | hit 300 s |
| 4 | seed 30005, cap 300 s | hit 300 s |
| 5 | seed 40005, both instrumental sections removed | hit 300 s |
I even deleted the [Interlude] and [Instrumental Solo] markers — 12 sections
down to 10, not one sung word changed — and it still overflowed. Its planner
wants more time than a 12 GB card can give. The honest fix is to cut about 40
characters of lyric and re-render, and I would rather tell you that than ship a
twelfth track with a bitten-off ending.
A trap I hit before any of this
Worth its own warning: YuE2 will sing the Chinese production notes in your lyric sheet.
If you paste lyrics that look like this — which is how most lyric sheets are written —
[Intro]
(重鼓点起,急促琵琶轮指,唢呐破空,合成器铺底)
嘿!哈!山海震!
…then that parenthetical line becomes a lyric. The model does not know it is a stage direction. Strip them before submitting:
clean = "\n".join(l for l in raw.split("\n")
if not re.match(r"^\s*[((].*[))]\s*$", l))
Arrangement and dynamics belong in the style prompt. The lyric box gets section tags and sung words, nothing else.
What I'd do differently
- Pre-flight the lyric sheet, not the render. Count characters first. Over roughly 600 characters on a 12 GB card, expect trouble; over 550, expect to trim something.
- Never set
max_durationto a target length. Set it generously above the estimate and let the planner finish. The cap is a safety rail, not a dial. - Treat "duration == cap" as a hard failure in the pipeline, not something you notice three days later when a chorus sounds wrong.
- Re-run with a new seed before touching the lyrics — it is free and works most of the time. Then stop at three.
Eleven tracks
These are the ones that closed naturally, sung by a child voice, in Mandarin, on a 12 GB card that cost less than a year of cloud music credits. Each player below has synced lyrics — the timing was recovered by transcription and aligned against the written lyrics, since the model emits no timestamps.
<style> .yue2-track{margin:2.2rem 0} .yue2-track audio{width:100%;max-width:560px} .yue2-box{position:relative;max-height:250px;overflow-y:auto;border:1px solid var(--border,#3a3f47);border-radius:8px;padding:.7rem 1rem;margin-top:.6rem;font-size:.95em;line-height:1.6} .yue2-box p{margin:.18rem 0;opacity:.55} .yue2-box p.on{opacity:1;font-weight:600;color:var(--accent,#22c55e)} </style>1. 糖画小仙 — Sugar-Painting Fairy
Guofeng electronic · 556 characters · 259 s
[00:16.38]青石板路亮起红灯笼 [00:19.74]我踮起脚尖钻进人海中 [00:24.50]铜锅里的麦芽糖咕嘟咕嘟响 [00:28.20]甜丝丝的风吹红我脸庞 [00:31.22]老爷爷手腕轻轻晃一晃 [00:36.52]金黄的丝线落在石板上 [00:40.22]左一圈是尾巴右一勾是翅膀 [00:43.68]我数着星星等它亮晶晶登场 [00:48.76]竹签儿转呀转出小月亮 [00:52.46]笛声悠悠飘过青瓦墙 [00:55.20]快看那糖画眨了眨眼眶 [00:59.36]悄悄对我说今夜去飞翔 [01:04.04]我是提着灯笼的糖画小仙 [01:07.92]骑着金丝小龙飞过屋檐 [01:11.36]琵琶声哒哒敲打着云烟 [01:15.26]把甜味洒满整条长安街 [01:19.70]蝴蝶在发梢跳起圆圈舞 [01:23.30]小凤凰衔来春天的露珠 [01:27.06]一口咬下月亮的甜脆边角 [01:31.58]连梦里都带着桂花的味道 [01:52.64]小铜勺画出一只小花猫 [01:54.62]胡须翘翘对着我喵喵叫 [01:56.52]旁边的弟弟馋得直跺脚 [01:58.50]我举高竹签偏偏不给瞧 [02:00.72]鼓点像心跳蹦蹦停不了 [02:03.04]石榴裙摆跟着风儿摇 [02:05.20]糖人儿突然拉住我的手 [02:06.64]带我穿过灯火去银河游一游 [02:08.78]竹签儿转呀转出小月亮 [02:12.46]笛声悠悠飘过青瓦墙 [02:15.14]快看那糖画眨了眨眼眶 [02:19.70]悄悄对我说今夜去飞翔 [02:24.12]我是提着灯笼的糖画小仙 [02:28.50]骑着金丝小龙飞过屋檐 [02:31.28]琵琶声哒哒敲打着云烟 [02:35.20]把甜味洒满整条长安街 [02:39.70]蝴蝶在发梢跳起圆圈舞 [02:43.68]小凤凰衔来春天的露珠 [02:47.66]一口咬下月亮的甜脆边角 [02:51.56]连梦里都带着桂花的味道 [02:56.46]不怕夜风凉也不怕路遥远 [03:00.62]童话就藏在一勺甜里边 [03:04.22]只要心里还有亮晶晶的光 [03:08.08]每一朵云彩都是麦芽糖 [03:28.10]我是提着灯笼的糖画小仙 [03:32.00]骑着金丝小龙飞向天边 [03:36.48]古筝声铮铮唤醒了星辰 [03:39.22]万家灯火都为我敞开门 [03:43.42]蝴蝶在发梢跳起圆圈舞 [03:47.26]小凤凰衔来春天的露珠 [03:51.10]一口咬下月亮的甜脆边角 [03:55.52]全世界的开心都装进荷包 [04:01.56]糖画转呀转 [04:02.76]灯火闪呀闪 [04:05.74]小仙女困了 [04:09.72]枕着甜梦晚安
2. 溪边捉云记 — Catching Clouds by the Stream
Guofeng electronic · 578 characters · 280 s
[00:18.38]阵雨刚刚洗干净小山坡 [00:22.40]荷叶上滚着圆圆的水珠儿 [00:25.18]我卷起裤脚拎着小竹篓 [00:30.10]光着脚丫踩碎溪里的云朵 [00:35.44]小螃蟹吐着泡泡横着走 [00:38.16]红蜻蜓停在芦苇尖上头 [00:42.22]山风吹过竹林沙沙地唱歌 [00:45.88]水底的太阳公公看着我笑呵呵 [00:50.40]竹笛吹开山谷里的薄雾 [00:54.42]水花溅湿我的小布鞋 [00:58.50]伸出手想把白云装进篓 [01:02.16]它却化作浪花溜出指缝间 [01:06.12]空山新雨后呀溪水哗啦啦 [01:10.32]我是山里最忙的小娃娃 [01:15.36]东边追小鱼西边数落花 [01:18.48]把彩虹借来当我的发卡 [01:24.20]古筝弹得水波一圈一圈晃 [01:26.62]松果掉进水里咚的一声响 [01:30.80]夕阳催我回家吃饭我不听 [01:34.76]还要跟小月亮捉迷藏到天明 [01:55.38]青苔石上坐着小青蛙 [01:59.12]鼓着肚皮像个小喇叭 [02:03.28]我折了一只歪歪的纸船儿 [02:07.28]载着三片花瓣顺水去天涯 [02:11.74]山那头住着神仙老爷爷吗 [02:15.82]会不会收到我寄去的悄悄话 [02:20.92]泥点子画在我鼻尖像小花猫 [02:24.48]脆生生的笑声惊飞了白鹭鸟 [02:28.10]竹笛吹开山谷里的薄雾 [02:32.10]水花溅湿我的小布鞋 [02:36.16]伸出手想把白云装进篓 [02:39.76]它却化作浪花溜出指缝间 [02:44.34]空山新雨后呀溪水哗啦啦 [02:48.54]我是山里最忙的小娃娃 [02:52.98]东边追小鱼西边数落花 [02:56.18]把彩虹借来当我的发卡 [03:01.84]古筝弹得水波一圈一圈晃 [03:04.30]松果掉进水里咚的一声响 [03:08.44]夕阳催我回家吃饭我不听 [03:12.38]还要跟小月亮捉迷藏到天明 [03:16.94]小溪水慢些流等等我脚步 [03:20.68]竹篓里装满了夏天的礼物 [03:24.94]一颗鹅卵石加上半朵云 [03:28.66]全都藏进我小小的秘密木盒里 [03:51.98]空山新雨后呀溪水哗啦啦 [03:55.62]我是山里最快乐的小娃娃 [03:59.48]东边追小鱼西边数落花 [04:03.24]把星光借来当我的发卡 [04:07.66]琵琶声伴着晚风轻轻唱 [04:12.26]炊烟升起在温暖的村庄 [04:16.52]娘亲在村口喊着我的小名 [04:19.68]我提着满篓月光蹦蹦跳跳回庭院 [04:24.42]溪水哗啦啦 [04:25.62]蛙声呱呱呱 [04:27.66]云朵睡着啦 [04:33.04]明天再来捉它
3. 寒露拾桂子 — Picking Osmanthus at Cold Dew
Guofeng electronic · 578 characters · 290 s
[00:19.03]日历翻到寒露的那一页 [00:23.33]院子里的秋风有了一点凉 [00:28.06]我披上娘亲缝的小夹袄 [00:32.36]提着小竹篮跑到桂花树旁 [00:37.82]金黄的小花朵像雨点落下 [00:40.62]沾满我的刘海和麻花辫上 [00:45.72]大黄狗围着我的裙角打转 [00:49.40]一不小心踩响了满地金黄 [00:54.36]远处的笛声吹落了晚霞 [00:57.84]大雁排成人字飞向南方 [01:01.70]我把桂花一朵一朵收好 [01:06.66]留住整个秋天最甜的时光 [01:10.48]寒露的风儿吹呀吹散了云裳 [01:14.58]小小姑娘在桂花雨里忙 [01:19.70]一层桂花铺上一层白砂糖 [01:24.98]封进玻璃罐里等冬天品尝 [01:27.86]琵琶和古筝在屋檐下对唱 [01:31.94]红枫叶寄去远方的思念长 [01:37.16]哪怕霜花染白了小窗台 [01:41.46]我的小竹篮里永远有春光 [02:05.32]石桌上摆着柿子红彤彤 [02:07.64]我偷偷尝了一口甜进心中 [02:13.48]蚂蚁搬着花瓣排成了长队 [02:17.02]我蹲在地上看了一刻钟 [02:21.64]竹篮装满了一半金桂香 [02:25.10]另一半装进落叶和夕阳 [02:29.14]摇摇晃晃走过九曲小回廊 [02:33.92]影子被拉得又细又长 [02:39.10]远处的笛声吹落了晚霞 [02:42.58]大雁排成人字飞向南方 [02:47.02]我把桂花一朵一朵收好 [02:51.28]留住整个秋天最甜的时光 [02:55.28]寒露的风儿吹呀吹散了云裳 [02:59.24]小小姑娘在桂花雨里忙 [03:04.34]一层桂花铺上一层白砂糖 [03:09.70]封进玻璃罐里等冬天品尝 [03:12.56]琵琶和古筝在屋檐下对唱 [03:16.64]红枫叶寄去远方的思念长 [03:21.88]哪怕霜花染白了小窗台 [03:26.18]我的小竹篮里永远有春光 [03:32.18]节气一轮一轮慢慢走 [03:35.70]小树苗陪着我一起长高 [03:40.12]等到来年春暖花再开 [03:43.62]再把这罐秋天的甜味打开 [03:50.02]寒露的月光洒呀洒满小院墙 [03:53.86]小小姑娘在桂花梦里晃 [03:59.00]一层星光铺上一层桂花糖 [04:03.24]送给夜空中最亮的那道光 [04:08.38]弦乐与古筝在云端上回响 [04:11.80]千山万水都闻到这抹香 [04:16.52]不管岁月走得有多匆忙 [04:20.74]童年的桂花永远不会遗忘 [04:25.70]寒露凉呀桂花香 [04:29.60]小小竹篮装月光 [04:34.28]摇啊摇到外婆桥 [04:38.26]秋天的甜梦真漫长
4. 纸鸢与旧木偶 — The Kite and the Old Puppet
Guofeng ballad · 572 characters · 280 s
[00:14.64]老戏台的青苔爬上了木桩 [00:20.50]雨水顺着褪色的画梁滴落 [00:27.38]我抱膝坐在角落的竹筐旁 [00:31.38]看见你静静躺在灰尘中央 [00:34.42]半边脸颊还留着红胭脂妆 [00:41.04]身上的彩衣已经有些微凉 [00:44.72]是谁把丝线遗忘在旧时光 [00:47.64]让你独自守着空荡的剧场 [00:54.06]我用衣袖擦去你眼角的灰 [00:57.56]解下发间的红绳系上你手背 [01:00.56]风吹过空巷像一声轻叹 [01:03.68]我轻轻摇晃你便抬起眉眼 [01:09.16]小木偶呀你别怕夜黑风高 [01:12.98]我提着小灯笼陪你跳一曲歌谣 [01:16.52]指尖的红丝线一牵一绕 [01:20.26]旧戏台又亮起从前的热闹 [01:23.38]唱一段悲欢呀叹一段离合 [01:26.36]清亮的童音穿过雨幕飘摇 [01:29.78]哪怕看戏的人早就散了场 [01:33.00]还有我为你鼓掌到天亮 [01:53.12]你曾看过多少繁华的灯火 [01:58.92]听过多少台下热烈的喝彩 [02:05.72]如今只剩燕子在梁上筑窝 [02:09.72]和一只淋湿翅膀的纸鸢作伴 [02:13.06]我把纸鸢修好放在你身旁 [02:19.28]给你们讲山外小镇的故事长 [02:23.40]木偶的嘴角仿佛弯了一弯 [02:26.00]在摇曳烛光里不再孤单 [02:32.48]我用衣袖擦去你眼角的灰 [02:35.86]解下发间的红绳系上你手背 [02:38.88]风吹过空巷像一声轻叹 [02:42.04]我轻轻摇晃你便抬起眉眼 [02:47.52]小木偶呀你别怕夜黑风高 [02:51.32]我提着小灯笼陪你跳一曲歌谣 [02:55.38]指尖的红丝线一牵一绕 [02:59.02]旧戏台又亮起从前的热闹 [03:01.42]唱一段悲欢呀叹一段离合 [03:04.74]清亮的童音穿过雨幕飘摇 [03:08.08]哪怕看戏的人早就散了场 [03:11.30]还有我为你鼓掌到天亮 [03:18.40]啦——啊—— [03:25.92]丝线不断情意不散 [03:31.44]啦——啊—— [03:38.24]木偶有心岁月生香 [03:44.20]小木偶呀你看那雨过天晴 [03:47.90]漫天的星河落进古老的屋檐 [03:51.48]指尖的红丝线越飞越高 [03:54.74]带着纸鸢飞向云端的怀抱 [03:58.06]唱一段春秋呀绘一幅人间 [04:01.34]纯净的歌声回荡在天地之间 [04:04.70]就算我有一天也会长大走远 [04:08.06]这曲童年的戏永远留在心田 [04:14.80]红绳系手腕 [04:19.32]木偶入梦乡 [04:23.12]旧戏台安静 [04:26.30]月光白如霜
5. 小楼檐下听雨眠 — Listening to Rain Under the Eaves
Guofeng ballad · 580 characters · 256 s
[00:16.16]滴答滴答雨水顺着瓦当落 [00:19.40]在青石天井敲出小小的水涡 [00:23.86]我搬来小木凳坐在门槛旁 [00:26.36]双手托着下巴数着雨点儿多 [00:30.74]院里的芭蕉叶被洗得碧绿 [00:33.36]小花猫蜷在竹椅上打着呼噜 [00:37.16]阿姐出门时说天黑前就回 [00:40.30]怎么巷口还没看见那把油纸伞 [00:43.88]风儿吹动檐下的铜风铃 [00:47.46]叮当声混着细雨轻又轻 [00:50.90]我折了一只白色的纸青蛙 [00:53.52]请它去巷口帮我探一探口信 [00:59.00]山外小楼夜听雨呀雨绵绵 [01:03.14]小姑娘守着灯火不肯眠 [01:06.58]数过一滴雨又数过一片云 [01:10.22]等那熟悉的脚步声响在门前 [01:14.20]古筝弹碎了江南的烟雨天 [01:17.48]笛声绕着青砖黛瓦转呀转 [01:20.82]阿姐你可别在路上贪看风景 [01:24.06]家里的桂花糕还温在灶台边 [01:42.88]窗纸上映着摇晃的竹影儿 [01:45.54]奶奶在灯下穿针又引线 [01:48.70]我趴在窗台哈出一团白气 [01:51.68]用手指画出一个圆圆的笑脸 [01:55.94]水缸里的红金鱼摆着尾巴 [01:59.18]好像也在听屋檐滴水的节拍 [02:02.32]雨声越下越密像一张小网 [02:05.76]把整个夜晚都轻轻网在里边 [02:10.98]风儿吹动檐下的铜风铃 [02:13.24]叮当声混着细雨轻又轻 [02:16.66]我折了一只白色的纸青蛙 [02:20.56]请它去巷口帮我探一探口信 [02:25.58]山外小楼夜听雨呀雨绵绵 [02:28.96]小姑娘守着灯火不肯眠 [02:32.42]数过一滴雨又数过一片云 [02:36.34]等那熟悉的脚步声响在门前 [02:40.36]古筝弹碎了江南的烟雨天 [02:43.30]笛声绕着青砖黛瓦转呀转 [02:45.80]阿姐你可别在路上贪看风景 [02:49.90]家里的桂花糕还温在灶台边 [02:53.96]啦——呀—— [02:55.64]雨打芭蕉叶儿垂 [03:01.04]啦——呀—— [03:04.48]油纸伞儿快快归 [03:21.66]山外小楼夜听雨呀雨渐停 [03:24.98]巷口忽然亮起一盏暖黄灯 [03:28.86]油纸伞转开晶莹的小水花 [03:32.58]阿姐笑着唤我熟悉的小名 [03:37.40]二胡与弦乐拉出团圆的暖意 [03:38.76]怀里揣着刚买的热糖炒栗子 [03:42.16]原来最美的风景不在山外头 [03:46.20]就在这屋檐下灯火相依的眼眸 [03:51.24]雨声慢慢停 [03:55.20]风铃轻轻响 [03:59.18]吃颗甜栗子 [04:04.86]钻进被窝里
6. 外婆的绿搪瓷碗 — Grandma's Green Enamel Bowl
Urban folk · 679 characters · 252 s
[00:14.28]外婆家的院子有一棵老槐树 [00:16.84]夏天的时候知了叫得特别响 [00:19.78]我坐在小板凳上剥着毛豆壳 [00:23.26]阳光透过树叶掉在我的膝盖上 [00:27.60]厨房里有一只绿色的搪瓷碗 [00:31.56]碗边磕掉了一块黑色的瓷儿 [00:33.64]外婆总用它给我盛满凉白开 [00:37.44]或者装满刚切好的沙瓤大西瓜 [00:42.04]收音机里放着听不懂的老歌 [00:44.82]蒲扇一下一下摇走夏天的热 [00:47.36]那时候觉得下午总是很长很长 [00:51.14]长到一觉睡醒太阳还没落山坡 [00:56.14]外婆你慢点走等等我的小短腿 [01:00.04]菜市场的小路石板有些滑 [01:03.02]我帮你提着两颗绿油油的青菜 [01:06.52]你给我买一块五毛钱的橘子冰 [01:11.60]绿搪瓷碗里装过多少顿晚饭 [01:13.70]一碗西红柿炒蛋就能吃得很香 [01:17.12]墙头的老花猫眯着眼睛打哈欠 [01:20.30]日子就像井水一样安静又清凉 [01:41.32]外婆的针线盒是个铁皮饼干桶 [01:44.84]里面装着五颜六色的小纽扣 [01:48.02]我最喜欢把它们倒在竹席上 [01:51.16]一颗一颗排成弯弯的小火车 [01:54.84]傍晚的时候胡同里飘来饭菜香 [01:58.34]外婆站在门口扯着嗓子喊我回家 [02:01.32]我拍拍屁股上的土跑进院门 [02:04.94]先喝一口搪瓷碗里的绿豆汤 [02:08.30]收音机里放着听不懂的老歌 [02:12.48]蒲扇一下一下摇走夏天的热 [02:14.78]那时候觉得下午总是很长很长 [02:19.10]长到一觉睡醒太阳还没落山坡 [02:23.56]外婆你慢点走等等我的小短腿 [02:27.46]菜市场的小路石板有些滑 [02:29.98]我帮你提着两颗绿油油的青菜 [02:33.78]你给我买一块五毛钱的橘子冰 [02:38.80]绿搪瓷碗里装过多少顿晚饭 [02:41.14]一碗西红柿炒蛋就能吃得很香 [02:44.58]墙头的老花猫眯着眼睛打哈欠 [02:47.72]日子就像井水一样安静又清凉 [02:55.02]后来老平房画上了拆字圆圈 [02:58.28]我们搬进了高高的水泥楼房 [03:01.50]外婆把那只绿搪瓷碗包在布里 [03:04.78]说这是陪我长大的老伙计不能忘 [03:25.96]外婆你别变老等等我再长高一点 [03:29.00]换我牵着你的手去公园晒太阳 [03:32.28]我给你剥最甜的那颗红富士苹果 [03:36.02]给你讲学校里发生的稀奇事儿 [03:40.74]绿搪瓷碗还放在橱柜最里边 [03:43.08]盛满了老院子回不去的夏天 [03:45.80]只要外婆还在身边摸摸我的头 [03:49.98]哪里都是最安心的那个小院 [03:56.66]木吉他轻轻弹 [04:00.08]蒲扇慢慢摇 [04:03.90]绿搪瓷碗里的夏天 [04:05.82]我一直记着呢
7. 弄堂口的竹蜻蜓 — The Bamboo Dragonfly at the Alley Mouth
Urban folk · 692 characters · 250 s
[00:11.58]弄堂口停着一辆蓝色的大卡车 [00:14.78]工人们把大衣柜抬下木楼梯 [00:17.73]我坐在红色的小塑料板凳上 [00:20.69]手里捏着你昨天给我的竹蜻蜓 [00:23.89]白衬衫的晾衣杆还在头顶晃 [00:26.85]卖冰棍的自行车叮铃铃路过 [00:29.80]你抱着一只装满弹珠的玻璃罐 [00:31.00]站在太阳底下不知道说什么 [00:35.58]平时这个时候我们早就在捉迷藏 [00:41.18]躲在煤球炉子后面捂着嘴偷笑 [00:46.90]今天大人们忙着打包旧报纸 [00:50.52]连巷子里的风都变得静悄悄 [00:56.16]竹蜻蜓飞呀飞上二楼的晒台 [00:58.48]转着圈儿落进长满青苔的花盆 [01:01.12]你说新家在很远的江北新区 [01:03.88]要坐十几站公交车才能到那儿 [01:06.70]我把最漂亮的那张贴纸贴在你手背 [01:11.06]你把竹蜻蜓塞进我的小口袋 [01:12.58]大人说以后放假还能再见面 [01:15.16]可我知道弄堂口只剩我一个人发呆 [01:32.00]我们在水泥地上画过的跳房子 [01:34.96]被昨天的雨水冲淡了一大半 [01:37.62]小卖部门口的摇摇车还在唱歌 [01:41.22]投进一块钱就能去太空转一转 [01:43.42]你妈妈喊你上车系好安全带 [01:45.96]你隔着车窗对我用力挥挥手 [01:49.26]大卡车突突突地冒着白烟开走 [01:51.48]拐过街角再也看不见影踪 [01:56.58]平时这个时候我们早就在捉迷藏 [02:02.18]躲在煤球炉子后面捂着嘴偷笑 [02:07.84]今天大人们忙着打包旧报纸 [02:10.76]连巷子里的风都变得静悄悄 [02:15.48]竹蜻蜓飞呀飞上二楼的晒台 [02:19.36]转着圈儿落进长满青苔的花盆 [02:22.02]你说新家在很远的江北新区 [02:24.82]要坐十几站公交车才能到那儿 [02:27.62]我把最漂亮的那张贴纸贴在你手背 [02:31.00]你把竹蜻蜓塞进我的小口袋 [02:33.40]大人说以后放假还能再见面 [02:36.12]可我知道弄堂口只剩我一个人发呆 [02:41.56]手心一搓竹蜻蜓又飞了起来 [02:47.22]飞过老电线杆飞过麻雀的翅膀 [02:52.94]如果它能飞得像风筝一样高 [02:57.60]能不能替我去看看你的新书房 [03:15.34]竹蜻蜓飞呀飞进傍晚的红云彩 [03:18.58]弄堂里的路灯一盏接一盏亮起来 [03:22.20]妈妈在楼上喊我收衣服吃晚饭 [03:23.70]我把玻璃弹珠装进小书包里边 [03:26.30]也许明天会有新的小朋友搬来 [03:29.18]也许我也会慢慢习惯一个人玩 [03:32.10]但我会一直留着这只竹蜻蜓 [03:36.98]和弄堂口那个晒满太阳的夏天 [03:43.34]大卡车走远了 [03:46.88]竹蜻蜓落下来 [03:48.14]再见啦我的好朋友 [03:52.64]要在新学校天天开心呀
8. 三楼窗台的蒲公英 — Dandelion on the Third-Floor Windowsill
Urban folk · 693 characters · 247 s
[00:14.30]我家住在红砖楼的第三层 [00:16.90]窗台外面的铁栏杆漆成了绿色 [00:20.26]角落里不知什么时候长出一株草 [00:23.76]开出一朵毛茸茸的白色蒲公英 [00:27.12]楼下的修车摊大爷戴着老花镜 [00:30.60]爸爸推着那辆掉漆的二八自行车 [00:34.82]链条转起来哗啦哗啦地响 [00:37.00]车后座绑着我放学坐的小软垫 [00:41.88]作业本上还有两道算术题没写完 [00:45.10]铅笔头上的橡皮擦得圆圆的 [00:47.70]晚风吹过十九路公交车的站牌 [00:51.54]报站的声音听起来有点困了 [00:54.82]三楼窗台的蒲公英呀你要去哪里 [00:58.62]外面的高楼大厦会不会挡住你 [01:01.80]我轻轻吹一口气送你上天去 [01:04.82]替我去看看云朵后面的秘密 [01:08.58]爸爸的自行车铃铛叮铃铃地响 [01:11.88]妈妈在厨房切着土豆丝咔嚓嚓 [01:15.12]城市的傍晚没有森林和大海 [01:18.72]却有千家万户亮起的温暖窗花 [01:35.60]对门的老爷爷喜欢在阳台养信鸽 [01:39.18]每天傍晚哨子一吹鸽群就盘旋 [01:42.62]我用彩笔在日记本上画下翅膀 [01:46.00]涂上橘红色的晚霞和蓝色的天 [01:49.62]楼下卖烤红薯的三轮车停在路边 [01:53.44]甜甜的焦香味一直飘进我房间 [01:56.26]我数着储蓄罐里的硬币叮当响 [01:59.72]想给爸爸妈妈一人买一块尝尝鲜 [02:04.14]作业本上还有两道算术题没写完 [02:07.36]铅笔头上的橡皮擦得圆圆的 [02:09.98]晚风吹过十九路公交车的站牌 [02:13.80]报站的声音听起来有点困了 [02:17.60]三楼窗台的蒲公英呀你要去哪里 [02:21.30]外面的高楼大厦会不会挡住你 [02:24.08]我轻轻吹一口气送你上天去 [02:27.52]替我去看看云朵后面的秘密 [02:30.98]爸爸的自行车铃铛叮铃铃地响 [02:34.16]妈妈在厨房切着土豆丝咔嚓嚓 [02:37.42]城市的傍晚没有森林和大海 [02:41.00]却有千家万户亮起的温暖窗花 [02:45.26]小小的伞兵飘过晾衣架 [02:47.74]落在对面小弟弟的玩具车上 [02:51.14]原来长大就像蒲公英的种子 [02:54.32]总有一天要飞向更远的地方 [03:12.24]三楼窗台的蒲公英呀明年还会开 [03:15.54]我的身高线又在门框上画高了一截 [03:19.54]把小小的心愿折成纸飞机扔出去 [03:22.54]穿过梧桐树梢飞向满天星辉 [03:26.52]爸爸的旧单车停在楼道口休息 [03:29.50]一家人围在桌前喝着热玉米粥 [03:32.10]这平平常常的每一天我都记在心里 [03:36.03]就是我童年最珍贵的童话书 [03:42.84]蒲公英飞走了 [03:45.76]路灯亮起来了 [03:48.28]作业写完啦 [03:51.94]晚安我的小窗台
9. 小哪吒借红绫 — Little Nezha Borrows the Red Sash
Guofeng DJ remix · 612 characters · 271 s
[00:28.98]双丸子头扎起红绸带迎风扬 [00:32.42]小木枪在手心转出万道金光 [00:35.86]莫笑我年纪小个头才到桌角 [00:39.30]一招一式都能把乌云全刺破 [00:42.74]陈塘关的海浪拍打着石城墙 [00:45.28]夜叉在雷雨里张牙舞爪叫嚣 [00:48.62]我踩上滑板当作我的风火轮 [00:53.02]乾坤圈一扔震碎满天狂飙 [00:57.64]琵琶声急促像急雨落玉盘 [00:59.78]战鼓擂响点燃心中的火焰 [01:02.32]看我小小身影冲进风暴眼 [01:05.90]天高海阔任我闯荡立誓言 [01:11.26]借我三尺混天绫呀翻江又倒海 [01:14.40]我是天地之间最飒的小小孩 [01:17.86]电音节拍震得四海龙王抖三抖 [01:22.16]唢呐一响万道霞光为我开 [01:25.82]乾坤圈转出日月星辰的节拍 [01:28.12]小小的拳头也能打破旧安排 [01:31.60]哪怕前方有十万天兵拦住路 [01:34.82]我自仰天大笑踏破凌霄台 [01:53.02]金砖在书包里闪着耀眼的光 [01:56.26]九龙神火罩护住身后的村庄 [01:58.88]谁说小姑娘只能安静绣花朵 [02:03.12]我偏要披上战甲去巡视八荒 [02:06.20]左脚踏碎惊雷右脚踢开巨浪 [02:09.20]把黑夜变成五光十色的游乐场 [02:12.62]眉心一点红砂亮得像小太阳 [02:16.06]全场的灯光都跟着我一起晃 [02:19.58]琵琶声急促像急雨落玉盘 [02:23.78]战鼓擂响点燃心中的火焰 [02:26.36]看我小小身影冲进风暴眼 [02:29.82]天高海阔任我闯荡立誓言 [02:35.26]借我三尺混天绫呀翻江又倒海 [02:38.84]我是天地之间最飒的小小孩 [02:41.86]电音节拍震得四海龙王抖三抖 [02:46.20]唢呐一响万道霞光为我开 [02:49.60]乾坤圈转出日月星辰的节拍 [02:52.18]小小的拳头也能打破旧安排 [02:55.56]哪怕前方有十万天兵拦住路 [02:58.84]我自仰天大笑踏破凌霄台 [03:02.44]风火轮转不停 [03:06.20]红绫舞破天际 [03:09.66]少年志不言弃 [03:13.06]看我一战成名 [03:33.54]借我三尺混天绫呀搅动九重天 [03:36.64]小小女童也有大圣般的威严 [03:40.04]重低音轰鸣唤醒沉睡的山川 [03:44.70]古筝与电音齐奏最燃的诗篇 [03:48.12]乾坤圈转出万里山河新画卷 [03:50.80]所有的烦恼统统震碎成云烟 [03:53.86]今夜把星辰大海都当作舞台 [03:57.30]跟着我的节奏一起嗨翻天 [04:00.68]红绫飞呀飞 [04:02.72]金鼓擂呀擂 [04:03.92]小小小哪吒 [04:05.12]威风震四海
10. 画卷小锦鲤 — The Koi That Left the Painting
Guofeng DJ remix · 634 characters · 286 s
[00:32.42]宣纸画卷在月光下慢慢展开 [00:34.54]水墨渲染出一池碧绿的荷花台 [00:38.12]我穿上一袭红裙从画里跳出来 [00:41.72]摇一摇小尾巴吐出七彩云彩 [00:45.40]千年的古镇亮起霓虹的灯牌 [00:49.66]电子的鼓点敲得石拱桥摇摆 [00:52.44]别看我只是一尾小小红锦鲤 [00:56.10]心里装着跃过龙门的英雄气概 [01:01.64]古筝拨响急促的浪花一朵朵 [01:03.22]合成器的音浪推着我往前冲 [01:06.86]倒计时三二一准备起跳升空 [01:10.24]让整条银河都看见我的红影踪 [01:14.52]我是画卷里跑出来的小锦鲤 [01:20.16]乘着电音的巨浪直上九万里 [01:21.36]左摇右摆躲开所有的暴风雨 [01:24.68]一个鲤鱼打挺跃过龙门去 [01:28.06]把好运气统统洒向人间的街巷 [01:32.12]让每张笑脸都闪着金色的光芒 [01:36.52]鼓点咚咚咚敲响最旺的节拍 [01:38.84]跟着小锦鲤一起摇摆发大财 [01:58.10]琉璃瓦上反射着绚烂的激光 [02:00.20]我提着莲花灯在飞檐上奔跑 [02:03.84]金鳞片在夜色里闪得像钻石 [02:07.32]把沉闷的黑夜点亮成不夜城 [02:11.64]不管是高山险滩还是急流弯 [02:14.48]我都笑着当成蹦蹦床来通关 [02:18.06]一口气游过三千六百道波澜 [02:21.72]头顶的小龙角已经露出一尖尖 [02:26.66]古筝拨响急促的浪花一朵朵 [02:30.00]合成器的音浪推着我往前冲 [02:33.58]倒计时三二一准备起跳升空 [02:35.90]让整条银河都看见我的红影踪 [02:39.62]我是画卷里跑出来的小锦鲤 [02:43.84]乘着电音的巨浪直上九万里 [02:46.38]左摇右摆躲开所有的暴风雨 [02:50.22]一个鲤鱼打挺跃过龙门去 [02:53.74]把好运气统统洒向人间的街巷 [02:57.82]让每张笑脸都闪着金色的光芒 [03:03.26]鼓点咚咚咚敲响最旺的节拍 [03:04.56]跟着小锦鲤一起摇摆发大财 [03:08.06]水花四溅跃云端 [03:11.78]金光万道破重关 [03:17.56]锦鲤赐福好运来 [03:18.82]岁岁年年皆灿烂 [03:39.12]我是画卷里最神气的小锦鲤 [03:43.30]化身金龙在九天星河里嬉戏 [03:46.84]竹笛与电音吹散所有的阴霾 [03:49.88]漫天烟花都在为我热烈喝彩 [03:52.84]把福气和欢喜装满每个口袋 [03:56.38]心想事成花开富贵全都来 [03:59.94]最燃的节奏永远不会停下来 [04:03.56]小小锦鲤带你飞向最亮的未来 [04:08.22]锦鲤跳呀跳 [04:09.44]龙门高呀高 [04:14.04]好运来到家门口 [04:18.38]天天开口笑
11. 山海小当家 — Little Boss of the Classic of Mountains and Seas
Guofeng DJ remix · 647 characters · 237 s
[00:16.41]翻开山海经那本厚厚的图鉴 [00:19.85]里面的神兽全都跳到我面前 [00:23.30]小饕餮馋得抱着奶瓶不松手 [00:26.75]九尾狐忙着梳理毛茸茸的尾尖 [00:30.48]我吹响竹哨立下今天的规矩 [00:32.26]排好队伍不许调皮也不许哭泣 [00:35.28]虽然我只是扎着羊角辫的小童 [00:38.76]却是这山海神兽乐园的大统领 [00:42.20]战鼓与电音在昆仑山顶轰鸣 [00:46.12]琵琶弦拨出闪电一般的轨迹 [00:51.12]骑上小麒麟戴上威风的虎头帽 [00:53.30]今夜的山海巡游马上要开启 [00:55.84]我是山海经里最酷的小当家 [00:59.68]带着百兽战队闯荡海角天涯 [01:03.38]重低音一震群山跟着一起晃 [01:06.74]凤凰在头顶铺开五彩的霓裳 [01:10.46]应龙在云端打着节拍呼风唤雨 [01:13.48]白泽在身边为我指点着迷津 [01:16.56]一二三四跟着鼓点大步往前迈 [01:20.36]小小当家要把天地都点燃起来 [01:37.76]毕方鸟点亮了漫山遍野的篝火 [01:41.06]精卫鸟衔来亮晶晶的彩色贝壳 [01:44.74]连打瞌睡的烛龙都睁开了眼睛 [01:47.96]被这动感的电子节拍彻底唤醒 [01:50.72]我拿出糖葫芦分给乖巧的小兽 [01:54.54]谁表现最好就奖励一朵小红花 [01:57.62]古老的神话撞上最潮的电音浪 [02:01.12]整片星空都是我们的游乐场 [02:04.60]战鼓与电音在昆仑山顶轰鸣 [02:08.38]琵琶弦拨出闪电一般的轨迹 [02:11.44]骑上小麒麟戴上威风的虎头帽 [02:15.58]今夜的山海巡游马上要开启 [02:18.12]我是山海经里最酷的小当家 [02:21.56]带着百兽战队闯荡海角天涯 [02:25.94]重低音一震群山跟着一起晃 [02:29.04]凤凰在头顶铺开五彩的霓裳 [02:32.74]应龙在云端打着节拍呼风唤雨 [02:35.76]白泽在身边为我指点着迷津 [02:38.90]一二三四跟着鼓点大步往前迈 [02:42.64]小小当家要把天地都点燃起来 [02:46.92]昆仑山高路不平 [02:50.36]神兽同行显威灵 [02:53.82]唢呐声声震九霄 [02:56.54]山海少年最逍遥 [03:12.96]我是山海经里无敌的小当家 [03:16.44]跨越山海把快乐传遍千万家 [03:20.50]最密的鼓点撞碎所有的孤单 [03:24.20]古筝与合成器奏响狂欢的夜晚 [03:29.28]麒麟踏瑞气九尾摇动满天星 [03:30.48]每一个梦想都在节奏里觉醒 [03:34.40]不管未来还有多少未知的奇遇 [03:37.54]山海小当家永远勇敢冲第一 [03:38.74]小麒麟跑呀跑 [03:39.94]九尾狐笑呀笑 [03:41.14]山海小当家 [03:54.20]明天继续闹