2010년 2월 9일 화요일

BD-J에 대한 소개

이 글은 http://javba.tistory.com/10 팀 블로깅에도 동시에 게제하였습니다.


Blu-ray Disc?

게임이 취미인 분들은 Sony의 Playstation 3를 잘 알고 계시리라 믿는다. 비록, 필자는 Nintendo Wii만 보유하고 있지만 한 때 Playstation 3를 지를까 한참 고민도 했었다.

Playstation 3는 게임기 기능도 갖추고 있으나 최근 새로운 미디어로 각광받는 Blu-ray Disc 플레이어로도 활용할 수 있다. 비록 국내에서는 불법 영화 다운로드 및 IPTV의 빠른 보급으로 인해 많이 사용되고 있지 않지만 미국이나 타 국가에서는 빠르게 보급되고 있는 디지털 기기 중 하나이다.

Blu-ray Disc는 기존 DVD가 4GB ~ 8GB 정도의 용량을 지원하는 것에 비해 무려 6배 이상인 25G ~ 50G 정도의 용량을 지원한다. 구현 방법에 따라서는 100GB ~ 200GB 정도도 지원가능하다고 하니 기존 DVD 대비 혁신적인 포맷임이 분명하다.

Blu-ray Disc에는 용량 외에도 매우 흥미로운 기술이 표준으로 채택되었는데 바로 BD-J (Blu-ray Disc Java)라고 하는 Java 프로그램 개발 환경을 제공한다는 것이다. BD-J를 이용하여 Blu-ray Disc 타이틀에 인터액티브 메뉴를 제공하거나 혹은 게임 등의 Java 응용프로그램을 사용자에게 제공할 수 있다.

BD-J로 개발 가능한 응용프로그램?

BD- J를 이용하면 어떤 어플리케이션을 개발 할 수 있을까? 가장 먼저 떠오르는 것이 타이틀에서 제공하는 사용자 메뉴 화면이다. 기존 DVD 타이틀과 달리 Java 어플리케이션으로 메뉴 프로그램을 개발할 수 있어 interactive한 메뉴 프로그램을 제공할 수 있다. 사실, Java 언어를 이용한 소프트웨어 개발이기 때문에 개발자의 아이디어에 따라 생각치도 못한 다양한 프로그램 개발이 가능할 것이다. 다음 목록은 이미 개발된 BD-J 어플리케이션 및 개인적으로 생각해본 BD-J 응용 프로그램의 예제들이다.
  • 타이틀과 관련된 간단한 게임
  • 현재 재생되고 있는 비디오 영상에 대한 추가 설명을 제공
  • 타이틀이 보여주는 패션 물품을 온라인 쇼핑과 연계하여 소비자의 구매를 유도
  • PIP (Picture in Picture) 기능을 활용하여 감독의 설명이나 주인공의 설명을 함께 제공
  • 네트워크를 이용하여 현재 시청하고 있는 영화에 대한 감상평 쓰기
  • Twitter 계정을 이용하여 내가 시청한 영화 목록을 자동으로 등록하기
예시 한 응용 프로그램 중 몇몇은 네트워크를 필요로 하므로 Blu-ray Disc Player가 네트워크 연결을 지원하는 경우에만 가능하다. 참고로 삼성이 출시한 최신 Blu-ray Player들을 보면 대부분 Ethernet 연결 혹은 USB Dongle을 이용한 무선랜을 지원하고 있다. 물론, Sony Playstation 3 역시 네트워크 연결을 지원한다.

BD-J 표준

BD-J는 기존에 이미 존재하던 여러 Java 표준을 아우르고 또한, Blu-ray만을 위한 별도의 표준을 만들어 포함하고 있다. 아래 그림을 보며 BD-J가 지원하는 표준에 대해 정리해보자.


(출처 - 2007 JavaOne Conference TS-0887 session)

BD-J는 가장 기본적인 프로그래밍 지원을 위해 Java PBP (JSR-217)을 지원한다. PBP는 그래픽 사용자 인터페이스를 위한 AWT (Abstract Windows Toolkit) 및 어플리케이션 모델을 위한 Xlet 관련 클래스를 제공한다.

