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

无损音乐格式:FLAC和ALAC

前言:我最近在弄苹果的airplay项目,发现airplay2对比airplay多了音质方面的增强。AAC和MP3接触过,但对FLAC和ALAC完全不了解,整理学习资料汇总成如下信息:

AirPlay2

在2017年推出,在前一代AirPlay的基础上加入了Apple自家智慧家庭平台HomeKit的整合,主要在音乐版块增加了很多功能:

  1. 使用者可以将音乐同步发送到多个AirPlay 2 扬声器;
  2. 改进了音频缓冲的问题,播放环境更稳定更可靠;
  3. 可以指定房间播放音频,建立一个多房间音响系统(Multi-room Audio System);

Airplay2和Airplay的区别

  1. Airplay2比Airplay在音质上有很大提升,在质量上也有了很大的提高。
  2. AirPlay 2的传输方式和AirPlay相同,但它支持更高的质量,支持更高的码率和更多的音频格式,可支持最高的FLAC/ALAC音频质量,FLAC/ALAC音频比MP3/AAC音频质量更高。
  3. AirPlay 2支持立体声技术,可以更好地支持多声道音频,以及支持实时音频同步,可以更好地支持多个AirPlay 2设备的音频播放

FLAC和ALAC科普

平时如果没有专门了解过无损音乐格式,一旦播放器指定一些格式才能播放,很可能就会手无足措,今天昌老师就来跟大家讲解一下两种常用的无损 音乐格式的区别。

ALAC

ALAC:由 Apple 主导的无损音乐格式
习惯用 Apple 产品听歌的朋友相信对 ALAC不会太陌生,这款由 Apple 公布无损压缩音乐格式随着 iOS 和 Mac 产品的普及而越来越多人使用。既系「Lossless」,又有「Compression」,可以话是 Apple 版的 FLAC,不过对 Apple 的用户来说兼容性比后者更好。

iOS 和 iTunes 原生支持

Apple Lossless 又叫做 Apple Lossless Audio Codec(ALAC),由 Apple 于 2004 年推出,在 2011 年公布了编辑器的源代码,变成开源格式,进一步加强了普及性。比起Apple Lossless,近年大家似乎更习惯使用ALAC 这个简称,与同属「无损压缩」格式的FLAC 相比,Mac 和Windows 版的iTunes、iPhone、iPod 等iOS 装置都原生支持ALAC,对Apple 用户来说这种格式更加方便。

在这里插入图片描述

Apple 的各种装置原生都支援 ALAC,而 iTunes 本身亦支援 ALAC 转歌。

支持 8 声道、32bit/384kHz 音讯

ALAC 采用了 MP4 的封装,本质上同影片格式的 MP4 相同,而为了区分两者,所以 Apple 将副档名改为「.m4a」。 ALAC 可以将 WAV、AIFF 等非压缩音频的大小缩减至原本的 40% 至 60%,效率相当高,而且编码速度几快。规格方面都好强,支援 8 个声道,16、20、24、32bit 的取样位元深度,以及最高 384kHz 取样率,足以应付现时几乎所有的 Hi-Res音质。 PC 平台播 ALAC 最方便当然就是 iTunes,iPhone 原生就支持 ALAC 播放,Android 就有 Rocket Player 等不同选择,HDTracks、Linn Recrods 等买歌网都有 ALAC 的 CD 及 Hi-Res 音质的音乐下载。
在这里插入图片描述

ALAC 的压缩比率可以达到 40% - 60%,效率算相当高,对大容量的 Hi-Res 音乐来说相当实用。

FLAC

FLAC:不可不知的无损音乐格式
近年越来也多人讲「Hi-Res」音乐,而 FLAC 就是其中一款最常见的 Hi-Res 音乐 codec(编码)。不过不要误会,FLAC 并不一定代表 Hi-Res,它只是「无损压缩」,保持音乐原有音质,可以是 CD 也可以是 Hi-Res 音质。作为对比,大家以前听得最多的 MP3 就是一种「有损压缩」,转换的过程中音质会流失,自然没那么好声音。

保持原音音质

