노무현 대통령 배너
BLOG main image
왕미친놈의 왕미친세상입니다. 미친 소리는 써도 되지만, 근거 없는 소리는 쓰면 안 됩니다.


동영상에서 오디오 부분만 제거하는 것은 앞서 썼던 동영상에서 오디오 부분만 작업하기 12를 응용하면 된다. 다시 말해 음향 부분만 조작하여 소리를 없애면 된다는 뜻이다.

참고로 이 팁은 내 블로그의 유입 경로를 살펴보고 작성하였다.

지난 번처럼 샘플 영상은 도스박스에서 만든 프린세스메이커 2의 오프닝 동영상이다.

VirtualDub에서 동영상의 오디오 없애기

편집에 앞서 GSpot을 이용하여 지난번에 봤던 동영상 정보를 다시 보자.

편집 전 동영상 정보

편집 전 동영상 정보

버추얼더브에서 위 동영상을 읽어오자.

VirtualDub에서 원본 파일을 불러온 화면

VirtualDub에서 원본 파일을 불러온 화면

일단 이번에도 동영상은 안 건드린다고 가정하겠다.

동영상의 영상 부분은 건드리지 말자.

동영상의 영상 부분은 건드리지 말자.

한편 오디오 설정에서는 아예 소리를 없애야 한다. No audio 항목을 선택하자.

동영상의 음향 부분에서 아예 오디오를 없애자.

동영상의 음향 부분에서 아예 오디오를 없애자.

이제 F7을 눌러 동영상을 저장하면 음성 정보가 없는 동영상이 만들어진다.

음향 정보가 없는 동영상 파일의 정보

음향 정보가 없는 동영상 파일의 정보

위 그림에 보면 컨테이너(Container) 부분에 Video만 나오고 Audio는 나오지 않는다. 또한 오디오(Audio) 부분에 아무런 내용도 출력하지 않는다. 이것은 당연하다. 이 동영상 파일에는 음향 정보가 들어 있지 않기 때문이다.

AVI-Mux GUI에서 동영상의 오디오 없애기

AVI-Mux GUI 프로그램에서 샘플 동영상을 불러오자.

AVI-Mux GUI에서 동영상 읽어오기

AVI-Mux GUI에서 동영상 읽어오기

동영상을 읽어온 화면에서 open files 목록에 있는 [AVI] D:\Usr\LCP\My Documents\1\z\pm2_001.avi 부분을 두번클릭하거나 generate data source from files(파일로부터 자료 소스 만들기) 단추를 클릭하면 아래에 있는 작업 창에 정보가 나타나게 된다.

이때 음향을 없애야 하기 때문에 음향에 관계된 부분은 모두 제거하자.

오디오 관련 정보를 제거한 화면

오디오 관련 정보를 제거한 화면

위와 같이 체크박스에서 체크 표시를 없애기 바랍니다. 위 그림에서는 자주색 네모로 표시한 부분에 체크 표시가 없습니다.

이것을 start 단추를 눌러 새로운 파일을 만들면 됩니다.

이제 GSpot으로 파일 정보를 보면 용량이 줄고 음향 정보가 없어졌음을 알 수 있습니다.

AVI-Mux GUI로 작업한 파일의 정보

AVI-Mux GUI로 작업한 파일의 정보

관련 문서

이 글은 스프링노트에서 작성되었습니다.


글쓴이는 koc/SALM입니다.
본문에 저작권에 대한 사항이 나타나지 않거나, 저작권이 BY-SA로 표기되어 있다면,
이 글은 GFDL로 공개한 글입니다.

앞서 VirtualDub(버추얼더브)에서 영상 부분은 가만히 두고 음향 부분만 수정하여 보았다. 그러면 이번에는 VirtualDub(버추얼더브)가 아닌 다른 프로그램에서 음향을 합쳐 보자. 물론 실제 음향 편집은 각자 좋아하는 프로그램을 이용하기 바라며, 음향에 들어 있는 음성 데이터는 건들지 않고, 음향 효과만을 추가하는 것이 좋다. 다만 지금 작업하는 파일은 음성이 포함되어 있지 않으므로 별로 상관 없는 이야기가 되겠다.

이번에도 도스박스에서 만든 프린세스메이커 2의 오프닝 동영상을 음향 부분을 작업하겠다.

