목차 일부
추천의 글 ... 4
저자 소개 ... 6
감사의 글 ... 8
옮긴이의 말 ... 11
감수의 글 ... 14
들어가며 ... 22
1장 유물 발굴 프로젝트
지역 정찰 : 고객의 요구 파악 ... 30
표면 걷어내기 : 지형 살피기 ... 31
굴착: 인터뷰 ... 33
유물 조각 맞추기 :...
더보기
목차 전체
추천의 글 ... 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
더보기 닫기