무손실 오디오의 변환 및 압축 해제 이해


12

무손실 오디오에 관한 몇 가지 질문이 있습니다. 전체 음악 컬렉션을 무손실 .flac로 리핑하는 것을 고려하고 있지만 먼저 몇 가지 사항을 이해하고 싶습니다.

.flac 파일이 있는데 .wav로 만들고 싶은 경우 품질 손실이 발생하지 않도록하려면 어떻게해야합니까? 압축을 풀면 품질이 떨어지지 않습니다. .flac를 .wav로 변환하는 것은 압축 해제와 동일합니까?

이것은 .ape 형식에도 적용됩니까? .ape로 다운로드 한 퍼블릭 도메인 레코딩이 몇 개 있지만 .flac로 만들고 싶습니다. .wav를 중간 사람으로 사용하지 않고 .ape를 .flac로 사용할 수 있습니까? 어떤 식 으로든 조금이라도 손실되지 않도록하고 싶습니다.

또한 무손실 세상을 설명하는 가이드가 있다면 누구나 링크를 공유 할 의향이 있습니까? :)

답변:


14

먼저:

인코딩컨테이너 형식 의 차이점을 이해하십시오 . http://en.wikipedia.org/wiki/Digital_container_format

컨테이너 형식은 다른 인코딩 된 데이터를 "캡슐화"하는 데이터 형식입니다. 인코딩 된 데이터에 대한 "메타 정보"를 포함하거나 인코딩 된 데이터의 여러 개별 스트림 또는 이와 유사한 것을 저장하는 방법이 있습니다.

코덱으로 생성 된 인코딩은 데이터 스트림의 실제 "고기"입니다.

내가 생각할 수있는 가장 일반적인 예는 "Ogg / Vorbis"형식입니다. Ogg는 컨테이너 형식이며 Vorbis는 인코딩입니다. 따라서 Ogg 형식의 파일이 있으며 내부에는 인코딩 된 데이터가 포함 된 작은 버킷이 있습니다. 각 버킷에는 Vorbis로 인코딩 된 데이터 스트림이 있습니다. 버킷에는 아티스트 이름과 노래 제목이 찍혀있을 수 있습니다.

다시 기술로 돌아가십시오.

  1. 당신은 MP3와 같은, 이미 손실 포맷으로 음악이있는 경우 또는 오그 / 보비스 만 디스크 공간 (많이)를 먹을 것이다 무손실 형식으로 변환하고,하지 않을 것이다 - 절대적으로 하지 않을 것이다 -의 질을 향상 오디오가 무엇이든. 이미 손실 된 경우 충실도를 생성 할 수 없습니다. CSI라는 인기 TV 쇼에서 Visual Basic으로 GUI 인터페이스를 작성하지 않는 한 현실이 아니라 환상입니다.

  2. 다른 무손실 형식의 음악이 있고 FLAC로 변환하려는 경우 그렇게 할 수 있습니다.

  3. "WAV"라는 용어를 던질 때주의하십시오. Wav는 무손실이 아닙니다. 실제로 WAV는 다양한 형식의 컨테이너 일뿐입니다. 그런 의미에서 AVI와 비슷합니다. 원시 PCM 데이터 인 경우 무손실 WAV를 가질 수 있지만 MPEG-1 Layer III 데이터 (손실)를 WAV 파일에 포함 할 수도 있습니다.

  4. 데이터의 충실도를 줄이면 무손실 형식에서 다른 형식으로 변환 할 때 데이터가 손실 될 수 있습니다. 예를 들어, 48000Hz에서 부호없는 16 비트 PCM 데이터 스트림을 44100Hz에서 8 비트 PCM 데이터 스트림으로 변환하면 두 가지 방식으로 충실도가 손실됩니다. 샘플은 48000에서 4444 개로 병합됩니다. 두 번째 (데이터 손실로 인한 결과), 샘플 당 16 개 대신 8 비트로 만 정보를 맞추려면 데이터를 다운 믹스해야하므로 품질이 크게 저하됩니다.

