如何使用 ffmpeg 添加专辑封面?

     2023-03-13     301

关键词:

【中文标题】如何使用 ffmpeg 添加专辑封面?【英文标题】:How to add album art with ffmpeg? 【发布时间】:2013-09-13 16:41:07 【问题描述】:

我一直无法在 mp3 文件中添加专辑封面。

我已经对此问题进行了研究和搜索,但尚未找到解决方案。 ffmpeg 文档建议使用此脚本将图像(专辑封面)添加到 mp3:

ffmpeg -i input.mp3 -i cover.png -c copy -map 0 -map 1 -metadata:s:v title="Album cover" -metadata:s:v comment="Cover (Front)" out.mp3

来源:http://www.ffmpeg.org/ffmpeg-all.html#mp3

但它不起作用。我的控制台输出是:

Unrecognized option 'c'
Failed to set value 'copy' for option 'c'

我寻找另一个解决方案并得到了这个:http://trac.ffmpeg.org/ticket/2221:

ffmpeg -i input.mp3 -i cover.png -map 0:0 -map 1:0 -c copy -id3v2_version 3 -metadata:s:v title="Album cover" -metadata:s:v comment="Cover (Front)" out.mp3

这会返回相同的输出:

Unrecognized option 'c'
Failed to set value 'copy' for option 'c'

有人可以帮帮我吗?

nb:我使用的是 ubuntu 12.04 和 ffmpeg 版本 0.8.6-4:0.8.6-0。

谢谢。

【问题讨论】:

只是关于 -c ?您是否在使用旧版本时尝试“-acodec copy”...并尝试更新! 我已经尝试将 -c 替换为 -codec 但返回的输出相同:无法识别的选项 'codec' 无法为选项 'codec' 设置值 'copy' 您使用的是旧的、伪造的 ffmpeg 版本,在线文档不支持该版本。见Who can tell me the difference and relation between ffmpeg, libav, and avconv?。您可以通过关注step-by-step guide to compile ffmpeg 或简单地使用Linux build of ffmpeg 来获取最新的、真正的ffmpeg。 【参考方案1】:

使用最新版本,

ffmpeg -i in.mp3 -i test.png -map 0:0 -map 1:0 -c copy -id3v2_version 3 -metadata:s:v title="Album cover" -metadata:s:v comment="Cover (front)" out.mp3

使用-map 将输入流关联到输出 使用-c copy直接解复用/再复用-id3v2_version 3 是您的命令行中缺少的内容。请注意,这会写一个 IDV2.3 但你可以要求一个 2.4 (-id3v2_version 4)

使用-id3v2_version 3 选项,-metadataoption 将得到很好的解释

注意:元数据注释区分大小写。

【讨论】:

上面的一个“-metadata:s:v”选项缺少“-”。这给了我一个错误“[NULL @ 0x7ffd7400fa00] Unable to find a suitable output format for 'metadata:s:v' || metadata:s:v: Invalid argument”。我在答案中更正了它。 comment="Cover (front)" - 不是 comment="Cover (Front)" 我不得不说不应该跳过“-id3v2_version 3”参数。没有它,封面将在 Mac 上可见,但在 Windows 上不可见。 在某些程序(vlc 和 totem)中使用此方法专辑封面显示,但在通常显示 mp3 文件专辑封面的其他程序(rhythmbox 和 nautilus)中不显示。【参考方案2】:

这里有一件重要的事情需要注意,这让我耽误了一个小时的工作:

ffmpeg -i in.mp3 -i test.jpeg -map 0:0 -map 1:0 -codec copy -id3v2_version 3 \ 
-metadata:s:v title="Album cover" -metadata:s:v comment="Cover (front)" out.mp3

comment="Cover (front)" 中的f 必须为小写。如果没有,ID3头中的图片类型将不会被设置!

另一个可能对某人有所帮助的提示:为避免将 JPEG 封面图像转换为 png,您必须设置 -codec copy

【讨论】:

【参考方案3】:

问题在于您没有定义要复制的编解码器。如果音频应该是-c:a copy,则封面被识别为视频(去图!!),所以-c:v copy

ffmpeg -i audio-in.mp3 -i picture.png -c:a copy -c:v copy -map 0:0 -map 1:0 -id3v2_version 3 -metadata:s:v title="Album cover" -metadata:s:v comment="Cover (front)" audio-out.mp3

【讨论】:

如何在音频文件中添加艺术品,以显示在专辑封面中?

】如何在音频文件中添加艺术品,以显示在专辑封面中?【英文标题】:Howtoaddartworkinaudiofile,toshowinalbumcover?【发布时间】:2014-07-2205:57:29【问题描述】:我有一个音频文件,想更改其专辑封面插图。那么,有可能吗?还有,如... 查看详情

ChromeCast SDK 专辑封面

...】:使用默认的ChromeCastRemoteMediaPlayer类和默认的接收器,如何将专辑封面添加到页面?我试过查看http://developer.android.com/reference/com/google/android/gms/cast/MediaMetadata.ht 查看详情

在 mp3 元数据中使用 python 添加专辑封面

】在mp3元数据中使用python添加专辑封面【英文标题】:AddingAlbumArtusingpythoninmp3metadata【发布时间】:2010-02-2519:23:45【问题描述】:下面的代码似乎没有更新mp3文件的图片。代码:-#EditingtheMetaDatatag=eyeD3.Tag()printtag.link(\'location\')//Ret... 查看详情

