[DE |
EN |
FR |
JA |
ES |
KO |
PT]
멋진 GNU 세상을 찾아 주셔서 감사합니다. 이번호에서는 지난호에서 언급이 되었던 오디오 어플리케이션에 대한 이야기를 계속 이어갑니다.
LAoE [5]는 Olivier Gäumann씨가 제작한 GUI 소리 편집기입니다. 2000년 6월부터 프로젝트에 착수한 이후로 그는 그 프로그램을 GNU 공중 사용 허가서하에 사용이 가능하도록 만들었습니다.
이 프로젝트를 시작하기에 앞서, Olivier씨는 2000년 1월부터 그의 필요에 딱 맞는 적절한 프로그램을 찾아봤지만, 불행하게도 실패를 했습니다. 그래서 그는 그의 가려 움을 스스로 긁기로 결심했으며, 프로그램을 개발하기 시작했습니다. 전문적인 음악에 대해 경험이 부족해, 그 개발은 몇번의 죽어버린 최후와 어려움을 맞기도 했습니다. 하지만 그것들은 시간이 지나면서 해결이 되었습니다.
LAoE의 디자인은, 상당한 플러그인과 효과들 그리고 레이어 기반 개념을 적용했던 자유 소프트웨어 그래픽 프로그램인, GIMP[6]로부터의 영감을 얻었습니다. Olivier씨는 그래픽 프로그램처럼 거의 완벽한 소리 편집기를 제작하는데 희망을 가지고 있습니다.
LAoE는 mp3, wav, au, aiff 그리고 gsm 파일을 읽을 수 있고 wav와 aiff로의 출력을 지원합니다. 다른 레이어와 세팅들이 보존되는 초기의 laoe 포맷의 제작이 계획되어 있습니다.
비록 하드웨어의 성능이 채널과 레이어의 수에 실질적인 한계를 결정한다 하더라도, LAoE는 이론적으로 무한개의 레이어를 지원합니다. 최대 정밀도를 높이기 위해 모든 동작들이 부동소수점 기반으로 연산됩니다.
복사, 붙이기, 잘라내기, 이동하기 등의 기본적인 기능을 제외하더라도, LAoE는 또한 이전의 어떤 상태로도 되돌릴 수 있는 더 정교하면서도 무제한의 되돌리기 기능을 제공합니다. 편집을 위해 영역을 선택하고, 수정하는 것은 복합적인 방법으로 가능하고 다른 기능들을 가지고 할 수 있습니다.
분석 툴들 말고도, LAoE는 음향발생기나 진폭 변형에 대한 다른 기능들을 포함하고 있습니다. 빠른 퓨리에 변환법(FFT)을 이용한 진동수 영역 편집이나 변환이 지원될 뿐만아니라, 진동수와 다른 파라미터들로 필터링하는 기능도 또한 있습니다. 그것뿐만 아니라, 이 프로젝트는 많은 다양한 효과들 즉, delayed echo, pitch manipulation, disharmony plugin, time manipulation등등의 기능을 제공합니다. 또한, 스펙트럼 사진을 보여주고 편집하는 것이 가능합니다.
Olivier는 또한 사용법을 개선하는 것에 시간을 할애 했습니다. 그래서 LAoE는 "마우스로만든 획으로 바로가기"라는, 예를 들어, 마우스로 간단하게 "u"를 그림으로써 되돌리기 기능 플러그임을 부를 수 있는, 그러한 기능들을 제공합니다.
만약 이것이 여러분에게 여전히 만족스럽지 못하다면, 물론 여러분은 여러분 자신이 만든 효과나 확장기능을 플러그인 형태로 제공하는 것이 가능합니다.
지금까지 상당히 전진된 상태에 있는 개발상황으로, Olivier씨는, 사용법을 개선시키고 이 프로그램에 대한 더 많은 사용자를 얻기 위해, 문서화 작업에 훨씬 더 많은 초점을 맞추려고 계획하고 있습니다. — 현재 짧은 레퍼런스/메뉴 카드들이 이미 작성되어 있긴 합니다. —
지금 상황은, 개선에 대한 제안들과 바램들의 요청 정도가 매우 강함에도 불구하고, 앞으로의 문서화작업이 어느정도 지연될지도 모르는 가능성이 보이고 있습니다.
LAoE의 주요 문제점은 5분보다 더 긴 음악 조각 파일들에 대해서는 사용이 불가능하다는 것입니다. 왜냐하면, 강력한 기술적인 제한들을 가능하게 하기 위해 전체의 파일이 메모리에 올려져야 하기 때문입니다.
또한, 프로그램에 사용된 언어가 자바입니다; 이와 관련한 모든 문제들이 49호[7]에 자세히 설명이 되어 있습니다. 그래서 LAoE는 여전히 독점적인 플랫폼에 의존적일 수 밖에 없습니다.
미래가 Free Java 혹은, 기술적인 문제들을 피해줄 수 있는, 다른 언어의 사용을 가져다 준다 할지라도, LAoE는 분명히 전문적인 오디오 응용프로그램의 분야에서 다른 중요한 단계를 거쳤던 매우 흥미있는 프로젝트일 것입니다.
Olivier씨 자신만의 생각에 따르면, 비록 다른 사람들의 지원을 많이 받지는 못했지만, 그것은 그가 그것에 대해 감사해하지 않는 다는 것을 의미하지는 않는다고 합니다. 정반대로, 그는 명백히 이 프로젝트에 대한 작업을 도와줄 지원자를 기다리고 있습니다.
이 프로젝트에 대한 정보나 관련된 자세한 사항들은 LAoE홈페이지에 가시면 얻으실 수 있습니다.[5]
때로는 같은 프로그램의 다른 버전을 동시에 설치해두고 둘중의 하나를 선택해서 사용하거나 동시에 두가지를 모두 사용할 수 있도록 하는 것이 필요하거나 혹은 적어도 쓸만할때가 있습니다. 이런 경우에 대한 가능성이 있는 이유는 다른 버전끼리 더이상 하위 호환성을 갖지 않거나 다른 프로그램이 같은 어플리케이션의 다른 버전을 요구하는 경우가 있습니다.
여러 운영체제들은 이 문제를 해결하기 위해 다른 해결방식을 취합니다. MS 윈도우즈에서는 중앙 집중하된 레지스트리를 통해서 이 문제를 다루는데, 이 방식은 매우 불만족스러울뿐입니다.
Plan9 운영체제에는 Union 파일 시스템과 결합된 소위 "뷰" 라는 개념이 있습니다. 이것은 모든 어플리케이션을 /bin 디렉토리에 저장해두고 "뷰"를 이용해서 어떤 버전을 사용할지 사용자가 결정할 수 있습니다. Unix 에서는 그와 비슷한 선택/설치는 심볼릭 링크와 PATH, LD_LIBRARY_PATH 환경 변수를 이용하여 이루어집니다.
시스템의 유지보수를 해치지 않고 배포판의 범위를 벗어난 새로운 버전의 프로그램을 수동으로 설치해야 하는 경우에는, GNU Stow[9] 같은 도구를 이용할 수 있는데, 일을 훨씬 쉽게 해줍니다 (#36 호를 보세요 [10]). 하지만, 동시에 다른 버전을 사용 가능해야 한다면 별 도움이 되지 못할 것입니다.
때로는, 사람들이 이러한 문제를 랩퍼와 쉘 스크립트로 해결하려고 하지만, 이러한 해결책은 보통 잘못되기 쉽고 집중적인 관심과 유지보수를 필요로 합니다. Arnaud Bertrand씨가 제작한 Apvsys가 더 나은 솔루션을 제공하기 위해 개발되고 있습니다
모든 어플리케이션들의 다른 버전들은 서로 다른 서브 디렉토리에 설치되고 Apvsys 에 의해 관리됩니다. 사용자들은 자신의 PATH 환경변수에 한개의 디렉토리만을 추가하면 되는데, 이 과정도 자동으로 할 수 있습니다.
결국, APVSYs_TOOLSPEC_FILES 가 특정 어플리케이션과 환경을 위한 서로 다른 버전을 설정할 수 있도록 해 줍니다. 명령행 도구는 사용된 버전을 검사하고 그 설정을 관리할 수 있게 합니다. 만약 특정 버전을 지정하지 않았다면, 기본 버전이 사용됩니다.
모든 설정은 Perl 어플리케이션에 의해 관리되는 단순한 텍스트 파일을 이용해 이루어집니다. Apvsys 쉘 자체는 C 로 작성되었습니다.
배경에 대해 몇가지를 말해야 할 것 같습니다. Apvsys 는 2001년에 Alex Farell 이 Perl 로 작성한 프로그램을 다시 구현한 것입니다. 이것은 더이상 사용이 불가능한데 Alex Farell 이 그것을 업무 시간에 작성했고 따라서 그에 대한 권리는 고용주에게 있기 때문입니다.
Apvsys 는 같은 문제에 빠져들지 않도록 확인되었으며 GNU 일반 공중 사용 허가서 (GPL) 버전 2 를 따르는 자유 소프트웨어로 이용 가능합니다.
C 로 전환하면서 Arnaud Bertrand 는 어플리케이션의 속도는 높이고, ASCII 환경설정 데이터베이스의 형식은 유지하여 전환을 가능한 빠르게했습니다. 이것은 어느정도 성공적인 것으로 보이는데, Apvsys 가 벨기에와 프랑스의 세 곳의 큰 설계 센터에서 2002년 부터 생산 환경의 일부분으로 사용되고 있기 때문입니다.
따라서 Apvsys 의 핵심은 분명히 안정성에 있다고 생각할 수 있는데, 물론 전혀 문제가 없더거나 프로그램을 개선할 가능성이 전혀 없다는 것은 아닙니다. 예를 들면 가끔씩 같은 이름을 가진 다른 도구들이 문제를 일으켜서 신경을 써서 다루어야 하는 경우도 있습니다. 또한 때로는 어플리케이션에 경로가 하드 코딩된 경우에도 문제가 발생합니다.
Apvsys 의 앞으로의 계획은 그래피컬한 사용자 인터페이스와 패키징 시스템을 추가하는 것입니다. 하지만 이미 존재하는 패키징 시스템 중의 하나를 선택할 것인지 완전히 새로 구현할 것인지의 선택은 아직 확실하지 않습니다.
어떠한 경우에도, 자원자들의 Apvsys 개발 참여를 환영하며, 인터페이스나 패키징 시스템에 대한 제안을 할 수 있을 것입니다.
자원자들이 쉽게 도울수 있는 다른 분야는 플랫폼 독립성과 관련된 것입니다. Apvsys 는 GNU/Linux, Solaris, HPUX, Cygwin 에서 실행되는 것으로 알려져 있습니다. 다른 플랫폼에서도 실행은 되겠지만, 검증이 필요합니다.
Apvsys 에 대한 멋진 GNU 세상 질문을 작성한 Xavier Duret 이 제시한 마지막 제안은 GNU Hurd 에 관련된 것입니다. [11] 이 경우는 이것이 아직 수행되지 않았기 때문에, 그는 자원자가 Apvsys 나 Plan9 과 동일한 기능을 제공하는 Union 파일시스템에 기반을 둔 Hurd 번역기를 작성하기를 권장합니다.
적어도 북반구에서는 여름이 빠르게 다가오고 있습니다. 따라서 괴짜들조차도 몸을 보기좋게 만드는 것에 대해 생각해볼 필요가 있습니다. 몸을 만들기 위해 사랑하는 컴퓨터를 떠날 필요가 없다고 확신하기 위해서 다음의 프로젝트가 있습니다.
pyDDR [12] 는 DDR("Dance Dance Revolution") 게임의 파이썬 클론인데, 플레이어는 몸 전체를 이용해서 정확한 때에 센서 매트의 정확한 화살표를 밟아야 합니다. 간단하게 들리는데, 옆에서 지켜보기만 한다면 이것이 전부입니다.
이러한 게임들이 유럽과 아메리카에서 매우 넓게 보급되지는 않았지만, 아시아에서는 한때 인기가 있었고, 많은 오락실에서는 사람들이 춤을 추거나 혹은 (다른 게임의 경우) 드럼을 쳤습니다.
pyDDR 을 X11 라이센스와 유사한 라이센스하에 자유 소프트웨어로 구현한 Brendan Becker 의 작업 덕분에, 이제는 집에서도 이것을 할 수 있고, — 오래 걸리는 컴파일 — 과 같은 것을 기다리는 시간동안 신체를 위해 무엇인가를 할 수 있습니다. 사용된 라이브러리는 PyGame Module [13] 과 Simple DirectMedia Layer (SDL) [14] 입니다.
Brendan 은 Joe Wreschnig 과 John Bafford 와 같은 몇명의 자원자들로부터 그의 작업에 대한 도움을 받습니다; 그는 다른 사람들도 또한 이 작업에 참여하기를 권장합니다. Brendan 은 참여 방식에 금전적인 기부도 있다고 강조하는데, 그의 본업보다 게임에 시간을 더 많이 쓸 것이기 때문입니다.
pyDDR 은 처음엔 GNU/Linux 용으로 작성되었으나, BSD, MacOS X, BeOS 뿐 아니라 Windows NT, XP, 9X 에서도 성공적으로 동작한다고 보고되었습니다. GNU/Linux 가 돌아가는 Playstation 2 에서조차도 누군가 그것을 돌아가도록 했습니다 — 하지만, 이것은 기술적인 이해가 있는 사람에게만 추천합니다.
물론 완전한 게임을 체험하기 위해서는 센서 매트가 필요하고, 2 사람이 동시에 게임을 하고 싶다면 2개가 필요합니다. 하지만 한개의 센서 매트는 키보드로 대체할 수 있으니 적어도 새로운 하드웨어를 구비할 필요 없이 게임을 할 수 있기는 합니다.
하지만 춤과 같은 신체적인 움직임을 믿지 않더라도 이 게임은 볼만한 가치가 있는데, 멋진 그래픽과 사운드를 제공하여 매우 프로페셔널하게 보이기 때문이고, 이로 인해 자유 소프트웨어 게임들이 어떤식으로 보여질지에 대한 생각을 제공합니다.
자유 소프트웨어 어플리케이션의 수가 증가함에 따라서, 전체의 개관을 유지하기가 점점 어려워지고 있습니다. 이 문제를 해결하려는 하나의 솔루션은 포털 사이트입니다.
불행히도 Freshmeat 같은 어떤 포털들은 제한된 용도만을 갖게 되는데, 왜냐하면 Freshmeat 에 있는 프로젝트들의 질을 확실할 수 없고 또한 종종 독점 소프트웨어와 자유 소프트웨어를 섞기 때문입니다.
이 문제를 해결하기 위해서, 자유 소프트웨어 재단은 1999년 9월에 자유 소프트웨어를 위한 데이터베이스인 자유 소프트웨어 디렉토리 [15] 에 대한 작업에 착수했고, Janet Casey 를 관리자로 임명했습니다.
디렉토리에 있는 모든 항목은 웹 페이지를 살펴보고 소스 코드를 들여다보고 지정된 라이센스가 맞는지를 확인함으로써 적합한 라이센싱에 대해 검사합니다. 그래서 사용자들은 자유 소프트웨어 디렉토리에 있는 정보를 보다 신뢰할 수 있습니다.
2003년 4월, 국제 연합 교육, 과학, 문화 기구(UNESCO) 가 FSF 의 이 활동에 참여하여 공식적으로 지원하고 있습니다. 따라서 현재는 "FSF/UNESCO 자유 소프트웨어 디렉토리" 가 되었습니다.
만약 솔루션을 찾고 있거나 특정 목적에 대한 어플리케이션이 존재하는지를 알고 싶다면, 자유 소프트웨어 디렉토리는 좋은 참고 지점이 될 것입니다.
프로젝트의 저자는 — 아직 이렇게 하지 않았다면 — 프로젝트가 디렉토리에 포함되어 있는지 확인해보고 또한 멋진 GNU 세상에 알려야 합니다.
이번달의 칼럼도 이야기를 모두 끝냈습니다. 여러분이 의견이나 제안 혹은 아이디어가 있다면 메일로 제게 알리는 것을 주저하지 말아 주시기 바랍니다.[1]
참고자료
|
[1] 질문이나 의견제안 Brave GNU World <column@brave-gnu-world.org>
[2] GNU 프로젝트 홈페이지 http://www.gnu.org/ [3] 게오르그의 멋진 GNU 세상 http://brave-gnu-world.org [4] "We run GNU" initiative http://www.gnu.org/brave-gnu-world/rungnu/rungnu.en.html [5] LAoE 홈페이지 http://www.oli4.ch/laoe [6] GIMP 홈페이지 http://www.gimp.org [7] 멋진 GNU 세상 제 49 호 http://brave-gnu-world.org/issue-49.en.html [8] Application Version System (Apvsys) 홈페이지 http://www.apvsys.org [9] GNU Stow 홈페이지 http://www.gnu.org/software/stow/ [10] Brave GNU World issue #36 http://brave-gnu-world.org/issue-36.en.html [11] GNU Hurd 홈페이지 http://www.gnu.org/software/hurd/ [12] pyDDR 홈페이지 http://icculus.org/pyddr/ [13] PyGame 홈페이지 http://pygame.org [14] Simple DirectMedia Layer (SDL) 홈페이지 http://www.libsdl.org [15] Free Software Directory http://www.gnu.org/directory/ [16] United Nations Educational, Scientific and Cultural Organization (UNESCO) http://www.unesco.org |
자유 소프트웨서 재단과 GNU 프로젝트에 대한 질문은
gnu@gnu.org로 보내주십시오.
그밖의 연락 방법에 대해서는 연락처 안내
부분을 참고하시기 바랍니다.
게오르그의 멋진 GNU 세상에 대한 의견은 영어 또는 독일어로
column@gnu.org 앞으로,
홈페이지 자체에 대한 질문은
webmasters@gnu.org로,
기타 질문은
gnu@gnu.org로 보내주십시오.
Copyright (C) 2003 Georg C. F. Greve
한국어 번역: 멋진 GNU 세상 한국어팀
저작권에 대한 본 사항이 명시되는 한, 어떠한 정보 매체에 의한 본문의 전재나 발췌도 무상으로 허용됩니다.
Last modified: Tue Jun 3 20:05:33 CEST 2003