VirtualDub에서 음향 빼내기

편집에 앞서 GSpot을 이용하여 지난번에 봤던 동영상 정보를 다시 보자.

편집 전 동영상 정보

편집 전 동영상 정보

버추얼더브에서 위 동영상을 읽어오자.

VirtualDub에서 원본 파일을 불러온 화면

VirtualDub에서 원본 파일을 불러온 화면

이 동영상에서 음향을 추출하는 방법은 의외로 쉽다. 파일(File) 메뉴에서 Save WAV... 항목을 선택하면 된다. 그러면 파일 저장 대화상자가 나타나는데, 거기에 알맞은 이름을 주면 동영상에 포함된 음향을 WAV 파일로 저장해 준다.

WAV 파일로 저장

WAV 파일로 저장

물론 저장하기에 앞서 오디오(Audio) 메뉴의 Compression 항목에서 적절하게 설정을 해 주면 바로 압축도 해준다. 여기서는 PCM을 그냥 유지하겠다. 여러 가지 이유가 있지만, PCM은 압축이 되지 않은 상태이므로 음질이 가장 좋기 때문이다.

음향 작업

동영상 파일에서 음향만 빼낼 수 있다. 이렇게 음향만 빼내는 이유는 영상 부분을 제외한 음향 부분만 따로 편집하기 위함이다. 이번에는 그저 압축만 시켜볼 생각이다. 각자 자신이 좋아하는 음향 편집 프로그램에서 음향을 편집하기 바란다.

음향을 압축하는 작업은 winLAME(윈라임)을 사용하기로 하자. 이것은 LAME(위키백과)의 윈도용 버전이다.

winLAME 실행화면

winLAME 실행화면

winLAME 실행화면에 보이는 아이콘에 먼저 설명하겠다.

  •  파일 열기 아이콘 - 당연히 사운드 파일을 불러오는 아이콘이다.
  •  삭제 아이콘 - 목록 창에서 작업하지 않을 파일을 제거할 때 쓰는 아이콘이다.
  •  재생 아이콘 - 확장자로 연결된 프로그램을 불러와서 사운드 파일을 재생한다.
  •  CD 아이콘 - 음악CD의 트랙에서 음악을 추출할 때 쓰는 아이콘이다.

음향 파일 열기

음향 파일 열기

이 음향 파일은 방금 추출한 프린세스메이커의 오프닝 사운드가 담겨 있다. 아래에 보이는 Next >> 단추를 클릭하면 다음 작업으로 넘어간다.

출력 설정

출력 설정

앞으로 저장할 때 WAV 파일로 하겠다면 Overwrite existing files 항목의 체크를 없애야 한다.

프리셋(Preset) 선택

프리셋(Preset) 선택

이미 만들어진 설정(Preset)을 선택한다. 직접 설정하고 싶다면 Custom settings를 선택하고, VirtualDub와 호환성을 갖는 파일을 만들려면 맨 아래 VirtualDub: audio track compression, CBR at 128 kbps를 선택한다.

LAME 인코더 설정

LAME 인코더 설정

