くろねこ自由気ままな日記

趣味の話題や忘備録(的な)情報のページ

ブログランキング・にほんブログ村へ

BMW G20 プレイリスト作成 曲数制限は?

こんばんは くろねこです。

オリンピック四連休、如何お過ごしでしょうか?
なんだかんだ言ってましたくろねこも開会式はちょっと感動しました。
無観客のなか、出場するアスリートの皆様も複雑な思いかと思いますが、これまでの成果を発揮し、大いに楽しんでください。

さて、本題に入ります。

今回は、久々のBMWネタです。
以前に、BMW G20 でのプレイリストの記事を投稿しました。

 


今回はその応用編の位置づけで、プレイリストに収録できる曲数の上限を調査しました。
その調査を以下の流れで紹介します。

 

iDriveの曲数制限

以前の愛車 BMW F30 (先代3シリーズ)は2015年式 320i MSport プレイリストに収録できる曲数は、(詳細な曲数の上限値は未調査であるが)概ね、200曲を見安に作成していました。

当時の記事はこちらになります。

プレイリストの作成方法は、F30と基本的には同じで、PCのWindows Media Playerを使用して、wplファイルを作成します。

F30では、この方法で作成したプレイリストで曲数制限を超えた場合、エラーにはならず、単純に無視されるだけでした。

時は流れ、3シリーズも7代目のG20
くろねこの愛車も2020年にG20(M340i xDrive)になり、iDriveもversion7(ID7)になりました。
F30時代の制限はどうなったのでしょうか?

曲数制限確認用プレイリスト作成

曲数制限をどうやって確認するか?
まさか、いちいち数えるなんてできません。

そこで、曲番号をつけたmp3ファイルを用意して、それらをプレイリストに登録すれば、BMWが読み込んだ曲リストを確認するだけで曲数が分ります。

とりあえず、具体的な目標として、1000曲のプレイリストが再生できるかを確認します。

できるだけシンプルに確認作業を実施するため、特定のmp3ファイルを複数のフォルダに分けながら1000個にコピーして、それぞれのファイル名を0000.mp3 ~ 9999.mp3 に変更します。フォルダは、000 ~ 009 の合計10個のフォルダに順番に100個のmp3ファイルを格納します。

言葉で書くとこんな感じですが、これでは簡単に作れないと思う方もいらっしゃると思いますので、Excel VBAを使ってこれらの作業を自動化します。

フォルダとファイルの準備

プレイリストを作成するPC(Windows)の作業ドライブ(ここでは、Dドライブを例として進めます。)に下記フォルダを作成します。
 D:\
  | +- MP3-Test
  |     +- Base
  |     +- Dest

上記のBaseフォルダに、適当なmp3ファイルをコピーして、ファイル名を Base.mp3 にリネームします。
Excel(できれば、2010以降)を起動し、新規ブック作成し、Shift+F11でVBAの画面を呼び出します。VBAProjectに挿入で標準モジュールを追加します。
追加した標準モジュールに下記のコードを貼り付けます。

Option Explicit
Public Sub CreateMP3Data()
    Const pcBase = "D:\MP3-Test\Base\Base.mp3"
    Const pcDest = "D:\MP3-Test\Dest"
    Dim i As Integer
    Dim wkInt As Integer
    Dim wkStr As String
    Dim pvDestPath As String
    
    For i = 0 To 999
        wkInt = i \ 100
        wkStr = Format(wkInt, "000")
        pvDestPath = pcDest & "\" & wkStr
        If (i Mod 100) = 0 Then
            MkDir pvDestPath
        End If
        Call CopyFile(pcBase, pvDestPath & "\" & Format(i, "0000") & ".mp3", True)
    Next
    MsgBox "END!"
End Sub

Private Function CopyFile(pFrom, pTo, pOverwrite)
    Dim pvAns
    Dim pvFileSysObj
    Dim pvTo
    Dim pvFileName
        
    Set pvFileSysObj = CreateObject("Scripting.FileSystemObject")
    On Error Resume Next
    pvFileSysObj.CopyFile pFrom, pTo, pOverwrite
    If Err.Number <> 0 Then
        Select Case Err.Number
        Case -2147024784
            'エラーハンドリングするとErr.Descriptionが通知さないため
            MsgBox "ディスクに十分な空き領域がありません。"
        Case Else
            MsgBox Err.Description
        End Select
        pvAns = False
    End If
    On Error GoTo 0
    Set pvFileSysObj = Nothing
End Function

このExcelブックを、D:\MP3-Tset\testmp3.xlsm で保存します。(マクロ有効ブック)

1000個のmp3ファイル作成

testmp3.xlsmのシートを表示した状態で、Alt+F8 でマクロ画面を表示し、「CreateMP3Data」マクロを実行します。
メッセージボックスで「END!」と表示されたら出来上がりです。

D:\MP3-Test\Destフォルダの配下にフォルダ(000 ~ 009)が作成され、それぞれのフォルダに100個ずつのmp3ファイルが出来上がっているはずです。

f:id:kuronekofreedom:20210725011729j:plain

001フォルダの内容(100個のmp3ファイル)

Windows Media Playerでプレイリスト作成

ファイルエクスプローラで、D:\MP3-Test\Destフォルダを開きます。
検索ボックスに「*.mp3」と入力し検索します。
1000個のmp3ファイルが検索結果として表示されます。
検索結果を全選択します。(Ctrl+A)

Windows Media Playerを起動し、先ほど検索した1000個のmp3ファイルを Windows Media Player にドラッグします。

f:id:kuronekofreedom:20210725011842j:plain

1000個のmp3ファイルをドラッグ&ドロップ

Windows Media Player で曲が再生さるのを確認したら、この再生リストに名前を付け保存します。今回は「testmp3」とします。

保存先は通常なら、C:\Users\XXXXXXXX\Music\Playlistsフォルダになります。

データの編集(ドライブ名の削除)

BMWでは「ドライブ名」の概念が無いので、wplファイルに記述されたドライブ名を撤去します。

f:id:kuronekofreedom:20210725011940j:plain

ドライブ名を削除

USBメモリへのコピー

USBメモリを準備し、FAT32でフォーマットします。
D:\MP3-Tsetフォルダをそのまま、USBメモリにコピーします。
(余計なExcelファイルも含まれていますが、ここは曲数制限の確認のためなので余計なものもコピーします。)

作成したプレイリストをBMWで再生する

USBメモリBMWにやさしく挿入し、
Media → USBメモリの名称 → プレイリスト → mp3test
を選択して再生します。

プレイリストが正しく表示されない場合は、BMWUSBメモリのローディングを実施中なので、しばらく待ってから再生します。

くろねこG20は5月の点検時にシステムバージョンアップしてから、USBのローディングが格段に速くなった気がします。

f:id:kuronekofreedom:20210725012115j:plain

読み込まれたプレイリスト

ランダム表示をOFFにします。先頭が 0000 になります。
画面をスクロールして、ファイル名を確認します。(連番になっています。)

末尾までくると 0999 になります。
これで、1000曲のプレイリストが正常にBMWに認識されました。

f:id:kuronekofreedom:20210725012158j:plain

最終ファイルは 0999 1000曲認識です

曲数制限は大幅に改善されているようです。

まあ、1000曲もあれば、十分ではないでしょうか?

それでは、また。


くろねこ自由気ままな日記

ブログランキング・にほんブログ村へ
© 2020 くろねこ自由気ままな日記