[[20240413130755]] 『MP3に指定したカバーアートを埋め込みたい』(joy) ページの最後に飛ぶ

[ 初めての方へ | 一覧(最新更新順) |

| 全文検索 | 過去ログ ]

 

『MP3に指定したカバーアートを埋め込みたい』(joy)

excelのvbaで指定したMP3に指定したカバーアートを埋め込みたいと思います。

ExcelのVBAを使用してMP3ファイルにカバーアートを埋め込むことは、VBAの標準機能では直接サポートされていないので。
ffmpegを使用してMP3にカバーアートを埋め込む事ができそうです。

情報URL
https://nico-lab.net/adding_cover-art_pic_with_ffmpeg/

コードを考え始めましたが、comande = のコードはどう記載すれば良いですか ?

Sub CoverArt()

    ' MP3ファイルパスとカバーアートの画像ファイルパスを設定
    Dim mp3FilePath As String
    Dim coverArtPath As String
    Dim command As String

    mp3FilePath = "D:\file.mp3"
    coverArtPath = "D:\cover.jpg"

    ' ffmpegを使用してカバーアートを埋め込むコマンドを構築
    command = -

    ' コマンドプロンプトを開き、コマンドを実行
    Shell "cmd.exe /c " & command, vbNormalFocus
End Sub

< 使用 Excel:Excel2021、使用 OS:Windows11 >


>MP3にカバーアートを埋め込む事ができそうです。
だったらそちらでやればいいんでないの。
(まらん) 2024/04/13(土) 13:35:45

 以下のように考えてみましたが、
 エラーは出ないのですがうまく処理されていないのでカバーアートが追加されていませんでした。

 どこが間違えていますか?

 コマンドプロンプトなので一瞬で終了するのでデバックができません。

      ' ffmpegを使用してカバーアートを埋め込むコマンドを構築
      command = "ffmpeg -i """ & mp3FilePath & """ -i """ & coverArtPath & """ -map 0:a -map 1:v -c copy -disposition:1 attached_pic -id3v2_version 3 -metadata:s:v title=""Album cover"" -metadata:s:v comment=""Cover (front)"" ""C:\path\to\your\audio-with-cover.mp3"""

(joy) 2024/04/13(土) 13:53:23


すいません。

以下に訂正します。

command = "ffmpeg -i """ & mp3FilePath & """ -i """ & coverArtPath & """ -map 0:a -map 1:v -c copy -disposition:1 attached_pic -id3v2_version 3 -metadata:s:v title=""Album cover"" -metadata:s:v comment=""Cover (front)"" ""mp3FilePath"""
(joy) 2024/04/13(土) 14:02:09


 ffmpeg をExcelから実行すると豊富なデバッグ情報が得られるという説の根拠を教えて欲しい。

(質問) 2024/04/13(土) 14:09:13


すいません。
以下に訂正します。

      command = "ffmpeg -i """ & mp3FilePath & """ -i """ & coverArtPath & """ -map 0:a -map 1:v -c copy -disposition:1 attached_pic -id3v2_version 3 -metadata:s:v title=""Album cover"" -metadata:s:v comment=""Cover (front)"" """ & mp3FilePath & """"

defenderが過剰反応するので、defenderのリアルタイム保護を一時的に無効にして作動させると
上書き保存のy/nをうながすプロンプトがでました。
ffmpegコマンドは受け付けているようようです。

Yをキーインすると一瞬、プロンプト画面に赤い文字が出ますがすぐ終了するのでどのような事がプロンプト画面に出たのかが見れませんでした。
(joy) 2024/04/13(土) 14:33:50


 cmd で直接実行するのではなく、いったんバッチファイルにして
 --------------
 今のコマンド
 PAUSE
 --------------
 として実行したら何の表示が出ているかわからないでしょうか?
(QS) 2024/04/14(日) 21:19:55

アドバイス、ありがとうございます。

BATファイルに変換して実行するとの事ですがやり方が判らないので挫折しました。

その後調べてMp3Tugのアクション機能を利用すると希望の処理ができました。

VBAでは、Defenderがおせっかいにも邪魔しますがMp3Tugではその煩わしさも無いので
Mp3Tugを利用する事にしました。

(joy) 2024/04/16(火) 06:52:26


コメント返信:

[ 一覧(最新更新順) ]


YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki. Modified by kazu.