PBP는 TV, Blu-ray 컨텐츠를 다루기 위한 기능은 제공하지 않는다. 이를 위해 BD-J 스팩은 이미 Digital TV에서 사용되고 있는 GEM, MHP, JavaTV와 같은 스팩을 재 사용하고 있다. GEM, MHP, JavaTV에서 부족한 Blu-ray Disc 만을 위한 특별한 기능을 위해 BD-ROM 스팩 3-2 파트에서 새로운 Java API를 정의하고 있다. BD-J에서 새로 추가한 API 종류에 대해서 짧게 살펴보도록 하자.
  • org.bluray.media - Java Media Frameworks 관련 컨트롤을 제공
  • org.bluray.ti - 타이틀 정보 및 타이틀 정보 컨트롤 API 제공
  • org.bluray.vfs - virtual file system을 제어하기 위한 API 제공
  • org.bluray.ui - 비디오 프레임과 동기화되어 재생되는 애니메이션 기능 제공
  • org.bluray.storage - 저장 공간의 빈 공간 크기 등의 정보를 조회하는 기능 제공
  • org.bluray.system - 시스템 레지스터에 대한 정보 제공
  • org.bluray.application - org.dvb.application에 있는 클래스를 조금 확장한 패키지
  • org.bluray.net - javax.tv.locator에서 정의한 Java TV locator에 대한 구현 클래스
BD-J가 제공하는 클래스에 대해 더 자세한 기술적인 내용을 알고 싶은 분들은 Programming HD DVD and Blu-ray Disc 책을 참고하기 바란다.

BD-J의 미래?

2009 년도 자료를 보면 미국 가정의 HDTV 보급율은 2008년 대비 33%의 성장율을 보이고 있고 Blu-ray의 경우는 71%의 성장율이라고 한다. 향후 몇년 내에 기존 DVD player가 거의 대부분 Blu-ray Player로 대치될 것으로 예상되며 또한, PC의 미디어 장치로 Blu-ray가 탑재되기 시작하면 급격하게 전 세계적으로 보급율이 증가할 것으로 생각된다.
아직 영화사들이 제공하고 있는 기존 BD-J 어플리케이션의 수준이 그리 높지 않아 큰 관심을 얻고 있지는 못하지만 넓은 사용자층과 다양한 H/W, S/W 기능을 활용한 비지니스 모델을 개척할 수 있다면 BD-J 기반의 응용 어플리케이션 개발 시장도 충분히 매력적인 환경이 될 수 있으리라 생각한다.

참고자료

2010년 2월 6일 토요일

iPad에 발표에 대한 감상

일단, Steve가 iPad 시연을 하는 동영상을 감상해보자.



뭔가 기존 시연과는 다른 느낌이다. 잠깐 시간을 되돌려 예전 iPhone 발표회장으로 돌아가 보자. 역시 비디오를 감상하기 바란다.



어떤 점이 가장 다르게 느껴지시는지? 그렇다. iPad 시연은 편안한 소파에 앉아서 진행하였다! 이전 어떤 제품에서도 소파에 앉아서 시연을 한적은 없었다.

Apple의 프리젠테이션은 뛰어나기로 명성이 자자하다. 자. 그렇다면 Steve가 건강이 않좋아서 일부러 행사장에 소파를 갔다놓고 앉아서 진행했을까? 하하. 당연히 아닐 것이다. 내 생각에는 이 프리젠테이션에 대한 아이디어를 논의할 때 아마도 침대를 이용하자는 의견도 나왔을 것이라 생각한다.

