레노버 Thinkpad E145에 우분투를 설치하였습니다.

우분투를 단 한번도 기본 운영체제로 사용해보지는 않았지만 Thinkpad E145가 지원가능 목록에 있어서 우분투를 선택한 것입니다.

그러나 우분투에서 이를 잘 지원할 줄 알았는데 무선랜부터 제대로 설정이 안되더군요. 삽질의 예감이...

일단 lspci명령으로 무선랜 디바이스를 찾아보니 다음과 같이 나왔습니다.

01:00.0 Network controller: Broadcom Corporation BCM43142 802.11b/g/n (rev 01)
03:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller (rev 07)

"ubuntu broadcom wifi" 등을 키워드로 검색해보니 맨 상단에 두개의 링크가 나오는데

http://askubuntu.com/questions/55868/how-to-install-broadcom-wireless-drivers-bcm43xx

https://help.ubuntu.com/community/WifiDocs/Driver/bcm43xx

두번째 링크를 잘 읽어보니 lspci -vvnn명령으로 PCI-ID를 살펴보라고 되어있어서 lspci -vvnn명령을 내려보면

...
01:00.0 Network controller [0280]: Broadcom Corporation BCM43142 802.11b/g/n [14e4:4365] (rev 01)
...

이것은 Chip ID가 bcm4322이며 wl 커널 모듈을 설치해야 한다고 나옵니다.

wl - Proprietary Broadcom STA Wireless driver 

문서 아래쪽에 나와있는 다음 명령을 통해서 bcmwl-kernel-source를 설치해보니 빙고~!!

apt-get --reinstall install bcmwl-kernel-source


by dumpcookie 2014. 4. 16. 03:22