FLAC 全名是 Free Lossless Audio Codec,有个「Free」字自然是「免费」。不过不是音乐本身免费,买歌依然要付钱。不过 codec 本身免费,使用 FLAC 压缩和编码时无须再支付授权费用。而「Lossless」当然就是指「无损」,在压缩时可以保留音乐原有音质,加上 code 本身效率高、使用方便,令 FLAC 近年越来越普及。

在这里插入图片描述

FLAC 全名为「Free Lossless Audio Codec」。

50% 压缩率可即时播放

换言之 FLAC 即是一个「Zip」(压缩包),不过比起普通 Zip file,FLAC 对音乐的压缩率更高,可达 50%,而普通 Zip 对音乐可能只有 10%-20% 的压缩。另一样就是 FLAC 可以直接播放,无须像 Zip 一样要「解压缩」先可以使用,方便好多。

作为专为音乐档案而设的无损压缩 codec,FLAC 比起普通 ZIP 压缩包效率高相当多。

最高支持 32bit/655kHz、8 个声道

大家听歌听得最多可能是两声道CD 的16bit/44.1kHz 位元率,Hi-Res 音乐常见的24bit/96kHz、24bit/192kHz 等等,其实FLAC 可以支持高达32bit/655kHz、8个声道的PCM 讯号,换言之几乎任何高质素的母带都可以无损转做FLAC,也都难怪FLAC 成为Hifitrack、HDtracks、e-onkyo 等买歌平台的主要格式之一。

在这里插入图片描述

FLAC 是除了 WAV 之外,购买数码音乐档案时另一款最为常见的格式。

转歌播歌无难度

现在 Windows、Mac、Android、iOS 等平台都支持FLAC,只要搜索「FLAC」就已经可以找到好多相关的播放软件。例如 Foobar2000(Windows)、VOX(Mac)、VLC(Android、iOS)等等,免费、收费都有。至于转歌方面,要留意 FLAC 只是保留原有音质,所以 CD 转了 FLAC 24bit/192kHz 并不会无端端变成 Hi-Res,音质实际仍只是 16bit/44.1kHz,不过存储占用空间就大了。而转歌方面,比较热门的软件包括 CDex 及 Exact Audio Copy(EAC),都提供了不同的 bit-rate 等设定可供选择。

Mac 用户可以选择 X Lossless Decoder 来转歌,除了支援 FLAC 之外,还有 Apple Lossless、WAV、 AIFF 等。

相关文章:

无损音乐格式:FLAC和ALAC

前言:我最近在弄苹果的airplay项目,发现airplay2对比airplay多了音质方面的增强。AAC和MP3接触过,但对FLAC和ALAC完全不了解,整理学习资料汇总成如下信息: AirPlay2 在2017年推出,在前一代AirPlay的基础上…...

第十届蓝桥杯省赛——4质数(质数判断,数学函数:开方函数)

题目:试题 D: 质数本题总分:10 分【问题描述】我们知道第一个质数是 2、第二个质数是 3、第三个质数是 5……请你计算第 2019 个质数是多少?【答案提交】这是一道结果填空的题,你只需要算出结果后提交即可。本题的结果为一个整数&…...

MASKGROUP: HIERARCHICAL POINT GROUPING AND MASKING FOR 3D INSTANCE SEGMENTATION

ABSTRACT 本文研究了 3D 实例分割问题,该问题在机器人技术和增强现实等现实世界中具有多种应用。由于3D物体的周围环境非常复杂,不同物体的分离非常困难。为了解决这个具有挑战性的问题,我们提出了一个新的框架来对 3D 实例进行分组和优化。在实践中,我们首先为每个点学习…...

为什么地图可视化炙手可热?

我们在谈到数据可视化的时候,可能第一反应就是中间有一个地图样式的大屏图。但有没有想过,为什么大多数的可视化大屏中间都是一张地图的样子?这张地图样式的模块究竟是什么呢?它又是怎么做出来的? 其实这张地图样式的…...

JAVA代码审计篇-SQL注入

JAVA代码审计篇-SQL注入1、SQL注入漏洞简介2、SQL注入的条件3、审计方法4、JAVA中执行SQL的几种方式(1)使用JDBC的java.sql.Statement执行SQL语句(2)使用JDBC的java.sql.PreparedStatement执行SQL语句(3)使…...

SpringBoot接口传参方式