LAME 인코더를 설정할 때는 세 가지를 주의해야 한다.

  1. 비트레이트(Bitrate) : 필요한 만큼만 설정한다. 대부분 음질을 좋게 한다며 192(kbps)나 심지어 256을 설정하기도 하는데, 영화 보면서 필요 이상으로 음질이 너무 좋을 필요가 없다는 사실도 좀 고려했으면 한다. CD 음질이라면 128이면 충분하며, 이번 경우에는 FM 음질이므로 64(kbps)이면 충분하다.
  2. 고정 비트레이트(Constant Bitrate; CBR) : 앞서 VirtualDub: audio track compression, CBR at 128 kbps를 선택했다면, 이 항목이 체크되어 있게 된다. 왜냐하면 동영상과 가장 호환성이 좋은 것이 바로 고정 비트레이트이며, 그 다음이 가변 비트레이트 가운데 VBR이고, 마지막으로 가장 호환성이 좋지 않은 것이 가변 비트레이트 가운데 ABR이다. 특히 VirtualDub은 ABR 음악 파일을 지원하지 않는다.
    물론 요즘에는 가변 비트레이트 사운드도 동영상에 자주 쓰이는데. 대표적으로 OGM 포맷이나 마트료시카 포맷(MKV) 등에서 쓰이고 있다.
    참고로 같은 크기의 파일에서 음질이 좋은 순서는 ABR, VBR, CBR이다. 다시 말해 CBR은 호환성이 가장 좋지만 음질은 셋 가운데 가장 처진다.
  3. RIFF WAVE 헤더 : MPEG Layer III 코덱(흔히 MP3 코덱)으로 압축한 WAV 파일이다. WAV 파일은 흔히 MP3 코덱으로 압축할 수 없다고 알려져 있지만, 이 경우에는 압축이 가능하다. VirtualDub의 옛 버전에서는 외부 오디오 파일로 RIFF WAVE 파일만 지원했다(지금은 mp3 파일도 지원한다.). 동영상 파일에서 음향(오디오) 부분이 MP3로 압축되어 있을 때, 그 음향을 WAV 파일로 추출하면, 그 WAV 파일의 헤더에 코덱이 MP3로 기록된다. 이와 같이 RIFF WAVE 파일은 대부분 동영상의 사운드 트랙을 추출한 WAV인데, 라임(LAME)에서는 이것을 사용자가 임의로 만들 수 있게 해준다. 이러한 형식으로 만드는 목적은 괄호에 영문으로 적혀 있듯이, 동영상의 영상 트랙과 함께 작업할 사운드 트랙을 만들기 위해서이다.

인코딩 화면

인코딩 화면

이때 인코딩 화면 및 트레이에 나타나는 아이콘을 설명하면 다음과 같다.

  •  / 
    시작 및 멈춤 아이콘 : 인코딩 작업을 시작하는 아이콘과 일시 정지 아이콘이다. 시작 아이콘을 클릭하면 멈춤 아이콘으로 바뀐다.
  •  작업 중지 아이콘 : 인코딩 작업을 강제로 종료하는 아이콘이다. 시작 아이콘을 클릭해야만 활성화된다.
  •  트레이로 보내기 아이콘 : 윈라임을 트레이로 보내는 아이콘이다.

    •  작업하지 않는 상태 : 윗줄 왼쪽 첫 번째 초록색 아이콘. 인코딩 작업이 이루어지지 않을 때는 초록색으로 나타난다.
    •  작업 중인 상태 : 윗줄 왼쪽 첫 번째 붉은색 아이콘. 인코딩 작업이 이루어지고 있을 때는 붉은색으로 나타난다.

인코딩 작업 중 화면

인코딩 작업 중 화면

일단 인코딩이 시작되면 인코딩 화면에 몇 번째 파일인지, 현재 몇 %나 작업이 진행되었는지, 얼마나 작업 시간이 남았는지 등과 작업 파일에 대한 정보를 알려준다.

인코딩 작업 끝!

인코딩 작업 끝!

방금 작업한 pm2_001.mp3 파일에 대한 정보는 다음과 같다.

GSpot에서 살펴본 pm2_001.mp3 파일 정보

GSpot에서 살펴본 pm2_001.mp3 파일 정보

영상에 음향 합치기 1 : AVI-Mux GUI 사용

AVI-Mux GUI 프로그램을 이용하여 비디오 파일에 오디오 파일을 합칠 수 있다. 이때 이미 비디오 파일에 오디오 정보가 있을 때에는 오디오 트랙을 2개 이상으로 만들 수도 있다.

AVI-Mux GUI의 처음 실행 화면

AVI-Mux GUI의 처음 실행 화면

파일 열기 1

파일 열기 1

파일을 추가하려면 open files 영역에서 마우스 오른쪽 클릭을 하면 위와 같이 add라는 컨텍스트 메뉴가 생긴다. 그것을 클릭하면 아래와 같은 열기 대화상자가 나타난다.

파일 열기 2

파일 열기 2

파일 열기 3

파일 열기 3

위 그림은 이미 하나 이상의 파일을 추가했을 때의 컨텍스트 메뉴이다. 여기에서도 마찬가지로 add를 클릭하여 열기 대화상자를 보이게 하면 된다.

다만 추가한 파일이 MP3 코덱을 사용한 때는 위와 같이 CBR 방식의 파일인지를 검사한다. 여기에서 예(Y)를 클릭하면 검사한 뒤 그 결과대로 화면에 표시하며, 아니오(N)를 클릭하면 VBR로 표시한다.

