動かざることバグの如し

近づきたいよ 君の理想に

自分の好みの曲が年々短くなっている説

最近の曲、短い説

最近(どこからを最近にするかにもよるが)は年々曲が短くなってきていると聞く。

最新ヒットソングの尺が90年代と比べて約1分以上短くなった理由 | 週刊女性PRIME

ChatGPTに「j-popの曲の長さが年々短くなってきているというのは本当でしょうか?」と聞いたらこう返ってきた。

一般的に、J-popの曲の長さが年々短くなっているという傾向があると言われています。これは、楽曲を制作する際に考慮される要素や、音楽の配信形態が変化したことが原因の一つと考えられています。

例えば、現代の音楽の配信形態では、短い曲の方が再生回数が多く、ストリーミングサービスやSNSでのシェアもしやすいという特徴があります。そのため、アーティストやレーベル側が意図的に曲の長さを短くしているという説もあります。

また、短い曲の方がラジオ放送などでも流れやすく、ライブでの演出もしやすいというメリットがあるため、アーティスト側も短い曲を制作する傾向にあるとされています。

ソースが海外だけど短くなってきているという統計もある。

SpotifyやApple Musicなど音楽ストリーミングの影響でヒット曲がどんどん短くなっている - GIGAZINE

が、別にヒットソングは常日頃自分追っていないし、肝心なのは自分の聴いてる曲の好みが短くなっていっているかである。

そこでPythonを使って調査した。

やり方

色々あってアーティストのアルバムではなく、ウォークマンに入れる時期で50曲ごとにフォルダ分けしている。

つまりそのアルバムごとの平均値の推移を調べれば仮説が正しいか判断ができる。

現時点では50曲入ったアルバムが19(最新の19はまだ50曲ない)あるのでそれぞれの曲の長さを調べていく。

コード

コードは全てChatGPTに生成してもらった。神

import os
from mutagen.mp3 import MP3

def print_song_stats(root_dir):
    for dirpath, dirnames, filenames in os.walk(root_dir):
        if not filenames:
            continue

        total_length = 0
        num_songs = 0

        for filename in filenames:
            if not filename.endswith(".mp3"):
                continue

            try:
                file_path = os.path.join(dirpath, filename)
                audio = MP3(file_path)
                song_length = int(audio.info.length)
                total_length += song_length
                num_songs += 1
            except Exception as e:
                print(f"Error processing {file_path}: {str(e)}")

        if num_songs > 0:
            average_length = total_length / num_songs
            # print(f"{dirpath}\t{num_songs}\t{total_length}\t{average_length}")
            print(f"Directory: {dirpath}")
            print(f"Number of songs: {num_songs}")
            print(f"Total length (seconds): {total_length}")
            print(f"Average length (seconds): {average_length}")
            print()

print_song_stats('/xxxxxx/xxxxxxx/xxxxx')

結果

アルバム1が中学の頃なので最も古く、19が新しい。例えばアルバム10が何時頃だったかはここでは控える(というか本人も覚えていない)

picture 2

これで5アルバム(250曲)の平均値の推移を見ると確かに減っていってる。最初の平均が264秒なので4分24秒だが最後だと246秒で4分6秒になっている。

アルバムごとの平均値をグラフ化する。多少の変動はあっても確実に減少傾向。

picture 3

おまけ

Pythonで曲の長さが取れるのが分かったので曲の長い順、短い順にソートしてみた。以下ランキング

長い曲

1位(6:22) 藤原肇(CV:鈴木みのり)

1位はなんとデレマスの曲だった。デレマスやってないけど。曲はめちゃくちゃ壮大なのに歌詞は土器で面白い。アルバム15

2位(6:16) PRAYING RUN(UVERworld)

UVERworldの2015年の曲。PVだと9分弱あるけど() アルバム10

3位(6:13) 銀の龍の背に乗って(中島みゆき)

僅かな差で3位。2003年リリースらしいけど知ったのはニコ動経由なので結構後。アルバム12

短い曲

2番がない曲とかは省く。

1位(2:18) 宇宙戦艦ヤマト

1番短いのボカロだと思ってたけど違った。アルバム1

2位(2:22) QUEEN

僅かな差で2位。これも相当短く感じるけど。アルバム18

3位(2:24) Surges

ボカロ曲がマイブームだった頃。短くなってるのはボカロが原因では?? アルバム18