목차
   추천의 글 ... 4
   저자 소개 ... 6
   감사의 글 ... 8
   옮긴이의 말 ... 11
   감수의 글 ... 14
   들어가며 ... 22
1장 유물 발굴 프로젝트
   지역 정찰 : 고객의 요구 파악 ... 30
      표면 걷어내기 : 지형 살피기 ... 31
      굴착: 인터뷰 ... 33
   유물 조각 맞추기 : 적절한 해답 찾기 ... 34
      함정의 예측 ... 34
   프로젝트 지도 작성 : 제안서 ... 37
      정확한 가격 책정 ... 40
      대체할 방법의 제안 ... 41
   요약 ... 42
2장 인코딩 기초
   채굴의 기초 ... 44
      고객으로부터 원본 비디오 받기 ... 44
      비디오 자체 제작 ... 45
      재미있는 요소의 추가 : 투명 비디오 ... 47
   FLV를 만드는 방법 ... 50
      참고로, 어떤 인코더를 사용하든 문제 없습니다 ... 53
   비디오 인코딩 ... 55
      알아야 하는 인코딩 요소 ... 55
      인코딩 ... 59
   요약 ... 65
3장 비디오 배포 로드맵 구성
   관련성과 흐름 ... 68
      흐름도 ... 69
      구현의 시작 ... 70
      테스트 1, 2, 3 ... 71
      '뒤로 가기' 버튼에 대한 고려 ... 71
      플래시 플레이어의 확인 ... 72
      플래시 비디오 내비게이션 ... 73
      단순함의 유지 ... 73
   프로그레시브냐 스트리밍이냐, 그것이 문제로다 ... 74
      SWF에 비디오 포함 ... 74
      프로그레시브 다운로드 ... 75
      스트리밍 ... 76
   액션스크립트 작성! ... 78
      프로그레시브 전송 : 액션스크립트 2 ... 78
      프로그레시브 전송 : 액션스크립트 3 ... 80
      스트리밍 전송 : 액션스크립트 2 ... 82
      스트리밍 전송 : 액션스크립트 3 ... 83
   퍼블리싱과 호스팅 선택 ... 84
      CDN의 개요와 필요성 ... 85
      FVSS란 ... 85
      좀 더 많은 서비스가 필요할 경우 ... 86
      오프라인 비디오의 경우 : FLV의 DVD 변환 ... 87
   플로피 디스크에 복사 금지 : 디지털 저작권 관리 ... 87
   요약 ... 89
4장 OOP와 비디오 애플리케이션
   OOP에 열광하는 이유 ... 92
      OOP란 ... 92
      OOP의 핵심 요소 ... 92
      플래시 개발에서 OOP가 유용한 이유 ... 93
      플래시 비디오에서 OOP의 역할 ... 93
   디자인 패턴과 플래시 비디오 ... 94
      모델-뷰-컨트롤러(MVC) ... 94
      상태 디자인 패턴(SDP) ... 97
   여정의 기로 : 액션스크립트 2와 액션스크립트 3 ... 99
      사용할 언어의 선택 ... 99
      애플리케이션이 해야 할 것 ... 99
      대상 플레이어 ... 100
   작업 환경의 구축 ... 101
      진행 : 액션스크립트 2 개발을 위한 이클립스, FDT와 MTASC 설정 ... 103
   오픈 소스 만세! ... 109
   요약 ... 110
5장 비디오 플레이어
   비디오 재생의 필요 - 시작 위치의 결정 ... 112
   컴포넌트를 이용한 플레이어 제작 ... 113
      FLVPlayback 컴포넌트로 할 수 있는 것 ... 113
      FLVPlayback 컴포넌트로 할 수 없는 것 ... 113
      플래시 CS3의 FLVPlayback 컴포넌트 사용 ... 114
   특화된 사용자 플레이어의 제작 ... 124
      플레이어 구조 ... 126
      코드의 분석 ... 130
      스킨의 적용 ... 137
   요약 ... 138
6장 테스트, 최적화, 설치
   테스트, 테스트, 테스트 ... 140
      테스트 주도 개발과 코딩 시의 테스트 ... 140
      테스트, 테스트, 좀 더 많은 테스트 ... 143
   대역폭의 고려 ... 147
      비디오 버퍼링 : 만약이 아닌 얼마나 많이 ... 148
      대역폭 측정 : 파이프로 밀어넣을 수 있는 양 ... 149
   3, 2, 1... 런칭 준비! ... 157
      프로그레시브 설치 ... 157
      스트리밍 설치 ... 160
   프로젝트 최종 정리 ... 164
      스펙 문서의 재확인 ... 164
      최종 리허설 ... 164
      런칭 ... 164
      결과물 : 문서와 작업 파일들 ... 165
      미팅 스케줄의 확인 ... 165
      파일 보관 ... 166
   요약 ... 167