CBR 압축을 했음에도 VBR로 보여주는 화면

CBR 압축을 했음에도 VBR로 보여주는 화면

WAV 파일을 불러온 모습.

WAV 파일을 불러온 모습.

동영상 파일과는 달리 오디오 파일은 추가와 함께 아래 작업창에도 나타난다. 신경 쓰이더라도 꾹 참고 쓰기 바란다. 당장은 어쩔 수 없는 노릇이다.

  • 참고 : 이때 AVI-Mux GUI 프로그램에 몇 가지 버그가 있다.

    • 첫 번째 버그는 MPEG 1 Layer 3으로 나타나야 하는데 MPEG 2 Layer 3으로 나타나고 있다. mp3 파일과 RiFF WAV 파일에서 모두 나타난다.
    • 두번째 버그는 CBR로 압축한 mp3 파일임에도 위에는 VBR로 나타나는 때가 가끔 있다. 다만 RiFF WAV 파일의 경우에는 제대로 보여준다.

비디오 및 오디오를 모두 작업창에 나타나게 만든 화면

비디오 및 오디오를 모두 작업창에 나타나게 만든 화면

비디오 파일도 작업창에 나타나게 하려면 해당 비디오 파일을 더블클릭하면 된다.

최종 설정

최종 설정

여기에서는 오디오 트랙을 교체할 생각이므로 PCM 오디오 부분의 체크를 없앤다. 그 뒤에 all audio streams 항목의 체크도 없앤다. 만약 이것을 없애지 않으면 비디오 파일에 새로운 오디오 트랙을 추가할 뿐이다. 다시 말해 모든 오디오 정보를 동영상 파일에 기록하게 된다.

준비를 마쳤으면 오른쪽 아래에 보이는 start 단추를 클릭하자.

저장할 파일 이름

저장할 파일 이름

오디오를 비디오와 합치는 작업

오디오를 비디오와 합치는 작업

여기까지 하면 AVI-Mux GUI의 작업이 끝난다.

이제 GSpot으로 파일 정보를 보면 용량이 줄었음을 알 수 있다.

AVI-Mux GUI로 작업한 파일의 정보

AVI-Mux GUI로 작업한 파일의 정보

하지만 지금까지와는 달리 AVI-Mux GUI로 작업한 파일은 나름대로 정확하게 보여주고는 있지만, 파일 크기보다는 파일 형식에 대한 정보가 많다. 다만 전체 크기가 6.73 MB라는 사실만을 정확히 알려줄 뿐이다.

그래서 KMPlayer에서 읽은 다음 파일 정보를 살펴보았다.

KMPlayer에서 읽어온 파일 정보

KMPlayer에서 읽어온 파일 정보

위에서 보면 영상(Video Stream size)은 4.38 MiB, 음향(Audio Stream size)은 1.97 MiB이다. 이전에 버추얼더브로 작업한 파일과 그다지 다르지 않음을 알 수 있다.

일단 여기에서는 AVI-Mux GUI의 전체 사용법보다는 기본 사용법만을 소개하였습니다. 더 자세한 사용법은 직접 홈페이지 등을 참조하여 익히기 바랍니다.

영상에 음향 합치기 2 : VirtualDub 사용

버추얼더브에서도 음향을 외부에서 읽어올 수 있으므로 충분히 오디오 데이터를 교체할 수 있다.

버추얼더브에서 동영상 파일을 읽어온다. 이때 이미 편집 작업을 마친 오디오 파일을 가지고 있다고 생각하고 설명을 하겠다.

외부 오디오 파일 불러오기

외부 오디오 파일 불러오기

앞서 작업한 pm2_001.mp3 파일을 불러온다.

앞서 작업한 pm2_001.mp3 파일을 불러온다.

그런데 WAV 파일과는 달리 MP3 파일을 불러올 때는 다음과 같은 확인을 거친다.

불러오기 옵션 : MP3

불러오기 옵션 : MP3

"비트레이트 지원"이라고 적혀 있다. 맨 위에는 자동 검출(Autodetect), 가운데는 고정 비트레이트(CBR), 맨 아래는 가변 비트레이트(VBR)이다. 이 옵션이 나온 까닭은 일반 VBR과 CBR은 서로 확연한 차이를 보이지만, AVR(평균 비트레이트)과 CBR은 파일 크기에서는 전혀 차이를 보이지 않기 때문으로 여겨진다. 여기에서는 호환성을 고려하여 CBR로 압축했기 때문에 별다른 문제는 없었다.