在 Swift 中将专辑封面添加为子视图

...nSwift【发布时间】:2015-07-2500:39:52【问题描述】:我正在使用以下代码将正在播放的图稿添加为我的应用程序中的子视图。overridefuncviewDidLoad()super.viewDidLoad()letartWork=musicPlayer.nowPlayingItem?.valueForProperty 查看详情

MPMoviePlayerController 上的专辑封面

...roller【发布时间】:2012-01-2305:05:52【问题描述】:我正在使用MPMoviePlayerController播放我的播客。我想知道是否有办法添加专辑封面而不是使用默认的Quicktime徽标。【问题讨论】:【参考方案1】:您可以从MPMoviePlayerController实例中... 查看详情

如何使用 jsmediatags 从 mp3 获取专辑封面

】如何使用jsmediatags从mp3获取专辑封面【英文标题】:howtogetalbumartfrommp3usingjsmediatags【发布时间】:2017-07-2906:14:19【问题描述】:大家好,我有一个像song.mp3这样的mp3文件,我想获取它的专辑封面和艺术家姓名,然后想在我的html... 查看详情

使用 Mutagen 在 MP4 文件中嵌入专辑封面

】使用Mutagen在MP4文件中嵌入专辑封面【英文标题】:EmbeddingalbumcoverinMP4fileusingMutagen【发布时间】:2016-10-2005:59:53【问题描述】:我希望能够使用诱变剂将专辑封面添加到文件中,但是当我将其添加为文件时,它会返回:File"D:\\D... 查看详情

在 iOS 设备的锁屏上添加自定义专辑封面

...直播音频。我想在设备锁屏上显示自定义图像(无论歌曲如何,我都希望显示相同的图像)。下面的代码在锁屏上显示了当前的标题,但不像下面的图片那样显示专辑封面。是否可能首先(我认为,Mixcloud实现了它)?如果 查看详情

sh将专辑封面添加到音频文件(代码片段)

查看详情

如何从 Spotify API 访问本地音乐的曲目/专辑封面?

】如何从SpotifyAPI访问本地音乐的曲目/专辑封面?【英文标题】:HowcanIaccesstrack/albumartfromlocalmusicfromtheSpotifyAPI?【发布时间】:2013-11-2212:44:37【问题描述】:我正在使用SpotifyAPI作为我自己的学习项目来构建应用程序。该应用程序... 查看详情

如何以编程方式获取音乐专辑封面

】如何以编程方式获取音乐专辑封面【英文标题】:howtogetmusicalbumartcoverprogrammatically【发布时间】:2021-04-2803:47:05【问题描述】:我想获取音乐专辑封面以在gridview的imageview中显示它们。这是我的代码voidloadAudioData()ContentResolvercon... 查看详情

如何在 Win8 C# 应用程序中设置专辑封面?

】如何在Win8C#应用程序中设置专辑封面?【英文标题】:HowcanIsetalbumartworkinaWin8C#application?【发布时间】:2013-04-1605:31:02【问题描述】:我希望能够拍摄现有照片并将其设置为专辑插图。我可以使用GetThumbnailAsync给我一个缩略图和... 查看详情

显示 Spotify 专辑封面网页

...果需要显示专辑/艺术家及其相关艺术品,如专辑封面。使用Spotify的WebAPI似乎无法做到这一点,正如[此处][1]所讨论的这可以使用LibSpotifyAPI吗?还是有其他 查看详情

在 android 11 中接收专辑封面

...ogle表示应该改用ContentResolver.loadThumbnail。但我完全不明白如何使用它,尤其是我应该提供的第一个参数uri。文档说:Uri:应显示为缩略图的项目。该值不能为空。那是什 查看详情

TagLib - 从 MP3 中提取专辑封面 (Powershell)

...理编辑器,以便一次性更改它们的标签。我面临的问题是如何从文件中提取原始专辑封面?目前我只知道我可以使用以下代码更改专辑封面:$media.tag.pict 查看详情

从音频文件中获取专辑封面、歌曲名称、专辑名称和艺术家姓名

...fromanaudiofile【发布时间】:2010-09-2514:28:08【问题描述】:如何?我需要在不使用iTunes的情况下显示它。谢谢。【问题讨论】:@RJFalconer,任何,从MP3到AAC到WAV到FLAC。【参考方案1】:如果文件已被Sp 查看详情

如何从 MP3 ID3 标签中提取专辑封面?

】如何从MP3ID3标签中提取专辑封面?【英文标题】:HowcanIextractthealbumartfromanMP3ID3tag?【发布时间】:2013-05-2505:13:00【问题描述】:我可以使用php从我的mp3应用程序中成功获取mp3ID3标签。我留下了一个巨大的BLOB。我敢肯定这很简单... 查看详情

ffmpeg给音频添加封面,ffmpeg对音视频metadata相关操作

...种原因,失败了很多次。这次终于完全理解了这个命令的使用。首先我们看到这个选项**-disposition[:stream_specifier]**value**(***output,per-stream***)**这个disposition选项是用来调整文件布局用的,有以下这些选项:我们可以看到,其中有一... 查看详情