7장 동적 재생 목록
   고객의 공격 : 컨텐츠 업데이트의 제어 ... 170
   힘겨운 재생 목록 : 옵션들 ... 171
      PlaylistLiStBox.fla : 리스트 박스 안으로 단순한 배열 삽입 ... 178
      PlaylistListBox_XML.fla : 리스트 박스에 XML 정보 입력 ... 180
   혼합: 순차와 셔플 재생 ... 185
      PiaylistAutoPlay.fla : 순차 재생 ... 186
      PlaylistShuffle.fla : 재생 목록으로부터 랜덤한 비디오 재생 ... 187
   MVC 플레이어에 XML 재생 목록의 적용 ... 189
      test_playlist.xml ... 190
      액션스크립트 2 : MediaPlayer.as ... 190
      액션스크립트 3 : Main.as ... 193
   요약 ... 195
8장 메타데이터와 큐 포인트의 이해
   메타데이터 마술 ... 198
      메타데이터 읽기 ... 202
      비디오의 전체 재생 시간(duration) ... 204
   큐 포인트의 힘 ... 208
      큐 포인트를 사용하는 이유 ... 208
      큐 포인트에 포함되는 데이터의 종류 ... 208
      큐 포인트의 추가 방법 ... 209
      큐 포인트의 3가지 타입 ... 211
      NetStream에서 큐 포인트를 읽어오는 방법 ... 212
      동적 액션스크립트 큐 포인트의 추가 ... 214
      자막의 추가 ... 217
      챕터 링크의 추가 ... 221
   프로그레시브의 교묘한 처리 : 스크립트된 가상의 스트리밍 ... 228
      전통적인 프로그레시브 다운로드 ... 229
      스크립트된 가상의 스트리밍(SPS) ... 229
      알게 된 것 ... 234
   요약 ... 234
9장 필터와 마스크를 이용한 픽셀 변형
   내 비디오에 할 수 있는 일 ... 238
   하나의 비디오, 다양한 마스크 ... 239
      액션스크립트 2 : FunWithMasks.as ... 240
      액션스크립트 3 : FunWithMasks.as ... 246
   다시 살펴보는 알파 채널 ... 254
   필터와 틴트의 이용 ... 256
      액션스크립트 2 : FunWithFilters.as ... 257
      액션스크립트 3 : FunWithFilters.as ... 263
   장면 전환 ... 268
      액션스크립트 2 : FunWithTransitions.as ... 269
      액션스크립트 3 : FunWithTransitions.as ... 273
   요약 ... 278
10장 비디오와 비트맵 데이터 객체
   비트맵 데이터의 의미와 알아야 할 이유 ... 280
   동적 썸네일 : 비디오 스냅샷 ... 283
      액션스크립트 2 : FLVBitmapThumb ... 283
      액션스크립트 3 : FLVBitmapThumb ... 288
   전환과 디졸브 ... 294
      액션스크립트 2 : FLVBitmapTransition ... 296
      액션스크립트 3 : FLVBitmapTransition ... 307
   포토부스 애플리케이션 ... 314
      액션스크립트 2 : FotoBooth Application ... 315
      액션스크립트 3 : FotoBooth Application ... 320
   요약 ... 329
11장 라이브 비디오와 웹캠 : FMS
   비디오 혁명의 시작 ... 332
      FMS의 개요와 작업 방법 ... 333
      FMS가 멋진 이유 ... 333
      FMS의 용도 ... 333
   FMS 라이브! 알아야 하는 것들 ... 334
      호스팅: 선택, 선택, 선택 ... 334
      개발 환경의 설정 ... 338
      파일 구조 ... 339
      기본 사항들 ... 340
      미디어 클래스 ... 343
   웹캠을 세상 밖으로 ... 346
      videoConf.fla ... 347
   FMS를 사용해서 할 수 있는 다른 것 ... 359
      File 클래스 ... 359
      서버 측 데이터 처리 ... 360
      서버와 서버 간의 커뮤니케이션 ... 360
      대역폭 매니저 ... 361
      서버 측 스트리밍 ... 361
      로드 밸런싱 ... 362
      스트림과 녹화를 위한 접근 제어 ... 362
      보안 애플리케이션 ... 363
   지능적 대역폭 스트리밍 ... 363
   FMS에 대한 팁과 비법 ... 365
   요약 ... 368
부록 : 실제 환경에서 사용되는 MVC 미디어
   고객의 요구 사항 ... 370
   상위 레벨의 프레임워크 코드로 리펙토링 ... 371
      이벤트 브로캐스터 적용 ... 371
      코드 기반의 애니메이션 라이브러리 사용 ... 372
   MVC 미디어 플레이어 코드 리펙토링 ... 373
      MVC 접속이 이뤄지는 방법의 변화 ... 373
      인터페이스에 필요한 메소드 추가 ... 375
      클래스에 새 메소드 적용 ... 379
   뷰에 다중 컴포넌트 추가 ... 386
      핵심 컴포넌트 클래스 ... 387
      재생 시간/전체 재생 시간 ... 390
      음소거/비음소거 버튼 ... 392
      빨리 감기와 되감기 버튼 ... 392
      재생/일시정지 버튼 ... 394
      볼륨 슬라이드 바 ... 397
      재생 진행 바 ... 398
      다운로드 진행 바 ... 399
   미디어 플레이어의 결론 - MVC 결론 ... 399
   다음 레벨로 넘어가기 ... 400
찾아보기 ... 405
닫기