KR20110103954A - 애니메이션 액션들 및 미디어 객체 액션들의 트리거링 - Google Patents

애니메이션 액션들 및 미디어 객체 액션들의 트리거링 Download PDF

Info

Publication number
KR20110103954A
KR20110103954A KR1020117013300A KR20117013300A KR20110103954A KR 20110103954 A KR20110103954 A KR 20110103954A KR 1020117013300 A KR1020117013300 A KR 1020117013300A KR 20117013300 A KR20117013300 A KR 20117013300A KR 20110103954 A KR20110103954 A KR 20110103954A
Authority
KR
South Korea
Prior art keywords
media object
animation
action
interest
playback
Prior art date
Application number
KR1020117013300A
Other languages
English (en)
Other versions
KR101652549B1 (ko
Inventor
제이슨 시아오보 자오
제프리 차오-난 첸
바른-완 리
룬젠 후앙
Original Assignee
마이크로소프트 코포레이션
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Family has litigation
First worldwide family litigation filed litigation Critical https://patents.darts-ip.com/?family=42265359&utm_source=google_patent&utm_medium=platform_link&utm_campaign=public_patent_search&patent=KR20110103954(A) "Global patent litigation dataset” by Darts-ip is licensed under a Creative Commons Attribution 4.0 International License.
Application filed by 마이크로소프트 코포레이션 filed Critical 마이크로소프트 코포레이션
Publication of KR20110103954A publication Critical patent/KR20110103954A/ko
Application granted granted Critical
Publication of KR101652549B1 publication Critical patent/KR101652549B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/14Digital output to display device ; Cooperation and interconnection of the display device with other functional units
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0481Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0484Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B27/00Editing; Indexing; Addressing; Timing or synchronising; Monitoring; Measuring tape travel
    • G11B27/02Editing, e.g. varying the order of information signals recorded on, or reproduced from, record carriers
    • G11B27/031Electronic editing of digitised analogue information signals, e.g. audio or video signals
    • G11B27/034Electronic editing of digitised analogue information signals, e.g. audio or video signals on discs
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B27/00Editing; Indexing; Addressing; Timing or synchronising; Monitoring; Measuring tape travel
    • G11B27/10Indexing; Addressing; Timing or synchronising; Measuring tape travel
    • G11B27/102Programmed access in sequence to addressed parts of tracks of operating record carriers
    • G11B27/105Programmed access in sequence to addressed parts of tracks of operating record carriers of operating discs

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Multimedia (AREA)
  • Processing Or Creating Images (AREA)
  • User Interface Of Digital Computer (AREA)

Abstract

미디어 객체의 재생 중에 북마크에 도달하는 것에 응답하여, 애니메이션 액션을 트리거하라는 요청이 수신될 수 있다. 이 요청에 응답하여, 미디어 객체의 재생이 북마크에 도달하는 때에 애니메이션 액션을 수행하도록 구성된 새로운 애니메이션 타임라인을 정의하는 데이터가 저장된다. 미디어 객체가 재생될 때, 북마크를 만났는지에 관한 판정이 이루어진다. 북마크를 만난 경우, 새로운 애니메이션 타임라인이 시작되며, 그에 따라 특정된 애니메이션 액션을 트리거한다. 또한, 미디어 객체 내의 위치에서 미디어 객체 액션을 트리거하는 애니메이션 타임라인에 애니메이션 액션이 추가될 수 있다. 애니메이션 타임라인의 재생 중에 애니메이션 액션을 만날 때, 연관된 미디어 객체에 대해 특정된 미디어 객체 액션이 수행된다.

Description

애니메이션 액션들 및 미디어 객체 액션들의 트리거링{TRIGGERING ANIMATION ACTIONS AND MEDIA OBJECT ACTIONS}
전자 프리젠테이션 애플리케이션 프로그램들은 사용자들이 텍스트, 그래픽, 미디어 객체들 및 다른 유형의 객체들을 포함하는 하이-임팩트(high-impact) 동적 슬라이드 프리젠테이션들을 생성할 수 있게 한다. 일부 프리젠테이션 애플리케이션들은 슬라이드 상의 객체들을 애니메이팅하기 위한 기능도 제공한다. 슬라이드 프리젠테이션 내의 객체들의 애니메이팅은 청중의 주의를 끌고 집중시키기 위한 강력한 방식일 수 있다. 예컨대, 텍스트, 그래픽, 다이어그램, 차트, 및 오디오나 비디오 파일과 같은 미디어 객체를 애니메이팅하여, 청중을 프리젠테이션 내의 중요한 포인트들에 집중시키고, 프리젠테이션 내의 정보의 흐름을 제어하며, 프리젠테이션에 비주얼 능력을 추가하는 것이 가능할 수 있다.
객체들을 애니메이팅하기 위한 기능을 제공하는 것에 부가하여, 이전의 일부 프리젠테이션 애플리케이션들은 슬라이드 프리젠테이션 내의 미디어 객체들을 재생하기 위한 기능도 제공한다. 예컨대, 오디오 또는 비디오 파일이 슬라이드 상에 삽입되고, 슬라이드가 표시될 때 재생될 수 있다. 그러나, 이전의 프리젠테이션 애플리케이션들은 슬라이드 상의 객체들에 대해 정의된 애니메이션 액션들과 미디어 객체들의 재생 간의 통합을 거의 또는 전혀 제공하지 못한다. 일례로서, 오디오 또는 비디오 파일 내의 관심 포인트에 대해 애니메이션 액션의 시작을 동기화하기 위하여, 사용자는 애니메이션 액션의 시작을 수동으로 조정하여 관심 포인트와 일치시켜야 한다. 그러나, 이것은 프리젠테이션 애플리케이션 프로그램 사용자들에게 실망스럽고 시간 소모적인 프로세스일 수 있다.
이들 고려사항 및 다른 것과 관련하여, 본 명세서에서 이루어지는 개시물이 제공된다.
애니메이션 액션들 및 미디어 객체 액션들을 트리거링하기 위한 기술들이 본 명세서에서 설명된다. 구체적으로, 여기에 제공되는 개념들 및 기술들의 이용을 통해, 애니메이션 액션들의 시작이 오디오 또는 비디오 파일과 같은 미디어 객체 내의 위치들에 쉽게 동기화될 수 있다. 이러한 방식으로, 미디어 객체의 재생이 애니메이션 타임라인에서 애니메이션 액션들의 시작을 트리거링할 수 있다. 더욱이, 애니메이션 액션들은 또한 미디어 객체들에 대해 미디어 객체 액션들을 트리거링하는 애니메이션 타임라인 상에 정의될 수 있다. 예컨대, 애니메이션 액션들은, 미디어 객체의 재생이 특정된 위치에서 시작하거나, 일시정지하거나 또는 정지하게 할 수 있는 애니메이션 타임라인에서 정의될 수 있다.
일 실시예에서는, 포워드 트리거를 정의하고 실행하기 위한 사용자 인터페이스 및 연관된 기능이 제공된다. 포워드 트리거는, 미디어 객체의 재생 중에 특정된 위치에 도달하는 것에 응답하여 독립적인 애니메이션 액션을 시작한다. 포워드 트리거를 정의하기 위하여, 미디어 객체 내의 특정 관심 포인트가 북마크로서 정의될 수 있다. 이어서, 미디어 객체의 재생 중에 북마크에 도달하는 것에 응답하여 애니메이션 액션을 트리거하라는 요청이 수신될 수 있다. 그러한 요청에 응답하여, 미디어 객체의 재생이 북마크에 도달하는 때에 특정된 애니메이션 액션을 수행하도록 구성되는 새로운 애니메이션 타임라인을 정의하는 데이터가 저장된다. 임의의 유형의 객체에 대해 임의의 유형의 애니메이션 액션이 특정될 수 있다.
미디어 객체가 재생될 때, 북마크를 만났는지에 관한 판정이 행해진다. 미디어 객체의 재생 중에 북마크를 만난 경우, 새로운 타임라인이 시작되며, 따라서 특정된 애니메이션 액션이 트리거된다. 애니메이션 액션을 수행하기 위하여, 새로운 애니메이션 타임라인을 정의하는 데이터가 변환되어, 컴퓨팅 시스템의 디스플레이 상에 애니메이션 액션의 적절한 비주얼 묘사를 제공할 수 있다. 이러한 방식으로, 미디어 객체의 재생은, 미디어 객체 내의 관심 포인트들에 도달할 때 애니메이션 액션들을 트리거할 수 있다.
다른 실시예에서는, 리버스 트리거를 정의하고 실행하기 위한 사용자 인터페이스 및 연관된 기능이 제공된다. 리버스 트리거는 애니메이션 타임라인으로부터 미디어 객체에 대해 재생, 일시정지 또는 정지와 같은 미디어 객체 액션을 시작한다. 리버스 트리거를 정의하기 위하여, 미디어 객체에 대해 애니메이션 타임라인에 애니메이션 액션을 추가하라는 요청이 수신된다. 애니메이션 액션은 미디어 객체 내의 특정된 위치에서 미디어 객체 액션을 트리거하도록 구성된다. 예컨대, 미디어 객체 액션은 북마크에서 미디어 객체의 재생을 시작할 수 있거나, 북마크에서 미디어 객체의 재생을 정지시킬 수 있거나, 또는 북마크에서 미디어 객체의 재생을 일시정지시킬 수 있다.
일단 리버스 트리거가 정의되면, 대응하는 애니메이션 액션이 애니메이션 타임라인에 추가된다. 애니메이션 타임라인의 재생 중에 애니메이션 액션을 만날 때, 연관된 미디어 객체에 대해 특정된 미디어 객체 액션이 수행된다. 이러한 방식으로, 애니메이션 타임라인은 특정 관심 포인트들에서 미디어 객체의 재생을 정지, 시작 또는 일시정지시킬 수 있다. 다른 유형의 미디어 객체 액션들도 수행될 수 있다.
포워드 트리거들 및 리버스 트리거들이 결합되어, 미디어 객체 타임라인으로부터 다수의 애니메이션 타임라인을 분기시키고, 분기된 타임라인들 각각이 다른 타임라인들과 통신하게 할 수 있다는 것을 알아야 한다. 또한, 전술한 대상은 컴퓨터 제어 장치, 컴퓨터 프로세스, 컴퓨팅 시스템, 또는 컴퓨터 판독가능 매체와 같은 제조물로서 구현될 수 있다는 것도 알아야 한다. 이들 특징들 및 다양한 다른 특징들은 아래의 상세한 설명을 판독하며 연관된 도면들을 검토함으로써 명백할 것이다.
본 요약은 아래의 상세한 설명에서 더 설명되는 개념들의 발췌물을 간략화된 형태로 소개하기 위해 제공된다. 본 요약은 청구 발명의 중요한 특징들 또는 필수적인 특징들을 식별하고자 하는 의도도 없고, 청구 발명의 범위를 제한하는데 이용하고자 하는 의도도 없다. 더욱이, 청구 발명은 본 개시물의 임의의 부분에 설명되는 임의의 또는 모든 단점들을 해결하는 구현들로 제한되지는 않는다.
도 1은 애니메이션 액션들을 정의하기 위한 하나의 예시적인 사용자 인터페이스를 나타내는 사용자 인터페이스 도면이다.
도 2 및 도 3은 포워드 트리거된 애니메이션을 정의하기 위해 본 명세서에서 제공되는 여러 예시적인 사용자 인터페이스들을 나타내는 사용자 인터페이스 도면들이다.
도 4 및 도 5는 본 명세서에서 제공되는 일 실시예에서 포워드 트리거된 애니메이션을 각각 정의하며 실행하기 위한 예시적인 프로세스들을 나타내는 흐름도들이다.
도 6은 리버스 트리거된 애니메이션을 정의하기 위해 본 명세서에서 제공되는 하나의 예시적인 사용자 인터페이스를 나타내는 사용자 인터페이스 도면이다.
도 7 및 도 8은 일 실시예에서 리버스 트리거된 애니메이션을 각각 정의하며 실행하기 위한 예시적인 프로세스들을 나타내는 흐름도들이다.
도 9는 본 명세서에 제공되는 실시예들의 양태들을 구현할 수 있는 컴퓨팅 시스템에 대한 예시적인 컴퓨터 하드웨어 및 소프트웨어 아키텍처를 나타내는 컴퓨터 아키텍처 도면이다.
아래의 상세한 설명은 애니메이션 액션들 및 미디어 객체 액션들을 트리거하기 위한 개념들 및 기술들에 관한 것이다. 여기에 설명되는 대상은 컴퓨터 시스템 상의 운영 체제 및 애플리케이션 프로그램들의 실행과 관련하여 실행되는 프로그램 모듈들의 일반적인 콘텍스트에서 제공되지만, 당업자는 다른 유형의 프로그램 모듈들과 관련하여 다른 구현들이 수행될 수 있음을 인식할 것이다.
일반적으로, 프로그램 모듈들은, 특정 태스크들을 수행하고, 특정 추상 데이터 유형들을 구현하며, 데이터를 변환하는 루틴들, 프로그램들, 컴포넌트들, 데이터 구조들 및 다른 유형의 구조들을 포함한다. 더욱이, 당업자는, 여기에 설명되는 대상이 다른 특정 머신들, 핸드-헬드 장치들, 멀티프로세서 시스템들, 마이크로프로세서-기반 또는 프로그램가능한 컨슈머 일렉트로닉스들, 미니 컴퓨터들, 메인프레임 컴퓨터들 등을 포함하는 컴퓨터 시스템 구성들로 실시되거나 이들과 연계될 수 있음을 알 것이다.
아래의 상세한 설명에서는, 그 일부를 형성하고, 특정 실시예들 또는 예들이 예시적으로 도시된 첨부 도면들을 참조한다. 이하, 여러 도면 전체에 걸쳐 동일한 참조부호들이 동일한 요소들을 나타내는 도면들을 참조하여, 애니메이션 액션들 및 미디어 객체 액션들을 트리거하기 위한 기술들이 설명된다.
이제, 도 1을 참조하면, 애니메이션 시퀀스를 정의하기 위해 애플리케이션 프로그램에 의해 제공되는 예시적인 사용자 인터페이스(100)에 관한 상세들이 제공된다. 도 1에 도시된 사용자 인터페이스(100)는 워싱턴주 레드몬드의 MICROSOFT CORPORATION으로부터의 POWERPOINT 프리젠테이션 애플리케이션과 같이 일 실시예에서의 프리젠테이션 애플리케이션에 의해 제공된다. 그러나, 여기에 설명되는 실시예들은 다른 제조자들로부터의 다른 프리젠테이션 애플리케이션들과 함께 그리고 애니메이션 시퀀스들의 생성 및 재생을 위한 기능을 제공하는 다른 유형의 소프트웨어 애플리케이션들과 함께 이용될 수 있음을 알아야 한다.
도 1에 도시된 바와 같이, 사용자 인터페이스(100)는 일 실시예에서 캔버스(102)를 포함한다. 사용자는 캔버스(102) 상에 객체들을 삽입하고, 애니메이션 시퀀스를 생성하기 위해 객체들에 적용될 애니메이션 액션들을 정의할 수 있다. 캔버스(102) 상에 배치될 수 있는 객체들은, 형상, 텍스트, 클립아트 및 이미지와 같은 정적 객체들, 및 영화 및 오디오 파일과 같은 미디어 객체들을 포함할 수 있다. 사용자 인터페이스 버튼들(106A-106C)이 선택되어, 사용자는 캔버스(102) 상에 배치될 형상, 텍스트 또는 영화를 각각 특정할 수 있다. 도 1에 도시된 예에서는 형상(108)이 캔버스(102) 상에 배치되었다. 사실상 임의의 수의 객체들이 캔버스(102) 상에 배치되고, 여기에 설명되는 방식으로 애니메이팅될 수 있다는 것을 알아야 한다.
일단 객체가 캔버스(102) 상에 배치되면, 본 명세서에서 "애니메이션들"로서 언급될 수 있는 하나 이상의 애니메이션 액션들이 객체에 대해 정의될 수 있다. 일 구현에서, 사용자 인터페이스 버튼(110A)이 선택되어, 객체에 적용될 수 있는 이용가능한 애니메이션 액션들의 리스트를 보고, 이용가능한 애니메이션 액션들 중 하나를 선택할 수 있다. 도 1에 도시된 예에서는, 모션 애니메이션 액션이 객체(108)에 대해 이용하기 위해 선택되었으며, 이 애니메이션 액션이 재생될 때 객체(108)가 모션 경로(112)를 따라 이동하게 할 것이다. 또한, 제2 애니메이션 액션도 객체(108)에 대해 이용하기 위해 선택되었으며, 이는 객체(108)가 모션 경로(112)를 따라 애니메이팅되는 동안에 회전하게 할 것이다. 사실상 임의의 수의 애니메이션 액션들이 객체에 적용될 수 있다. 애니메이션 액션들은, 객체가 회전하거나, 페이드인되거나, 페이드아웃되거나, 캔버스(102)를 가로질러 이동하거나, 분할되거나, 내려가거나, 올라가거나, 확장되거나, 컬러를 변경하게 하는 동작들을 포함하지만, 이에 제한되지는 않는다.
일 구현에 따르면, 사용자가 특정된 애니메이션 액션들에 대한 순서 및 타이밍을 정의할 수 있게 하는 사용자 인터페이스도 제공된다. 예를 들어, 일 실시예에서, 사용자 인터페이스(100)는 캔버스(102) 상의 객체들에 할당된 애니메이션 액션들의 시간 순서 리스트를 표시하는 이벤트 리스트(104)를 포함한다. 이벤트 리스트(104) 내의 아이템들(114A-114B) 각각은 개별 애니메이션 액션을 나타내며, 애니메이션 액션의 유형, 그 재생 방식, 및 그 시작, 종료 및 지속기간에 관한 정보를 그래픽 방식으로 전달한다. 아이템들(114A-114B) 각각의 시작, 종료 및 지속기간을 표시하기 위하여, 이벤트 리스트(104) 내의 아이템들(114A-114B) 각각은 유니버설 타임라인(118)에 상관되는 이벤트 타임라인 바(115A-115B)를 각각 포함할 수 있다.
일 구현에 따르면, 이벤트 리스트(104) 내의 아이템들(114A-114B)은 서로 논리적으로 관련된다. 이러한 논리적 관계들은 본 명세서에서 애니메이션 시퀀스로서 언급될 수 있는 애니메이션 액션들의 시퀀스를 구축하는데 이용될 수 있다. 사용자는 애니메이션 시퀀스의 생성 중에 아이템들(114A-114B) 사이의 논리적 관계들을 정의할 수 있으며, 이들은 각각의 애니메이션 액션이 언제 론칭되어야 하는지를 결정하는데 이용된다. 예시적인 논리적 관계들은 "이전과 함께 시작(start with previous)", "이전 후에 시작(start after previous)" 및 "클릭 시에 시작(start on click)"을 포함한다. "이전과 함께 시작"이라는 논리적 관계는, 애니메이션 액션이 이벤트 리스트(104) 내의 이전 이벤트와 동시에 시작하는 것을 허용한다. "이전 후에 시작"이라는 논리적 관계는, 애니메이션 액션이 이벤트 리스트(104) 내의 아이템들(114A-114B)에 의해 식별되는 직전의 액션 또는 액션들의 그룹의 완료 후에 시작하게 할 것이다. "클릭 시에 시작"이라는 논리적 관계는, 마우스 클릭 또는 다른 적합한 사용자 입력이 수신된 때에 애니메이션 액션이 개시되게 할 것이다.
사용자가 이벤트 리스트(104) 내의 각각의 아이템에 대해 원하는 논리적 관계를 특정할 수 있게 하는 적절한 사용자 인터페이스가 제공될 수 있다. 예컨대, 일 실시예에서, 필드들(106)은 사용자가 이벤트 리스트(104) 내의 선택된 아이템(114A)에 대한 논리적 관계, 경로 및 속도를 정의할 수 있게 한다. 애니메이션 액션들 사이의 논리적 관계들을 정의하기 위한 다른 유형의 사용자 인터페이스들도 제공될 수 있다. 이벤트 리스트(104) 내의 아이템들(114A-114B) 각각 내에는 그 아이템에 대하여 정의된 논리적 관계의 유형을 지시하는 아이콘 또는 다른 유형의 비주얼 지시자도 표시될 수 있다.
다른 실시예에서는, 트리거링 이벤트가 검출된 때 애니메이션 액션을 시작하기 위해서 "트리거 시에 시작(start on trigger)"이라는 논리적 관계가 정의될 수 있으며, 따라서 이벤트 구동 애니메이션 시퀀스가 생성될 수 있다. 예컨대, 사용자는 이러한 기능을 이용하여, 객체가, 캔버스(102) 상의 다른 객체가 클릭되는 경우에 캔버스(102) 상에서 이동하도록 특정할 수 있다. 여기에 개시되는 다른 유형의 트리거들에 관한 추가적인 상세들은 도 2 내지 도 8과 관련하여 아래에 제공된다.
일 실시예에서는, 개선된 이벤트 타임라인 뷰가 이벤트 리스트(104)와 관련하여 제공된다. 이러한 개선된 이벤트 타임라인 뷰는 사용자에 의해 이벤트 리스트(104) 내의 아이템들(114A-114B) 중 하나와 연관된 콘텍스트-민감형(context-sensitive) 메뉴 내의 아이템을 선택함으로써 활성화될 수 있다. 개선된 이벤트 타임라인 뷰는 애니메이션 액션들 사이의 타이밍 관계들을 그래픽 방식으로 나타낸다. 더 구체적으로, 이벤트 리스트(104) 내의 각각의 아이템(114A-114B)에 대해 이벤트 타임라인 바들(115A-115B)이 각각 표시된다. 이벤트 타임라인 바들(115A-115B)은 유니버설 타임라인(118)에 상관된다. 이벤트 타임라인 바들(115A-115B)은 이벤트 리스트(104) 내에 표시된 각각의 아이템(114A-114B)에 대한 시작 시간, 종료 시간 및 지속기간을 그래픽 방식으로 나타낸다.
일 실시예에 따르면, 사용자는 마우스 또는 다른 컴퓨터 입력 장치를 이용하여 이벤트 타임라인 바들(115A-115B)을 선택하고, 드래그 앤 드롭하여, 각각의 연관된 애니메이션 액션의 타이밍을 설정할 수 있다. 예컨대, 사용자들이 입력 장치를 이용하여 이벤트 타임라인 바(115A)의 좌측 에지를 선택하고 드래그하는 경우, 좌측 에지가 드래그되는 방향에 따라, 대응하는 애니메이션 액션의 시작 시간이 유니버설 타임라인(118)에 대해 더 이른 시간 또는 더 늦은 시간으로 이동될 것이다. 사용자가 이벤트 바(115A)의 우측 에지를 선택하고 드래그하는 경우, 이것은 대응하는 애니메이션 액션의 종료 시간을 유니버설 타임라인(118)에 대해 더 이른 시간 또는 더 늦은 시간으로 이동시킬 것이다. 대응하는 애니메이션 액션의 시작 시간, 종료 시간 및 지속기간은 이러한 방식으로 시작 및 종료 시간을 그래픽 방식으로 변경함으로써 정의될 수 있다. 또한, 사용자가 입력 장치를 이용하여 전체 이벤트 타임라인 바(115A)를 선택하고 드래그하는 경우, 이러한 액션은 전체 이벤트를 그 지속기간을 유지하면서 유니버설 타임라인(118)에 대해 더 늦은 시간 또는 더 이른 시간으로 이동시킬 것이다.
다양한 다른 방법들을 이용하여, 이벤트 리스트(104)의 이벤트 타임라인 바들(115A-115B)을 조작할 수 있다는 것을 알아야 한다. 예컨대, 사용자는 마우스 커서 또는 다른 컴퓨터 입력 장치를 이용하여 이벤트 리스트(104) 내의 애니메이션 아이템(114A)을 선택하고 이를 리스트(104) 내에서 위로 또는 아래로 드래그함으로써 애니메이션 액션들이 재생되는 순서를 변경할 수 있다. 대안으로서, 사용자는 아이템들(114A-114B) 중 하나를 선택한 후에 사용자 인터페이스 버튼들(120) 중 하나를 선택하여 리스트(104) 내에서 선택된 아이템을 위로 또는 아래로 이동시킬 수 있다. 또한, 사용자는 삭제될 아이템들(114A-114B) 중 하나를 선택한 후에 사용자 인터페이스 버튼(110B)을 선택함으로써 이벤트 리스트(104)로부터 아이템을 삭제할 수 있다. 이에 응답하여, 선택된 아이템은 이벤트 리스트(104)로부터 삭제될 것이다. 대응하는 애니메이션 액션도 캔버스(102) 및 각각의 객체로부터 제거될 것이다.
일 실시예에서, 사용자는 사용자 인터페이스 버튼(122A)을 선택하여, 이벤트 리스트(104) 및 유니버설 타임라인(118)을 계속 표시하면서, 정의된 애니메이션을 재생할 수 있다. 재생 중, 유니버설 타임라인(118)은 시간상 앞으로 이동하는 것으로 보이며, 이벤트 리스트(104) 내의 아이템들(114A-114B)에 의해 정의되는 애니메이션 액션들은 현재 타임 마커(도시되지 않음)가 각각의 이벤트 타임라인 바(115A-115B)의 시작에 도달하는 순서로 생성된다. 사용자가 애니메이션 재생을 일시정지시키고, 이벤트 타임라인 바들(115A-115B)을 이들의 시작 또는 종료 시간을 드래그함으로써 직접 조작하는 것이 허가될 수 있다. 또한, 사용자는 현재 타임 마커를 "스크러빙"(특정 시간을 찾기 위해 유니버설 타임라인(118) 내에서 이동)함으로써 이벤트 타임라인 바 타이밍들을 검사할 수 있다. 이 프로세스는 사용자가 애니메이션 액션들의 현재 배열에 관한 빠른 피드백을 얻을 수 있게 한다. 사용자 인터페이스 버튼(122B)의 선택은 이벤트 리스트(104) 내의 아이템들(114A-114B)에 의해 정의되는 애니메이션 시퀀스가 풀 스크린으로 재생되게 할 것이다.
도 1에 도시되고 위에서 설명된 사용자 인터페이스(100)는 여기에 설명되지 않은 추가 기능을 포함할 수 있다는 것을 알아야 한다. 그러한 추가 기능은 2001년 7월 19일자로 "INTEGRATED TIMELINE AND LOGICALLY-RELATED LIST VIEW"라는 제목으로 출원된 미국 특허 제6,904,561호에 설명되어 있으며, 이 특허는 본 특허 출원의 양수인에게 양도되었고, 본 명세서에 그 전체가 참고로 명백히 포함되어 있다.
도 2는 포워드 트리거를 정의하기 위해 일 실시예에서 제공되는 사용자 인터페이스(200)를 나타낸다. 간단히 전술한 바와 같이, 포워드 트리거는 미디어 객체의 재생 중에 특정된 위치에 도달하는 것에 응답하여 독립적인 애니메이션 액션을 시작한다. 포워드 트리거를 정의하기 위하여, 미디어 객체가 먼저 캔버스(102) 상에 배치되어야 한다. 또한 간단히 전술한 바와 같이, 미디어 객체는 오디오 파일, 비디오 파일, 또는 오디오 및/또는 비주얼 컴포넌트를 포함하며 시간에 따라 재생될 수 있는 다른 유형의 파일을 포함할 수 있다. 도 2에 도시된 예에서, 비디오 파일(202)은 삽입될 비디오 파일을 선택하기 위한 버튼(106C) 및 적절한 사용자 인터페이스(도시되지 않음)의 선택을 통해 캔버스 상에 삽입되었다.
도 2에 도시된 바와 같이, 비디오 파일(202)과 관련하여 전송 컨트롤들(204)이 표시될 수 있다. 전송 컨트롤들(204)은 사용자가 비디오 파일(202)의 재생을 재생, 일시정지, 고속 감기 또는 되감기하게 할 수 있다. 비디오 파일(202) 내의 현재 재생 위치를 지시하는 미디어 객체 타임라인(206)도 비디오 파일(202)과 관련하여 표시될 수 있다. 일 실시예에 따르면, 비디오 파일(202) 내의 하나 이상의 위치를 관심 포인트 또는 북마크로서 정의하기 위한 적절한 사용자 인터페이스도 제공될 수 있다. 예컨대, 사용자는 일 실시예에서 새로운 북마크들을 생성하기 위하여 미디어 객체 타임라인(206) 상에서 마우스를 클릭하거나 더블 마우스 클릭할 수 있다. 도 2에 도시된 예에서, 2개의 북마크(208A-208B)가 비디오 파일(202)에 대해 정의되었다. 아래에 더 상세히 설명되는 바와 같이, 북마크들(208A-208B)은 애니메이션 액션들을 트리거하기 위한 포워드 트리거들로서 이용될 수 있다.
일단 하나 이상의 북마크가 미디어 객체에 대해 정의되면, 포워드 트리거가 정의될 수 있다. 도 2에 도시된 실시예에서는, 이벤트 리스트(104) 내의 미디어 객체에 의해 트리거되어야 하는 애니메이션 액션에 대응하는 아이템(114)을 선택함으로써 포워드 트리거가 정의된다. 도 1에 도시된 설명적인 예에서는, 모션 경로 애니메이션 액션에 대응하는 아이템(114A)이 선택되었다. 일단 아이템(114A)이 선택되면, 선택 시에 캔버스(102) 상에 배치된 비디오 파일(202) 및 임의의 다른 미디어 객체들에 대해 정의된 북마크들에 대응하는 선택가능한 아이템들을 포함하는 드롭다운 메뉴(210)를 표시하는 사용자 인터페이스 버튼(106D)이 활성화된다.
드롭다운 메뉴(210) 내의 아이템들 중 하나를 선택하기 위해 적절한 사용자 입력 장치가 사용될 수 있다. 이러한 선택은 비디오 파일(202)의 재생 중에 드롭다운 메뉴(210)로부터 선택된 북마크에 도달하는 것에 응답하여 이벤트 리스트(104)에서 선택된 애니메이션 액션을 트리거하라는 요청을 포함한다. 드롭다운 메뉴(210)로부터의 선택을 수신하는 것에 응답하여, 비디오 파일(202)의 재생이 선택된 북마크에 도달할 때 선택된 애니메이션 액션을 수행하도록 구성되는 새로운 애니메이션 타임라인을 정의하는 데이터가 저장된다. 도 2에 도시된 예에서는, 포워드 트리거가 형상(108)에 대해 정의되었음을 지시하는 식별자(212)가 이벤트 리스트(104) 내에 삽입되었다.
비디오 파일(202)이 재생될 때, 드롭다운 메뉴(210)로부터 선택된 북마크를 만났는지에 관한 판정이 이루어진다. 비디오 파일(202)의 재생 중에 선택된 북마크를 만난 경우, 새로운 애니메이션 타임라인이 시작되어, 특정된 애니메이션 액션이 트리거된다. 애니메이션 액션을 수행하기 위하여, 새로운 애니메이션 타임라인을 정의하는 데이터가 변환되어, 컴퓨팅 시스템 상에 적절한 비주얼 표시를 제공할 수 있다. 이러한 방식으로, 비디오 파일(202)의 재생은 비디오 파일(202) 내의 북마크들(208A-208B)에 도달할 때 애니메이션 액션들을 트리거할 수 있다.
여기에 제공되는 도면들에 도시된 사용자 인터페이스 컨트롤들은 단지 예시적이며, 여기에 설명되는 개념들을 구현하기 위해 다른 유형의 사용자 인터페이스 컨트롤들 및 입력 방식들도 이용될 수 있다는 것을 알아야 한다. 또한, 여기에 설명되는 사용자 인터페이스 컨트롤들의 특정 레이아웃 및 구성도 예시적이며, 여기에 설명되는 기술들 및 개념들을 구현하기 위해 많은 다른 레이아웃들도 이용될 수 있다는 것도 알아야 한다.
이제, 도 3을 참조하면, 포워드 트리거를 정의하기 위해 다른 실시예에서 이용될 수 있는 하나의 사용자 인터페이스(300)가 설명된다. 이 실시예에서, 사용자 인터페이스(300)는 포워드 트리거가 정의될 이벤트 리스트(104) 내의 아이템(114A)과 연관된 풀다운 메뉴로부터의 적절한 메뉴 아이템의 선택에 응답하여 표시된다. 도 3에 도시된 사용자 인터페이스(300)에 액세스하기 위해 다른 사용자 인터페이스들이 제공될 수 있다.
도 3에 도시된 구현에서, 사용자 인터페이스(300)는 선택 시에 선택된 애니메이션 액션에 대한 다양한 옵션들을 특정하기 위한 사용자 인터페이스들을 제공하는 3개의 사용자 인터페이스 탭(302A-302C)을 포함한다. 탭(302A)의 선택은 선택된 애니메이션 액션에 대한 맞춤화를 특정하기 위한 사용자 인터페이스(도시되지 않음)를 노출한다. 탭(302C)의 선택은 텍스트의 애니메이션에 관한 다양한 옵션들을 특정하기 위한 사용자 인터페이스(도시되지 않음)를 노출한다. 탭(302B)의 선택은 사용자가 선택된 애니메이션 액션에 대한 포워드 트리거의 정의를 포함하여, 선택된 애니메이션 액션의 타이밍에 관한 옵션들을 특정할 수 있게 하는 도 3에 도시된 사용자 인터페이스를 노출한다.
도 3에 도시된 바와 같이, 사용자 인터페이스(300)는 이벤트 리스트(104) 내의 선택된 아이템(114A)에 대응하는 애니메이션 액션의 타이밍에 관한 다양한 옵션들을 특정하기 위한 여러 개의 필드(116)를 포함한다. 또한, 사용자 인터페이스(300)는 선택된 애니메이션 액션에 관한 트리거를 특정하기 위한 사용자 인터페이스 컨트롤들(304A-304C)도 포함한다. 사용자 인터페이스 컨트롤(304A)은 사용자가 선택된 애니메이션 액션이 클릭 시퀀스의 일부로서 트리거되어야 함을 특정할 수 있게 한다. 사용자 인터페이스 컨트롤(304B)은 사용자가 선택된 애니메이션 액션이 캔버스(102) 상의 객체에 대해 수신된 마우스 클릭에 응답하여 트리거되어야 함을 특정할 수 있게 한다. 사용자 인터페이스 컨트롤(304C)은 사용자가 선택된 애니메이션 액션이 포워드 트리거되어야 함을 특정할 수 있게 한다.
사용자 인터페이스 컨트롤(304C)이 선택되어, 미디어 객체가 특정 북마크에 도달할 때, 선택된 애니메이션 액션이 트리거될 것을 요청하는 경우, 사용자 인터페이스 컨트롤(210)이 활성화된다. 사용자 인터페이스 컨트롤(210)을 통해, 사용자는 이벤트 리스트(104) 내의 선택된 아이템(114A)에 대응하는 애니메이션 액션을 트리거해야 하는 특정 북마크를 선택할 수 있다. 이어서, 사용자는 사용자 인터페이스 컨트롤(306A)을 선택하여, 사용자 인터페이스(300)에 대해 행해진 변경들을 수용하거나, 사용자 인터페이스 컨트롤(306B)을 선택하여 변경들을 취소할 수 있다.
이제, 도 4를 참조하면, 애니메이션 액션을 포워드 트리거하기 위해 본 명세서에서 제공되는 실시예들에 관한 추가 상세들이 제공된다. 구체적으로, 도 4는 애니메이션 액션에 대한 포워드 트리거를 정의하기 위한 일 실시예에서의 애플리케이션 프로그램의 동작의 양태들을 나타내는 루틴(400)을 도시하는 흐름도이다.
여기에 설명되는 논리적 동작들은 (1) 컴퓨팅 시스템 상에서 실행되는 컴퓨터 구현 동작들 또는 프로그램 모듈들의 시퀀스로서 그리고/또는 (2) 컴퓨팅 시스템 내의 상호접속된 머신 논리 회로들 또는 회로 모듈들로서 구현된다는 것을 알아야 한다. 이러한 구현은 컴퓨팅 시스템의 성능 및 다른 요건들에 의존하는 선택의 문제이다. 따라서, 여기에 설명되는 논리적 동작들은 상태 동작들, 구조적 장치들, 동작들 또는 모듈들로서 다양하게 지칭된다. 이러한 동작들, 구조 장치들, 동작들 및 모듈들은 소프트웨어로, 펌웨어로, 특수 목적 디지털 로직으로 그리고 이들의 임의의 조합으로 구현될 수 있다. 또한, 도면들에 도시되고 여기에 설명되는 것보다 많거나 적은 동작들이 수행될 수 있다는 것도 알아야 한다. 또한, 이러한 동작들은 여기에 설명되는 것과 다른 순서로 수행될 수 있다.
루틴(400)은 형상(108)과 같은 객체가 캔버스(102) 상에 삽입되는 동작(402)에서 시작된다. 일단 객체가 캔버스(102) 상에 배치되면, 루틴(400)은 동작(404)으로 진행하는데, 여기서 객체에 대해 애니메이션 액션이 정의된다. 예컨대, 도 1 및 도 2와 관련하여 전술한 예에서는, 형상(108)에 대해 모션 경로(112)가 정의되었다. 애니메이션 액션의 정의는 애니메이션 액션에 대응하는 아이템(114)이 이벤트 리스트(104) 내에 배치되게 한다.
루틴(400)은 동작(404)으로부터 동작(406)으로 진행하는데, 여기서 비디오 파일(202)과 같은 미디어 객체가 캔버스 상에 배치되고, 미디어 객체에 대해 하나 이상의 북마크(208)가 정의된다. 일단 북마크들이 정의되면, 루틴(400)은 동작(408)으로 진행하는데, 여기서 미디어 객체의 재생이 특정된 북마크에 도달할 때 애니메이션 액션이 시작되어야 함을 특정하는 사용자 입력이 수신된다. 선택된 애니메이션 액션에 대한 포워드 트리거로서 이용되어야 하는 북마크를 특정하기 위해 여러 개의 예시적인 사용자 인터페이스가 도 2 및 도 3과 관련하여 위에서 설명되었다.
루틴(400)은 동작(408)으로부터 동작(410)으로 진행하는데, 여기서 미디어 객체의 재생이 특정된 북마크에 도달할 때 애니메이션 액션을 수행하도록 구성되는 새로운 애니메이션 타임라인이 생성된다. 아래에 더 상세히 설명되는 바와 같이, 북마크에 도달하였는지에 관한 판정이 미디어 객체의 재생 중에 행해진다. 그러한 경우, 특정된 애니메이션 액션이 수행된다. 예컨대, 일 실시예에서는, 컴퓨터 시스템에 의한 표시를 위해 새로운 애니메이션 타임라인을 정의하는 데이터를 비주얼 묘사로 변환함으로써 애니메이션 액션이 수행된다. 루틴(400)은 동작(410)으로부터 동작(412)으로 진행하여, 종료된다.
이제, 도 5를 참조하면, 포워드 트리거를 실행하기 위해 본 명세서에서 제공되는 실시예들에 관한 추가 상세들이 제공된다. 구체적으로, 도 5는 여기에 제공되는 일 구현에서 포워드 트리거된 애니메이션을 실행하기 위한 애플리케이션 프로그램의 동작의 양태들을 나타내는 루틴(500)을 도시하는 흐름도이다. 루틴(500)은 동작(502)에서 시작하는데, 여기서 애플리케이션 프로그램은 미디어 객체가 재생되고 있는지를 판정한다. 그렇지 않은 경우, 루틴(500)은 동작(502)으로 진행하는데, 여기서 다른 그러한 판정이 행해진다.
동작(502)에서, 미디어 객체가 재생되고 있는 것으로 판정되는 경우, 루틴(500)은 동작(504)으로 진행한다. 동작(504)에서, 미디어 객체의 재생 중에 북마크를 만났는지에 관한 판정이 행해진다. 북마크를 만나지 않은 경우, 루틴(500)은 전술한 동작(502)으로 복귀한다. 미디어 객체의 재생 중에 북마크를 만난 경우, 루틴(500)은 동작(506)으로 진행한다. 동작(506)에서, 임의의 포워드 트리거들이 도 4와 관련하여 전술한 방식으로 북마크와 연관되었는지에 관한 판정이 행해진다. 포워드 트리거들이 북마크와 연관되지 않은 경우, 루틴(500)은 전술한 동작(502)으로 복귀한다.
동작(506)에서 북마크가 포워드 트리거들과 연관된 것으로 판정되는 경우, 루틴(500)은 동작(508)으로 진행한다. 동작(508)에서, 북마크와 연관된 애니메이션 액션 또는 액션들이 재생된다. 전술한 바와 같이, 애니메이션 액션은 컴퓨터 시스템에 의한 표시를 위해 새로운 애니메이션 타임라인을 정의하는 데이터를 비주얼 묘사로 변환함으로써 수행될 수 있다. 루틴(500)은 동작(508)으로부터 전술한 동작(502)으로 복귀한다.
이제, 도 6을 참조하면, 리버스 트리거된 애니메이션을 정의하기 위해 여기에 제공되는 하나의 예시적인 사용자 인터페이스가 설명된다. 간단히 전술한 바와 같이, 리버스 트리거는 애니메이션 타임라인으로부터 미디어 객체에 대해 재생, 일시정지 또는 정지와 같은 미디어 객체 액션을 시작한다. 애니메이션 객체는 미디어 객체 내의 특정된 위치에서 미디어 객체를 트리거하도록 구성된다.
리버스 트리거를 정의하기 위하여, 미디어 객체에 대하여 애니메이션 타임라인에 애니메이션 액션을 추가하라는 요청이 수신된다. 예를 들어, 도 6에 도시된 예에서는, 삽입될 비디오 파일을 선택하기 위한 버튼(106C) 및 적절한 사용자 인터페이스(도시되지 않음)의 선택을 통해 비디오 파일(202)이 캔버스(102) 상에 삽입되었다. 또한, 비디오 파일(202)에 대해 적절한 사용자 인터페이스를 통해 여러 개의 북마크(208A-208B)도 정의되었다.
새로운 리버스 트리거를 정의하기 위하여, 사용자 인터페이스 버튼(110A)의 선택에 응답하여 사용자 인터페이스가 제공된다. 구체적으로, 일 실시예에서는, 사용자가 리버스 트리거에 의해 수행될 동작 및 이 동작이 발생해야 하는 북마크를 선택할 수 있는 드롭다운 메뉴(602)가 제공된다. 예컨대, 도 6의 드롭다운 메뉴(602)는 특정된 북마크에서 비디오 파일(202)의 재생을 시작하는 미디어 객체 액션을 식별한다. 드롭다운 메뉴(602)는 북마크에서 비디오 파일(202)의 재생을 정지시키거나, 북마크에서 비디오 파일(202)의 재생을 일시정지시키거나, 특정된 북마크에서 미디어 객체에 대해 다른 유형의 액션을 수행하기 위한 미디어 객체 액션들도 식별할 수 있다.
일단 리버스 트리거가 드롭다운 메뉴(602)를 통해 정의되면, 대응하는 애니메이션 액션이 애니메이션 타임라인에 추가된다. 예컨대, 일 실시예에서는, 새로운 리버스 트리거에 대응하는 새로운 아이템(114C)이 이벤트 리스트(104)에 추가된다. 애니메이션 타임라인의 재생 중에 애니메이션 액션을 만날 때, 특정된 미디어 객체 액션이 연관된 미디어 객체에 대해 수행된다. 예컨대, 도 6에 도시된 예에서는, 아이템(114C)을 만날 때, 비디오 파일(202)의 재생이 선택된 북마크에서 시작될 것이다. 이러한 방식으로, 애니메이션 타임라인이 특정 관심 포인트들에서 미디어 객체의 재생을 정지, 시작 또는 일시정지시킬 수 있다. 다른 유형의 미디어 객체 액션들도 수행될 수 있다.
이제, 도 7을 참조하면, 리버스 트리거를 정의하기 위해 본 명세서에서 제공되는 실시예들에 관한 추가 상세들이 제공된다. 구체적으로, 도 7은 여기에 제공되는 하나의 구현에서 리버스 트리거를 정의하기 위한 애플리케이션 프로그램의 동작의 양태들을 나타내는 루틴(700)을 도시하는 흐름도이다. 루틴(700)은 동작(702)에서 시작하는데, 여기서 비디오 파일(202)과 같은 미디어 객체의 선택이 수신된다. 일단 미디어 객체가 선택되면, 루틴(700)은 동작(704)으로 진행하는데, 여기서 미디어 객체 및 북마크에 대해 수행될 미디어 객체 액션이 선택된다. 예컨대, 도 6에 도시된 예에서는, "북마크에서 재생(play at bookmark)"이라는 미디어 객체 액션이 비디오 파일(202) 내에 정의된 2개의 북마크(208A-208B) 중 하나와 함께 선택되었다.
일단 동작(704)에서 미디어 객체 액션 및 북마크가 정의되면, 루틴(700)은 동작(706)으로 진행하는데, 여기서 애니메이션 타임라인에 새로운 리버스 트리거를 추가하라는 요청이 수신된다. 전술한 바와 같이, 이러한 요청은 드롭다운 메뉴(602) 또는 다른 적절한 사용자 인터페이스로부터의 선택의 형태로 올 수 있다. 이 요청에 응답하여, 루틴(700)은 동작(708)으로 진행하는데, 여기서 북마크 애니메이션 액션으로부터의 새로운 미디어 객체 액션이 애니메이션 타임라인에서 생성된다. 전술한 바와 같이, 일 실시예에서 새로운 애니메이션 액션은 이벤트 리스트(104) 내의 새로운 아이템(114C)에 의해 식별될 수 있다. 루틴(700)은 동작(708)으로부터 동작(710)으로 진행하여, 종료된다.
이제, 도 8을 참조하면, 리버스 트리거를 실행하기 위해 본 명세서에서 제공되는 실시예들에 관한 추가 상세들이 제공된다. 구체적으로, 도 8은 여기에 제공되는 일 구현에서 리버스 트리거를 실행하기 위한 애플리케이션 프로그램의 동작의 양태들을 나타내는 루틴(800)을 도시하는 흐름도이다. 루틴(800)은 동작(802)에서 시작하는데, 여기서 이벤트 리스트(104)에 의해 정의된 애니메이션 타임라인의 재생이 시작된다. 루틴(800)은 동작(802)으로부터 동작(804)으로 진행하는데, 여기서 이벤트 리스트(104)에 의해 정의된 애니메이션 타임라인에서 리버스 트리거를 만났는지에 관한 판정이 이루어진다. 그렇지 않은 경우, 루틴(800)은 동작(806)으로 진행하는데, 여기서 애니메이션 타임라인의 재생이 계속된다.
리버스 트리거가 이벤트 리스트(104)에 의해 정의된 애니메이션 타임라인에서 식별되는 경우, 루틴(800)은 동작(808)으로 진행하는데, 여기서 만난 리버스 트리거에 의해 특정된 미디어 객체 액션이 실행된다. 전술한 바와 같이, 리버스 트리거는 특정 북마크에서 미디어 객체의 재생을 정지, 시작 또는 일시정지시키거나, 또는 미디어 객체에 대해 다른 액션을 수행할 수 있다. 루틴(800)은 동작(808)으로부터 전술한 동작(806)으로 진행한다.
도 9는 여기에 설명되는 소프트웨어 컴포넌트들을 실행할 수 있는 컴퓨터(900)에 대한 예시적인 컴퓨터 아키텍처를 나타낸다. 도 9에 도시된 컴퓨터 아키텍처는 통상의 데스크톱, 랩톱 또는 서버 컴퓨터를 나타내며, 여기에 제공되는 소프트웨어 컴포넌트들의 임의의 양태들을 실행하는데 이용될 수 있다.
도 9에 도시된 컴퓨터 아키텍처는 중앙 처리 장치(902)("CPU"), 랜덤 액세스 메모리(914)("RAM") 및 판독 전용 메모리("ROM")(916)를 포함하는 시스템 메모리(908), 및 메모리를 CPU(902)에 연결하는 시스템 버스(904)를 포함한다. 시동 중과 같이, 컴퓨터(900) 내의 요소들 사이의 정보 전송을 돕는 기본 루틴을 포함하는 기본 입/출력 시스템은 ROM(916)에 저장되어 있다. 컴퓨터(900)는 본 명세서에서 더 상세히 설명된 운영 체제(918), 애플리케이션 프로그램들 및 기타 프로그램 모듈들을 저장하기 위한 대용량 저장 장치(910)를 더 포함한다.
대용량 저장 장치(910)는 버스(904)에 접속된 대용량 저장 컨트롤러(도시되지 않음)를 통해 CPU(902)에 접속된다. 대용량 저장 장치(910) 및 그 연관된 컴퓨터 판독가능 매체는 컴퓨터(900)에 대해 비휘발성 스토리지를 제공한다. 여기에 포함된 컴퓨터 판독가능 매체의 설명은 하드 디스크 또는 CD-ROM 드라이브와 같은 대용량 저장 장치를 언급하지만, 당업자는 컴퓨터 판독가능 매체들이 컴퓨터(900)에 의해 액세스될 수 있는 임의의 이용가능한 컴퓨터 저장 매체들일 수 있다는 것을 알아야 한다.
제한이 아니라 예로서, 컴퓨터 판독가능 매체는 컴퓨터 판독가능 명령어, 데이터 구조, 프로그램 모듈 또는 기타 데이터와 같은 정보의 저장을 위해 임의의 방법 또는 기술로 구현되는 휘발성 및 비휘발성, 착탈식 및 비착탈식 매체를 포함할 수 있다. 예컨대, 컴퓨터 판독가능 매체는 RAM, ROM, EPROM, EEPROM, 플래시 메모리 또는 기타 고체 메모리 기술, CD-ROM, "DVD"(digital versatile disks), HD-DVD, BLU-RAY, 또는 기타 광 저장 장치, 자기 카세트, 자기 테이프, 자기 디스크 저장 장치 또는 기타 자기 저장 장치, 또는 컴퓨터(900)에 의해 액세스될 수 있으며 원하는 정보를 저장하는데 이용될 수 있는 임의의 기타 매체를 포함하지만 이에 제한되는 것은 아니다.
다양한 실시예들에 따르면, 컴퓨터(900)는 네트워크(920)와 같은 네트워크를 통한 원격 컴퓨터들로의 논리적 접속들을 이용하여 네트워크화된 환경에서 동작할 수 있다. 컴퓨터(900)는 버스(904)에 접속된 네트워크 인터페이스 유닛(906)을 통해 네트워크(920)에 접속할 수 있다. 또한, 네트워크 인터페이스 유닛(906)은 다른 유형의 네트워크들 및 원격 컴퓨터 시스템들에 접속하는데 이용될 수 있다는 것을 알아야 한다. 또한, 컴퓨터(900)는 다수의 다른 장치로부터 입력을 수신하고 처리하기 위한 입/출력 컨트롤러(912)도 포함할 수 있으며, 이는 키보드, 마우스 또는 전자 스타일러스(도 9에 도시되지 않음)를 포함한다. 유사하게, 입/출력 컨트롤러는 디스플레이 스크린, 프린터 또는 다른 유형의 출력 장치(도 9에 또한 도시되지 않음)에 출력을 제공할 수 있다.
간단하게 전술한 바와 같이, 네트워크화된 데스크톱, 랩톱 또는 서버 컴퓨터의 동작을 제어하기에 적합한 운영 체제(918)를 포함하여 다수의 프로그램 모듈 및 데이터 파일이 컴퓨터(900)의 대용량 저장 장치(910) 및 RAM(914)에 저장될 수 있다. 또한, 대용량 저장 장치(910) 및 RAM(914)은 하나 이상의 프로그램 모듈도 저장할 수 있다. 특히, 대용량 저장 장치(910) 및 RAM(914)은 도 1 내지 도 8과 관련하여 각각 상세히 전술한 프리젠테이션 애플리케이션(920), 하나 이상의 애니메이션 액션(922), 미디어 객체들(924), 및 미디어 객체들 내의 북마크들(926)을 정의하는 데이터를 저장할 수 있다. 또한, 대용량 저장 장치(910) 및 RAM(914)은 다른 유형의 프로그램 모듈 및 데이터도 저장할 수 있다.
위의 설명에 기초하여, 애니메이션 액션들 및 미디어 객체 액션들을 트리거하기 위한 기술들이 본 명세서에서 제공된다는 것을 알아야 한다. 여기에 제공되는 대상은 컴퓨터의 구조적 특징들, 변환들을 포함하는 방법론적 동작들 및 컴퓨터 판독가능 매체에 특정된 언어로 설명되었지만, 첨부된 청구항들에서 정의되는 발명은 여기에 설명되는 특정 특징들, 동작들 또는 매체들로 반드시 제한되지는 않는다는 것을 알아야 한다. 오히려, 특정 특징들, 동작들 및 매체들은 청구항들을 구현하는 예시적인 형태들로서 개시된다.
전술한 대상은 단지 예시로서 제공되며, 제한적인 것으로 해석되어서는 안 된다. 예시되고 설명된 예시적인 실시예들 및 애플리케이션들을 따르지 않고 그리고 아래의 청구항들에서 설명되는 본 발명의 진정한 사상 및 범위로부터 벗어나지 않고, 여기에 설명되는 대상에 대해 다양한 수정들 및 변경들이 이루어질 수 있다.

Claims (15)

  1. 애니메이션 액션(922)을 트리거하는 컴퓨터 구현 방법으로서,
    미디어 객체(924)의 재생이 특정된 관심 포인트(926)에 도달하는 때에 애니메이션 액션(922)을 트리거하라는 요청을 수신하는 단계;
    상기 요청을 수신하는 것에 응답하여, 상기 미디어 객체(924)의 재생이 상기 특정된 관심 포인트(926)에 도달하는 때에 상기 애니메이션 액션(922)을 수행하도록 구성되는 새로운 애니메이션 타임라인을 정의하는 데이터를 저장하는 단계;
    상기 미디어 객체(924)를 재생하는 단계;
    상기 미디어 객체(924)의 재생 중에 상기 특정된 관심 포인트(926)를 만났는지를 판정하는 단계; 및
    상기 미디어 객체(924)의 재생 중에 상기 특정된 관심 포인트(926)를 만나는 것에 응답하여, 컴퓨터 시스템(900)에 의한 표시를 위해 상기 새로운 애니메이션 타임라인을 정의하는 데이터를 비주얼 묘사(visual depiction)로 변환함으로써 상기 애니메이션 액션(922)을 수행하는 단계
    를 포함하는 컴퓨터 구현 방법.
  2. 제1항에 있어서,
    미디어 객체의 재생이 특정된 관심 포인트에 도달하는 때에 애니메이션 액션을 트리거하라는 요청을 수신하는 단계는,
    상기 애니메이션 액션의 선택을 수신하는 단계;
    하나 이상의 선택가능한 아이템들을 포함하는 사용자 인터페이스를 표시하는 단계 - 상기 선택가능한 아이템들 각각은 상기 미디어 객체에 대해 정의된 관심 포인트에 대응함 -; 및
    상기 특정된 관심 포인트로서 상기 사용자 인터페이스 내의 상기 아이템들 중 하나의 아이템의 선택을 수신하는 단계
    를 포함하는 컴퓨터 구현 방법.
  3. 제1항에 있어서,
    연관된 미디어 객체에 대해 미디어 객체 액션을 트리거하도록 구성된 애니메이션 액션을 애니메이션 타임라인에 추가하라는 요청을 수신하는 단계;
    상기 요청에 응답하여, 상기 애니메이션 액션을 상기 애니메이션 타임라인에 추가하는 단계; 및
    상기 애니메이션 타임라인의 재생 중에 상기 애니메이션 액션을 만나는 것에 응답하여, 상기 연관된 미디어 객체에 대해 상기 미디어 객체 액션을 수행하는 단계
    를 더 포함하는 컴퓨터 구현 방법.
  4. 제3항에 있어서,
    상기 미디어 객체 액션은 특정된 관심 포인트에서 상기 미디어 객체의 재생을 정지시키기 위한 액션을 포함하는 컴퓨터 구현 방법.
  5. 제3항에 있어서,
    상기 미디어 객체 액션은 특정된 관심 포인트에서 상기 미디어 객체의 재생을 시작하기 위한 액션을 포함하는 컴퓨터 구현 방법.
  6. 제3항에 있어서,
    상기 미디어 객체 액션은 특정된 관심 포인트에서 상기 미디어 객체의 재생을 일시정지시키기 위한 액션을 포함하는 컴퓨터 구현 방법.
  7. 제3항에 있어서,
    상기 미디어 객체는 비디오 파일을 포함하는 컴퓨터 구현 방법.
  8. 제3항에 있어서,
    관심 포인트들은 미디어 객체 내의 북마크들로서 정의되는 컴퓨터 구현 방법.
  9. 미디어 객체 액션을 트리거하는 컴퓨터 구현 방법으로서,
    애니메이션 액션(922)을 애니메이션 타임라인에 추가하라는 요청을 수신하는 단계 - 상기 애니메이션 액션(922)은 연관된 미디어 객체(924) 내의 특정된 관심 포인트에서 미디어 객체 액션을 트리거하도록 구성됨 -;
    상기 요청에 응답하여, 상기 애니메이션 액션(922)을 상기 애니메이션 타임라인에 추가하는 단계; 및
    상기 애니메이션 타임라인의 재생 중에 상기 애니메이션 액션(922)을 만나는 것에 응답하여, 상기 연관된 미디어 객체(924)에 대해 상기 미디어 객체 액션을 수행하는 단계
    를 포함하는 컴퓨터 구현 방법.
  10. 제9항에 있어서,
    상기 미디어 객체 액션은 상기 특정된 관심 포인트에서 상기 미디어 객체의 재생을 정지시키기 위한 액션을 포함하는 컴퓨터 구현 방법.
  11. 제9항에 있어서,
    상기 미디어 객체 액션은 상기 특정된 관심 포인트에서 상기 미디어 객체의 재생을 시작하기 위한 액션을 포함하는 컴퓨터 구현 방법.
  12. 제9항에 있어서,
    상기 미디어 객체 액션은 상기 특정된 관심 포인트에서 상기 미디어 객체의 재생을 일시정지시키기 위한 액션을 포함하는 컴퓨터 구현 방법.
  13. 제12항에 있어서,
    상기 미디어 객체의 재생이 제2 관심 포인트에 도달하는 때에 제2 애니메이션 액션을 트리거하라는 요청을 수신하는 단계;
    상기 요청을 수신하는 것에 응답하여, 상기 미디어 객체의 재생이 상기 제2 관심 포인트에 도달하는 때에 상기 제2 애니메이션 액션을 수행하도록 구성되는 새로운 애니메이션 타임라인을 생성하는 단계;
    상기 미디어 객체의 재생 중에 상기 제2 관심 포인트를 만났는지를 판정하는 단계; 및
    상기 미디어 객체의 재생 중에 상기 제2 관심 포인트를 만나는 것에 응답하여, 상기 제2 애니메이션 액션을 수행하는 단계
    를 더 포함하는 컴퓨터 구현 방법.
  14. 제13항에 있어서,
    상기 미디어 객체의 재생이 제2 관심 포인트에 도달하는 때에 제2 애니메이션 액션을 트리거하라는 요청을 수신하는 단계는,
    상기 애니메이션 액션의 선택을 수신하는 단계;
    하나 이상의 선택가능한 아이템들을 포함하는 사용자 인터페이스를 표시하는 단계 - 상기 선택가능한 아이템들 각각은 상기 미디어 객체에 대해 정의된 관심 포인트에 대응함 -; 및
    상기 제2 관심 포인트로서 상기 사용자 인터페이스 내의 상기 아이템들 중 하나의 아이템의 선택을 수신하는 단계
    를 포함하는 컴퓨터 구현 방법.
  15. 제14항에 있어서,
    관심 포인트들은 북마크들을 포함하는 컴퓨터 구현 방법.
KR1020117013300A 2008-12-18 2009-11-13 애니메이션 액션들 및 미디어 객체 액션들의 트리거링 KR101652549B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US12/337,656 2008-12-18
US12/337,656 US8836706B2 (en) 2008-12-18 2008-12-18 Triggering animation actions and media object actions

Publications (2)

Publication Number Publication Date
KR20110103954A true KR20110103954A (ko) 2011-09-21
KR101652549B1 KR101652549B1 (ko) 2016-08-30

Family

ID=42265359

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020117013300A KR101652549B1 (ko) 2008-12-18 2009-11-13 애니메이션 액션들 및 미디어 객체 액션들의 트리거링

Country Status (16)

Country Link
US (1) US8836706B2 (ko)
EP (1) EP2368175B1 (ko)
JP (1) JP5523474B2 (ko)
KR (1) KR101652549B1 (ko)
CN (1) CN102257467B (ko)
AU (1) AU2009336090B2 (ko)
BR (1) BRPI0921938A8 (ko)
CA (1) CA2742505C (ko)
CL (1) CL2011001465A1 (ko)
IL (1) IL212557A (ko)
MX (1) MX2011006437A (ko)
MY (1) MY177845A (ko)
RU (1) RU2534930C2 (ko)
TW (1) TWI482120B (ko)
WO (1) WO2010080209A1 (ko)
ZA (1) ZA201103113B (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20220013079A (ko) * 2020-07-24 2022-02-04 주식회사 한글과컴퓨터 프레젠테이션에서 개체의 회전을 통해 역동적인 애니메이션 효과의 재생을 가능하게 하는 전자 장치 및 그 동작 방법

Families Citing this family (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20140033006A1 (en) * 2010-02-18 2014-01-30 Adobe Systems Incorporated System and method for selection preview
US8964052B1 (en) 2010-07-19 2015-02-24 Lucasfilm Entertainment Company, Ltd. Controlling a virtual camera
US20120089933A1 (en) * 2010-09-14 2012-04-12 Apple Inc. Content configuration for device platforms
TWI416356B (zh) * 2010-10-13 2013-11-21 Univ Nat Cheng Kung 一種資料庫系統
US9030477B2 (en) * 2011-06-24 2015-05-12 Lucasfilm Entertainment Company Ltd. Editable character action user interfaces
CN102306162A (zh) * 2011-07-22 2012-01-04 福州锐达数码科技有限公司 一种实现多媒体对象存储与回放方法
US20130097552A1 (en) * 2011-10-18 2013-04-18 Microsoft Corporation Constructing an animation timeline via direct manipulation
EP2592599B1 (en) * 2011-11-14 2018-07-11 Microsoft Technology Licensing, LLC Animation creation and management in presentation application programs
US9183658B2 (en) 2011-11-14 2015-11-10 Microsoft Technology Licensing, Llc Animation creation and management in presentation application programs
US9508176B2 (en) 2011-11-18 2016-11-29 Lucasfilm Entertainment Company Ltd. Path and speed based character control
US9292955B1 (en) 2012-01-05 2016-03-22 Google Inc. Sequencing of animations in software applications
US8774596B2 (en) * 2012-12-10 2014-07-08 Futurewei Technologies, Inc. Context driven video prioritization and bookmarking
US9558578B1 (en) 2012-12-27 2017-01-31 Lucasfilm Entertainment Company Ltd. Animation environment
WO2015042901A1 (en) * 2013-09-29 2015-04-02 Microsoft Technology Licensing, Llc Media presentation effects
US9620167B2 (en) * 2013-12-23 2017-04-11 Phizzle, Inc. Broadcast-quality graphics creation and playout
US10157593B2 (en) 2014-02-24 2018-12-18 Microsoft Technology Licensing, Llc Cross-platform rendering engine
US20150324099A1 (en) * 2014-05-07 2015-11-12 Microsoft Corporation Connecting Current User Activities with Related Stored Media Collections
US20190114037A1 (en) 2017-10-17 2019-04-18 Blend Systems, Inc. Systems and methods for distributing customized avatars responsive to events
CN107967705B (zh) * 2017-12-06 2019-02-01 央视动画有限公司 动画动作的保存方法、动画动作的调用方法及装置
CN110322537B (zh) * 2018-03-29 2023-05-23 成都野望数码科技有限公司 一种幻灯片过渡动画编辑方法和相关装置
TWI743407B (zh) 2018-10-26 2021-10-21 和碩聯合科技股份有限公司 載具模擬裝置及方法
CN110166842B (zh) * 2018-11-19 2020-10-16 深圳市腾讯信息技术有限公司 一种视频文件操作方法、装置和存储介质
CN109669746B (zh) * 2018-11-28 2023-07-18 平安科技(深圳)有限公司 基于ui的在线h5动画课件显示方法、装置、计算机设备
CN110687921B (zh) * 2019-10-30 2023-01-20 上海歌尔泰克机器人有限公司 一种无人机飞行控制方法、装置及电子设备和存储介质
US11321381B2 (en) * 2020-06-23 2022-05-03 Apple Inc. Presentation features for performing operations and selecting content

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6396500B1 (en) * 1999-03-18 2002-05-28 Microsoft Corporation Method and system for generating and displaying a slide show with animations and transitions in a browser

Family Cites Families (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5889514A (en) 1996-03-29 1999-03-30 International Business Machines Corp. Method and system for a multimedia application development sequence editor using spacer tools
US6264970B1 (en) 1996-06-26 2001-07-24 Takeda Chemical Industries, Ltd. Sustained-release preparation
US6296500B1 (en) 2000-04-13 2001-10-02 Hon Hai Precision Ind. Co., Ltd. Electrical card connector having a switch device
US6701014B1 (en) 2000-06-14 2004-03-02 International Business Machines Corporation Method and apparatus for matching slides in video
US20060129933A1 (en) * 2000-12-19 2006-06-15 Sparkpoint Software, Inc. System and method for multimedia authoring and playback
US6907570B2 (en) * 2001-03-29 2005-06-14 International Business Machines Corporation Video and multimedia browsing while switching between views
US6904561B1 (en) 2001-07-19 2005-06-07 Microsoft Corp. Integrated timeline and logically-related list view
GB0216819D0 (en) * 2002-07-19 2002-08-28 Kaydara Inc Generating animation data
CN1759439B (zh) * 2003-02-10 2010-12-08 Lg电子株式会社 在记录介质上记录图像数据和相关控制数据的方法
CA2457602A1 (en) 2003-02-19 2004-08-19 Impatica Inc. Method of synchronizing streams of real time data
US20050044499A1 (en) 2003-02-23 2005-02-24 Anystream, Inc. Method for capturing, encoding, packaging, and distributing multimedia presentations
US7173623B2 (en) * 2003-05-09 2007-02-06 Microsoft Corporation System supporting animation of graphical display elements through animation object instances
TW200515195A (en) * 2003-10-24 2005-05-01 Digital Learning Online Co Ltd Method and computer-readable medium for automatically producing digital courseware
US20060022983A1 (en) * 2004-07-27 2006-02-02 Alias Systems Corp. Processing three-dimensional data
US7336280B2 (en) 2004-11-18 2008-02-26 Microsoft Corporation Coordinating animations and media in computer display output
US7477254B2 (en) 2005-07-13 2009-01-13 Microsoft Corporation Smooth transitions between animations
WO2007043824A1 (en) 2005-10-13 2007-04-19 Lg Electronics Inc. Method and apparatus for encoding/decoding
US7804503B2 (en) * 2006-05-15 2010-09-28 Microsoft Corporation Animating objects using metadata
US20090024922A1 (en) 2006-07-31 2009-01-22 David Markowitz Method and system for synchronizing media files
US8451232B2 (en) * 2007-01-07 2013-05-28 Apple Inc. Portable multifunction device, method, and graphical user interface for interacting with user input elements in displayed content
CN101127870A (zh) 2007-09-13 2008-02-20 深圳市融合视讯科技有限公司 一种视频流媒体书签的创建及使用方法
US8176096B2 (en) 2008-12-18 2012-05-08 Microsoft Corporation Data visualization interactivity architecture

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6396500B1 (en) * 1999-03-18 2002-05-28 Microsoft Corporation Method and system for generating and displaying a slide show with animations and transitions in a browser

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20220013079A (ko) * 2020-07-24 2022-02-04 주식회사 한글과컴퓨터 프레젠테이션에서 개체의 회전을 통해 역동적인 애니메이션 효과의 재생을 가능하게 하는 전자 장치 및 그 동작 방법

Also Published As

Publication number Publication date
ZA201103113B (en) 2012-07-25
IL212557A0 (en) 2011-06-30
AU2009336090A1 (en) 2011-06-30
IL212557A (en) 2015-06-30
EP2368175A1 (en) 2011-09-28
CN102257467A (zh) 2011-11-23
RU2011124896A (ru) 2012-12-27
MX2011006437A (es) 2011-07-19
CL2011001465A1 (es) 2011-11-25
MY177845A (en) 2020-09-23
TWI482120B (zh) 2015-04-21
TW201025185A (en) 2010-07-01
CN102257467B (zh) 2014-08-13
KR101652549B1 (ko) 2016-08-30
EP2368175A4 (en) 2013-03-13
CA2742505C (en) 2016-11-01
AU2009336090B2 (en) 2014-07-24
CA2742505A1 (en) 2010-07-15
BRPI0921938A8 (pt) 2017-12-12
US20100156911A1 (en) 2010-06-24
WO2010080209A1 (en) 2010-07-15
RU2534930C2 (ru) 2014-12-10
US8836706B2 (en) 2014-09-16
EP2368175B1 (en) 2020-02-26
JP2012513064A (ja) 2012-06-07
JP5523474B2 (ja) 2014-06-18
BRPI0921938A2 (pt) 2017-10-24

Similar Documents

Publication Publication Date Title
KR101652549B1 (ko) 애니메이션 액션들 및 미디어 객체 액션들의 트리거링
JP5667090B2 (ja) 単純なアニメーションおよび複雑なアニメーションの定義
JP5568186B2 (ja) ビデオのコンテキストのポップアップ
KR101661772B1 (ko) 소스 객체로부터 적어도 하나의 타겟 객체로의 애니메이션 효과들의 복사
US8069421B2 (en) Methods and apparatus for graphical object implementation
JP5540135B2 (ja) 宣言型動画方式を用いたオブジェクトの動画化
JP2013538505A (ja) 複合プレゼンテーションのストーリーボード表現を提示および編集するためのツール
WO2015184236A1 (en) Video frame loupe
US20220229505A1 (en) Method and apparatus for providing prototype of graphical user interface
US20140173442A1 (en) Presenter view in presentation application
KR102668652B1 (ko) 그래픽 사용자 인터페이스 프로토타입 제공 방법 및 장치
KR102385963B1 (ko) 그래픽 사용자 인터페이스 프로토타입 제공 방법 및 장치

Legal Events

Date Code Title Description
N231 Notification of change of applicant
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20190729

Year of fee payment: 4