그렇다. iPad는 iPhone과는 다른 소비자를 대상으로 하고 있다. 바로 집에서 소파에 앉아 책을 보거나, 음악을 듣거나, TV를 시청하는 하이테크는 별로 관심없는 대다수의 사람들이다.
이 시연에서 Steve는 은연중에 미래의 가정의 모습을 시연하고 있는 것이다. 일반 대다수의 사람들이 비록 하이테크에는 관심은 없는 사람들이고 넷북이니 컴퓨터도 잘 사용하지 않지만 소파에 앉아서 TV를 보는 대신 iPad를 가지고

  • 인터넷을 돌아다니고
  • 친구의 메일을 확인하고
  • 음악을 듣고
  • 영화를 보거나
  • 책을 읽기도 하고
  • 이쁜 딸내미 사진도 감상하고
  • 게임도 즐기며
  • 물론, 짬짬이 공부도 하고
  • 아마도 잘하면 영상 통화도 하지 않을까?
  • 아참... 일이 바쁘면 iWork로 프리젠테이션도 만들 수 있다.
내 생각에 iPad는 이런 디바이스이다. Steve의 상상속에서는 미래 가정의 모습에 TV 대신 iPad을 들고 자신이 원하는 컨텐츠를 즐기는 여러분들의 모습이 그려져있을 것 같다. iPad을 Tablet PC와 연관지어 설명하는 사람들도 있는데 iPad을 넷북을 대치하는 컴퓨터로 생각하면 안될 것이다.

물론, 이 디바이스는 충분히 얇고 작은 편이기 때문에 외출 시 들고 밖을 돌아다닐 수도 있을 것이다. 하지만, 이런 목적으로는 이미 iPhone과 iPod이 있다. iPad는 집안에서 회사안에서 혹은 비행기 안에서 여러분이 원하는 컨텐츠를 손 끝에서 다룰 수 있도록 하는데 목적이 있다고 생각한다.

직접 써보기 전에는 뭐라 장담할 수 없지만 예전에도 그랬듯이 아마 이 디바이스도 직접 써보면 와! 하는 감탄사가 나올 것이라 보인다. 미래의 여러분에 가정에 iPad을 가지고 있다고 상상해보자 이 디바이스에 어떤 value add를 할 수 있을까? content 개발자들의 몫이다.

참고로 흥미로운 iPad 관련 글들도 읽어보도록 하자.

2010년 1월 30일 토요일

Java가 Oracle의 품으로

http://java.sun.com/ 홈페이지로 접속하면 볼 수 있는것?
바로 Oracle의 붉은 색 회사 로고이다.

지난 1월 27일 오라클과 썬의 합병이 최종적으로 완료되어 모든 썬의 웹 페이지에 접속하면 Oracle의 로고를 볼 수 있다.

Oracle이 제공한 비디오 캐스트를 보면 앞으로 Java에 대한 지원을 더욱 늘리고 Java 기술을 발전시키기 위해 노력하겠다는 내용이 있다. Oracle은 이미 Java EE 서버 제품을 판매하고 있었으므로 Enterprise 영역에서의 Java의 발전은 더욱 가속화 될 수 있을 것으로 보인다. 

기존에 Oracle이 지원하지 않던 모바일 분야의 Java 기술은 어떻게 될까? 개인적인 생각으로는 모바일 + 비지니스, 모바일 + 서비스의 개념이 점점 중요해지고 있는 시점에 오라클에게 모바일 환경에 뛰어들 수 있는 절호의 기회가 주어진 것이라 본다. 물론, 현재 안드로이드, 아이폰과 같은 스마트폰 경쟁 기술들의 선전으로 Java가 모바일 분야에서 주춤하고는 있지만 소프트웨어 분야 전 세계 2위의 경쟁력을 갖춘 오라클에 썬의 기술력을 더하면 충분히 경쟁력 있는 솔루션을 개발하여 제공할 수 있으리라 생각한다.

위 비디오캐스트를 보면 살짝 흥미로운 내용이 나오는데 바로 JavaSE, JavaME등 fragment된 Java의 API를 하나로 합친다는 것이다. 또한, JavaScript을 지원하는 Java 개발 환경에 대한 언급도 살짝 비친다. 앞으로 어떤 형태의 개발 환경이 제공될지 흥미로운 부분이다.

여하튼, "오라클 + Java" 일단 화이팅이다!

2010년 1월 16일 토요일

Java Inside: 아마존의 Kindle

Java가 탑재된 디바이스에 대한 소개. 그 첫번째 순서로 Amazon의 Kindle을 소개한다.