그 뒤 비디오와 오디오 모두 Direct stream copy 항목을 선택했다. 만약 비디오를 다시 인코딩하고 싶다면 다른 인코딩 항목을 선택해야 한다. 마찬가지로 오디오를 다시 인코딩하려면 Full processing mode를 선택해야 한다.

설정을 마쳤으면 AVI 파일로 저장하면 된다.

버추얼더브에서 MP3 오디오를 불러 작업한 파일의 정보

버추얼더브에서 MP3 오디오를 불러 작업한 파일의 정보

관련 문서


이 글은 스프링노트에서 작성되었습니다.


글쓴이는 koc/SALM입니다.
본문에 저작권에 대한 사항이 나타나지 않거나, 저작권이 BY-SA로 표기되어 있다면,
이 글은 GFDL로 공개한 글입니다.

대부분의 경우 동영상을 편집할 때 영상과 음향을 함께 편집하기 보다 음향만을 따로 편집하여 나중에 합치고 싶을 때가 있다. 물론 이때 영상 부분은 전혀 편집하지 않고. 이럴 경우 영상 부분을 건드리지 않아야 함에도 많은 프로그램이 영상 부분을 건드려 버려서 난감할 때가 많다.

아주 유용한 AVI 편집 도구인 VirtualDub(버추얼더브)는 그러한 단점을 보완하여 아주 쉽게 오디오 부분만을 교체할 수 있게 해준다.[각주:1] 물론 이러한 경웨 쓸 수 있는 AVI-Mux의 GUI 버전인 AVI-Mux GUI라는 도구도 있다.

지난 번에 도스박스에서 만든 프린세스메이커 2의 오프닝 동영상을 영상 부분은 그대로 두고 음향 부분만 압축하여 다시 합쳐 보기로 하자.

VirtualDub에서 그냥 편집하기

비교 대상이 될 파일이 있으면 좋은 듯하여 VirtualDub에서 프린세스메이커 2의 오프닝 동영상을 편집하기로 했다. 이건 어디까지나 예제이므로 자막을 넣는다거나 동영상을 잘라내는 거창한 편집은 하지 않고, 그냥 인코딩만 다시 해 줄 뿐이다. 다만 동영상 코덱을 ZMBV 코덱에서 Xvid 코덱으로 바꾸었다.

편집에 앞서 GSpot을 이용하여 동영상 정보를 살펴보자.

편집 전 동영상 정보

편집 전 동영상 정보

영상은 4.39 MB, 음향은 21.7 MB로서 음향이 영상보다 훨씬 큰 조금 이상한 동영상 파일이다. 아닌 게 아니라 음향이 PCM(펄스 부호 변조)방식이라서 음향 신호를 단순히 이진 부호로 바꾸어 놓았을 뿐이다. 다시 말해 전혀 압축하지 않은 상태이다. 그래서 코덱이 전혀 필요없는 상태(No Codec Required)이기도 하다. 영상 코덱은 ZMBV 코덱으로 도스박스에 기본으로 포함되어 있는 코덱이다. 없다면 도스박스에서 찾아 설치하기 바란다.

VirtualDub에서 원본 파일을 불러온 화면

VirtualDub에서 원본 파일을 불러온 화면

동영상 파일을 불러온다. 단축키는 Ctrl+O 이다.

영상 압축 설정

영상 압축 설정

영상 압축을 설정한다. 단축키는 Ctrl+P 이다. 위 그림에서 Xvid MPEG-4 코덱을 선택했다. 메뉴에서 고를 때는 Video > Compression 이다.

Xvid 설정

Xvid 설정

Xivid 설정은 대부분 기본값을 그대로 사용하였다.

영상 부분의 압축 설정이 끝나면 음향 부분의 압축 설정을 해주어야 한다. Audio 메뉴에서 필요한 설정을 해 주어야 한다.

음향 압축을 위한 메뉴 설정

음향 압축을 위한 메뉴 설정

