Чтобы быть более точными, чем в заголовке, предположите, что у меня есть файл MP3, который составляет 320 Кбит/с. Если я распаковываю его, то логически, все данные за исключением примерно 320 килобитов из каждой секунды аудио должны быть избыточными данными, которые в состоянии быть сжатыми далеко. Так, когда я кодирую распакованный файл к FLAC или какой-либо другой кодек без потерь, почему это настолько больше?
На связанной ноте теоретически возможно без потерь восстановить источник mp3 аудио от распакованного wav? (Я знаю, что сам mp3 с потерями. Я спрашиваю, возможно ли повторно закодировать без дальнейшей потери.)
Править: Позвольте мне разъяснить связанный вопрос и объяснение позади него. Предположим, что у меня есть wav, который был распакован из файла MP3 (и предположите, что у меня нет самого mp3 по некоторым причинам). Если я не хочу терять еще качество, я могу повторно закодировать его FLAC или любым другим кодером без потерь и получить больший файл только для поддержания того же качества. Или, я могу повторно закодировать его к mp3 снова и получить тот же размер как оригинал, но потерять больше данных. Очевидно, ни один из этих случаев не идеален. У меня могут или быть первоначальный размер или исходное качество, но не оба (я имею в виду качество оригинала mp3, не исходный источник без потерь). Мой вопрос: мы можем получить обоих? Теоретически возможно восстановить сжатые данные с потерями из распакованных данных с потерями, не проигрывая еще больше?
Если это возможно, я мог бы вообразить алгоритм сжатия без потерь, который сжимает аудио с FLAC. Затем это также сканирует аудио для любых знаков предыдущего сжатия с потерями, и, если обнаружено, повторно сжимает его без потерь до исходного файла с потерями. Затем это сохраняет, какой бы ни файл меньше.
Причина FLAC больше, чем MP3 тех же данных, состоит в том, потому что они кодируют по-другому.:) MP3 просто кодирует перцептивную информацию, в то время как FLAC хранит каждое пятнышко данных, только в более компактном формате.
Точно так же MP3 просто хранит инструкции для генерации пульсаций, которые при добавлении вместе отчасти походят на оригинал. Но различие между истинным сигналом и сгенерированным сигналом (сигнал ошибки) состоит из случайных шумных артефактов, как неровности JPEG. Когда Вы затем храните это в перфекционистском формате как FLAC, он должен сохранить все те неровности, и случайные помехи более трудно сжать без потерь, таким образом, он увеличивает размер файла. (Действительно случайные помехи несжимаемы. При сжатии файла без потерь Вы устраняете избыточные шаблоны повторения и то, чтобы заставлять его больше походить на случайные помехи.)
Я держал пари, преобразовываете ли Вы JPEG в PNG, Вы будете видеть тот же вид увеличения размера, как Вы видите при преобразовании MP3 в FLAC, так как перфекционистский кодек без потерь должен помнить каждую небольшую неровность и артефакт, который не был в исходном bmp.
Эта аналогия не прекрасна, так как аудио больше похоже на фотографию, чем штриховая схема, но это помогает объяснить идею:
Исходный размер BMP: 29 КБ
Размер PNG: 629 B
Размер JPEG: 1,7 КБ
PNG создал из JPEG: 6,2 КБ
Когда Вы декодируете MP3, какая скорость передачи, Вы получаете стандартные 1411kbps/44100Hz 16 битов (или независимо от того, что источник был), аудио PCM, которое имеет все значимые и незначимые эффекты с потерями, кодируют процесс, этот формат требуется для воспроизведения и encoding/re-encoding, любой файл любого кодека распаковывается при проигрывании его на компьютере, MP3-плеере, и т.д.
Кодер FLAC не заботится, прибыло ли аудио, которое он сжимает, из декодируемого MP3 или совершенно нового CD, он просто уменьшит размер исходного файла без любого изменения в аудиоданных, делая полное восстановление источника возможным, процесс без потерь.
Файл FLAC, сделанный из MP3, будет точно походить на MP3, файл FLAC, сделанный из дорожки CD, будет точно походить на CD.
Для ответа на часть вторую, если Вы преобразовываете назад в WAV от MP3, затем выбирают кодер без потерь, у Вас должен быть файл идентичного качества, когда Вы сделаны.
Относительно того, почему FLAC больше, чем MP3, Вы берете один из больше-сжатых-форматов, распаковывая его, затем повторно сжимая его в менее - эффективный инструмент сжатия (хотя с более высоким качеством воспроизведения).
Это отчасти похоже на выяснение, почему преобразование JPG к PNG делает это больше - Вы [частично] распаковываете файл, затем повторно сжимаясь способом без потерь. FLAC, как PNG, не оптимизирован для пространства, но по качеству.
mp3 reqiures декодер, чтобы быть играемым, результатом декодера является приближение исходной дорожки (обычно с CD), таким образом, декодер добавляет данные для создания этого играемым (и это не данные ерунды). Получающееся приближение получило ту же скорость передачи как исходная дорожка. Не декодируя mp3 информация не имеет никакого смысла, так не может быть преобразован ни во что больше (если не очень похожий encodeing, как stereo-mp3 к 2X mono-mp3). И FLAC и mp3 даже не близко к подобному. Когда decodig FLAC, результатом не является приближение orignal данных, закодированных в FLAC, но это точно то же.