常见GET请求和POST请求的区别1.get请求无消息体,只能携带少量数据,且不安全post请求有消息体,可以携带大量数据,且安全2.携带数据的方式:get请求将数据放在url地址中post请求将数据放在消息体body中传参方式get方式---…...

高通平台开发系列讲解(Sensor篇)AlsPs的工作原理及介绍

文章目录 一、什么是ALS?二、什么是距感(PS)?三、AlsPs的工作原理四、AlsPs的特性五、距感的校准参数说明六、光感的校准参数说明沉淀、分享、成长,让自己和他人都能有所收获!😄 📢本篇文章将介绍 AlsPs 的工作原理及介绍。 一、什么是ALS? 光感的英文叫做Ambient Li…...

集群方式下的java Redis锁 lua脚本

下面说一下集群方式redis 下的原子锁 带超时时间java 代码如下&#xff1a;List<String> keys Collections.singletonList("test_key1");System.out.println("打印前 &#xff1a;&#xff1a;"jedisCluster.get("test_key1"));//获取lua …...

【钓鱼实测】写bug给new bing和chatGPT查。问他们林黛玉倒拔垂杨柳

BUG 错误代码 #include <iostream> #include <vector> using namespace std; int main() {vector<int> vec{1,2,3,2,4};for (auto iter vec.begin(); iter ! vec.end(); iter ){if (*iter 2) {vec.erase(iter);}}cout << vec.size() << endl…...

基于OMAPL138+FPGA核心板多核软件开发组件MCSDK开发入门(上)

本文测试板卡为创龙科技 SOM-TL138F 是一款基于 TI OMAP-L138(定点/浮点 DSP C674x + ARM9)+ 紫光同创 Logos/Xilinx Spartan-6 低功耗 FPGA 处理器设计的工业级核心板。核心板内部OMAP-L138 与 Logos/Spartan-6 通过 uPP、EMIFA、I2C 通信总线连接,并通过工业级 B2B连接器引…...

C#/.net程序调用python

C#/.net程序调用python C#的优势在于window下的开发&#xff0c;不仅功能强大而且开发周期短。而python则有众多的第三方库&#xff0c;可以避免自己造轮子&#xff0c;利用C#来做界面&#xff0c;而具体实现使用python来实现可以大大提高开发效率。本文介绍如何使用pythonnet…...

一文讲清楚如何进行主数据编码

主数据编码作为一类重要的数据资源&#xff0c;在信息化建设中具有重要的地位和作用&#xff0c;是保证现有信息系统和未来新系统建设成功的关键因素&#xff0c;决定着系统中的信息一致性。 编码&#xff0c;是一件简单的事情&#xff0c;但绝对不是一件容易做好的事情&#…...

SAP 详解ST02

问&#xff1a;在st02中看到&#xff0c;Program和Export/Import的Swap出现红的了&#xff0c;这个是什么原因啊&#xff0c;是不是对系统的性能有影响啊&#xff0c;是否应该调整一些参数啊。要怎么调整呢&#xff1f; 复1&#xff1a;双击红色的部分就可以看到相应的参数修改…...

Go程序当父进程被kill,子进程也自动退出的问题记录

平常我们启动一个后台进程&#xff0c;会通过nouhp &的方式启动&#xff0c;这样可以在退出终端会话的时候&#xff0c;进程仍然可以继续在后台执行(进程的父进程id会从原来的bash进程变成1) 在go程序中&#xff0c;通过nouhp &的方式启动子进程&#xff0c;预期是即使…...

window10 下使用docmer-compose使用mysql镜像部署mysql

1. 在wins中找到store&#xff0c;安装Debian 2. 在桌面右键点击 linux shell窗口 3. 安装docker 4. 启动docker&#xff1a; service docker start 5. 配置加速器&#xff0c;为了拉取镜像更快&#xff0c;修改后得重新启动docker&#xff1a; vi /etc/docker/daemon.json…...

软件测试补充

软件开发的生命周期&#xff1a;需求-计划-设计-开发编码-测试-运行维护-上线 那我们的微信APP来进行举例: 需求:我需要你们团队做这样一个社交软件&#xff0c;能够像QQ一样实现聊天功能&#xff0c;发布说说的功能&#xff0c;能够群聊&#xff0c;可以转账 计划:计划软件…...