http://javba.tistory.com/entry/Java-Inside-Amazon-Kindle

2009년 12월 29일 화요일

iPhone vs Android

구글 트랜드에서 iPhone에 대해 검색한 결과이다.
















2007년 이후 꾸준히 증가세를 보이고 있다. 아래는 안드로이드에 대해 검색해본 결과이다.

우와! 2008년 이후 증가세가 iPhone을 앞서는 것 같다. 그러나...

두 키워드를 함께 비교해보면 그 스케일이 엄청 차이가 있다는 사실을 알 수 있다. 단연코 iPhone의 승! 이 결과에서 유추해 볼 수 있는것? 일반 사용자 입장에서는 안드로이드라는 키워드가 iPhone에 비해 별로 알려지지 않았다는 것?

또한, 지역별 키워드 검색 순위를 보면 Android의 경우 주로 대만이나 한국과 같이 디바이스를 직접 개발하는 국가에서 1, 3위를 차지하고 있다는 사실이 흥미롭다. 이에 비해 iPhone은 홍콩, 싱가폴, 스위스 등의 순이다.

마지막으로 한국에서의 iPhone 검색 트랜드는 어떨까?

2009년 말 폭발적 증가! 요즘 주변에 온통 iPhone이다 (물론, 내 직업과 관련이 있겠지만서도...)

2009년 12월 27일 일요일

Opera Mini 5 beta



J2ME 어플리케이션이 오페라 미니 수준으로만 작성된다면 굳이 안드로이드나 iPhone과 같은 스마트폰 환경이 아니어도 충분히 만족스러운 사용자 경험이 가능할 것으로 보인다. 한국 사용자들은 소니에릭슨의 Xperia 혹은 Nokia 휴대폰에서 설치하여 사용이 가능하겠다. 그나 저나, 삼성이나 LG의 국판 feature phone들은 Java ME도 지원하지 않는 바람에 이런 좋은 프로그램도 사용할 수 없다니. 안타깝다.

http://www.opera.com/mini/next/

위 오페라 브라우저 홈 페이지를 참고하기 바란다.

2009년 12월 26일 토요일

iPhone의 몇가지 기능들

iPhone 사용과 관련된 몇 가지 tip을 정리해보자.

1. 대문자 입력 caps lock 설정
입력기에서 연속으로 대문자 영어를 입력하기 위해서는 우선 설정을 변경해야 한다.

설정 / 일반 / 키보드 / Caps Lock 활성화 옵션을 on 시킨다.

입력기 화면에서 Shift (위 방향 화살표)를 더블 클릭한다. 그러면 배경 색이 파란색으로 바뀌는데 이 상태에서는 영문 대문자를 연속해서 입력이 가능하다.

2. 숫자나 특수 문자 한번에 입력 하기
영문/한글 입력 중 숫자나 특수 문자를 입력하려고 하면 매번 모드를 변경하고 입력 후 다시 모드를 변경하는 번거로움이 있다. 딱 한개의 숫자만 입력할 때도 이런 식으로 입력을 하려고하면 무려 3번의 키 입력이 필요하여 매우 불편하다.
이런 경우 "123" 키를 누른 상태에서 손을 띄지 않고 끌어서 숫자를 입력한 후 손을 띠면 다시 그전 입력기 상태로 변환되어 불필요한 모드 변경을 피할 수 있다.

3. 입력 undo/redo
입력한 글자가 잘못된 경우 바로 전 입력을 취소하려면 iPhone을 가볍게 흔들어주면 된다. 취소한 입력을 다시 복귀하려면 다시 한번 가볍게 흔들어주면 된다.

4. 음성 인식 전화 걸기
iPhone의 Home 버튼을 3초 정도 누르고 있으면 음성으로 조절하기 화면이 나타난다. (혹은, 이어폰의 클리커를 누르고 있어도 된다.) 전화하려는 상대방의 이름을 다음과 같이 말한다. - 홍길동 휴대폰 통화 - 주소록에서 검색되어 통화를 시도한다. 단, 주변에 소음이 있는 경우는 잘 인식이 안되니 주의