압축 (손실 또는 손실이없는) 인코더로 인코딩 된 모든 디지털 오디오 스트림에는 스트림의 속성을 설명하는 필수 요소 인 다음과 같은 "샘플 형식 속성"이 있습니다.

  1. 샘플 비트 폭 및 비트 심도 (예 : 8 비트, 16 비트 등) 비트 폭 및 깊이는 미묘하게 다르며 리틀 엔디안 / 빅 엔디안 (품질에 영향을 미치지 않음) 및 부호있는 또는 부호없는 (또한 그렇지 않은 경우) 품질에 영향을 주지만 인코더 / 디코더가 데이터를 처리하는 방법에는 영향을 미칩니다). 기억해야 할 핵심은 "더 많은 비트가 더 낫다"는 것입니다. 따라서 32 비트는 16 비트보다 좋습니다.

  2. 샘플링 속도라고도하는 주파수. 초당 더 많은 "샘플"오디오가 재생되므로 더 좋습니다. 카드 데크 위에서 손가락을 빠르게 닦고 카드가 흐릿하게 움직이는 것을보고 있다고 상상해보십시오. 이것이 디지털 오디오가 본질적으로 일어나는 방식입니다. 각 샘플은 카드이며 초당 더 많은 카드가 날 경우 오디오가 더 매끄 럽습니다. 예를 들어, 초당 5 장의 카드를 뒤집는 경우 실제로 알 수 있지만 초당 수천 장의 카드를 뒤집는 경우 모두 흐려집니다. 더 자연스럽고 현실에 가깝기 때문에 더 좋을 것입니다. 아날로그와 무한히 나눌 수 있습니다 (물론 플랑크 단위에 이르기까지 논란의 여지가 있지만 주제가 아닙니다).

"무손실"은 입력에서 사용한 것과 동일하거나 더 나은 샘플 형식을 출력에 사용하면 데이터가 손실되지 않음을 의미합니다.

따라서 16 비트에서 32 비트 샘플 형식으로 이동하면 데이터가 손실되지 않습니다. 그러나 32 비트에서 16 비트로 이동하면 데이터가 손실됩니다.

FLAC를 사용할 수 있는지에 대한 귀하의 질문에 대한 대답은 소스 데이터에 따라 다릅니다. 1920xHz (일명 192KHz)로 해당 샘플 형식으로 원래 기록 된 64 비트 WAV 파일이 있고 " 16 비트 및 44.1KHz의 표준 "FLAC 샘플 형식을 사용하면 많은 데이터가 손실됩니다. 그러나 WAV 파일이 초당 22100 샘플로만 8 비트이고 초당 44100 샘플로 16 비트 FLAC로 변환하면 데이터가 손실되지 않습니다. 무손실 압축 또는 더 작은 샘플 형식의 성능에 따라 파일 크기가 커질 수도 있습니다.

샘플 형식은 파일이 차지하는 공간에 영향을 미치므로 "더 큰"비트와 "빠른"샘플링 속도는 더 많은 공간을 차지합니다.

실제적인 관심사와 인간의 귀에 이르기까지 실제로 고 충실도 원본을 16 비트 44.1KHz FLAC로 변환 할 경우 실제로 눈치 채지 못할 것입니다. 그러나 MP3를 FLAC로 변환해도 개선 된 점은 없습니다. 따라서 수행 할 작업을 결정하기 전에 소스 데이터의 샘플 형식을 평가해야합니다.

이제이 모든 정보를 제공 했으므로 다음은 귀하의 질문에 대한 직접적이고 포인트가없는 빈 설명입니다.

무손실 오디오에 관한 몇 가지 질문이 있습니다. 전체 음악 컬렉션을 무손실 .flac로 리핑하는 것을 고려하고 있지만 먼저 몇 가지 사항을 이해하고 싶습니다.

음악 컬렉션이 CD에 있고 FLAC에 리핑하려면 내 의견에 매우 적합합니다. CD 품질의 오디오는 44.1KHz 및 샘플 당 16 비트입니다. 이것은 FLAC의 기본 설정 (적어도 내가 사용하는 인코더의 기본값)과 정확히 일치합니다. 따라서 데이터가 손실되지 않으며 디코딩시 입력 데이터와 수학적으로 동일합니다.

