안녕하십니까? 저는 컴퓨터 응용과학부 98학번 이민호 입니다.

Slides:



Advertisements
Similar presentations
모바일 프로그래밍 개론 UNIT 01 로봇 SW 컨텐츠 교육원 조용수. 학습 목표 모바일 프로그래밍이란 ? Embedded System 특성 Mobile OS Hybrid and Native SDK and NDK 2.
Advertisements

과제제안서 ( 영상처리를 이용한 골프 도우미 ) 이종원 박준도 박현욱 황성수 조성건.
Page 1 Android Programming November 04 / 2009 S/W Junhyuk Jang.
음란물에 대하여. 인터넷 음란물의 의미 돈벌이를 위해 단지 성적 욕망을 불러 일으키기 위한 음란한 인터넷 상의 사 진, 동영상, 만화 등을 말한다.
J-Stream part1 (Software streaming service) ▪ 팀명 : Jukdori ▪ 팀원 : 16 th 윤병호 (PL) 15 th 송인규 16 th 김영진.
프로젝트 제안서 날씨대로 기분대로 팀원 박효민 신준범 정민섭 안성원
제주특별자치도 교육청 Messenger Manual
미디어 프로그래밍 II 소개.
아이핑 소개 (탁구대회) 아이핑 담당 신동일 네이버(다음)에서 아이핑검색 아이핑 소개 (탁구대회) 담당 신동일 아이핑.
도면과 문서를 더 쉽고 빠르게 LIGHT EDITION 도면관리 솔루션 제안서 코너스톤테크놀러지㈜
IT 패러다임을 바꾼 디지털 리더 한국대학생IT경영학회 교육팀 차헌영 가장 성공한 IT기업은?
졸업 프로젝트 중간보고서 12조 Spot Browser.
☞ 전자출결 사용자 안내 “학생용” 전자출결 앱 다운로드 [안드로이드폰] Play 스토어 다운로드 [아이폰]
안 보여 줄끼가? 소프트웨어 프로젝트 1 – 제안서 발표 피바다 (A6)조 발표자 : 조기수.
개인정보 보호법 위반 시 형사처벌 조항 12가지 구분(처벌) 내 용 제71조(위반시 5년 이하 징역 또는 5천만원 이하 벌금)
001 이찬진 사장 "아이폰 부가사업으로 승부수"` 연합뉴스 구분 내용 비고 기사 요약
개인정보 보호법 위반 시 형사처벌 조항 12가지 구분(처벌) 내 용 제71조(위반시 5년 이하 징역 또는 5천만원 이하 벌금)
1. PC 에서 회원가입 1. 회원가입 버튼 클릭 클릭.
소프트웨어와 운영체제.
서울특별시 교육청 메신저 사용자 매뉴얼.
사용자 메뉴얼 차량용 4CH 블랙박스 매뉴얼 버전 : Version 2.1 Hardware Version : 2.0
전자책 자동반납 및 예약도서 자동대출 알림 설정 방법 안내
사용자 메뉴얼 차량용 4CH 블랙박스 매뉴얼 버전 : Version 1.1 Hardware Version : 1.0
오목게임 W32 로봇시스템제어(하) GROUP 7 노성동, 하선웅, 김관준
사업계획서.
PDA & PC Webhard Network Project 오민식, 김상용, 배은희.
운 영 체 제 실 습 (리눅스 서버관리입문) 02. 리눅스 설치.
Kasimov C언어 세미나 1st.
Hello World Bot Framework
제 12장 멀티미디어.
OpenGL Project (3D 움직이는 자동차)
Multimedia Programming 18: GraphEditor
Lecture #6 멀티미디어 데이터 압축 & 복원.
Visual C++ Programming
Software Engineering Project
User Interface ? MP3플레이어의 UI 디자인 유형 분석 및 발전 전망
작업장에서 불의의사고로 절단사고가 발생했다면
Network Project 교수명 : 임효택 교수님 조 원 : 김 운기 김 민주
초등학생이 pc방을 가도 되는가? 등마 초등학교 5학년 4반 김근아.
모음(母音) 10개 양성(陽性)모음 음성(陰性)모음 중성모음 ㅏ(ㅑ) ㅓ(ㅕ) ㅗ (ㅛ) ㅜ (ㅠ) ㅣ ㅡ
대학생의 놀이 문화.
Windows 10 업그레이드 방지 관련 메뉴얼 목차 [1] Windows 10 업그레이드 예약 확인 / 취소
Internet Multimedia Solutions (Video Web Call Center)
스마트폰 전자신고 방법 국세청 모바일 통합 앱 다운로드(갤럭시S) 가. 교재 15~19페이지
2019년도 학부 신(편)입생 학생증 신한 SOL 앱 예약등록 가이드
키타노카시쇼쿠닌(北の菓子職人) - 「오호츠크의 소금 맛」
소리가 작으면 이어폰 사용 권장!.
Stocker Controller System 소개
네트워크 설정 방법 (측정값데이터수집설정)
프로젝트 포트폴리오 요약 프로젝트 종류 프로젝트 이력 역할 주요 기술 : Windows System Application
기술가정 2학년 1학기 4. 컴퓨터와 생활 > 1) 소프트웨어의 활용 > 4-6/11 소리 자료는 어떻게 만들까?
Music Robot #Define A+(12-15조) 팀원: 05학번 양현철 , 김 청 07학번 예강훈 , 김한수
“서울시랑 즐거웁게, 시민이랑 어울리게, 모바일로 만나는 스마트한 서울라이프”
그린토마토 앱 사용자 메뉴얼.
Chapter 30 Creating Web Audio Files
(생각열기) 횡파와 종파를 구분하는 기준은 무엇인가?? 답 : 진동하는 방법의 차이
내 손안의 작은 도서관 (전자책 E-Book 이용안내).
컴퓨터 새내기 탈출 4. 컴퓨터에 생명을.
OPENGL project 구성원 : 김수민,남현우 OPENGL을 이용한 당구(3구) 구현하기.
우리가 만든 학급 일과 옹달샘 12기 ver 아침시간 수업시간 쉬는시간 점심시간 하교시간
OpenGL Project = Solar System = 김민지 박유나.
▶서류관리 프로그램 1. 로그인….2 2. 서류등록 … 서류도착 서류스티커발행
실시간 음성 채팅 서비스 (Voice Chatting Programe)
100세 시대, 스마트 헬스케어와 미래직업 (3) 고령화 사회에 필요한 웨어러블.
유예 X-FILE *조사자* 1301권희원 1315이예지 1317장아정 1322홍자현.
PC개인정보 파일 암호화 솔루션(Privacy-I)
코딩교육, 어떻게 해야 할까 이천양정여자고등학교 김가연 안선영.
| Ver1.0.
두손Order 푸드팩토리 두손Order Ver 1.0 ㈜시소이드.
Sound on 아름다운 인생을 위하여 ‘러브 북’ 중에서.
Presentation transcript:

안녕하십니까? 저는 컴퓨터 응용과학부 98학번 이민호 입니다. 저는 이번 졸업 프로젝트를 김재형 교수님의 지도 하에 강의 제작 및 재생 시스템을 구축 하였습니다.

차례 강의 제작 / 재생 시스템 시스템 개요 동기 , 목적 및 응용 범위 제작 프로그램 구조 재생 프로그램 구조 관련 기술 1 시스템 개요 동기 , 목적 및 응용 범위 제작 프로그램 구조 재생 프로그램 구조 관련 기술 개발 도구 및 참고 도서 시연 및 질문 향후 개선 과제 본 프리젠테이션은 시스템 개요, 동기, 목적 및 응용 제작 프로그램 구조, 재생 프로그램 구조, 관련기술 개발도구 및 참조 그리고 시연 및 질문 마지막으로 향후 개선 과제의 순서로 진행하겠습니다.

강의 제작 강의 재생 시스템 개요 PC screen을 캡쳐 하여 저장 PC microphone을 이용하여 음성 녹음 강의 제작 / 재생 시스템 시스템 개요 2 강의 제작 PC screen을 캡쳐 하여 저장 PC microphone을 이용하여 음성 녹음 마우스 포인터 캡쳐 하여 저장 강의 재생 강의 제작시 저장된 3가지 데이터를 동기화하여 재생 시스템 개요는 크게 강의 제작과 강의 재생으로 나누어 지는데 강의 제작에는 피시 스크린을 캡쳐하여 저장하고 피시 마이크로폰을 이용하여 음성을 녹음합니다. 그리고 마우스 포인터를 캡쳐하여 텍스트 파일로 저장합니다. 강의 재생은 제작 시 저장된 데이터를 동기화 하여 재생하게 됩니다.

screen shot (Lecture Recorder) 강의 제작 / 재생 시스템 screen shot (Lecture Recorder) 3 강의 제작 프로그램 실행시 트레이 상태로 실행 - 그림(1) 강의 종료 후 강의 데이터 생성 - 그림(2) 제작 프로그램의 스크린 샷입니다. 그림1은 제작 프로그램 실행시 트레이로 활성화 되는 모습입니다. 그림 1의 왼쪽 아랫부분을 보시면 트레이로 실행되어 있습니다. 그림2는 강의 종료시 3가지의 파일 형태로 저장되는 것을 볼 수 있습니다. 그림(1) 그림(2)

screen shot (Lecture Player) 강의 제작 / 재생 시스템 screen shot (Lecture Player) 재생 예제 화면 4 재생용 도구 바 마우스 포인터 재생 화면 재생 프로그램의 스크린 샷 입니다. 초록색으로 보이는 부분은 파일 도움말 재생 멈춤 일시정지 그리고 스킵 버튼으로 구성된 재생 도구 바입니다. 맨밑에 스크롤바는 재생 슬라이드 이고 그 옆에는 재생되는 시간을 나타냅니다. 재생화면 내에는 마우스 포인터가 있습니다. 재생 슬라이드 재생시간

제작 동기 응용 분야 동기, 목적 및 응용 범위 학과 수업 중 복습 자료의 필요성 멀티미디어 관련 프로그래밍 기술 습득 강의 제작 / 재생 시스템 동기, 목적 및 응용 범위 제작 동기 학과 수업 중 복습 자료의 필요성 멀티미디어 관련 프로그래밍 기술 습득 응용 분야 응용 프로그램의 영상 매뉴얼 제작 강의 제작 5 이 시스템의 제작 동기는 학과 수업과 세미나 중 자료 백업을 통한 복습의 필요성을 인지하고 멀티미디어 관련 프로그램밍 기술을 습득 하게 되었습니다.

Screen Capture Module Sound Mouse Recorder App Zip Library All Data 강의 제작 / 재생 시스템 제작 프로그램 Screen Capture Module Sound Mouse Recorder App 6 Zip Library All Data LAME Library Sound.wav Zip file 제작 프로그램의 구조도 입니다. 레코더 에플리케이션은 사운드 캡쳐 스크린 캡쳐 마우스 캡쳐 모듈로 구성되고 각각의 캡쳐 파일들은 집 라이브러리를 통해 집파일로 렉쳐 데이터로 저장 되게 됩니다. Lecture file JPEG Library Image Data

Screen Capture Module JPEG File 강의 제작 / 재생 시스템 제작 프로그램 구조(1) Screen Capture Module 7 DDB를 축소샘플링 하여 이전 DDB와 비교 2 Desktop DC를 DDB로 저장 1 DDB 강의 시작/중지 메시지 DDB DIB -> JPEG저장 4 비교결과가 변하면 DDB->DIB변환 3 DIB JPEG File 먼저 스크린 캡쳐 모듈은 강의 시작/중지 메시지에 의해 데스크탑 DC를 DDB로 저장하고 저장된 DDB를 축소 샘플링 하여 이전 DDB와 비교,하여 변화가 있으면 DIB로 변환 후 JPEG파일로 저장하게 됩니다.

음성 처리 모듈 제작 프로그램 구조(2) 1 1 1 강의 제작 / 재생 시스템 Wave File MP3 File 소리 8 음성 캡쳐 1 Wave File MP3 File Sound Source 파일 쓰기 1 MP3 인코딩 음성 처리 모듈은 사용자로 부터 받은 음성을 캡쳐하여 mp3인코딩을 통해 mp3파일로 저장 된다. 1

Mouse Hooking Module a 제작 프로그램 구조(3) 1 2.1 2.2 강의 제작 / 재생 시스템 SetHook / Unhook BeginThread/ AfxEndThread 1 9 강좌 시작/중지 메시지 Mouse Message가 들어올 때마다 메모리 맵에 정보를 저장 2.1 마우스 메시지 Hooking상태 마우스 후킹 알고리즘 입니다. 강좌 시작 및 중지 메시지에 따라 후킹 함수는 스레드를 제어하여 메모리 맵에 있는 마우스 메시지 정보를 매 백미리 세컨즈마다 메모리 맵 정보파일을 텍스트 형식으로 기록 합니다. Thread가 100ms마다 메모리 맵 정보 파일출력 2.2 파일출력

Player App Zip Sound All Data Library Play Module Zip file Viewer 강의 녹화 / 재생 시스템 강의 제작 / 재생 시스템 <<강좌 재생 프로그램>> System 전체 구조 재생 프로그램 Player App Sound Play Module Zip Library All Data 10 Zip file Viewer Module 다음은 재생 프로그램의 구조 입니다. 강의 제작 시 집파일 형태로 저장되어진 3가지중 음성파일은 sound 모듈로 음성 출력하고 저장된 화면정보 마우스 후킹 정보는 뷰어 모듈로 로드 되게 됩니다. Lecture file JPEG Library Image Data

Jpeg VIewer Module 재생 프로그램 구조 (1) 2 1 4 3 강의 제작 / 재생 시스템 DDB DIB Wave Data로부터 현재시간 추출 2 Jpeg File의 리스트를 생성한다 1 강의 시작/중지 메시지 11 DDB DC를 Repaint한다 4 현재 재생시간과 가장 가까운 시간의 Jpeg파일을 DC에 세팅 3 DIB 재생중 강의 시작 중지 메시지에 따라 JPEG의 리스트를 생성하고 wave 데이터로부터 현재 시간과 가장 가까운 시간의 파일을 메모리 DC에 세팅하고 dib는 데스크탑 DC를 리페인트 합니다..

음성 처리 모듈 사용자 조작 1 재생 프로그램 구조 (2) 강의 제작 / 재생 시스템 MP3 File 소리 12 재생 :: MCI Driver 1 소리 사용자로의 mp3파일은 mci를 통해 음성 파일로 출력 됩니다. Mci란 미디어 컨트롤 인터페이스의 약어로서 윈도우 응용프로그램에서 다양한 멀티미디어를 별로의 재생기나 디코더의 설치 없이 사용할수 있도록 윈도우에서 내장 시켜 놓은 일종의 규격이라고 할 수 있습니다. 즉, 윈도우 내부에서 코덱과 같은 역할을 하게 됩니다. MP3 File

Mouse Play Module 재생 프로그램 구조 (3) 1 2 3 강의 제작 / 재생 시스템 Wave Data 현재시간 추출 1 현재시간에 가장 가까운 마우스 정보 추출 2 Wave Data Info 13 마우스 비트맵 위치를 세팅 3 마우스 플레이 모듈은 웨이브 데이터 정보로 부터 추출한 현재시간에 가장 가까운 마우스 정보를 추출하여 마우스 비트맵 위치에 뿌려 줍니다.

관련 기술 음성 정보 – 파일 압축 제작 종료 후 MP3 Encoding 강의 녹화 / 재생 시스템 강의 제작 / 재생 시스템 <<구현된 모듈>> Screen capture (장명우) 관련 기술 음성 정보 – 파일 압축 제작 종료 후 MP3 Encoding mp3 Encoding Library : LAME library 14 Wave File MP3 File MP3 Encoding 관련 기술로서 음성 접보의 압축은 제작 프로그램 종료 후 mp3인코딩을 통해 웨이브 파일을 엠피쓰리 파일로 변환 합니다.

이미지 정보 - 파일 압축 Screen capture (장명우) Jpeg Encoding 800 X 600 해상도 캡쳐 강의 녹화 / 재생 시스템 강의 제작 / 재생 시스템 <<구현된 모듈>> Screen capture (장명우) 이미지 정보 - 파일 압축 Jpeg Encoding 이미지 비교를 통한 중복 최소화 800 X 600 해상도 캡쳐 작은 변화도 감지 10Pxl Per Sampling 15 이미지 정보는 표본 추출을 비교해 변화가 감지되면 jpeg 인코딩을 통해 800 바이 600 해상도를 캡쳐해 저장합니다.

마우스 모션 캡쳐 데이터 파일 패키징 Packing All Lecture File Data Zip ( .Dat) Library 강의 제작 / 재생 시스템 마우스 모션 캡쳐 Global Hooking 메시지 값을 비교하여 변화 - 시간, X Y 좌표 값 저장 마우스 비트맵 이미지 업데이트 데이터 파일 패키징 Zip Library 이용하여 데이터 압축 16 All Data Packing Zip Library Lecture File ( .Dat) 마우스 포인터 캡쳐는 글로벌 후킹을 통해 메시지 값을 비교하여 변화를 감지 하면 시간과 x,y값을 저장해 마우스 비트맵 이미지 업데이트를 하게됩니다.

참고 도서 개발 도구 강의 제작 / 재생 시스템 VISUAL C++ 6 완벽가이드 김용성 저 Visual C++ Programming Bible ver 6.x 이상엽 저 Programming Windows with MFC Second Edition Jeff Prosise 저 17 개발 도구 Microsoft Visual C++ 6.0

강의 제작 / 재생 시스템 시 연 강의 제작 프로그램 실행 메뉴 설명 강의 제작 & 데이터 파일 생성 강의 재생 18

발전 과제 및 소감 강의 제작 / 재생 시스템 브러쉬 기법 및 펜 도구 를 지원 하려 했으나 모든 프로그램이 공유하는 화면에 펜을 유지 시켜야 하는 부분을 해결 하지 못해 아쉬움으로 남았다 프로젝트를 수행하는 동안 MFC, API에 대한 지식을 습득할 수 있게 되었고 앞으로 학교를 떠나서도 이번 개발 과정이 큰 힘이 될 것 같다. 18