음향 압축을 위한 메뉴 설정에서 가장 중요한 것은 반드시 Full processing mode를 선택해야 한다는 점이다. 음향 압축의 기본값은 Direct stream copy 인데, 이것은 원본을 그대로 복사한다는 뜻이다. 다시 말해 아무런 작업도 하지 않는다는 뜻이다. 참고로 비디오의 Direct stream copy 항목도 원본을 그대로 복사한다는 뜻이다.

음향 압축 선택

음향 압축 선택

음향 압축을 보면 겨우 56 kBit/s 이다. 하지만 저 정도 샘플링으로도 충분히 원본에 가까운 소리를 들려줄 수 있다. 우리가 흔히 듣는 128 kBit/s 샘플링 음원은 음악CD에 맞춰 만들어져 있다. 그러나 도스 게임은 대부분 FM 음원에 맞추어 제작되었기 때문에 FM 음원에 알맞은 샘플링을 선택해야 하는데, 56 kBit/s이면 충분하다. 엄밀히 말해서 64 kBit/s이면 더 좋다.

파일 저장

파일 저장

설정을 마쳤으면 AVI 파일로 저장하자. 단축키는 F7이다.

파일 이름은 원본에 vd라는 꼬리표를 달아 주자.

파일 이름은 원본에 vd라는 꼬리표를 달아 주자.

동영상을 재압축하는 화면이다.

동영상을 재압축하는 화면이다.

Xvid 설정에서 기본값을 주고 다시 인코딩한 동영상 파일에 대한 정보는 다음과 같다.

위에서 보면 영상은 14.2 MB, 음향은 1.72 MB 이다. 음향이 줄었지만, 영상이 반대로 커져서 그다지 이익을 얻지 못하였다. 영상 부분이 그대로라면 훨씬 더 용량이 줄어들게 되니 음향만 인코딩하는 방법이 더 나을 듯하다. 다만 위에서 파일명 끝에 꼬리표가 vd2인 이유는 설명과는 달리 이게 두 번째 인코딩 파일이기 때문이다.

음향만 바꾸기

동영상 파일에서 음향만 빼낼 수 있다. 이렇게 음향만 빼내는 이유는 영상 부분을 제외한 음향 부분만 따로 편집하기 위함이다. 이번에는 그저 압축만 시켜볼 생각이다.

먼저 VirtualDub를 실행하여 동영상 파일을 불러오자.

영상 압축을 설정하기에 앞서 Video 메뉴의 Direct stream copy 항목을 선택한다. 이것을 선택하면 비디오 압축(Compression) 항목이 비활성화된다.

그 뒤 앞서 했던 음향 설정을 다시 해 주면 된다.

설정이 끝났으면 파일을 저장하자. 그런데 이번에는 매우 일찍 끝난다. 아까는 7분쯤 걸렸는데, 이번에는 30초쯤 걸린다.

물론 인코딩에 걸린 시간도 중요하지만, 더 중요한 것은 파일 크기이다. 화질이야 작업을 하지 않았기 때문에 처음 그대로일 테니까.

위에서 보면 영상은 4.39 MB, 음향은 1.72 MB이다. 이는 겨우 10메가바이트에도 이르지 않는 작은 크기이다.

방금 작업한 pm2_001-Compressed 동영상을 감상해 보자. 더구나 대부분의 게시판에서 10메가바이트 이하의 파일은 업로드를 지원하므로 바로 내려받기 할 수 있다.

관련 문서

이 글은 스프링노트에서 작성되었습니다.


  1. 나는 VirutalDub에서 지원하지 않는 기능으로 생각했으나, 아주 훌륭하게 지원해 주었다. 물론 VirtualDub는 최신 버전을 사용하기를 권한다. [본문으로]
글쓴이는 koc/SALM입니다.
본문에 저작권에 대한 사항이 나타나지 않거나, 저작권이 BY-SA로 표기되어 있다면,
이 글은 GFDL로 공개한 글입니다.

카테고리

분류 전체보기 (1005)
스크립트 (22)
벌레와 팁 (126)
소프트웨어 (240)
하드웨어 (6)
이야기 (24)
말의 나무 (506)
미쳐보자 (22)
일기 (48)
아이폰 (10)

최근에 올라온 글

최근에 달린 댓글

최근에 받은 트랙백

달력

«   2024/12   »
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30 31

글 보관함