.flac 파일이 있는데 .wav로 만들고 싶은 경우 품질 손실이 발생하지 않도록하려면 어떻게해야합니까? 압축을 풀면 품질이 떨어지지 않습니다. .flac를 .wav로 변환하는 것은 압축 해제와 동일합니까?

입력 데이터와 동일하거나 더 넓은 샘플 형식의 .wav 파일로 변환 할 수 있으며 품질 손실이 없습니다.

미디어 플레이어가 flac 파일에서 오디오를 재생할 때 해당 PCM 데이터를 사운드 카드로 보내기 전에 flac 데이터를 PCM 형식으로 디코딩해야합니다. 들어간 데이터와 정확히 동일한 데이터로 압축이 풀립니다. 따라서 16 비트 44.1 KHz PCM 데이터가 들어 오면 그것이 나오고 스피커로갑니다.

이 작업과 오디오를 WAV 파일 로 변환 하는 것의 유일한 차이점은 WAV 파일로 변환 할 때 적절한 필러 비트 등을 사용하여 WAV 컨테이너를 만들어야하며 샘플 형식을 선택할 수 있다는 것입니다. WAV 파일의 그러나 샘플 형식이 동일하다고 가정하면 FLAC 파일과 WAV 파일의 유일한 차이점은 파일 크기뿐입니다. WAV 파일의 크기는 상당히 커집니다.

이것은 .ape 형식에도 적용됩니까? .ape로 다운로드 한 퍼블릭 도메인 레코딩이 몇 개 있지만 .flac로 만들고 싶습니다. .wav를 중간 사람으로 사용하지 않고 .ape를 .flac로 사용할 수 있습니까? 어떤 식 으로든 조금이라도 손실되지 않도록하고 싶습니다.

아니요, 일부 PCM 형식을 중개인으로 사용하지 않으면이 작업을 수행 할 수 없습니다 . 그러나 예, 이다 WAV 파일을 사용하지 않고 그것을 할 수 있습니다. 차이점에 유의하십시오. PCM 데이터 스트림. WAV 파일. 구별이 명확하지 않으면 내 게시물의 시작 부분을 다시 읽으십시오. "조금이라도"손실되지 않도록하려면 APE 파일을 검사하고 파일 형식을 이해하고 FLAC 인코더가 동일한 설정으로 인코딩되도록 설정해야합니다.

내부적으로 모든 오디오 변환 프로그램은 소스 형식에서 무손실 PCM 샘플 형식으로 디코딩 한 다음 해당 PCM 샘플을 취하여 대상 형식으로 다시 인코딩합니다.

또한 무손실 세상을 설명하는 가이드가 있다면 누구나 링크를 공유 할 의향이 있습니까? :)

제 생각에는 배우는 가장 좋은 방법은하는 것입니다. Gstreamer 프레임 워크, 사용 방법 및 샘플 형식의 다양한 튜너 블의 의미 및 파이프 라인 구성 방법을 배우는 데 시간이 걸리면 디지털 오디오에 대한 이해가 깊어 질 것입니다. 확인 해봐. http://gstreamer.freedesktop.org/ 또한 http://code.entropywave.com/gstreamer-sdk/(Windows 지원) 에서 Gstreamer SDK를 가져 와서 아무것도 컴파일하지 않고도 gst-launch-0.10으로 실험 할 수 있습니다. 소스에서.

몇 가지 공개 사항 :

gst-inspect-0.10 vorbisenc gst-inspect-0.10 vorbisdec gst-inspect-0.10 audioconvert gst-inspect-0.10 오디오 샘플

그런 다음 캡, 파이프 라인 구성 등에 대해 배우면 바로 이동할 수 있습니다.

* 참고 : PCM이 무엇인지 설명하지 않았다는 것을 알고 있습니다. Wikipedia는 나보다이 일을 더 잘 수행합니다. http://en.wikipedia.org/wiki/Pulse-code_modulation


와우, 이것은 당신이이 모든 것을 얼마나 명확하고 훌륭하게 설명했는지는 놀라 울 정도입니다. 전에는 이런 것들의 절반을 생각하지 마십시오. 답을 보내 주셔서 감사합니다.이 모든 것을 입력하는 데 걸린 시간도있었습니다! +1!
라이언 맥 클루 어

