【问题标题】:Is there a way to set the details of a file in Windows using python?有没有办法使用 python 在 Windows 中设置文件的详细信息?
【发布时间】:2019-10-26 03:31:05
【问题描述】:

我希望能够在 Windows 中使用 python 设置一些 mp3 文件的“标题”和“评论”(在properties->details 中列出)。这可能吗,也许使用像 PyWin32 这样的库?此外,这些详细信息是否会在其他操作系统中可见,或者它们是否特定于 Windows?谢谢。

【问题讨论】:

    标签: python-3.x windows pywin32


    【解决方案1】:

    简单回答:

    • 是的,您可以使用 Python 在 Windows 中设置 mp3 文件的“标题”和“评论”(以及许多其他字段)。
    • 此外,详细信息在所有操作系统上都是可见的,而不是特定于 Windows 的。

    首先您必须了解什么是 mp3 文件以及数据在 mp3 文件中是如何组织的。

    详细回答:

    原始音频会占用大量空间。例如,以 48 kHz 采样的 10 秒音频信号,每个样本的位深度为 16 位,其大小为 10*48000*16 位,接近 1 MB。因此,对于一首 5 分钟的歌曲,几乎需要 30 MB。但是,如果您观察到,大多数 5 分钟 mp3 歌曲的大小约为 5 MB(当然这取决于采样频率、位深度和使用的压缩量)。这怎么可能?这是可能的,因为我们使用信号处理技术压缩数据,这本身就是一个大话题,我们不会在这里讨论。因此,要创建一个 mp3 文件,我们需要一种称为编码器的东西,它将原始音频数据转换为压缩数据,每次播放 mp3 歌曲时,都会使用解码器将数据从压缩格式转换为原始音频,这是你只能做的听。因此,压缩是为了节省存储空间和传输带宽(基本上节省了通过 Internet 传输的数据量)。

    现在,来了解如何在 mp3 文件中组织数据。 mp3 文件显然将包含压缩数据。此外,许多 mp3 文件包含一些元数据(例如您在问题中提到的标题和评论)。有几种格式用于存储此元数据。所以,解码 mp3 文件的解码器也应该支持元数据的解码,只有你能看到信息,否则你看不到。 元数据独立于操作系统,只要您有合适的解码器,就可以在任何操作系统上看到。

    最后,是的,您可以使用 python 在 Windows 上编辑元数据(在任何操作系统上)。如果你想这样做,只使用没有任何库的 python,你需要了解数据在 mp3 文件中的组织方式,找到其中的元数据,对其进行编辑并将其存储回来。但是,python 中有一些库和包支持编辑 mp3 文件的元数据。您可以直接使用它们。此外,元数据独立于操作系统,一旦您编辑属性,您应该能够在任何操作系统中看到属性,只要您使用的解码器具有支持。

    一些对你有帮助的链接:

    【讨论】:

      最近更新 更多