当前位置: 首页 > news >正文

打造本地音乐库

文章目录

      • 存储介质
        • 硬盘(NAS)
        • 媒体播放器(可视MP3、MP4)
        • 实体介质(CD光盘、黑胶片)
        • 注意事项
          • 为什么不使用在线音乐(App)和网盘
          • 打造一套HiFi系统的成本非常高
      • 获取音乐
        • 正版音乐途径
        • 免费音乐
      • 音乐格式的选择
        • 无损压缩格式
        • 有损压缩格式
        • 不推荐的其他无损格式
      • 音乐整理与分类
        • 文件夹架构
        • 音乐元数据标签
          • ID3 标签
          • APEv2 标签
          • FLAC Metadata
      • 软件体系
        • 媒体播放器 / 音乐库管理工具
        • 标签编辑器
        • 转换工具

存储介质

硬盘(NAS)

网络附加存储(Network Attached Storage, NAS)是一种通过家庭或办公室局域网提供文件级数据存储服务的专用设备。它通常由一个或多个硬盘组成,并支持多种功能,如RAID配置、远程访问和多媒体流媒体播放等。对于那些追求高保真(HiFi)音质的音乐爱好者来说,使用NAS几乎是打造本地HiFi系统的唯一选择!

  • 大容量与扩展性:NAS系统可以轻松地提供数TB甚至更多存储空间,适合需要大量存储空间的用户。如果未来需要更多的空间,还可以添加额外的硬盘。
  • 数据冗余与保护:通过使用RAID技术,NAS能够提供一定程度的数据冗余,即使一个硬盘发生故障,也可以保证数据的安全性和完整性。
  • 共享与访问:NAS允许多台设备在同一网络内无缝访问音乐库,支持智能电视、游戏机、移动设备等多种终端。一些高级NAS型号还提供云同步功能,方便随时随地访问音乐。
  • 高保真音频支持:NAS设备通常配备了千兆以太网接口,确保快速稳定的网络连接,这对于传输无损音频文件至关重要。此外,某些NAS型号还特别优化了对DSD、FLAC、ALAC等高分辨率音频格式的支持,满足HiFi发烧友的需求。
  • HiFi系统的整合与兼容性:NAS可以与各种HiFi组件无缝集成,例如DAC(数字模拟转换器)、流媒体播放器和其他音响设备,形成一个完整的高保真音乐播放系统。
  • 软件灵活性:大部分NAS品牌提供了内置的、完全兼容、体验绝佳的音乐库管理软件。并且许多NAS平台允许安装第三方应用程序,比如音乐服务器软件(如Jellyfin、Plex),这些应用能进一步增强NAS的功能,为用户提供更加丰富的多媒体管理和播放体验。
媒体播放器(可视MP3、MP4)

使用媒体播放器的核心优势在于可以打造一个移动、便携的音乐库,让用户随时随地享受个人音乐收藏。注意:不推荐无屏幕的MP3播放器,因为对于音乐库而言,音乐数量巨大,缺乏分类和歌单功能将会是一个致命缺陷。

  • 便携性:媒体播放器小巧轻便,非常适合随身携带,让你无论身处何地都能享受高品质的音乐和视频内容。
  • 扩展存储支持:现代媒体播放器通常配备有扩展卡槽,可以通过插入microSD或其他类型的存储卡来显著增加存储容量,最高可以支持到TB级别的扩展存储,这对于构建庞大的个人音乐库非常有用。
  • 高分辨率屏幕:现代媒体播放器配备了高清甚至全高清显示屏,不仅能带来出色的视觉体验,还能用于查看歌词、专辑封面和其他多媒体信息。
  • 广泛的格式支持:除了常见的MP3、WAV等音频格式外,许多播放器还支持FLAC、ALAC等无损音频格式,满足不同用户的多样化需求。
  • 个性化设置:用户可以根据个人喜好调整音效、均衡器设置,甚至自定义界面布局,获得更加个性化的使用体验。
  • 电池续航力:尽管提供了丰富的功能,但优秀的媒体播放器依然保持着较长的电池续航时间,确保长时间的连续播放。
实体介质(CD光盘、黑胶片)