리눅스상에서 자유롭게 쓸 수 있는 오픈소스/자유 소프트웨어 Text-To-Speech(TTS)엔진은 꽤 많으며, 다음과 같은 공개 TTS엔진이 유명합니다.

  • Festivalhttp://www.cstr.ed.ac.uk/projects/festival/ - MIT 형식의 라이선스 (상용 제한 없음) - 대부분의 리눅스 배포판에서 기본으로 설치됨
  • MBROLAhttp://tcts.fpms.ac.be/synthesis/ - 한국어도 지원 (부산대 김경석 교수가 만든 "한말(hanmal)" 음성 지원) - 개인은 자유롭게 쓸 수 있으나, 제한적인 라이선스(상용 안됨)
  • eSpeakhttp://espeak.sourceforge.net/ - GPL 라이선스 - 윈도우 및 안드로이드 지원
  • HTS http://hts.sp.nitech.ac.jp/ - BSD 라이선스 (상용제한 없음) - Google TTS엔진에서 사용한다고 함.
    HTS 관련 문서를 읽어보면 상당히 다양한 프로젝트에서 HTS를 사용하고 있다는 것을 알 수 있으며, 음성 소스만 주어지면 그 목소리에 대응하는 synthesize용 목소리를 만들 수 있습니다!! @@ 단, 데모에서 들을 수 있는 음성은 매우 품질이 좋은 반면, flite나 festival 등등의 다른 프로젝트용으로 만들어진 음성자료를 통해 생성된 음질 썩 좋은 편이 아닙니다.
    (데모 페이지는 http://homepages.inf.ed.ac.uk/jyamagis/demos/page35/page35.html를 비롯한 일련의 페이지)

그러나 이러한 공개 TTS엔진에서 만들어내는 소리가 그렇게 훌륭한 편은 아닙니다. MBROLA가 그중에 가장 나은 소리를 들려준다고 하지만 라이선스가 제한이 있고, Festival가 그나마 들어줄만한 소리를 만들어내지만 안드로이드의 svox-pico보다는 음성의 질이 떨어집니다.

구글 안드로이드 도넛(버전 1.6)부터 자체 내장된 svox-pico TTS엔진은 2008년에 SVOX사에서 공개한 TTS엔진입니다. svox-pico는 소스코드까지 공개된 TTS엔진이며, 공개당시 매우 획기적인 일이였고, 소스 및 실행 바이너리 크기가 상당히 적고 가벼운 편이며, 발음도 훌륭한 편이였습니다.

현재는 IVONA와 같은 안드로이드에서 무료로 쓸 수 있는 TTS엔진이 있기때문에 svox-pico의 인기가 다소 떨어진 편이지만, svox-pico의 소스가 공개되어 있으므로 svox-pico를 리눅스에서도 쓸 수 있게되는 것은 시간문제였습니다. (그런데 검색해보니 관련된 한국어 문서가 전혀 없더군요. 그래서 이렇게 포스팅을 하게 된 것입니다 ;)

svox-pico 소스코드

svox-pico 최신 소스코드를 직접 받고자 하는 경우에는 구글 레포지터리를 통해서 받을 수 있습니다.
https://android.googlesource.com/platform/external/svox.git

여기에는 svox의 소스코드뿐만 아니라 언어팩을 만들 수 있는 툴(윈도우용) 및 메뉴얼도 같이 포함되어 있기때문에, 전체 소스코드의 압축된 크기가 상당히 큽니다.

svox-pico 설치해보기

svox-pico는 우분투나 데비안용 패키지가 이미 수년전에 나와있는 상태입니다. 페도라에서 설치하기 위해서 검색해보니 쉽게 찾을 수 없었으나, ALT 리눅스용 소스 rpm이 있었습니다. ALT리눅스용 소스 rpm을 다운로드 받아서 페도라에 맞게끔 spec파일을 살짝 고치고 빌드하니 아무런 문제 없이 컴파일 할 수 있었으며 실행도 아주 잘 되었습니다.

  • src.rpm은 다음 사이트를 통해서 얻을 수 있었습니다.
    http://sisyphus.ru/en/srpm/Sisyphus/svox-pico
  • pico2wave --wave test.wav "Hello World" 라고 실행하면 test.wav가 얻어집니다.
  • 생성되는 소리는 진저브레드에서 Pico-TTS 엔진을 기본으로 설정했을때에 나오는 소리와 똑같았습니다.
  • git 소스로부터 직접 빌드하려 할 경우라면 http://wiki.freeswitch.org/wiki/Mod_tts_commandline 사이트를 참조하시기 바랍니다.


by dumpcookie 2013. 3. 14. 21:54

engdic은 90년대 리눅스 초창기 배포판에 거의 항상 포함되어있던 유명한 영한사전입니다. 이 영한사전을 요즈음 배포판에서는 찾기가 어려워졌지만, 검색을 통해서 어렵지 않게 자료를 받을 수 있습니다.

engdic 사전 데이터는 Kwangsuk Lee씨가 만든 것이라고 밝히고 있습니다. (FreeBSD ports의 descr 파일)

engdic
------

engdic is a english dictionary for korean working on unix enviroment system.

Special thanks to : KwangSuk Lee (Dictionary data maker)

Oh Junseon <hollywar@mail.holywar.net>

좀 더 찾아보니 다음과 같은 내용이 freebsd 메일링리스트에 있었습니다. http://www.kr.freebsd.org/ml/ports/1999/06/msg00010.shtml

참.. 그리고 사전 데이타는 이광석 님이 제공해주신것으로서 
공개하셨기에 따로 적어주질 않았습니다. Linux 의 edic 에서 사용하는
데이타를 그대로 가져온것이긴 한데.. 말씀을 듣고 보니.. 
최소한 이름 석자라도 적어야 도리일듯 싶네요..

위 내용에 대해서 참고적으로 설명하자면, 리눅스에 원래 배포되던(아마도 최초 배포는 알짜 리눅스이며, engdic.tar.gz 파일이 패키징된 날짜는 1998년 6월8일) edic 혹은 engdic이라는 사전 프로그램의 사전 데이터를 그대로 사용하고, 원래 쉘 스크립트로 처리되어 조금 느리던 edic 스크립트를 c언어로 만들어서 속도를 향상시키고, FreeBSD의 패키지로 등록시키고 있는 내용입니다.
(원래의 리눅스 배포판에서 사용되던 edic 쉘 스크립트는 다음의 사이트를 통해서 확인해 보실 수 있습니다. https://github.com/liks79/edic 및 https://github.com/liks79/edic/blob/master/README.md 참조)

다음은 여기에 올려있는 edic 사전의 스크린샷입니다. (출처: https://github.com/liks79/edic)


engdic 사전 저작권은 GPL이 아니다

그런데 engdic의 사전 데이터가 GPL이라고 알려져있나본데, 적어도 위에서 열거한 내용에 의하면 이 사전데이터가 GPL이라고 배포자는 밝히고 있지 않습니다. 사전 데이터는 이광석씨가 만든 것이며 그것을 그대로 가져왔다는 내용 뿐입니다. 프로그램 본체 engdic의 실행파일 edic은 GPL일지는 몰라도 사전데이터는 GPL 라이선스와 무관한 것입니다.

engdic을 등록한 몇몇 배포판을 찾아보아도 이는 마찬가지였습니다.

  • 최초 패키징으로 추정되는 알짜 리눅스 - distributable이라고만 되어있음
  • OpenSUSE - distributable이라고만 나와있음 (알짜 리눅스 자료를 사용한 것으로 보임)
engdic 사전 자료에 대해서 검색을 해보니 engdic 사전 자체는 적어도 세가지 버전 이상이 있었던 것 같습니다.
  1. engdic 버전 0.1 - 초기에 나온 사전. redhands(적수네 동네의 주인장 필명)과 redhat이 사전에 등록되어있다.
  2. engdic 버전 0.2 - 버전 0.1과 거의 같고, freebsd가 단어목록에 추가되어 있다.
  3. engdic 0.1 / 0.2의 초기 버전 - 발음기호 정보가 들어있다. => engdic 버전 0.1 / 0.2에는 발음기호가 제대로 제거되지 않은 단어들이 여러개 포함되어 있는 것으로 보아서 이 사전이 engdic의 원본 데이터로 추정됩니다.

engdic의 저작권은 GPL일 수 있으나 engdic 사전의 저작권은 GPL일 가능성은 희박한 것입니다.

아무튼 engdic에 대한 여러 추측성 내용을 적어본다면,

  1. 그 당시 PC통신을 통해서 퍼진 자료로 추측됨
  2. 사전 데이터가 상당히 크기때문에 이 사전 자료가 직접 만들어졌다면 많은 사람이 공동작업을 했을 가능성도 있다.
  3. 사전 데이터가 상당히 일관성있는 것으로 보아서는 공동작업 지침이 있었거나 아니면 출처불명의 사전이었을 것이다.
  4. 사전의 저작권이 GPL이라고 공개적으로 밝힌 자료는 없다. GPL일 것이라고 추측하고 있지만 GPL같은 공개 라이선스일 가능성은 적다.
  5. 또 이번에 알게된 사실이지만 engdic 사전은 산에디터의 출처불명의 사전자료의 일부를 사용한 것으로 생각됩니다. 혹은 그 반대로 산에디터의 사전이 engdic의 원본 사전을 사용하였을 수 있습니다.
    즉, 산에디터의 사전데이터와 비교해보니 상당수의 뜻이 일치하였고, 산에디터의 사전데이터는 종종 이보다 간략하게 줄인듯한 흔적이 있었습니다. (아니면 버전이 조금 다른 사전?)
  6. 모 대학교의 연구실에서 나온 자료일 가능성도 있다. 인터넷이 덜 발달하고 PC통신이 인기있던 시절, 이처럼 꽤 방대한(?) 자료가 나올 수 있는 출처는 의외로 대학교 연구실일 가능성도 있다.
    POS 태그가 꽤 잘 남아있고, 특히 태그가 "x."라고 되어있는 특이한 자료는 engdic(및 산에디터의 사전자료)이 거의 유일하다.
  7. 혹은 engdic 사전자료를 만든 이가 모든 사전 단어에 POS 태그를 붙이려고 시도했을 수도 있다. 즉, 분류가 없는 단어에 대해서 단순히 "x."라고 POS 태그를 붙였을 가능성

재밌는것은 engdic 사전 자료를 GPL로 오해하고, 이것을 바탕으로 해서 개선시키려고 하던 시도가 있었다는 것입니다.

또한 engdic 사전자료는 OpenOffice에서 사용할 수 있는 stardict 사전의 영한사전 자료가 되며, 여기에는 사전 자료의 저작권을 GPL이라고 잘못 표기하고 있습니다만, 이 사전자료 역시 그 출처는 engdic이며 저작권은 GPL이 아닙니다.
http://abloz.com/huzheng/stardict-dic/ko/

널리 애용된 engdic 사전 데이터

그럼에도 불구하고 engdic의 사전 데이터는 산에디터의 사전자료와 함께 많은 사랑(?)을 받게됩니다.

  1. 꽤 많은 공개 웹사전에서 engdic의 사전 데이터를 사용하고 있는 것으로 추정됩니다.
    즉, 다음과 같은 잘못된 사전 정의가 engdic에 들어있는데, Azov를 검색하면 상당수의 공개 웹사전이 이 정보를 검색해냅니다 ^^;;
    Azov n 아즈라엘(죽음에 순간에 영혼을 육체에서 분리시키는 천사) => Azov가 아니라 Azrael
  2. engdic 사전 데이터는 상당히 고유합니다. 다른 네x버, x음 등등에서 제공하는 웹사전에서 이와 똑같이 일치하는 사전정의를 찾기 어렵습니다.
    engdic 사전은 인터넷이 발달하기 전 90년대 초창기에 나온 것으로 추정되며, PC통신시절의 출처불명의 사전자료를 기반으로 탄생한 것이기때문에 그런 것으로 추측됩니다.
  3. 모 공개 웹사전 사이트에서 누군가가 사전데이터에 대해서 문의하니 PC통신에서 받은 자료를 가공한 것이라고 설명하고있었습니다.

마치며

영어 단어장 앱을 준비하면서 공개된 단어장 데이터에 발목이 잡혀서 몇일동안 사전 자료에 관련된 정보를 분석해보았던 것인데, engdic이 1998년에 배포되었다고 하니 벌써 15년이 넘었습니다만, 그간 engdic보다 낫거나 좋은 영한 사전이 없다는 사실이 안타깝기도 하네요. engdic 정도의 공개 한영사전을 만드는 것은 사실 마음만 먹으면 큰 일은 아닐 것 같습니다만 혼자 하기에는 쉽지도 않은 작업인것 같습니다. 예를 들자면 engdic 단어목록만 사용하고, wordnet에서 뜻을 가져와 이것을 번역하는 것입니다. 다음에 시간이 나면 engdic 수준의 공개 한영사전을 만드는 방법론에 대해서 살펴볼 기회가 있었으면 싶습니다~ ^^


'사전' 카테고리의 다른 글

산에디터의 사전 저작권  (0) 2013.03.04
by dumpcookie 2013. 3. 5. 19:14
| 1 |