무손실은 동일한 PCM 데이터를 이상적으로 의미하므로 비트 전송률과 샘플 속도는 그대로 유지하는 것이 항상 목표입니다. 샘플링 속도의 두 배가 아닌 다른 것으로 업 샘플링해도 손실이없고 (0을 균등하게 추가 할 수 없음) 디스크 공간이 낭비됩니다. 어쨌든 FLAC는 샘플 당 4에서 32 비트의 PCM 비트 해상도, 1Hz에서 1Hz에서 655,350Hz의 샘플링 속도 및 1에서 1까지의 모든 채널 수를 처리 할 수 ​​있으므로 FLAC에는 문제가되지 않습니다. 8 ( en.wikipedia.org/wiki/FLAC#Design )
mtone

WAV는 항상 PCM을 포함합니다. CD 품질의 PCM이 아닐 수도 있지만 (실제로 말하면 거의 항상 그렇기 때문에 일반적으로 이것을 가정 할 수 있습니다), mpeg 3 레이어 2와 같은 것이 아닌 PCM 일 것입니다.
psusi

@psusi : 죄송하지만 잘못되었습니다. WAV의 wikipedia 기사 ( en.wikipedia.org/wiki/WAV)를 읽으십시오 . 원하는 경우 MP3 오디오가 포함 된 WAV 파일에 대한 링크를 게시 할 수 있습니다. WAV 파일에 대해 명심해야 할 것은 파일이 RIFF 파일이고 RIFF 파일이 미디어 컨테이너 형식을 상당히 기본적으로 수정 한 것입니다. 그러나 근본적인 목적으로 비디오가 아닌 오디오 만 지원하는 것 외에는 Ogg 나 Matroska와 크게 다르지 않습니다. 편집 : wav / mp3 파일을 만들 필요가 없습니다. 예! 실제로 Wikipedia와 연결되어 있습니다! nch.com.au/acm/8kmp316.wav
allquixotic

이 답변에는 약간의 부정확성이 있습니다. "샘플링 속도라고도하는 주파수입니다. 초당 재생되는 오디오의"샘플 "이 많을수록 더 좋습니다." -샘플링 속도가 작동하지 않습니다. 비트 깊이가 관련되지 않은 경우 48khz 샘플 속도의 데이터는 최대 24khz까지 신호를 무손실로 나타낼 수 있으며 더 많은 샘플을 추가해도 변경되지 않습니다. 더 많은 샘플은 표현할 수있는 주파수에만 영향을줍니다. 44.1khz에서 48khz로 변환하는 것은 도입 된 오류가 미친 듯이 작더라도 무손실로 엄격하게 말하는 것은 아닙니다.
cooky451

1

나는 allquixotic의 진술에 동의하지 않아야한다.

mp3 또는 ogg / vorbis와 같은 손실이있는 형식의 음악이 이미있는 경우, 손실이없는 형식으로 변환하면 디스크 공간 만 많이 소모되므로 절대로 그렇지 않을 것입니다. 오디오. 이미 손실 된 경우 충실도를 생성 할 수 없습니다. CSI라는 인기 TV 쇼에서 Visual Basic으로 GUI 인터페이스를 작성하지 않는 한 현실이 아니라 환상입니다.

오디오 엔지니어링에 대한 지식이 부족하고 사람들에게 허위 진술을 제공합니다.

  1. Ogg와 Vorbis에는 원본 웨이브 데이터 정보를 저장하는 컨테이너가 있으며 해당 데이터를 사용하여 무손실로 변환 할 수 있습니다. 충분히 구글하세요.

  2. 저손실 MP3에서 무손실로 변환하는 경우에도 사운드를 많이 개선 할 수 있지만, 원래처럼 완벽하지는 않지만 역동 성과 디더링으로 쉽게 고정 할 수 있습니다. https://www.izotope.com/en/products/master-and-deliver/ozone.html/OzoneDitheringGuide.pdf

오디오는 10100110101001 데이터가 아니므로 파일 크기가 작다고해서 품질이 저하되지는 않습니다. 당신은 수십 년 전에 128kbps에서 320kbps에 대한 경험이 있었으며 128kbps가 무손실로 불가능하다고 생각합니다. 이 간단한 작업을 직접 테스트하고 깨달으십시오.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.