尽管数字下载和流媒体服务越来越普及,但对于音乐爱好者来说,实体介质如CD光盘和黑胶唱片仍然有着不可替代的魅力。但是,这种方式最大的缺点就是:一是太贵,二是寿命堪忧(使用过程中会持续带来不可避免的磨损)。

  • CD光盘

    • 保真度:标准的HiFi级音质。CD光盘也细分为多种版本,具体参见:CD光盘版本对音质的影响。
    • 收藏价值:限量版或特别版的CD增加了其作为收藏品的价值。
    • 兼容性:几乎所有的音响设备和电脑都可以读取CD。
    • 缺点:相对昂贵,且频繁使用会导致光盘表面划伤,进而影响音质。
  • 黑胶片(Vinyl Records)

    • 复古情怀:黑胶唱片象征着一种文化和生活方式。
    • 独特的声音特质:黑胶唱片特有的温暖音色为许多人带来了独特的聆听感受。
    • 艺术表现:黑胶唱片通过其大尺寸封面、精美的包装设计和附带的视觉材料,提供了丰富的艺术表达空间,使每张唱片成为独具魅力的收藏品。
    • 缺点:购买成本高,而且每次播放都会对唱片造成轻微磨损,长时间使用后会影响音质。
注意事项
为什么不使用在线音乐(App)和网盘
  1. 在线音乐(App)的“独占+租赁”性质

    • 在线音乐平台上的音乐文件具有“独占+租赁”的性质,即这些文件只能在其专属的应用程序中播放,无法转移到其他音乐播放器上。一旦VIP会员资格过期,你将失去对这些音乐的访问权。
    • 实际上,根据用户协议,你使用的App账号也是“租赁”性质的,也就是说,平台只是借给你使用,所有权始终属于平台本身。这种安排意味着即使你长期付费,最终也无法真正拥有这些音乐资源。
  2. 网盘的速度与版权风险

    • 网盘的速度几乎很难满足各种通信状况下无损音乐的在线播放需求,可能会导致卡顿或中断,严重影响听觉体验。
    • 此外,网盘还面临版权保护措施的影响。例如,在中国的“清朗行动”等打击非法内容传播的运动中,你收藏的音乐文件有被删除的风险,这增加了使用网盘作为长期存储方案的不确定性。
打造一套HiFi系统的成本非常高

如何获得HiFi音质?无损音源+优秀的播放软件/播放设备+好前端(DAC和功放)+高保真音响(备选:好耳机)。使用优质连接方式和连接线。

仅以前端举例,入门级的HiFi器材也得万元以上价位了,发烧级的十几万、几十万,可谓上不封顶。。(当然,我指的还是正规的比如森海塞尔的“大奥”,如果进入到玄学领域,一根线材也能上万元)

关于这部分的详情,可参见:音频HiFi的二三事。

实际上,要充分发挥HiFi系统的性能,通常需要对房间进行一系列改造以优化声学环境。这包括安装专业的隔音材料或吸音板来减少回声和混响,提高声音清晰度(对于居民楼很重要,否则就是无休止的扰民和投诉);合理布置家具以改善声波传播路径,避免死角和驻波现象;最后,根据HiFi系统的最佳聆听位置重新规划空间布局,保证每个听众都能享受到均衡且高品质的声音体验。

获取音乐

正版音乐途径
  1. 在线音乐商店

    • Apple Music (iTunes Store):苹果公司的音乐商店,提供广泛的音乐选择,支持AAC、Apple Lossless(ALAC)等多种格式。
    • Amazon Music:亚马逊提供的音乐服务,除了常见的MP3格式外,也提供无损音频文件。
    • mora:日本领先的高分辨率音乐下载平台,提供大量的无损和高分辨率音频文件,特别适合喜欢日本音乐或追求极致音质的用户。
  2. CD转录

    • 线下市场:本地独立唱片店、超市连锁店和大型零售商。
    • 线上市场:例如Discogs、淘宝、闲鱼等网站提供了广泛的二手和新发行的实体唱片选择。
免费音乐

参见 web工具收藏夹 # 无损音乐。没有很推荐的全能解、唯一解,可自行百度。

音乐格式的选择

更多细节可参见:音频HiFi的二三事。

