전세계에서 제일 처음 나온 동영상 코덱. 전화선 상에서 영상통신하기 위한 용도이다.
광케이블이 안깔렸을때는 전화선을 1~30개 연결해서 케이블로 썼다.
한국은 광케이블이 다 깔려있지만 국토가 큰 나라는 다 깔수가 없다. 그래서 스타링크같은 서비스가 있다.
realtime video codec이다. 전화선을 몇개쓰느냐에 따라서 내가 보낼 수 있는 bandwidth가 정해진다.
전화선 한개의 max비트량이 64kbps. 이제는 전화선 모뎀을 사용하는 곳은 거의 없다.
rate control = 전송하는 비트량을 bandwidth에 맞게 조절하는것으로 DCT양자화 계수를 제어해서 전체부호발생량을 조절한다.
처음 데이터는 ME/MC없이 B와 연결되어서 DCT 양자화를 거친다.
역양자화 역변환기를 거쳐서 이미지를 reconstruct해서 메모리에 저장하고, 다음 프레임은 ME/MC를 적용
디코더에서 하는 역양자화, 역변환 작업을 인코더에서 수행하는 이유는 디코더에 에 전송한 영상과 동일한 데이터를 유지하기 위해서이다.
rate control = bandwidth에 맞게 bitrate를 제어한다.
루프필터 ⇒ integer단위로 ME/MC 수행하는데 정밀도를 높이기 위해서 루프필터를 통한 low pass filtering을 수행한다. half pel단위의 ME/MC를 적용하기에는 당시에 개발할때 연산복잡도, 메모리 측면에서 구현할 수 없었다. 매크로블록 단위마다 루프필터를 on off하도록 설계함
현재의 신호를 과거의 신호로부터 예측한다. 예측한 신호의 오차가 입력 신호보다 작으면 부호화 이득을 얻을 수 있다.
실시간 영상통신환경헤서는 b프레임을 쓸 수없음 ipppp…..
프레임 간 예측 = inter coding, 프레임 내 부호화 = intra coding
대부분 inter frame을 사용하고 장면전환 등 프레임 상관도가 낮은 부분은 intra프레임을 사용한다.
장면전환이 발생되면 이전영상과 현재영상의 correlation낮아서 dpcm등 차영상을 구해서 laplacina형태의 분포를 가진 residual data를 entropy coding해서 전송하는데 장면전환은 전송해야할 데이터량이 증가하므로 차영상을 구하지 않고 original data를 그대로 보내는것이 코딩효율 측면에서 우수하다
→ intra frame 코딩