【算法】Tire字符串

作者&#xff1a;指针不指南吗 专栏&#xff1a;算法篇 &#x1f43e;或许会很慢&#xff0c;但是不可以停下&#x1f43e; 文章目录1.Trie的基本思想1.1什么是Trie1.2字符串条件1.3如何存储字符串1.4如何查找字符串2.Trie的代码实现2.1怎么用数组建树2.2完整代码1.Trie的基本思…...

【C++】STL——list的模拟实现

list的模拟实现 文章目录list的模拟实现一、list三个基本类的模拟实现总览二、节点类接口实现模拟实现构造函数三、迭代器类接口实现1.正向迭代器默认成员函数构造函数六种运算符重载 */->//--/!/2.反向迭代器四、list类接口实现1.默认成员函数1.1.构造函数1.2.析构函数1.3.…...

SpringBoot小区物业管理系统

文章目录 项目介绍主要功能截图:后台登录车位收费管理物业收费管理投诉信息管理保修信息管理基础信息管理数据分析部分代码展示设计总结项目获取方式🍅 作者主页:Java韩立 🍅 简介:Java领域优质创作者🏆、 简历模板、学习资料、面试题库【关注我,都给你】 🍅文末获…...

外网跨网远程控制内网计算机3种方案

远程控制&#xff0c;通俗来讲就是在自己个人电脑直接远程访问另台主机电脑桌面操作。 如何远程控制电脑&#xff1f;远程控制别人计算机的方案通常有两种&#xff0c;一种是开启电脑系统自带的远程桌面功能&#xff0c;如果涉及跨网内、外网互通可以同时用快解析内网映射外网&…...

记录偶发更新失败问题

一&#xff0c;代码如下Transactional(rollbackFor Exception.class) public void updateDelivery(){ // 1.新增反馈记录 // 2.更新订单状态&#xff0c;及其他字段 // 3.新增变更履历 // 4.其他新增逻辑及与其他系统交互逻辑 }二&#xff0c;问题偶尔出现&#xff08;概率极低…...

AI环境搭建步骤(Windows环境)

1. 安装好Anaconda3版本(1) 安装链接&#xff1a;https://mirrors.tuna.tsinghua.edu.cn/anaconda/archive/?CM&OD本文使用Anaconda3下载链接&#xff1a;Anaconda5(2) 注意安装anaconda时一定要把环境变量加入windows环境中。要没有勾选&#xff0c;安装完后还有手动加入…...

Linux系统之history命令的基本使用

Linux系统之history命令的基本使用一、history命令介绍二、本地环境检查1本地系统版本2.检查操作系统的内核版本三、history的命令帮助四、history命令的基本帮助1.查看所有历史执行命令2.指定历史命令条数3.清除历史命令记录4.引用历史命令5.将历史文件中的信息读入到当前缓冲…...

花7000报了培训班,3个月后我成功“骗”进了阿里,月薪拿16K....

“月薪4000元不如报名学IT&#xff0c;挑战年薪百万”这是大多数培训班在互联网上宣传的口号&#xff0c;简单的16个字却戳中了很多人的痛点&#xff0c;同龄人买车买房&#xff0c;自己却拿着微薄的工资连好一点的房子都租不起&#xff0c;这句口号 彻底激起了底层员工的焦虑&…...

Java-枚举类的使用(详解)

枚举类的使用前言一、何为枚举类&#xff1f;二、自定义枚举类&#xff08;JDK1.5之前&#xff09;1、实现1.1 属性1.2 构造器2、代码演示三、用关键字enum定义枚举类&#xff08;JDK 1.5&#xff09;1、实现1.1 属性1.2 构造器2、代码演示四、Enum类的方法五、实现接口的枚举类…...

Docker----------Docker轻量级可视化工具Portainer/监控之 CAdvisor+InfluxDB+Granfana

1.是什么 Portainer 是一款轻量级的应用&#xff0c;它提供了图形化界面&#xff0c;用于方便地管理Docker环境&#xff0c;包括单机环境和集群环境。 2 官网 官网 https://www.portainer.io/ https://docs.portainer.io/v/ce-2.9/start/install/server/docker/linux 3.…...