无损压缩格式
  • APE(Monkey’s Audio)

    • 特点:是一种通过特定的无损压缩算法对音频进行处理的格式。它能将音频文件压缩至原大小的50% - 70%,同时完整保留音频的原始数据,保证音质无损。不过,APE格式在元数据存储方面相对有限,对于专辑封面、详细曲目介绍等信息的承载能力不如FLAC。
    • 适用性:兼容性好,压缩率稍高于FLAC(编码解码也会稍复杂和时间稍长),兼容性稍逊于FLAC,但其实不相上下。 (对于5分钟的 CD 质量音频(44.1 kHz,16 bit),大约为 25-40 MB
  • FLAC(Free Lossless Audio Codec)

    • 特点:是一种无损音频压缩格式,能在不损失任何音频数据的前提下压缩音频文件,压缩比通常在2:1左右。它保留原始音频的所有细节,包括高分辨率音频中的细微变化,音质出色。同时,FLAC格式支持元数据存储,可包含歌曲标题、艺术家、专辑等信息。
    • 适用性:兼容性好,压缩率和APE其实不相上下。(对于5分钟的 CD 质量音频(44.1 kHz,16 bit),大约为 30-50 MB
  • DSD(Direct Stream Digital)

    • 特点:采用一比特量化的脉码调制(PCM)方式,以高达2.8224MHz或5.6448MHz的采样频率进行录制,相较于传统PCM格式,能更精准地捕捉声音信号的细微变化,呈现出极其丰富的音乐细节。其音频文件存储为DFF或DSF格式,通常需要专门的音频播放器或支持DSD解码的设备才能播放。
    • 适用性:音质更好,高于CD的品质。兼容性较好,在新设备中已经逐渐支持。(5分钟的 DSD64 音频,大约为 57 MB;DSD128 或 DSD256 则会占用更多空间
有损压缩格式
  • MP3(MPEG Audio Layer III)
    • 特点:是目前最常见的有损音频压缩格式,通过去除人耳难以察觉的音频信息来减小文件大小,压缩比通常在10:1至12:1之间。MP3格式在音质和文件大小之间取得了较好的平衡,在较低比特率下也能保持相对可接受的音质。它具有广泛的兼容性,几乎所有的音乐播放设备和软件都支持MP3格式。
    • 适用性:兼容性的王者。收藏推荐 320 kbps 码率的MP3(5分钟的音频约11.72MB),至少在 192 kbps 以上(5分钟的音频约7.03MB)。128 kbps 以下音质会明显较差。
  • AAC(Advanced Audio Coding)
    • 特点:是一种新一代的有损音频压缩格式,被广泛应用于数字广播、互联网音频流等领域。AAC在相同比特率下的音质优于MP3,尤其是在中低比特率时表现更为突出。它能提供更清晰的声音、更丰富的细节和更宽广的动态范围。AAC格式的文件大小相对较小,适合在移动设备和网络环境中使用。
    • 适用性:虽然兼容性稍逊于MP3,但经过这些年的积累,也基本上不存在兼容性问题(除了一些旧设备)。压缩率更高,但在高码率下对比MP3在音质上的优势并不明显。
不推荐的其他无损格式
  • WAV(Waveform Audio File Format):体积太大
    • 特点:是一种未经压缩的音频格式,保留了原始音频的所有数据,音质非常出色,是最接近原始录音的格式之一。WAV文件通常较大,因为它没有经过任何压缩处理。它支持多种采样率和位深度,可以满足不同的音频需求。
  • ALAC(Apple Lossless Audio Codec):苹果专用
    • 特点:这是苹果公司开发的无损音频压缩格式,与FLAC类似,能无损压缩音频数据,保留原始音质。它在苹果设备上兼容性良好,在Mac电脑、iPhone或iPad上都能完美支持。ALAC格式的文件大小相对较小,与FLAC相当,在存储空间有限的情况下是不错的选择。
  • AIFF(Audio Interchange File Format):苹果专用
    • 特点:是苹果公司开发的一种音频文件格式,与WAV类似,也是一种无损的音频格式,它通常用于苹果的专业音频应用程序和设备中。AIFF文件可以包含丰富的元数据,如音频采样率、位深度、声道数等信息。它的音质与WAV相当,但文件大小相对较大。
  • MQA(Master Quality Authenticated):支持设备少
    • 特点:MQA是一种新型音频编码技术,旨在提供接近母带质量的音频体验,同时解决文件大小和传输问题。它采用独特的折叠编码方式,在较小的文件体积内封装了完整的母带级音频信息。用户播放时,MQA文件会在支持的设备上展开为完整的高分辨率音频,能够精准还原录音棚中的原始声音细节。

音乐整理与分类

文件夹架构
  1. 按音乐风格分类

    • 流行音乐:创建名为“流行音乐”的文件夹,并在其中细分年代,如“20 世纪经典流行”、“2000 - 2010 流行精选”、“2010 年至今热门流行”等。
    • 摇滚音乐:摇滚音乐文件夹可以进一步按照摇滚类型划分,例如“朋克摇滚”、“重金属摇滚”、“独立摇滚”等。
    • 古典音乐:对于古典音乐的子文件夹,可以按作曲家分类,如“巴赫作品集”、“莫扎特作品集”、“贝多芬作品集”等。或者按作品类型(交响曲、奏鸣曲、协奏曲等)进行子文件夹的创建(如果不具有这种专业知识,不建议强行如此分类)。
    • 其他风格:最后一定要留一个分类可添加小众或者融合风格,或任何其他理由无法明确分类的音乐。
  2. 按歌手或乐队分类

    • 在歌手或乐队文件夹内,依据专辑名称创建子文件夹。
  3. 其他分类方式

    • 按国家分类:如国内、国外、中国、英美、日韩。
    • 按语言分类:如中文、英语、日语。
    • 按格式分类:如MP3、APE。
    • 按年代分类:如20 世纪 90 年代。
    • 按用途、主题或场景分类:如运动健身、放松冥想、学习专注、工作背景。
    • 按音乐排行榜或奖项分类:如格莱美、公告牌百强单曲榜。
    • 按情感或心情分类:如欢快、伤心。
  4. 文件命名

    • 一致性:始终保持命名规则的一致性,以便于快速识别和自动化处理,例如:艺术家-歌曲名.mp3。
    • 避免特殊字符:尽量避免使用空格、括号、引号、冒号等特殊字符,改用连字符(-)或下划线(_)代替。
    • 统一大小写:对于英文要选择一种大小写风格并始终如一地应用,如全小写或仅首字母大写,以便于快速查找。
    • 补充信息:在分隔符分隔的最后一段包括额外的补充信息,例如专辑名、曲目编号、年份和其他附属信息。
音乐元数据标签

音乐元数据标签是嵌入到音频文件中的额外信息,用于描述该文件的内容。

ID3 标签

ID3 (Identification Data, 3) 是一种广泛应用于 MP3 文件中的元数据标签格式。它允许将额外的信息嵌入到音频文件中,而不会影响实际的音频内容。ID3 标签主要分为两个版本:

  • ID3v1:最早的版本,支持有限的标签字段,每个字段长度固定为30个字符,并且仅位于文件末尾。由于其局限性,现在已经很少使用。

  • ID3v2:当前最常用的版本,支持更丰富的标签字段,可以包含更多的信息类型,如歌词、封面图片等。ID3v2 标签通常位于文件开头,这有助于流媒体播放器快速读取标签信息而不必等待整个文件下载完毕。最新的主要版本是 ID3v2.4,它对 ID3v2.3 进行了一些改进,增加了新的帧类型并修改了一些现有帧的结构。

常见 ID3v2 标签字段

  • TIT2: 歌曲标题
  • TPE1: 艺术家(表演者)
  • TALB: 专辑名称
  • TRCK: 曲目编号
  • TYER/DATE: 发行年份
  • TCON: 流派
  • TCOM: 作曲家
  • TPOS: 光盘编号(对于多张光盘的专辑)
  • APIC: 封面艺术(嵌入式图片)
  • COMM: 评论或备注
APEv2 标签

APEv2 是由 Monkey’s Audio 开发的一种标签格式,主要用于无损压缩格式 APE,但也可以用于其他格式,如 FLAC、WAV、MP3 等。与 ID3 相比,APEv2 具有更高的灵活性和扩展性,因为它不限制标签字段的数量或长度,允许用户自定义几乎任何类型的元数据。

APEv2 的特点

  • 高兼容性和扩展性:支持无限数量的标签字段,每个字段可以存储大量数据,适合复杂的音乐库管理需求。
  • 位置独立:标签既可以放在文件开头也可以放在文件结尾,具体取决于编码器的选择。
  • 无损格式的事实标准:尽管最初是为 APE 格式设计的,但它已经成为了多种无损音频格式的事实标准之一。
  • 丰富的标签种类:除了常见的艺术家、专辑、曲目编号等信息外,还可以添加如 ISRC 编码、编曲者、录音工程师等专业信息。

常见 APEv2 标签字段

  • Title: 歌曲标题
  • Artist: 艺术家(表演者)
  • Album: 专辑名称
  • Track: 曲目编号
  • Year: 发行年份
  • Genre: 流派
  • Composer: 作曲家
  • Conductor: 指挥(适用于古典音乐)
  • Disc Number: 光盘编号(对于多张光盘的专辑)
  • Cover Art: 封面艺术(嵌入式图片)
  • Comment: 评论或备注
  • Lyrics: 歌词文本
FLAC Metadata

FLAC 的元数据主要通过两种方式实现:Vorbis Comment 和 CUE Sheets。此外,FLAC 还支持嵌入图片和自定义元数据标签。

Vorbis Comment 是一种简单的键值对形式的元数据格式,广泛应用于 Ogg 容器格式(如 Ogg Vorbis、Opus),也被 FLAC 采用作为其主要的元数据存储方式。每个条目由一个关键词和相应的值组成,关键词通常是大写的英文单词或短语。

常见 Vorbis Comment 标签字段:

  • TITLE: 歌曲标题
  • ARTIST: 艺术家(表演者)
  • ALBUM: 专辑名称
  • TRACKNUMBER: 曲目编号
  • DATE: 发行年份
  • GENRE: 流派
  • COMPOSER: 作曲家
  • ALBUMARTIST: 专辑艺术家
  • DISCNUMBER: 光盘编号(对于多张光盘的专辑)
  • COVERART: 封面艺术(通常以 Base64 编码的二进制数据形式存储)
  • LYRICS: 歌词文本
  • COMMENT: 评论或备注

除了标准的 Vorbis Comment 字段外,FLAC 还允许用户添加自定义标签,以便满足特定需求或个性化管理音乐库。例如,你可以添加 ISRC 编码、录音工程师、混音版本等专业信息。

CUE Sheets 是一种用于描述音频文件结构的纯文本文件,主要用于 CD 镜像文件(如 BIN/CUE 对)和无损音频文件(如 FLAC)。CUE 文件包含了有关音轨分割、曲目信息、演奏时间等详细信息,可以帮助播放器正确地解析和显示多曲目音频文件的内容。

CUE Sheet 示例

PERFORMER "Various Artists"
TITLE "Compilation Album"
FILE "album.flac" WAVETRACK 01 AUDIOTITLE "Track One"PERFORMER "Artist One"INDEX 01 00:00:00TRACK 02 AUDIOTITLE "Track Two"PERFORMER "Artist Two"INDEX 01 05:30:00

FLAC 支持将封面艺术等图片直接嵌入到音频文件中,这些图片通常是以 PNG 或 JPEG 格式保存,并可以通过标签编辑工具进行添加或修改。这使得在没有外部文件的情况下也可以查看专辑封面等视觉元素。

软件体系

媒体播放器 / 音乐库管理工具
  • 功能:播放音频文件,支持多种格式(如MP3、FLAC、DSD等),帮助整理和分类音乐文件,生成播放列表,自动下载封面艺术等。

  • 推荐工具

    • Foobar2000:轻量级但功能强大,特别适合高级用户和音频发烧友。以其卓越的音质和高度可定制性著称,是Windows平台上音质最好的选择,没有之一。内置的组件和插件系统使其能够灵活扩展功能,推荐搭配foobox-cn,满足各种需求。

    • MusicBee:功能丰富的播放器兼管理工具,支持插件扩展,适合个性化定制。跨平台特性使得它在不同操作系统上都能保持一致的用户体验。强大的搜索和过滤功能让管理大型音乐库变得轻松自如。

    • Poweramp:备受欢迎的移动端音乐播放器,专为安卓设备设计。以其高品质音频播放和出色的用户体验而闻名,支持本地音乐库管理和在线流媒体服务,具备强大的标签编辑和元数据管理功能,确保音乐信息准确完整。

    • VOX:简洁美观的播放器,适用于Mac和iOS设备。以其简约的设计和易于使用的界面著称,同时支持无损音频格式如FLAC、ALAC等。VOX还提供了云同步功能,让用户可以在多个设备间无缝切换音乐播放。

标签编辑器
  • 功能:编辑和管理音频文件中的元数据标签(如ID3、APEv2、Vorbis Comment等),确保信息准确完整。

  • 推荐工具

    • MP3Tag:最受欢迎的老牌标签编辑器,支持批量编辑,兼容多种音频格式,界面友好易用。内置的搜索引擎和数据库链接功能可以快速填充缺失的信息,可以快速批量命名文件等,极大提高了工作效率。

    • Jaikoz Music Tagger:智能匹配服务,自动填充缺失的标签信息,特别适合处理复杂或不完整的音乐库。通过连接多个在线音乐数据库,提供了更广泛的数据源,确保标签信息的全面性和准确性。

    • MusicBrainz Picard:基于社区数据库的标签编辑器,擅长识别和标注罕见或不常见的音乐作品。其开放性和社区贡献使得它成为维护音乐库准确性的理想选择,尤其对于独立艺术家和小众音乐的支持尤为出色。

    • Kid3:跨平台的标签编辑器,支持多种标签格式,操作简便直观。其命令行界面为高级用户提供更多灵活性,同时图形界面也足够友好,适合初学者使用。

转换工具
  • 功能:将音频文件从一种格式转换为另一种,调整比特率或采样率以适应不同需求。

  • 推荐工具

    • dBpoweramp:高质量的音频转换器,支持批量处理,保留无损音质。内置的CD抓轨功能确保了原始音频的完美复制,适用于追求极致音质的用户。

    • XLD (X Lossless Decoder):专注于无损音频格式的解码和转换,适用于Mac用户。其简单易用的界面和强大的功能组合,使它成为苹果生态系统中处理高分辨率音频的理想选择。

    • Audacity:开源软件,除了录音和编辑外,还支持简单的音频格式转换。拥有活跃的社区支持和丰富的插件生态,适合需要综合音频处理能力的用户。

    • 格式工厂:这款全能型多媒体转换工具不仅支持音频格式转换,还包括视频和图片转换功能,为新手提供一站式解决方案。建议选择绿色版或便携版以避免广告干扰。

相关文章:

打造本地音乐库

文章目录 存储介质硬盘(NAS)媒体播放器(可视MP3、MP4)实体介质(CD光盘、黑胶片)注意事项为什么不使用在线音乐(App)和网盘打造一套HiFi系统的成本非常高 获取音乐正版音乐途径免费音…...

【2024 - 年终总结】叶子增长,期待花开

写在前面:本博客仅作记录学习之用,部分图片来自网络,如需引用请注明出处,同时如有侵犯您的权益,请联系删除! 文章目录 前言论博客创作保持2024的记录清单博客科研开源工作生活 总结与展望互动致谢参考 前言…...

python 统计相同像素值个数

目录 python 统计相同像素值个数 最大值附近的值 python 统计相同像素值个数 import cv2 import numpy as np import time from collections import Counter# 读取图像 image cv2.imread(mask16.jpg)# 将图像转换为灰度图像 gray_image cv2.cvtColor(image, cv2.COLOR_BGR2…...

蓝卓“1+2+N”智慧工厂架构,让工业智能更简单

面对复杂的工业环境、海量的数据以及多样化的业务需求,如何实现智能化转型,让工业智能触手可及,成为了众多企业面临的难题。蓝卓以创新精神为引领,推出了“12N”智慧工厂架构,旨在简化工业智能的实现路径,让…...

12、MySQL锁相关知识

目录 1、全局锁和表锁使用场景 2、行锁的意义 3、为什么说间隙锁解决了快照的幻读? 4、RR隔离级别产生幻读的场景 5、详解元数据锁(MDL)作用以及如何减少元数据锁 6、出现死锁场景 7、查看MySQL锁情况 8、自增锁 1、全局锁和表锁使用场景 全局锁 备份数据库:当需要…...

某大厂一面:HashMap 的put方法具体做了哪些操作

HashMap 的 put 方法是一个常用的操作,它将一个键值对插入到哈希表中。下面是 put 方法执行的详细流程,包括各个步骤的解释,并附上相应的代码片段。 1. 检查键是否为 null 如果传入的键为 null,HashMap 会特别处理这种情况&…...

WPF基础 | 深入 WPF 事件机制:路由事件与自定义事件处理

WPF基础 | 深入 WPF 事件机制:路由事件与自定义事件处理 一、前言二、WPF 事件基础概念2.1 事件的定义与本质2.2 常见的 WPF 事件类型 三、路由事件3.1 路由事件的概念与原理3.2 路由事件的三个阶段3.3 路由事件的标识与注册3.4 常见的路由事件示例 四、自定义事件处…...

精选100+套HTML可视化大屏模板源码素材

大屏数据可视化以大屏为主要展示载体的数据可视化设计。 “大面积、炫酷动效、丰富色彩”,大屏易在观感上给人留下震撼印象,便于营造某些独特氛围、打造仪式感。 原本看不见的数据可视化后,便能调动人的情绪、引发人的共鸣。 使用方法&…...

如何使用Python爬虫按关键字搜索AliExpress商品:代码示例与实践指南

在电商领域,能够按关键字搜索并获取商品信息对于市场分析、选品和竞品研究至关重要。AliExpress(速卖通)作为全球知名的跨境电商平台,提供了丰富的商品数据。以下将详细介绍如何使用Python爬虫按关键字搜索AliExpress商品&#xf…...

No.36 学习 | Python 函数:从基础到实战

最近我在学 Python 编程,今天可算是狠狠钻研了一把 Python 里的函数,感觉脑袋里的知识又充实了不少,赶紧来记一记。 一、Python函数基础概念 (一)pass语句:代码块的“占位符” 在编写代码时,有…...

Unity常用特性(Attribute)用法

一.UnityEngine命名空间 1.[Header(string)] inspector面板上给显示的字段上加一个描述 通常情况下,用于在 Inspector 窗口中创建字段的逻辑分组 public class AttributeTest : MonoBehaviour {[Header("public_field_num")]public int num; }2.[Tool…...

VUE对接deepseekAPI调用

1.先去开放平台注册账号申请api key。开放平台:https://platform.deepseek.com/api_keys 2.你的项目需要有发送请求的axios或者自己写。 npm install axios # 或 yarn add axios 3.创建 API 调用函数 在 Vue 项目中,通常会将 API 调用的逻辑封装到一个…...

【Postman 接口测试】接口测试基础知识

在软件开发与测试领域,接口测试是保障软件质量的关键环节之一,而 Postman 作为一款功能强大且广泛使用的接口测试工具,能帮助我们高效地进行接口测试工作。下面,我们将详细介绍接口测试的基础知识,包括接口的认识、接口…...

谷粒商城——商品服务-三级分类

1.商品服务-三级分类 1.1三级分类介绍 1.2查询三级分类查询-递归树型结构数据获取 1.2.1导入数据pms_catelog.sql到数据表pms_category 1.2.2一次性查出所有分类及子分类 1.2.2.1修改CategoryController.java /*** 查出所有分类以及子分类,以树形结构组装起来*/R…...

视觉语言模型 (VLMs):跨模态智能的探索

文章目录 一. VLMs 的重要性与挑战:连接视觉与语言的桥梁 🌉二. VLMs 的核心训练范式:四种主流策略 🗺️1. 对比训练 (Contrastive Training):拉近正例,推远负例 ⚖️2. 掩码方法 (Masking):重构…...

HarmonyOS NEXT:华为分享-碰一碰开发分享

随着科技的不断进步,智能手机和智能设备之间的互联互通变得越来越重要。华为作为科技行业的领军企业,一直致力于为用户提供更加便捷、高效的使用体验。HarmonyOS NEXT系统的推出,特别是其中的“碰一碰”功能,为用户带来了前所未有…...

宝塔Linux+docker部署nginx出现403 Forbidden

本文主要讲述了宝塔docker部署nginx出现403 Forbidden的原因,以及成功部署前端的方法步骤。 目录 1、问题描述2、问题检测2.1 检测监听端口是否异常2.2 检测Docker容器是否异常2.2.1 打开宝塔Linux的软件商店,找到Docker管理器,查看前端容器是…...

软件测试丨Redis 的数据同步策略以及数据一致性保证

Redis 以其键值存储的方式,为开发者提供了数据快速存取的能力。它不仅支持丰富的数据结构,如字符串、哈希、列表、集合等,而且提供了高效的数据同步与一致性保障机制。正因为如此,Redis 被广泛应用于缓存、消息队列、实时数据分析…...

C语言-运算符

1. 按位与运算符(&) 按位与运算符对两个整数的每一位执行“与”操作。只有当两个相应位都为 1 时,结果才为 1 ;否则为 0。 // 示例 int a 5; // 二进制: 0101 int b 3; // 二进制: 0011 int result a & b; …...

困境如雾路难寻,心若清明步自轻---2024年创作回顾

文章目录 前言博客创作回顾第一次被催更第一次获得证书周榜几篇博客互动最多的最满意的引发思考的 写博契机 碎碎念时也运也部分经验 尾 前言 今年三月份,我已写下一篇《近一年多个人总结》,当时还没开始写博客。四月份写博后,就顺手将那篇总…...

华为OD机试-食堂供餐-二分法

import java.util.Arrays; import java.util.Scanner;public class DemoTest3 {public static void main(String[] args) {Scanner in new Scanner(System.in);// 注意 hasNext 和 hasNextLine 的区别while (in.hasNextLine()) { // 注意 while 处理多个 caseint a in.nextIn…...

Spring是如何解决Bean的循环依赖:三级缓存机制

1、什么是 Bean 的循环依赖 在 Spring框架中,Bean 的循环依赖是指多个 Bean 之间‌互相持有对方引用‌,形成闭环依赖关系的现象。 多个 Bean 的依赖关系构成环形链路,例如: 双向依赖:Bean A 依赖 Bean B,同时 Bean B 也依赖 Bean A(A↔B)。链条循环: Bean A → Bean…...

VM虚拟机网络配置(ubuntu24桥接模式):配置静态IP

编辑-虚拟网络编辑器-更改设置 选择桥接模式,然后找到相应的网卡(可以查看自己本机的网络连接) windows连接的网络点击查看属性 编辑虚拟机设置更改网络配置,选择刚才配置的桥接模式 静态ip设置: 我用的ubuntu24桌…...

C++:多态机制详解

目录 一. 多态的概念 1.静态多态(编译时多态) 二.动态多态的定义及实现 1.多态的构成条件 2.虚函数 3.虚函数的重写/覆盖 4.虚函数重写的一些其他问题 1).协变 2).析构函数的重写 5.override 和 final关键字 1&#…...

Java数值运算常见陷阱与规避方法

整数除法中的舍入问题 问题现象 当开发者预期进行浮点除法却误用整数除法时,会出现小数部分被截断的情况。典型错误模式如下: void process(int value) {double half = value / 2; // 整数除法导致截断// 使用half变量 }此时...

STM32HAL库USART源代码解析及应用

STM32HAL库USART源代码解析 前言STM32CubeIDE配置串口USART和UART的选择使用模式参数设置GPIO配置DMA配置中断配置硬件流控制使能生成代码解析和使用方法串口初始化__UART_HandleTypeDef结构体浅析HAL库代码实际使用方法使用轮询方式发送使用轮询方式接收使用中断方式发送使用中…...

stm32wle5 lpuart DMA数据不接收

配置波特率9600时,需要使用外部低速晶振...

GraphQL 实战篇:Apollo Client 配置与缓存

GraphQL 实战篇:Apollo Client 配置与缓存 上一篇:GraphQL 入门篇:基础查询语法 依旧和上一篇的笔记一样,主实操,没啥过多的细节讲解,代码具体在: https://github.com/GoldenaArcher/graphql…...

路由基础-路由表

本篇将会向读者介绍路由的基本概念。 前言 在一个典型的数据通信网络中,往往存在多个不同的IP网段,数据在不同的IP网段之间交互是需要借助三层设备的,这些设备具备路由能力,能够实现数据的跨网段转发。 路由是数据通信网络中最基…...

2025.6.9总结(利与弊)

凡事都有两面性。在大厂上班也不例外。今天找开发定位问题,从一个接口人不断溯源到另一个 接口人。有时候,不知道是谁的责任填。将工作内容分的很细,每个人负责其中的一小块。我清楚的意识到,自己就是个可以随时替换的螺丝钉&…...