Какво е FLAC файл?
FLAC (Free Lossless Audio Codec) е аудио кодиращ формат за компресия без загуби, разработен от Xiph.Org Foundation. FLAC е безплатен отворен формат, който се записва с разширението .flac. Цифровото аудио, компресирано с помощта на алгоритъма FLAC, обикновено се намалява до 50 до 70 процента по размер. FLAC файловете могат да бъдат декомпресирани до идентично копие на оригиналните аудио файлове.
FLAC файлов формат
Това е общ преглед на битовия поток FLAC.
- fLaC маркер: Този маркер се добавя към началото на потока. Той е последван от един или повече блокове метаданни.
- Метаданни блокове: 128 вида метаданни блокове се поддържат от FLAC; в момента са определени следните.
- STREAMINFO: Contains the information about the whole stream.
- APPLICATION: This is used by third-party applications for identification.
- PADDING: It is used to reserve space for metadata if the metadata will be edited after encoding. When the metadata is edited, the padding is replaced by the actual metadata.
- SEEKTABLE: An optional table to store seek points.
- VORBIS_COMMENT: Used to store human-readable key/value pairs.
- CUESHEET: Used to store cue sheet information.
- PICTURE: Used to store pictures.
- FRAME: Аудио данните са съставени от един или повече аудио кадъра.
- FRAME_HEADER: Contains the basic information about the stream.
- SUBFRAME: To decrease the complexity, individual subframes are coded separately within a frame (one frame per channel).
- FRAME_FOOTER: Contains the CRC of the complete frame.
Кратка история на файловия формат FLAC
Джош Коулсън започна разработването на FLAC през 2000 г. Първата версия на FLAC беше пусната на 20 юли 2001 г. FLAC беше включен под флага на Xiph.Org на 20 януари 2003 г. Разработката на FLAC беше преместена в git хранилището на Xiph.Org с пускането на версия 1.3.0 на 26 март 2013 г.
Състав на проекта FLAC
Проектът FLAC се състои от следното:
- Поточни формати.
- Опростен контейнерен формат за потока (FLAC).
- libFLAC: Библиотека от референтни енкодери, декодери и интерфейс за метаданни.
- libFLAC++: Обектно-ориентирана обвивка за libFLAC.
- flac: Програма от командния ред за кодиране и декодиране на FLAC потоци.
- metaflac: Редактор на метаданни от командния ред за FLAC.
- Плъгини за въвеждане на музикални плейъри като Winamp, XMMX и др.
- Ogg контейнерен формат (Ogg FLAC).
FLAC дизайн
В зависимост от плътността и амплитудата на музиката, размерът на компресирания файл може да бъде с 80% по-малък от оригиналния файл.
Кодиращ източник
- Поддържа само цели числа, а не с плаваща запетая. Може да обработва PCM битова разделителна способност от 4 до 32 бита на проба и честота на семплиране от 1Hz до 65 535 Hz. FLAC кодирането е ограничено до 24 бита на проба.
- Каналите могат да бъдат групирани, за да се възползват от междуканалните корелации за увеличаване на компресията.
- CRC контролните суми се използват за идентифициране на повредени рамки.
- За преобразуване на аудио проби, FLAC използва линейно предсказване.
Метаданни
- FLAC поддържа ReplayGain (използва се за възприемане и нормализиране на силата на звука в аудио).
- FLAC използва същата система, използвана в коментарите на Vorbis за маркиране.
- libFLAC се използва от повечето FLAC приложения за кодиране/декодиране.
- API на libFLAC е организиран в потоци, потоци с възможност за търсене и файлове, за да се увеличи абстракцията от основния битов поток на FLAC.
Компресия
libFLAC използва нива на компресия от 0 до 8, където 0 е най-бързото, а 8 е най-бавното ниво на компресия. Компресираните файлове винаги са без загуба, въпреки че компромисът е между скорост и размер.
FLAC срещу MP3
MP3 е формат за компресия със загуби, което означава, че може да изреже част от аудиото, за да намали размера му след прилагане на компресия. Докато FLAC е файлов формат без загуба, което означава, че можете да чуете аудиото в най-чистата му форма. По-рано файловите формати без загуба бяха CDA или WAV, които не бяха много ефективни от пространството като FLAC. Следващата таблица ще покаже сравнението между тези два формата за някои важни термини:
Срок | FLAC | MP3 |
---|---|---|
Качество на данните | Без загуба на аудио данни | Някои данни може да се загубят при компресиране на аудио данни |
Размер | По-голям размер на файла в сравнение с форматите със загуба. Така че се нуждаете от по-голям капацитет за съхранение | По-малък размер на файла, подходящ за възпроизвеждане на компактни аудио устройства с малко място за съхранение |
Хардуерни изисквания | Имате нужда от висококачествено аудио оборудване и огромен капацитет за съхранение | Огромни аудио библиотеки могат да бъдат запазени в по-малко пространство за съхранение. Подходящ за преносими устройства, като аудио плейъри или мобилни телефони |
Разпространение по интернет | Не може да се разпространява лесно по интернет поради огромния размер на файла | Компактният размер на файла улеснява разпространението по интернет |
Съвместимост | Най-популярният кодек за слушане на музика и аудио, който почти е съвместим с всяко устройство на планетата Съвместим с компютри от ново поколение, телефони, AV приемници, blu-ray плейъри, стрийминг устройства като Roku или Fire TV |