景嘉微7201

220112-驱动与固件-景嘉微7201驱动与固件-三期超翔TF830JM7201显卡黑屏、花屏、竖线或待机唤醒黑屏JM72系列为了让驱动和系统内核解绑&#xff0c;驱动包含核内和核外两个驱动&#xff0c;两个驱动请都务必安装&#xff1b;最近JM7201 替代R7 340 发货了&#xff0c;导致对应通…...

串口、终端应用程序 API termios

UART简介 串口全称为串行接口&#xff0c;也称为COM接口&#xff0c;串行接口指的是比特一位位顺序传输&#xff0c;通信线路简单。使用两根线就可以实现双向通信&#xff0c;一条为TX&#xff0c;一个为RX。串口通信距离远&#xff0c;但速度相对慢&#xff0c;是一种常用的工…...

【服务器搭建】教程七:如何为自己的网站添加运行时间?

前言 哈喽&#xff0c;大家好&#xff0c;我是木易巷&#xff01; 上一篇服务器搭建个人网站教程是给大家介绍了&#xff1a;网站如何添加备案号&#xff1f; 今天分享&#xff1a;如何为自己的网站添加运行时间&#xff1f; 木易巷添加网页运行时间后的效果 其实和昨天的添…...

【消息中间件】Apache Kafka 教程

文章目录Apache Kafka 概述什么是消息系统&#xff1f;点对点消息系统发布 - 订阅消息系统什么是Kafka&#xff1f;好处用例需要KafkaApache Kafka 基础&#xff08;一&#xff09;消息系统1、点对点的消息系统2、发布-订阅消息系统&#xff08;二&#xff09;Apache Kafka 简介…...

wordpress 获取置顶文章/什么网站可以发布广告

WebStorm 之 Cordova 环境搭建 原文:WebStorm 之 Cordova 环境搭建一、环境搭建 Cordova 环境配置之前&#xff0c;应先下载安装 Node.js &#xff0c;中文官网&#xff1a;http://nodejs.cn/。 以管理员身份运行 cmd 命令行工具&#xff1a; 1、查看 Node.js 是否已安装成功&a…...

网站百度权重查询/谷歌广告联盟怎么做

题目 题目链接 题解 太水了啊。 就输入判断就行&#xff0c;不会STL的string就去学一学&#xff0c;不想学的就死一边子去。 当然也可以用strcmp&#xff0c;不过我都快忘了咋用了。 我也懒得写for了&#xff0c;就while输入了。 我的锅&#xff0c;原来是入门题&#xff…...

互联网推广品牌/东莞优化排名推广

springMVC下jsp引用外部js,css等静态资源的解决方法参考文章&#xff1a; &#xff08;1&#xff09;springMVC下jsp引用外部js,css等静态资源的解决方法 &#xff08;2&#xff09;https://www.cnblogs.com/selfchange/p/6255240.html 备忘一下。...

电脑外设网站建设论文/新冠疫情最新情况最新消息

Mybatis的功能架构三层&#xff1a; API接口层&#xff1a;提供给外部使用的接口API&#xff0c;开发人员通过这些本地API来操纵数据库。接口层一接收到调用请求就会调用数据处理层来完成具体的数据处理。数据处理层&#xff1a;负责具体的SQL查找、SQL解析、SQL执行和执行结果…...

淘宝上网站开发/nba最新交易新闻

1.将一个给定的整型数组转置输出&#xff0c; 源数组为&#xff1a;1 2 3 4 5 6转置之后输出的数组为&#xff1a;6 5 4 3 2 1 刚看到题目的时候没多想&#xff0c;只想着能倒着输出就好&#xff08;正确代码错误想法&#xff09; public static void main(String[] args){int…...

界面设计做的好的网站/写软文是什么意思

本文所用软件版本及下载地址&#xff1a; zookeeper : zookeeper-3.3.6 hadoop : hadoop-2.7.4 链接&#xff1a;https://pan.baidu.com/s/14InWWh2MVWw-0CIDMcypSA 密码&#xff1a;1l98 如果有不对的地方&#xff0c;请大家指正。谢谢 。 集群搭建步骤&#xff1a; 1.集…...