KR20200131250A - Method and apparatus for saving and restoring navigation context - Google Patents

Method and apparatus for saving and restoring navigation context Download PDF

Info

Publication number
KR20200131250A
KR20200131250A KR1020207026651A KR20207026651A KR20200131250A KR 20200131250 A KR20200131250 A KR 20200131250A KR 1020207026651 A KR1020207026651 A KR 1020207026651A KR 20207026651 A KR20207026651 A KR 20207026651A KR 20200131250 A KR20200131250 A KR 20200131250A
Authority
KR
South Korea
Prior art keywords
media
media content
interest
objects
navigation context
Prior art date
Application number
KR1020207026651A
Other languages
Korean (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
Priority claimed from US15/898,136 external-priority patent/US20190250999A1/en
Priority claimed from EP18305155.6A external-priority patent/EP3528145A1/en
Application filed by 알끼미아 filed Critical 알끼미아
Publication of KR20200131250A publication Critical patent/KR20200131250A/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/955Retrieval from the web using information identifiers, e.g. uniform resource locators [URL]
    • G06F16/9562Bookmark management

Landscapes

  • Engineering & Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

본 발명은 제 1 미디어 컨텐츠를 위한 내비게이션 컨텍스트를 복원하는 방법에 관한 것이다. 내비게이션 컨텍스트 데이터는 미디어 액세스 데이터 및 제 1 사용자 인터페이스, UI, 윈도우에서 현재 디스플레이되는 제 1 미디어 컨텐츠의 제 1 부분에서 하나 이상의 관심있는 미디어 객체들의 세트의 식별을 포함한다. 상기 내비게이션 컨텍스트의 복원은, 미디어 액세스 데이터에 기초하여 제 1 미디어 컨텐츠를 로딩하는 단계(269), 상기 로딩된 제 1 미디어 컨텐츠에 기초하여 하나 이상의 관심있는 미디어 객체들의 세트를 포함하는 제 2 미디어 컨텐츠를 생성하는 단계(270), 및 제 2 유저 인터페이스 윈도우에서, 하나 이상의 관심있는 미디어 객체들의 세트 중에서 적어도 하나의 관심있는 미디어 객체를 포함하는 제 2 미디어 컨텐츠의 제 2 부분을 디스플레이하는 단계(290)를 포함한다. The present invention relates to a method of restoring a navigation context for a first media content. The navigation context data includes media access data and identification of a set of one or more media objects of interest in a first user interface, a UI, a first portion of the first media content currently displayed in the window. Restoration of the navigation context includes loading (269) a first media content based on media access data, a second media content comprising a set of one or more media objects of interest based on the loaded first media content Generating (270), and in a second user interface window, displaying (290) a second portion of the second media content including at least one media object of interest from among the set of one or more media objects of interest. Includes.

Description

내비게이션 컨텍스트를 저장 및 복원하는 방법 및 장치Method and apparatus for saving and restoring navigation context

본 발명은 통신 및 디지털 데이터 처리 분야에 관한 것으로, 더 상세하게는 내비게이션 컨텍스트를 저장하는 방법, 내비게이션 컨텍스트를 복원하는 방법 및 그와 연관된 전자 장치 및 컴퓨터 프로그램에 관한 것이다.The present invention relates to the field of communication and digital data processing, and more particularly, to a method of storing a navigation context, a method of restoring a navigation context, and an electronic device and a computer program associated therewith.

US 2017/0214640A1 호로 공개된 미국 특허 출원은 여러 사용자들 간에 미디어 컨텐츠를 공유하는 방법을 개시하고 있다. 상기 방법은 토픽 미디어 컨텐츠와 결합되어, 토픽 미디어 컨텐츠의 어떤 부분에 기여 미디어 컨텐츠가 관련되며/되거나 토픽 미디어 컨텐츠가 주석이 달린 미디어 컨텐츠를 재생하기 위해 각각의 기여 미디어 컨텐츠와 어떻게 결합되어야 하는지를 특정하는 메타데이터(예를 들어, 연관 데이터)에 따라 주석이 달린 미디어 컨텐츠를 생성하는 하나 이상의 기여 미디어 컨텐츠를 생성하는 것을 포함한다.The US patent application published as US 2017/0214640A1 discloses a method of sharing media content among multiple users. The method is combined with topic media content to specify which portion of the topic media content the contributing media content is associated with and/or how the topic media content should be combined with each contributing media content to play the annotated media content. And generating one or more contributing media content that generates media content annotated according to metadata (eg, associated data).

토픽 미디어 컨텐츠는 예를 들어 송신 장치로부터 토픽 미디어 컨텐츠가 재생될 것이며 하나 이상의 주석이 달린 미디어 컨텐츠와 결합될 수신자 장치로 전송되어야 한다.The topic media content must be transmitted to a recipient device to be combined with one or more annotated media content where the topic media content will be played, for example from the sending device.

개시된 방법에서, 토픽 미디어 컨텐츠는 소프트웨어 애플리케이션에 디스플레이된 임의의 미디어 컨텐츠일 수 있다. 예를 들어, 미디어 컨텐츠는 컨텐츠가 주어진 URL(Uniform Resource Location)에 대해 동일하게 유지되는, (예를 들어, 텍스트, 사진, 비디오, 인터랙티브 기능들/도구들 등을 포함하는) "정적" 웹 페이지일 수 있다. 이 경우, 웹 페이지의 URL을 사용하여 미디어 서버로부터 웹 페이지를 로딩하는 것만으로 토픽 미디어 컨텐츠가 수신자 장치 상에서 재생될 수 있다. 반대로, 또한 토픽 미디어 컨텐츠는 동일한 URL에 대해 컨텐츠가 시간이 지남에 따라 또는 컨텐츠가 디스플레이되는 사용자의 사용자 위치/사용자 프로파일에 따라 변할 수 있는, 동적으로 업데이트가능한 미디어 컨텐츠일 수 있다. 이러한 후자의 경우, 웹 페이지의 URL만을 사용하면 초기 웹 페이지와 상태 및 컨텐츠가 동일한 웹 페이지를 복원하기에 충분하지 않을 수 있다. 예를 들어, 주어진 URL에 대응하는 웹 페이지의 컨텐츠는 사용자 프로파일에 의존하거나 소스 미디어 서버에 의해 업데이트될 수 있다. 예를 들어, 키워드들에 기초하여 검색 엔진을 사용하여 웹 페이지들을 검색하면 사용자 프로파일 및/또는 사용자의 쿠키 및/또는 검색이 수행된 날짜에 의존하는 웹 페이지들의 리스트이 생성될 수 있다.In the disclosed method, the topic media content may be any media content displayed in a software application. For example, the media content is a "static" web page (including text, photos, videos, interactive features/tools, etc.) where the content remains the same for a given URL (Uniform Resource Location). Can be In this case, the topic media content can be played on the receiver device simply by loading the web page from the media server using the URL of the web page. Conversely, the topic media content may also be dynamically updatable media content for the same URL, in which the content may change over time or according to the user location/user profile of the user in which the content is displayed. In this latter case, if only the URL of the web page is used, it may not be sufficient to restore a web page whose state and content are the same as the initial web page. For example, the content of a web page corresponding to a given URL may depend on the user profile or may be updated by the source media server. For example, searching for web pages using a search engine based on keywords may generate a list of web pages depending on the user profile and/or the user's cookie and/or the date the search was performed.

또한, 개시된 방법에서, 기여 미디어 컨텐츠가 참조하는 토픽 미디어 컨텐츠의 일부는 예를 들어 웹 페이지와 연관된 2차원 좌표 시스템에서의 좌표들을 사용하여 식별될 수 있다. 그러나 수신자 장치의 디스플레이 화면의 크기 및/또는 해상도는 전송 장치와 상이할 수 있다: 따라서, 좌표 시스템은 완전히 상이하고 저장된 좌표들은 동일한 컨텐츠를 갖는 웹 페이지를 재생하기에 충분하지 않을 수 있다(적어도 시각적으로, 스크린 상의 레이아웃은 디스플레이 스크린마다 다를 수 있다). 또한, 소스 페이지의 URL을 사용하여 로딩된 웹 페이지는 웹 페이지가 디스플레이되어야 하는 타겟 장치의 유형(모바일 버전)에 따라 수정될 수 있다.Further, in the disclosed method, a portion of the topic media content referenced by the contributing media content may be identified using coordinates in, for example, a two-dimensional coordinate system associated with a web page. However, the size and/or resolution of the display screen of the recipient device may be different from that of the transmitting device: therefore, the coordinate system is completely different and the stored coordinates may not be sufficient to play a web page with the same content (at least visually). As such, the layout on the screen may be different for each display screen). In addition, the web page loaded using the URL of the source page may be modified according to the type (mobile version) of the target device on which the web page is to be displayed.

또한 공유할 웹 페이지의 적어도 일부에서 프라이버시 문제들이 발생할 수 있다. 예를 들어, 소셜 네트워크, 블로그, 마이크로블로깅 웹 사이트 상에서 사용자에게 표시되는 웹 페이지는 입력된 키워드들, 구독, 사용자 프로파일 및/또는 소셜 네트워크의 다른 사용자들과의 관계들에 의존하는 하나 이상의 미디어 객체들(예를 들어, 발행물들, 피드들, 메시지들, 검색 결과들 등)을 포함할 수 있다. 웹 페이지는 예를 들어 관련 사용자가 공유할 준비가 된 미디어 객체들 및 가입 사용자가 공유하고 싶지 않은 다른 미디어 항목들을 포함할 수 있다.Also, privacy issues can arise in at least some of the web pages to be shared. For example, a web page displayed to a user on a social network, blog, or microblogging website may be one or more media objects that depend on entered keywords, subscriptions, user profile and/or relationships with other users of the social network. May include (eg, publications, feeds, messages, search results, etc.). The web page may contain, for example, media objects ready to be shared by the relevant user and other media items that the subscribed user does not want to share.

한 가지 해결책은 공유할 웹 페이지의 스크린샷을 생성하거나 공유할 웹 페이지의 적어도 일부를 생성하는 것이다. 그러나 스크린샷은 이러한 스크린샷으로부터 시작하여 인터랙션 및/또는 내비게이션이 불가능한 한 웹 페이지의 "데드 카피"이다. 이 경우, 수신 장치는 인터랙션 컨텍스트를 복원할 수 없다.One solution is to take a screenshot of the web page to be shared, or to create at least part of the web page to be shared. However, a screenshot is a "dead copy" of a web page starting from these screenshots and, as long as no interaction and/or navigation is possible. In this case, the receiving device cannot restore the interaction context.

따라서, 내비게이션의 컨텍스트를 저장 및/또는 미디어 컨텐츠의 인터랙션 및/또는 내비게이션 컨텍스트를 보존하는 내비게이션의 컨텍스트를 복원할 필요가 있다.Accordingly, there is a need to restore the context of the navigation, which stores the context of the navigation and/or the interaction of the media content and/or the context of the navigation.

일반적으로, 일 양태에서, 본 발명은 내비게이션 컨텍스트를 복원하기 위한 방법에 관한 것이다. 상기 방법은 내비게이션 컨텍스트를 저장하는 단계로서, 상기 소프트웨어에 디스플레이된 제 1 미디어 컨텐츠에 액세스할 수 있게 하는 미디어 액세스 데이터를 저장하는 단계, 상기 제 1 미디어 컨텐츠에서, 하나 이상의 미디어 객체들의 세트를 검출하는 단계, 상기 하나 이상의 미디어 객체들의 세트에서, 제 1 사용자 인터페이스, UI, 윈도우에서 현재 가시적인 상기 제 1 미디어 컨텐츠의 제 1 부분에서 하나 이상의 관심있는 미디어 객체들의 세트를 식별하는 단계, 및 상기 하나 이상의 관심있는 미디어 객체들의 식별을 저장하는 단계를 포함하는, 상기 내비게이션 컨텍스트를 저장하는 단계를 포함한다. 상기 방법은 상기 내비게이션 컨텍스트를 복원하는 단계로서, 상기 미디어 액세스 데이터에 기초하여 상기 제 1 미디어 컨텐츠를 로딩하는 단계, 상기 로딩된 제 1 미디어 컨텐츠에 기초하여 제 2 미디어 컨텐츠를 생성하는 단계로서, 상기 제 2 미디어 컨텐츠는 상기 식별된 하나 이상의 관심있는 미디어 객체들에 대응하는 하나 이상의 복원된 관심있는 미디어 객체의 세트를 포함하는, 상기 제 2 미디어 컨텐츠를 생성하는 단계, 및 제 2 UI 윈도우에서 현재 가시적인 제 2 부분이 상기 하나 이상의 복원된 관심있는 미디어 객체들의 세트 중 적어도 하나의 복원된 관심있는 미디어 객체를 포함하도록 상기 제 2 미디어 컨텐츠를 디스플레이하는 단계를 포함하는, 상기 내비게이션 컨텍스트를 복원하는 단계를 포함한다.In general, in one aspect, the present invention relates to a method for restoring a navigation context. The method includes storing a navigation context, storing media access data that enables access to a first media content displayed in the software, detecting, in the first media content, a set of one or more media objects. Identifying, in the set of one or more media objects, a set of one or more media objects of interest in a first user interface, a UI, a first portion of the first media content currently visible in a window, and the one or more And storing the navigation context, including storing the identification of media objects of interest. The method includes restoring the navigation context, loading the first media content based on the media access data, generating second media content based on the loaded first media content, the method comprising: The second media content comprises a set of one or more restored media objects of interest corresponding to the identified one or more media objects of interest, and is currently visible in a second UI window. Restoring the navigation context, including displaying the second media content such that the second portion includes at least one restored media object of interest from the set of one or more restored media objects of interest. Include.

제 2 양태에 따르면, 본 발명은 내비게이션 컨텍스트를 복원하기 위한 방법에 관한 것이다. 상기 방법은, 내비게이션 컨텍스트 데이터를 획득하는 단계로서, 내비게이션 컨텍스트 데이터는, 제 1 미디어 컨텐츠로의 액세스를 가능하게 하는 미디어 액세스 데이터로서, 상기 제 1 미디어 컨텐츠는 하나 이상의 미디어 객체들의 세트를 포함하는, 상기 미디어 액세스 데이터, 및 탐색 동안 제 1 사용자 인터페이스 UI 윈도우에서 상기 제 1 미디어 컨텐츠의 제 1 부분에 디스플레이된 하나 이상의 관심있는 미디어 객체들의 세트의 식별을 포함하는, 상기 내비게이션 컨텍스트 데이터를 획득하는 단계를 포함한다. 상기 방법은 상기 내비게이션 컨텍스트를 복원하는 단계로서, 상기 미디어 액세스 데이터에 기초하여 상기 제 1 미디어 컨텐츠를 로딩하는 단계, 상기 로딩된 제 1 미디어 컨텐츠에 기초하여 제 2 미디어 컨텐츠를 생성하는 단계로서, 상기 제 2 미디어 컨텐츠는 상기 식별된 하나 이상의 관심있는 미디어 객체들에 대응하는 하나 이상의 복원된 관심있는 미디어 객체의 세트를 포함하는, 상기 로딩된 제 1 미디어 컨텐츠에 기초하여 제 2 미디어 컨텐츠를 생성하는 단계, 및 제 2 UI 윈도우에서 현재 가시적인 제 2 부분이 상기 하나 이상의 복원된 관심있는 미디어 객체들의 세트 중 적어도 하나의 복원된 관심있는 미디어 객체를 포함하도록 상기 제 2 미디어 컨텐츠를 디스플레이하는 단계를 포함하는, 상기 내비게이션 컨텍스트를 복원하는 단계를 더 포함한다.According to a second aspect, the present invention relates to a method for restoring a navigation context. The method comprises obtaining navigation context data, wherein the navigation context data is media access data enabling access to a first media content, the first media content comprising a set of one or more media objects, Obtaining the media access data and the navigation context data comprising identification of a set of one or more media objects of interest displayed in a first portion of the first media content in a first user interface UI window during navigation. Include. The method includes restoring the navigation context, loading the first media content based on the media access data, generating second media content based on the loaded first media content, the method comprising: Generating second media content based on the loaded first media content, wherein the second media content comprises a set of one or more reconstructed media objects of interest corresponding to the identified one or more media objects of interest And displaying the second media content such that a second portion currently visible in a second UI window includes at least one restored media object of interest from among the set of the one or more restored media objects of interest. And restoring the navigation context.

제 3 양태에 따르면, 본 발명은 소프트웨어의 내비게이션 컨텍스트를 복원하기 위한 방법에 관한 것으로, 상기 방법은, 상기 소프트웨어에 디스플레이된 제 1 미디어 컨텐츠에 액세스할 수 있게 하는 미디어 액세스 데이터를 수신자 장치로 전송하는 단계, 상기 제 1 미디어 컨텐츠에서, 하나 이상의 미디어 객체들의 세트를 검출하는 단계, 상기 하나 이상의 미디어 객체들의 세트에서, 제 1 사용자 인터페이스, UI, 윈도우에서 현재 가시적인 상기 제 1 미디어 컨텐츠의 제 1 부분에서 하나 이상의 관심있는 미디어 객체들의 세트를 식별하는 단계, 상기 하나 이상의 관심있는 미디어 객체들의 식별을 상기 수신자 장치에 전송하는 단계, 및 상기 내비게이션 컨텍스트를 상기 수신자 장치 상에서 복원하는 단계를 포함한다.According to a third aspect, the present invention relates to a method for restoring a navigation context of software, the method comprising: transmitting media access data to a recipient device to enable access to a first media content displayed on the software. Step, in the first media content, detecting a set of one or more media objects, in the set of one or more media objects, a first portion of the first media content currently visible in a first user interface, UI, window Identifying a set of one or more media objects of interest at, transmitting the identification of the one or more media objects of interest to the recipient device, and restoring the navigation context on the recipient device.

상기 내비게이션 텍스트를 복원하는 단계는, 상기 미디어 액세스 데이터에 기초하여 상기 제 1 미디어 컨텐츠를 로딩하는 단계, 상기 로딩된 제 1 미디어 컨텐츠에 기초하여 제 2 미디어 컨텐츠를 생성하는 단계로서, 상기 제 2 미디어 컨텐츠는 상기 식별된 하나 이상의 관심있는 미디어 객체들에 대응하는 하나 이상의 복원된 미디어 객체의 세트를 포함하는, 상기 제 2 미디어 컨텐츠를 생성하는 단계, 및 제 2 UI 윈도우에서 현재 가시적인 제 2 부분이 상기 하나 이상의 복원된 관심있는 미디어 객체들의 세트 중 적어도 하나의 복원된 관심있는 객체를 포함하도록 상기 제 2 미디어 컨텐츠를 디스플레이하는 단계를 포함한다.Restoring the navigation text may include loading the first media content based on the media access data, generating second media content based on the loaded first media content, the second media The content includes a set of one or more reconstructed media objects corresponding to the identified one or more media objects of interest, generating the second media content, and a second part currently visible in the second UI window And displaying the second media content to include at least one restored object of interest from the set of one or more restored media objects of interest.

제 4 양태에 따르면, 본 발명은 프로세서, 및 상기 프로세서에 동작가능하게 결합된 메모리를 포함하며, 상기 메모리는 상기 프로세서에 의해 실행될 때 상기 프로세서로 하여금 제 1, 제 2, 또는 제 3 양태에 따른 방법의 단계들을 수행하게 하는 컴퓨터 판독가능 명령어들을 포함하는, 전자 장치에 관한 것이다.According to a fourth aspect, the present invention includes a processor, and a memory operatively coupled to the processor, the memory causing the processor to cause the processor according to the first, second, or third aspect when executed by the processor. It relates to an electronic device comprising computer readable instructions for causing to perform steps of a method.

제 4 양태에 따르면, 본 발명은 컴퓨터에 의해 실행될 때 상기 컴퓨터로 하여금 제 1, 제 2, 또는 제 3 양태에 따른 방법의 단계들을 수행하게 하는 컴퓨터 판독가능 명령어들을 포함하는, 컴퓨터 프로그램 제품에 관한 것이다.According to a fourth aspect, the present invention relates to a computer program product comprising computer readable instructions that, when executed by a computer, cause the computer to perform steps of a method according to the first, second, or third aspect. will be.

제 1, 제 2, 또는 제 3 양태에 따른 방법의 추가 양상들 및 실시예들은 종속 항들에 의해 규정된다.Further aspects and embodiments of the method according to the first, second or third aspect are defined by the dependent claims.

첨부된 명세서와 관련하여 다음의 도면들을 참조함으로써 본 발명은 더 잘 이해될 것이며 그의 많은 양상들 및 장점들이 당업자에게 보다 명백해질 것이다:
도 1a는 하나 이상의 실시예들에 따른 미디어 컨텐츠를 공유하기 위한 시스템의 개략도이다;
도 1b는 하나 이상의 실시예들에 따른 전자 장치 및 컴퓨팅 서버의 개략도이다;
도 2a 내지 도 2b는 하나 이상의 실시예들에 따른 예시적인 방법의 흐름도를 각각 도시한다;
도 3a 내지 도 3b는 하나 이상의 실시예들에 따른 예시적인 방법의 흐름도를 각각 도시한다;
도 4a 내지 도 4c는 하나 이상의 실시예들에 따른 사용자 인터페이스들을 나타낸다;
도 5a 내지 도 5c는 하나 이상의 실시예들에 따른 사용자 인터페이스들을 나타낸다;
도 6a 내지 도 6c는 하나 이상의 실시예들에 따른 사용자 인터페이스들을 나타낸다;
도 7a 내지 도 7d는 하나 이상의 실시예들에 따른 사용자 인터페이스들을 나타낸다;
도 8a 내지 도 8c는 하나 이상의 실시예들에 따른 사용자 인터페이스들을 나타낸다.
The invention will be better understood and its many aspects and advantages will become more apparent to those skilled in the art by referring to the following figures in connection with the appended specification:
1A is a schematic diagram of a system for sharing media content in accordance with one or more embodiments;
1B is a schematic diagram of an electronic device and a computing server in accordance with one or more embodiments;
2A-2B each show a flowchart of an exemplary method according to one or more embodiments;
3A-3B each show a flowchart of an exemplary method according to one or more embodiments;
4A-4C illustrate user interfaces in accordance with one or more embodiments;
5A-5C illustrate user interfaces in accordance with one or more embodiments;
6A-6C illustrate user interfaces in accordance with one or more embodiments;
7A-7D illustrate user interfaces in accordance with one or more embodiments;
8A-8C illustrate user interfaces in accordance with one or more embodiments.

본 발명은 내비게이션 컨텍스트를 저장 및/또는 복원하기 위한 장치, 시스템 및 방법에 관한 것이다. 상이한 실시예들이 본 명세서에 개시된다.The present invention relates to an apparatus, system and method for storing and/or restoring a navigation context. Different embodiments are disclosed herein.

저장 및/또는 복원 방법은 US2017/214640A1에 기재된 바와 같이 사용자들 간에 미디어 컨텐츠를 공유하기 위한 시스템에 적용될 수 있다. 저장 및/또는 복원 방법은 수신자 전자 장치에 의해 재생되어야 하는 하나 이상의 미디어 컨텐츠의 전송을 암시하는 임의의 시스템에 적용될 수 있다.The storage and/or restoration method can be applied to a system for sharing media content between users as described in US2017/214640A1. The storage and/or restoration method may be applied to any system implying the transmission of one or more media content to be played by the recipient electronic device.

본 명세서에 개시된 구성요소들의 다른 장점들 및 다른 특징들은 당업자에게 보다 쉽게 명백해질 것이다. 도면들과 관련하여 취해진 특정한 바람직한 실시예들에 대한 이하의 상세한 설명은 본 기술의 대표적인 실시예들을 나타내며, 동일한 참조 번호들은 유사한 구조적 요소들을 나타낸다.Other advantages and other features of the components disclosed herein will become more readily apparent to those skilled in the art. The following detailed description of specific preferred embodiments taken in connection with the drawings indicates representative embodiments of the present technology, and like reference numerals indicate similar structural elements.

또한, 본 명세서의 교시는 다양한 형태들로 구현될 수 있고 본 명세서에 개시된 임의의 특정 구조 및/또는 기능은 단지 대표적인 것임이 명백해야 한다. 특히, 당업자는 본 명세서에 개시된 실시예가 임의의 다른 실시예와 독립적으로 구현될 수 있고 여러 실시예들이 다양한 방식으로 조합될 수 있고 상이한 실시예들의 하나 이상의 양상들이 다양한 방식들로 조합될 수 있다는 것을 이해할 것이다.In addition, it should be apparent that the teachings of this specification may be implemented in various forms and any specific structure and/or function disclosed herein is merely representative. In particular, those skilled in the art will recognize that the embodiments disclosed herein can be implemented independently of any other embodiment, various embodiments can be combined in various ways, and one or more aspects of different embodiments can be combined in various ways. I will understand.

본 발명은 하나 이상의 예시적인 실시예들에 따른 방법들, 시스템들, 및 컴퓨터 프로그램의 기능들, 엔진들, 블록도들 및 흐름도들을 참조하여 아래에 기재된다. 각각의 기재된 기능, 엔진, 블록도들의 블록들 및 흐름도들은 하드웨어, 소프트웨어, 펌웨어, 미들웨어, 마이크로코드, 또는 이들의 임의의 적절한 조합으로 구현될 수 있다. 소프트웨어로 구현되는 경우, 기능들, 엔진들, 블록도들의 블록들 및/또는 흐름도들은 컴퓨터 프로그램 명령들 또는 소프트웨어 코드로 구현될 수 있으며, 이는 컴퓨터-판독가능 미디어를 통해 저장 또는 전송되거나, 범용 컴퓨터, 특수 목적 컴퓨터 또는 기타 프로그램가능한 데이터 처리 장치 상으로 로딩되어 기계를 생성할 수 있고, 이로써 컴퓨터 또는 다른 프로그램가능한 데이터 처리 장치 상에서 실행되는 컴퓨터 프로그램 명령들 또는 소프트웨어 코드가 본 명세서에 기재된 기능들을 구현하기 위한 수단을 생성한다.The invention is described below with reference to methods, systems, and functions of a computer program, engines, block diagrams, and flow charts in accordance with one or more exemplary embodiments. The blocks and flow charts of each of the described function, engine, block diagrams may be implemented in hardware, software, firmware, middleware, microcode, or any suitable combination thereof. When implemented in software, functions, engines, blocks of block diagrams and/or flowcharts may be implemented as computer program instructions or software code, which may be stored or transmitted through computer-readable media, or may be stored on a general purpose computer. , Can be loaded onto a special purpose computer or other programmable data processing device to create a machine, whereby computer program instructions or software code executed on the computer or other programmable data processing device implement the functions described herein. Create means for

컴퓨터-판독가능 미디어의 실시예들은 컴퓨터 저장 미디어들 및 한 장소에서 또 다른 장소로의 컴퓨터 프로그램의 전송을 용이하게 하는 임의의 미디어들을 포함하는 통신 미디어들을 포함하지만, 이에 제한되지는 않는다. 구체적으로, 본 명세서에 기재된 실시예들을 수행하기 위한 소프트웨어 명령들 또는 컴퓨터 판독가능 프로그램 코드는 하나 이상의 저장 미디어들을 포함하는 로컬 또는 원격 저장 장치의 비일시적 컴퓨터 판독가능 미디어 상에 일시적으로 또는 영구적으로, 전체적으로 또는 부분적으로 저장될 수 있다.Embodiments of computer-readable media include, but are not limited to, computer storage media and communication media including any media that facilitate transfer of a computer program from one place to another. Specifically, software instructions or computer-readable program code for performing the embodiments described herein are temporarily or permanently on a non-transitory computer-readable media of a local or remote storage device including one or more storage media, It can be stored in whole or in part.

본 명세서에서 사용되는 바와 같이, 컴퓨터 저장 미디어는 컴퓨터에 의해 판독, 기록 또는 더 일반적으로 액세스될 수 있는 임의의 물리적 미디어들일 수 있다. 컴퓨터 저장 미디어들의 예들은 플래시 드라이브 또는 다른 플래시 메모리 장치들(예를 들어, 메모리 키들, 메모리 스틱들, 키 드라이브), CD-ROM 또는 기타 광학 스토리지, DVD, 자기 디스크 스토리지 또는 기타 자기 스토리지 장치들, 솔리드 스테이트 메모리, 메모리 칩, RAM, ROM, EEPROM, 스마트 카드들, RDBMS(Relational Database Management System), 전통적인 데이터베이스, 또는 컴퓨터 프로세서에 의해 판독될 수 있는 명령들 또는 데이터 구조들의 형태로 프로그램 코드를 운반 또는 저장하는 데 사용될 수 있는 임의의 다른 적절한 미디어를 포함하나, 이에 제한되지 않는다. 또한, 라우터, 게이트웨이, 서버, 또는 기타 전송 장치, 유선(동축 케이블, 파이버, 트위스트 페어, DSL 케이블) 또는 무선(적외선, 라디오, 셀룰러, 마이크로파)을 포함하는 다양한 형태들의 컴퓨터-판독가능 미디어들이 컴퓨터에 명령들을 전송하거나 전달하기 위해 사용될 수 있다. 상기 명령들은 어셈블리, C, C++, Basic, SQL, MySQL, HTML, PHP, Python, Java, Javascript 등을 포함하지만 이에 국한되지 않는 임의의 컴퓨터-프로그래밍 언어로부터의 코드를 포함할 수 있다.As used herein, computer storage media can be any physical media that can be read, written, or more generally accessed by a computer. Examples of computer storage media include flash drives or other flash memory devices (e.g., memory keys, memory sticks, key drives), CD-ROM or other optical storage, DVD, magnetic disk storage or other magnetic storage devices, Carrying program code in the form of solid state memory, memory chips, RAM, ROM, EEPROM, smart cards, RDBMS (Relational Database Management System), traditional databases, or instructions or data structures that can be read by a computer processor or Includes, but is not limited to, any other suitable media that can be used to store. In addition, various types of computer-readable media including routers, gateways, servers, or other transmission devices, wired (coaxial cables, fiber, twisted pair, DSL cables) or wireless (infrared, radio, cellular, microwave) It can be used to send or convey commands to. The above instructions may include code from any computer-programming language, including but not limited to assembly, C, C++, Basic, SQL, MySQL, HTML, PHP, Python, Java, Javascript, and the like.

도면들을 참조하면, 유사한 숫자들은 여러 도면들에 걸쳐 유사한 부분들을 나타내며, 도 1은 본 명세서에 기재된 다양한 기술들 및 기법들이 구현될 수 있는 예시적인 시스템(100)을 도시한다.With reference to the drawings, like numbers indicate like parts across the various drawings, and FIG. 1 shows an exemplary system 100 in which various techniques and techniques described herein may be implemented.

시스템(100)은 하나 이상의 컴퓨팅 서버들(103A 내지 103E) 및 네트워크(105)를 통해 서로 작동가능하고 통신가능하게 결합된 복수의 전자 장치들(104A 내지 104C)(예를 들어, 사용자 장치들)을 포함한다.System 100 includes one or more computing servers 103A-103E and a plurality of electronic devices 104A-104C (e.g., user devices) operatively and communicatively coupled to each other via a network 105. Includes.

네트워크(105)는 임의의 데이터 전송 네트워크, 예를 들어, 유선(동축 케이블, 파이버, 트위스트 페어, DSL 케이블 등) 또는 무선(라디오, 적외선, 셀룰러, 마이크로파 등) 네트워크, LAN(local area network), IAN(internet area network), 인터넷과 같은 MAN(metropolitan area network) 또는 WAN(wide area network), 공용 또는 개인 네트워크, VPN(virtual private network), 데이터 전송 기능들이 있는 통신 네트워크, Wi-Fi 또는 Bluetooth 셀과 같은 단일 접속 지점이 있는 단일 라디오 셀 등일 수 있다.Network 105 is any data transmission network, for example, a wired (coaxial cable, fiber, twisted pair, DSL cable, etc.) or wireless (radio, infrared, cellular, microwave, etc.) network, a local area network (LAN), Internet area network (IAN), metropolitan area network (MAN) or wide area network (WAN) such as the Internet, public or private network, virtual private network (VPN), telecommunication network with data transfer functions, Wi-Fi or Bluetooth cell It may be a single radio cell with a single point of access, such as.

각 전자 장치(104A 내지 104C)는 예를 들어 데스크탑 개인용 컴퓨터(PC), 랩탑, 개인 휴대 정보 단말기(PDA), 스마트 폰의 형태로 단일 하드웨어 장치로서 구현될 수 있거나 유선 및/또는 무선 세그먼트들을 갖는, 통신 링크에 의해 서로 결합된 별도의 상호접속된 하드웨어 장치들 상에 구현될 수 있다.Each electronic device 104A-104C may be implemented as a single hardware device in the form of, for example, a desktop personal computer (PC), laptop, personal digital assistant (PDA), smart phone, or having wired and/or wireless segments. , May be implemented on separate interconnected hardware devices coupled to each other by a communication link.

각 전자 장치(104A 내지 104C)는 일반적으로 운영 체제의 제어 하에 작동하며 다양한 컴퓨터 소프트웨어 애플리케이션들, 컴포넌트들, 프로그램들, 객체들, 모듈들, 데이터 구조들 등을 실행하거나 이에 의존한다.Each electronic device 104A-104C generally operates under the control of an operating system and executes or relies on various computer software applications, components, programs, objects, modules, data structures, and the like.

도 1b에 개략적으로 나타낸 바와 같이, 하나 이상의 실시예들에서, 전자 장치(104A 내지 104C)는 프로세서(110), 메모리(111), 하나 이상의 컴퓨터 저장 미디어들(112), 입/출력 인터페이스들(예를 들어, USB 인터페이스들 등과 같은 장치 인터페이스들, 이더넷 인터페이스들 등과 같은 네트워크 인터페이스들)와 같은 다른 연관된 하드웨어, 및 하나 이상의 컴퓨터 저장 미디어들(112)을 읽고 쓰기 위한 미디어 드라이브(113)를 포함한다.As schematically shown in FIG. 1B, in one or more embodiments, the electronic devices 104A-104C include a processor 110, a memory 111, one or more computer storage media 112, input/output interfaces ( For example, device interfaces such as USB interfaces, network interfaces such as Ethernet interfaces, etc.), and a media drive 113 for reading and writing one or more computer storage media 112. .

전자 장치(104A 내지 104C)의 메모리(111)는 RAM (random access memory), 캐시 메모리, 비휘발성 메모리, 백업 메모리(예를 들어, 프로그램가능한 또는 플래시 메모리들), 판독-전용 메모리들, 또는 이들의 임의의 조합일 수 있다. 전자 장치(104A 내지 104C)의 프로세서(110)는 적어도 하나의 하드웨어-기반 프로세서 또는 프로세싱 코어를 포함하는 임의의 적합한 마이크로프로세서, 집적 회로, 또는 중앙 프로세서(CPU)일 수 있다.The memory 111 of the electronic devices 104A-104C is a random access memory (RAM), a cache memory, a nonvolatile memory, a backup memory (e.g., programmable or flash memories), read-only memories, or these May be any combination of. Processor 110 of electronic devices 104A-104C may be any suitable microprocessor, integrated circuit, or central processor (CPU) including at least one hardware-based processor or processing core.

하나 이상의 실시예들에서, 전자 장치(104A 내지 104C)의 각 컴퓨터 저장 미디어 또는 미디어들(112)은 프로세서(110)에 의해 실행될 때 전자 장치(104A 내지 104C)가 전자 장치(104A 내지 104C)에 대해 본 명세서에 기재된 하나 이상의 방법을 수행하게 하는 컴퓨터 프로그램 명령들을 포함할 수 있다. 전자 장치(104A 내지 104C)의 프로세서(110)는, 프로세서에 의해 실행될 때 프로세서로 하여금 전자 장치(104A 내지 104C)에 대해 본 명세서에 기재된 방법의 단계들을 수행하도록 하는 컴퓨터 프로그램 명령들 또는 소프트웨어 코드를 저장, 판독 및/또는 로딩하도록 상기 하나 이상의 컴퓨터 저장 미디어들(112)에 액세스하도록 구성될 수 있다. 전자 장치(104A 내지 104C)의 프로세서(110)는, 예를 들어 컴퓨터 프로그램 명령들을 로딩하고 컴퓨터 프로그램 명령들의 실행 동안 생성된 데이터를 저장하도록, 전자 장치(104A 내지 104C)에 대해 본 명세서에 기재된 방법의 단계들을 실행할 때 전자 장치(104A 내지 104C)의 메모리(111)를 사용하도록 구성될 수 있다. In one or more embodiments, each of the computer storage media or media 112 of the electronic devices 104A-104C, when executed by the processor 110, allows the electronic devices 104A-104C to connect to the electronic devices 104A-104C. Computer program instructions that cause one or more of the methods described herein to be performed. The processor 110 of the electronic devices 104A-104C, when executed by the processor, is configured to generate computer program instructions or software code that, when executed by the processor, cause the processor to perform the steps of the methods described herein on the electronic devices 104A-104C. It may be configured to access the one or more computer storage media 112 for storage, reading and/or loading. The processor 110 of the electronic devices 104A-104C, for example, to load computer program instructions and store data generated during execution of the computer program instructions, the method described herein for the electronic devices 104A-104C. It may be configured to use the memory 111 of the electronic devices 104A to 104C when executing the steps of.

또한, 각 전자 장치(104A 내지 104C)는 일반적으로 외부적으로 정보를 통신하기 위한 다수의 입력들 및 출력들을 수신한다. 사용자(101A 내지 101C) 또는 운영자와의 인터페이스를 위해, 전자 장치(104A 내지 104C)는 일반적으로 하나 이상의 사용자 입력/출력 장치들, 예를 들어 키보드, 포인팅 장치, 디스플레이, 프린터 등을 포함하는 사용자 인터페이스(114)를 포함한다. 그렇지 않으면, 사용자 입력은, 하나 이상의 외부 컴퓨터, 예를 들어 하나 이상의 전자 장치(104A 내지 104C) 또는 다른 컴퓨팅 서버들(103A 내지 103E)로부터, 예를 들어 네트워크(105)에 결합된 네트워크 인터페이스를 통해 수신될 수 있다.In addition, each of the electronic devices 104A to 104C generally receives a number of inputs and outputs for communicating information externally. For interfacing with users 101A-101C or an operator, electronic devices 104A-104C generally include one or more user input/output devices, e.g. a keyboard, pointing device, display, printer, etc. It includes (114). Otherwise, user input is from one or more external computers, for example one or more electronic devices 104A-104C or other computing servers 103A-103E, for example via a network interface coupled to the network 105. Can be received.

도 1a로 되돌아가면, 각 컴퓨팅 서버(103A 내지 103E)는 단일 하드웨어 장치로서 구현될 수 있거나, 유선 및/또는 무선 세그먼트들을 갖는 통신 링크에 의해 서로 접속된 별도의 상호접속된 하드웨어 장치들 상에 구현될 수 있다. 각 컴퓨팅 서버(103A 내지 103E)는 클라우드 컴퓨팅 환경 내에서 구현될 수 있다.Returning to Fig. 1A, each computing server 103A-103E may be implemented as a single hardware device, or on separate interconnected hardware devices connected to each other by a communication link having wired and/or wireless segments. Can be. Each of the computing servers 103A to 103E may be implemented in a cloud computing environment.

하나 이상의 실시예들에서, 컴퓨팅 서버들(103A 내지 103E)의 세트는 적어도 3개의 미디어 서버들(103A 내지 103C), 데이터베이스 서버(103D) 및 프론트-엔드 서버(103E)를 포함한다.In one or more embodiments, the set of computing servers 103A-103E includes at least three media servers 103A-103C, a database server 103D and a front-end server 103E.

각 컴퓨팅 서버(103A 내지 103E)는 일반적으로 운영 체제의 제어 하에서 작동하고 다양한 컴퓨터 소프트웨어 애플리케이션들, 컴포넌트들, 프로그램들, 객체들, 모듈들, 데이터 구조들 등을 실행하거나 이에 의존한다.Each computing server 103A-103E generally operates under the control of an operating system and executes or relies on various computer software applications, components, programs, objects, modules, data structures, and the like.

도 1b에 개략적으로 도시된 바와 같이, 하나 이상의 실시예들에서, 각 컴퓨팅 서버(103A 내지 103E)는 프로세서(120), 메모리(121), 하나 이상의 컴퓨터 저장 미디어들(122), 및 입력/출력 인터페이스들(예를 들어, USB 인터페이스들 등과 같은 장치 인터페이스들, 이더넷 인터페이스들 등과 같은 네트워크 인터페이스들), 하나 이상의 컴퓨터 저장 미디어들(122)을 판독하고 쓰기 위한 미디어 드라이브(123)와 같은 다른 연관된 하드웨어를 포함한다.1B, in one or more embodiments, each computing server 103A-103E includes a processor 120, a memory 121, one or more computer storage media 122, and input/output. Interfaces (e.g., device interfaces such as USB interfaces, network interfaces such as Ethernet interfaces, etc.), other associated hardware such as media drive 123 for reading and writing one or more computer storage media 122 Includes.

컴퓨팅 서버(103A 내지 103E)의 메모리(121)는 RAM (random access memory), 캐시 메모리, 비휘발성 메모리, 백업 메모리(예를 들어, 프로그램가능한 또는 플래시 메모리들), 판독-전용 메모리들, 또는 이들의 임의의 조합일 수 있다. 전자 장치(103A 내지 103E)의 프로세서(120)는 적어도 하나의 하드웨어-기반 프로세서 또는 프로세싱 코어를 포함하는 임의의 적합한 마이크로프로세서, 집적 회로, 또는 중앙 프로세서(CPU)일 수 있다.The memory 121 of the computing servers 103A-103E may include random access memory (RAM), cache memory, nonvolatile memory, backup memory (e.g., programmable or flash memories), read-only memories, or these May be any combination of. Processor 120 of electronic devices 103A-103E may be any suitable microprocessor, integrated circuit, or central processor (CPU) including at least one hardware-based processor or processing core.

하나 이상의 실시예들에서, 컴퓨팅 서버(103A 내지 103E)의 각 컴퓨터 저장 미디어 또는 미디어들(122)은 프로세서(120)에 의해 실행될 때 컴퓨팅 서버(103A 내지 103E)가 컴퓨팅 서버(103A 내지 103E)에 대해 본 명세서에 기재된 하나 이상의 방법을 수행하게 하는 컴퓨터 프로그램 명령들을 포함할 수 있다. 컴퓨팅 서버(103A 내지 103E)의 프로세서(120)는, 프로세서에 의해 실행될 때 프로세서로 하여금 컴퓨팅 서버(103A 내지 103E)에 대해 본 명세서에 기재된 방법의 단계들을 수행하도록 하는 컴퓨터 프로그램 명령들 또는 소프트웨어 코드를 저장, 판독 및/또는 로딩하도록 상기 하나 이상의 컴퓨터 저장 미디어들(112)에 액세스하도록 구성될 수 있다. 컴퓨팅 서버(103A 내지 103E)의 프로세서(120)는, 예를 들어 컴퓨터 프로그램 명령들을 로딩하고 컴퓨터 프로그램 명령들의 실행 동안 생성된 데이터를 저장하도록, 컴퓨팅 서버(103A 내지 103E)에 대해 본 명세서에 기재된 방법의 단계들을 실행할 때 컴퓨팅 서버(103A 내지 103E)의 메모리(121)를 사용하도록 구성될 수 있다.In one or more embodiments, each of the computer storage media or media 122 of the computing servers 103A-103E, when executed by the processor 120, the computing servers 103A-103E to the computing servers 103A-103E. Computer program instructions that cause one or more of the methods described herein to be performed. The processor 120 of the computing servers 103A-103E, when executed by the processor, may contain computer program instructions or software code that, when executed by the processor, cause the processor to perform the steps of the methods described herein on the computing servers 103A-103E. It may be configured to access the one or more computer storage media 112 for storage, reading and/or loading. The processor 120 of the computing servers 103A-103E, the method described herein for the computing servers 103A-103E, for example to load computer program instructions and store data generated during execution of the computer program instructions. It can be configured to use the memory 121 of the computing servers 103A to 103E when executing the steps of.

각 전자 장치(104A 내지 104C)는 네트워크(105)를 통해 하나 이상의 컴퓨팅 서버들(103A 내지 103E)에 작동가능하게 접속된다. 각 전자 장치(104A 내지 104C)는 컴퓨팅 서버들(103A 내지 103E) 중 적어도 하나와 적어도 하나의 통신 링크를 통해 통신하도록 구성된다.Each electronic device 104A-104C is operatively connected to one or more computing servers 103A-103E via a network 105. Each electronic device 104A to 104C is configured to communicate with at least one of the computing servers 103A to 103E through at least one communication link.

하나 이상의 실시예들에서, 각 전자 장치(104A 내지 104C)는 전자 장치의 프로세서에 의해 실행될 때 프로세서로 하여금 전자 장치들(104A 내지 104C) 중 임의의 것에 대해 본 명세서에 기재된 방법 단계들을 수행하게 하는 소프트웨어 애플리케이션(106)("클라이언트 애플리케이션(106)"이라고도 지칭됨)의 컴퓨터 프로그램 명령들을 실행한다.In one or more embodiments, each electronic device 104A-104C, when executed by the processor of the electronic device, causes the processor to perform the method steps described herein on any of the electronic devices 104A-104C. Execute computer program instructions of the software application 106 (also referred to as "client application 106").

하나 이상의 실시예들에서, 컴퓨팅 서버(103E)는 컴퓨팅 서버(103E) 중 하나의 프로세서에 의해 실행될 때 이러한 프로세서로 하여금 컴퓨팅 서버(103E) 중 하나에 대해 본 명세서에 기재된 방법 단계들을 수행하도록 하는 서버 소프트웨어 애플리케이션(107)("서버 애플리케이션(107)"으로도 지칭됨)의 컴퓨터 프로그램 명령들을 실행하도록 구성된다. In one or more embodiments, computing server 103E is a server that, when executed by one of computing servers 103E, causes such processor to perform the method steps described herein on one of computing servers 103E. It is configured to execute computer program instructions of the software application 107 (also referred to as "server application 107").

하나 이상의 실시예들에서, 서버 애플리케이션(107)은 프론트-엔드 서버(103E)에 의해 실행되며, 이는 서버 애플리케이션(107)에 대해 본 명세서에 기재된 방법의 단계들을 구현하도록 그 자체가 컴퓨팅 서버들(103C 및 103D) 중 적어도 하나에 작동적으로 접속된다.In one or more embodiments, the server application 107 is executed by the front-end server 103E, which itself is used to implement the steps of the method described herein for the server application 107. 103C and 103D).

클라이언트 소프트웨어 애플리케이션(106) 및 서버 소프트웨어 애플리케이션(107)의 각 인스턴스는 적어도 하나의 통신 링크를 통해 클라이언트/서버 모드에서 통신하도록 서로 작동가능하게 결합되도록 구성된다. 클라이언트 소프트웨어 애플리케이션(106)과 서버 소프트웨어 애플리케이션(107) 간의 통신 링크는 임의의 적절한 통신 프로토콜을 사용할 수 있다. 예를 들어, SOAP(simple object access protocol)와 같은 웹 서비스 통신 프로토콜과 같은 HTTP(Hyper Text Transfer) 기반 프로토콜이 사용될 수 있다. 임의의 다른 프로토콜, 예를 들어, 독점 프로토콜이 사용될 수 있다.Each instance of the client software application 106 and the server software application 107 is configured to be operatively coupled to each other to communicate in a client/server mode over at least one communication link. The communication link between the client software application 106 and the server software application 107 may use any suitable communication protocol. For example, a HTTP (Hyper Text Transfer) based protocol such as a web service communication protocol such as SOAP (simple object access protocol) may be used. Any other protocol can be used, for example a proprietary protocol.

하나 이상의 실시예들에서, 전자 장치(104A 내지 104C)의 소프트웨어 애플리케이션(106)은 내비게이션 컨텍스트(들)을 저장 및 복원하기 위한 방법을 구현하도록 서버 애플리케이션(107)에 작동가능하게 접속된다. 소프트웨어 애플리케이션(106)은 서버 애플리케이션(107)과 메시지들을 통해 통신하기 위한 컴퓨터 프로그램 명령들을 포함한다. 하나 이상의 실시예들에서, 소프트웨어 애플리케이션(106)은 메시지들을 생성, 서버 애플리케이션(107)으로 전송, 및 서버 애플리케이션(107)로부터 수신된 메시지들을 수신 및 처리하기 위한 컴퓨터 프로그램 명령들을 포함한다.In one or more embodiments, the software application 106 of the electronic device 104A-104C is operatively connected to the server application 107 to implement a method for storing and restoring the navigation context(s). The software application 106 includes computer program instructions for communicating via messages with the server application 107. In one or more embodiments, software application 106 includes computer program instructions for generating messages, sending to server application 107, and receiving and processing messages received from server application 107.

하나 이상의 실시예들에서, 소프트웨어 애플리케이션(106)은 예를 들어 월드 와이드 웹, 인트라넷, 인터넷 등을 디스플레이하고 탐색하기 위한 소프트웨어이다. 그러나, 본 설명은 미디어 컨텐츠를 디스플레이하기 위한 임의의 종류의 소프트웨어 애플리케이션에 적용가능하다.In one or more embodiments, the software application 106 is software for displaying and navigating the world wide web, intranet, Internet, and the like, for example. However, this description is applicable to any kind of software application for displaying media content.

하나 이상의 실시예들에서, 전자 장치(104A)의 소프트웨어 애플리케이션(106)의 사용자 인터페이스는 하나 이상의 미디어 컨텐츠를 생성 및/또는 선택하기 위한 적어도 하나의 사용자 인터페이스 항목을 포함할 수 있다. 예를 들어, 사용자 인터페이스는 하나 이상의 미디어 컨텐츠를 검색 및/또는 선택하기 위한 사용자 인터페이스의 디스플레이를 트리거링하기 위한 사용자 인터페이스 항목(버튼, 메뉴 등)을 포함할 수 있다. 예를 들어, 사용자 인터페이스는 미디어 컨텐츠를 생성하거나 가져오기 위한 툴바를 포함한다.In one or more embodiments, the user interface of the software application 106 of the electronic device 104A may include at least one user interface item for creating and/or selecting one or more media content. For example, the user interface may include user interface items (buttons, menus, etc.) for triggering display of the user interface for searching and/or selecting one or more media content. For example, the user interface includes a toolbar for creating or importing media content.

각 미디어 서버(103A 내지 103C)는 미디어 컨텐츠 및 연관된 메타데이터를 저장하기 위해 하나 이상의 미디어 컨텐츠 데이터베이스들(102A 내지 102C)에 작동가능하게 결합된다. 각 미디어 서버(103A 내지 103C)는 하나의 미디어 컨텐츠 데이터베이스(102A 내지 102C) 내에 저장된 미디어 컨텐츠에 대한 데이터 요청, 예를 들어, 하나의 미디어 컨텐츠 데이터베이스(102A 내지 102C) 내에 미디어 컨텐츠를 저장하기 위한 요청을 수신 및 처리하고, 하나의 미디어 컨텐츠 데이터베이스(102A 내지 102C) 내에 저장된 미디어 컨텐츠를 검색(retrieving), 검색(searching), 수정하기 위한 인터페이스를 제공한다.Each media server 103A-103C is operatively coupled to one or more media content databases 102A-102C to store media content and associated metadata. Each media server 103A to 103C requests data for media content stored in one media content database 102A to 102C, for example, a request for storing media content in one media content database 102A to 102C. It receives and processes, and provides an interface for retrieving, searching, and modifying media content stored in one media content database 102A to 102C.

각 미디어 서버(103A 내지 103C)는 임의의 웹 서버 애플리케이션, 원격 서버 애플리케이션, 클라우드의 스토리지 서버, 또는 보다 일반적으로는 미디어 컨텐츠를 저장 및 검색하고 하나 이상의 미디어 컨텐츠를 업로드 또는 각각 다운로드하기 위한 원격 장치로부터의 업로드 요청들 또는 각각 다운로드 요청들을 처리하도록 구성되는 임의의 소프트웨어 애플리케이션일 수 있다. 예를 들어, 미디어 서버(103A)는 모든 전자 장치들(104A 내지 104C)로부터 인터넷을 통해 액세스가능한 웹 서버이고, 미디어 서버(103B)는 클라우드 컴퓨팅 환경에서의 미디어 서버이며, 이는 전자 장치들(104A 내지 104C) 중 하나에 대해서만 액세스가능하다.Each media server 103A-103C is from any web server application, a remote server application, a storage server in the cloud, or more generally from a remote device for storing and retrieving media content and uploading or downloading one or more media content. May be any software application configured to process the respective download requests or upload requests. For example, the media server 103A is a web server accessible via the Internet from all electronic devices 104A to 104C, and the media server 103B is a media server in a cloud computing environment, which is the electronic devices 104A. To 104C).

하나 이상의 실시예들에서, 미디어 서버(103C)는 프론트-엔드 서버(103E)뿐만 아니라 전자 장치들(104A 내지 104C) 중 임의의 것으로부터 이용가능해야 하는 컨텐츠를 저장하기 위한 컨텐츠 전달 네트워크(CDN)로서 구현될 수 있다. 미디어 서버(103C)는 미디어 컨텐츠를 저장하는 데 사용되며, 이들은 이러한 미디어 컨텐츠가 전자 장치들(104A 내지 104C) 각각으로부터 액세스가능해야 할 때 전자 장치들(104A 내지 104C) 중 하나 또는 미디어 서버(103A 내지 103B) 중 하나 상에 저장된다.In one or more embodiments, the media server 103C is a content delivery network (CDN) for storing content that should be available from any of the electronic devices 104A-104C as well as the front-end server 103E. Can be implemented as The media server 103C is used to store media content, which is one of the electronic devices 104A to 104C or media server 103A when such media content should be accessible from each of the electronic devices 104A to 104C. To 103B).

본 발명의 맥락에서, 미디어 컨텐츠는 비디오 컨텐츠, 오디오 컨텐츠, 텍스트 컨텐츠, 이미지 컨텐츠, 그래픽 컨텐츠 또는 이들의 임의의 조합, 예를 들어, 웹 페이지 또는 멀티미디어 컨텐츠를 포함할 수 있다. 비디오 컨텐츠는 3D 컨텐츠, 입체 3D 비디오 컨텐츠, 2D 비디오 컨텐츠, 독립적으로 코딩된 이미지들의 리스트 등일 수 있다. 오디오 컨텐츠는 모노 오디오 컨텐츠, 스테레오 오디오 컨텐츠, 3D 오디오 컨텐츠 등을 포함할 수 있다. 미디어 컨텐츠는 예를 들어 JPEG, TIFF, MPEG, WAV, DOC, HTM, OBJ, DAE, FBX, DXF, X3D, MOV(QUICKTIME®) 등을 포함하는 임의의 형식으로 코딩될 수 있다.In the context of the present invention, media content may include video content, audio content, text content, image content, graphic content or any combination thereof, for example web pages or multimedia content. The video content may be 3D content, stereoscopic 3D video content, 2D video content, a list of independently coded images, and the like. The audio content may include mono audio content, stereo audio content, 3D audio content, and the like. Media content may be coded in any format including, for example, JPEG, TIFF, MPEG, WAV, DOC, HTM, OBJ, DAE, FBX, DXF, X3D, MOV (QUICKTIME®), and the like.

미디어 컨텐츠 데이터는 하나 이상의 데이터 파일들 내에서 인코딩될 수 있다. 예를 들어, 비디오 컨텐츠는 이미지들의 그룹으로서 인코딩될 수 있고, 각 이미지는 별도의 데이터 파일로 인코딩된다. Media content data may be encoded within one or more data files. For example, video content can be encoded as a group of images, and each image is encoded into a separate data file.

하나 이상의 실시예들에서, 제 1 미디어 컨텐츠(예를 들어, 웹 페이지)는 소스 전자 장치(예를 들어, 전자 장치(104A)) 상의 소프트웨어 애플리케이션(106)의 사용자 인터페이스(UI) 윈도우에 디스플레이된다. 소스 전자 장치의 사용자(101A)는 예를 들어 제 1 미디어 컨텐츠를 스크롤하거나, 트리거링 동작들 등에 의해 제 1 미디어 컨텐츠를 탐색하고 있다. 내비게이션 중 어떤 시점에서, 예를 들어, 주어진 인터랙션을 수행할 때, 사용자(101A)의 요청에 따라 또는 일부 사전결정된 조건이 충족될 때, 현재 디스플레이된 제 1 미디어 컨텐츠에 대한 내비게이션 컨텍스트를 규정하는 내비게이션 컨텍스트 데이터가 저장된다.In one or more embodiments, the first media content (e.g., web page) is displayed in a user interface (UI) window of the software application 106 on the source electronic device (e.g., electronic device 104A). . The user 101A of the source electronic device is searching for the first media content by scrolling the first media content or triggering operations, for example. At some point during the navigation, for example, when performing a given interaction, at the request of the user 101A, or when some predetermined condition is satisfied, a navigation that defines a navigation context for the currently displayed first media content The context data is saved.

하나 이상의 실시예들에서, 소프트웨어 애플리케이션(106)은 제 1 미디어 컨텐츠(예를 들어, 웹 페이지의 HTML 코드)의 컨텐츠를 분석하고, 제 1 미디어 컨텐츠에서 관심있는 하나 이상의 미디어 객체들을 검출하고, 검출된 관심있는 미디어 객체들에 기초하여 내비게이션 컨텍스트 데이터를 결정하도록 구성된다. 제 1 미디어 컨텐츠에 대한 내비게이션 컨텍스트의 복원은 검출된 관심있는 미디어 객체들에 기초하여 그리고 이러한 하나 이상의 관심있는 미디어 객체들을 복원하도록 수행된다.In one or more embodiments, the software application 106 analyzes the content of the first media content (e.g., HTML code of a web page), detects one or more media objects of interest in the first media content, and detects And determine navigation context data based on the media objects of interest. Restoration of the navigation context for the first media content is performed based on the detected media objects of interest and to restore such one or more media objects of interest.

미디어 객체는 텍스트, 사진, 비디오, 메뉴, 하이퍼링크, 그래픽, 문서의 미리보기, 아이콘, 버튼 등의 제 1 미디어 컨텐츠에 포함된 임의의 객체일 수 있다. 검출된 하나 이상의 미디어 객체들은 UI 윈도우에서 현재 가시적인(즉, 현재 디스플레이되는) 객체들이거나 현재 UI 윈도우에서 가시적이지 않은 객체들일 수 있다.The media object may be any object included in the first media content such as text, photo, video, menu, hyperlink, graphic, document preview, icon, button, etc. The detected one or more media objects may be objects that are currently visible (ie, currently displayed) in the UI window or objects that are not visible in the current UI window.

미디어 객체는 인터랙티브 미디어 객체 또는 비-인터랙티브 미디어 객체일 수 있다. 예를 들어 메뉴, 하이퍼링크 또는 버튼은 일반적인 인터랙티브 미디어 객체이다. 예를 들어, URL이 사진에 연계될 때 사진이 대화식으로 이루어질 수도 있다. 대화식 미디어 객체는 하나 이상의 인터랙션 기능들의 실행을 트리거하도록 구성될 수 있다.The media object may be an interactive media object or a non-interactive media object. For example, menus, hyperlinks, or buttons are common interactive media objects. For example, when a URL is associated with a photo, the photo may be made interactive. The interactive media object may be configured to trigger the execution of one or more interaction functions.

현재 디스플레이된 제 1 미디어 컨텐츠에 대한 내비게이션 컨텍스트를 규정하는 내비게이션 컨텍스트 데이터는 목적지 전자 장치(예를 들어, 전자 장치(104B)) 상에서 이러한 제 1 미디어 컨텐츠에 대한 내비게이션 컨텍스트를 복원하기 위해 사용될 수 있다. 목적지 전자 장치는 소스 전자 장치와 구별될 수 있거나 동일한 장치일 수 있다.The navigation context data defining a navigation context for the currently displayed first media content may be used to restore the navigation context for this first media content on the destination electronic device (eg, electronic device 104B). The destination electronic device may be distinguishable from the source electronic device or may be the same device.

하나 이상의 실시예들에서, 내비게이션 컨텍스트를 복원하기 위해, 제 1 미디어 컨텐츠를 적어도 부분적으로 재생하는 제 2 미디어 컨텐츠가 생성된다. 하나 이상의 관심있는 미디어 객체(들)는, (미디어 컨텐츠에 대한 동일한 관점에서) 현재 UI 윈도우의 가시적 컨텐츠가 내비게이션 컨텍스트가 저장된 때의 가시적 컨텐츠와 동일(또는 적어도 유사)하도록 제 2 미디어 컨텐츠에서 복원될 수 있다.In one or more embodiments, second media content is generated that at least partially plays the first media content to restore the navigation context. One or more media object(s) of interest may be restored from the second media content so that the visible content of the current UI window (from the same viewpoint of the media content) is the same (or at least similar) to the visible content when the navigation context is stored. I can.

하나 이상의 실시예들에서, 하나 이상의 휘발성 미디어 객체(들)가 제 2 미디어 컨텐츠에서 식별되고 복원될 수 있으며, 이로써 제 1 미디어 컨텐츠의 동적 상태(예를 들어, 컨텍스트에 민감한 컨텐츠)가 제 2 미디어 컨텐츠에서 복원된다. 따라서, 제 2 미디어 컨텐츠에서의 내비게이션은, 내비게이션 컨텍스트가 저장될 때 제 1 미디어 컨텐츠에서의 내비게이션과 동일한 컨텍스트 파라미터들로 수행될 수 있다. 휘발성 미디어 객체들은 내비게이션 컨텍스트에 의존하는 제 1 미디어 컨텐츠의 컨텐츠를 지칭한다. 휘발성 미디어 객체들은 주어진 미디어 액세스 데이터에 대해 하나 이상의 컨텍스트 파라미터들에 의존하여 가변, 수정, 존재/부재, 상이한 순서로 제시될 수 있는 미디어 객체들일 수 있다. 하나 이상의 실시예들에서, 컨텍스트 파라미터들은 사용자 위치, 사용자 쿠키, 사용자 프로파일, 사용자 권리 및/또는 현재 시간을 포함할 수 있다. 비휘발성 미디어 객체들은 컨텍스트 파라미터들에 의존하지 않는 제 1 미디어 컨텐츠의 영구 컨텐츠를 지칭할 수 있다. 비휘발성 미디어 객체들은 미디어 액세스 데이터를 사용하여 내비게이션과 독립적으로 검색될 수 있지만, 미디어 액세스 데이터만을 사용하여 휘발성 미디어 객체들을 검색하는 것이 불가능할 수 있다.In one or more embodiments, one or more volatile media object(s) may be identified and restored in the second media content, such that the dynamic state of the first media content (e.g., context sensitive content) is It is restored from the content. Therefore, the navigation in the second media content may be performed with the same context parameters as the navigation in the first media content when the navigation context is stored. Volatile media objects refer to the content of the first media content depending on the navigation context. Volatile media objects may be media objects that can be presented in a variable, modified, present/absent, different order depending on one or more context parameters for a given media access data. In one or more embodiments, context parameters may include user location, user cookie, user profile, user rights and/or current time. Non-volatile media objects may refer to permanent content of the first media content that does not depend on context parameters. Non-volatile media objects may be retrieved independently of navigation using media access data, but it may be impossible to retrieve volatile media objects using only media access data.

예를 들어 키워드들을 기반으로 검색 엔진을 사용하여 웹 페이지들을 검색하면 웹 링크들의 리스트가 생성될 수 있으며, 이러한 리스트은 검색이 사용자 프로파일 및/또는 사용자의 쿠키 및/또는 검색이 수행되는 날짜에 의존한다. 따라서, 검색 결과들, 결과들의 리스트 및 결과들이 제시되는 순서는 내비게이션 컨텍스트, 예를 들어 개인화 파라미터들(예를 들어, 사용자 프로파일, 사용자 위치 및/또는 사용자 쿠키) 및/또는 검색이 수행된 날짜에 의존하여 가변할 수 있다. 어느 경우에, 내비게이션 컨텍스트를 복원하기 위해, 웹 페이지에서의 모든 검색 결과들의 리소스 액세스 데이터 및 정렬된 결과 리스트는 동일한 순서로 검색 결과들을 구성하는 동일한 결과 리스트로 웹 페이지를 복원할 수 있게 컴퓨팅 서버(103E)에 의해 저장된다.For example, searching for web pages using a search engine based on keywords may generate a list of web links, which list depends on the user profile and/or the user's cookie and/or the date the search was performed. . Thus, the search results, the list of results and the order in which the results are presented are dependent on the navigation context, e.g. personalization parameters (e.g., user profile, user location and/or user cookie) and/or the date the search was performed Can be variable depending on In any case, in order to restore the navigation context, the resource access data and the sorted result list of all search results on the web page are used to restore the web page to the same result list constituting the search results in the same order. 103E).

예를 들어, 제품들을 판매하기 위한 웹 사이트 상에서, 검색에 의해 생성된 제품들의 리스트를 제시하기 위한 미디어 객체들은 휘발성 미디어 객체들로 식별될 수 있는 반면, 리스트 내의 항목에 의해 지시되는 제품 설명을 제시하기 위한 미디어 객체들은 비휘발성 미디어 객체들로 처리된다. 따라서, 미디어 객체들의 식별은 웹 사이트의 유형 또는 웹 애플리케이션의 유형에 적합하거나 웹 사이트에 특정적일 수 있다. 하나 이상의 실시예들에서, 페이지 내의 모든 미디어 객체들은 휘발성 미디어 객체들로 식별될 수 있다.For example, on a website for selling products, media objects for presenting a list of products created by a search can be identified as volatile media objects, while presenting a product description indicated by an item in the list. Media objects for use are treated as non-volatile media objects. Thus, the identification of media objects may be suitable for the type of web site or type of web application or may be web site specific. In one or more embodiments, all media objects within a page may be identified as volatile media objects.

제 2 미디어 컨텐츠의 레이아웃은 제 1 미디어 컨텐츠의 레이아웃과 동일하거나 상이할 수 있다. 하나 이상의 실시예들에서, 제 2 미디어 컨텐츠의 레이아웃은, 예를 들어 목적지 전자 장치의 디스플레이 스크린의 해상도 및/또는 크기에 적합하기 위해 제 1 미디어 컨텐츠의 레이아웃과 상이하다.The layout of the second media content may be the same as or different from the layout of the first media content. In one or more embodiments, the layout of the second media content is different from the layout of the first media content, for example to fit the resolution and/or size of the display screen of the destination electronic device.

하나 이상의 실시예들에서, 저장된 내비게이션 컨텍스트 메타데이터는 북마크를 생성할 때 미디어 컨텐츠 내에서 내비게이션 및/또는 인터랙션 컨텍스트의 복원을 가능하게 하는 북마크로서 사용될 수 있다. 하나 이상의 실시예들에서, 북마크는 특정 관점 및/또는 주어진 미디어 컨텐츠 내의 관심있는 하나 이상의 미디어 객체들을 지칭한다. 동일한 미디어 컨텐츠에 대해, 대응하는 내비게이션 컨텍스트의 복원을 가능하게 하기 위해 하나 이상의 이러한 북마크들이 저장될 수 있다. 하나 이상의 북마크들이 상이한 미디어 컨텐츠를 위해 저장될 수 있다.In one or more embodiments, the stored navigation context metadata may be used as a bookmark to enable restoration of the navigation and/or interaction context within the media content when generating the bookmark. In one or more embodiments, a bookmark refers to one or more media objects of interest within a particular perspective and/or given media content. For the same media content, one or more of these bookmarks may be stored to enable restoration of the corresponding navigation context. One or more bookmarks may be stored for different media content.

하나 이상의 실시예들에서, 내비게이션 컨텍스트 데이터(또는 북마크들)는 이러한 내비게이션 컨텍스트 데이터(또는 북마크들)를 상이한 사용자들/상이한 목적지 전자 장치들과 공유할 수 있도록 컴퓨팅 서버(103E) 상에 저장된다. 하나 이상의 실시예들에서, 내비게이션 컨텍스트 데이터(또는 북마크들)는 소스 전자 장치에 의해 국부적으로 저장되며, 복원을 위해 목적지 전자 장치로 추가로 전송될 수 있다. 내비게이션 컨텍스트 데이터(또는 북마크들)는 메모리, 데이터베이스, 소프트웨어와 연관된 구성 파일들 등에 저장될 수 있다.In one or more embodiments, the navigation context data (or bookmarks) is stored on the computing server 103E so that such navigation context data (or bookmarks) can be shared with different users/different destination electronic devices. In one or more embodiments, the navigation context data (or bookmarks) is stored locally by the source electronic device and may be further transmitted to the destination electronic device for restoration. Navigation context data (or bookmarks) may be stored in memory, a database, configuration files associated with software, and the like.

목적지 전자 장치의 사용자(101B)는 제 2 미디어 컨텐츠를 탐색할 수 있다. 하나 이상의 실시예들에서, 제 2 미디어 컨텐츠에서 인터랙티브 미디어 객체(들)와 연관된 인터랙션 기능이 복원된다.The user 101B of the destination electronic device may search for the second media content. In one or more embodiments, the interaction function associated with the interactive media object(s) in the second media content is restored.

도 2a는 하나 이상의 실시예들에 따른 내비게이션 컨텍스트를 저장하기 위한 방법의 흐름도를 나타낸다. 흐름도의 다양한 단계들이 순차적으로 제시되고 설명되지만, 당업자는 단계들 중 일부 또는 전부가 상이한 순서들로 실행될 수 있고, 결합되거나 생략될 수 있고, 단계들의 일부 또는 전부가 병렬로 실행될 수 있음을 이해할 것이다.2A shows a flow diagram of a method for storing a navigation context in accordance with one or more embodiments. While the various steps in the flowchart are presented and described sequentially, those skilled in the art will understand that some or all of the steps may be executed in different orders, may be combined or omitted, and some or all of the steps may be executed in parallel. .

방법 단계들은 본 명세서에 개시된 임의의 실시예에 따른 소스 전자 장치(예를 들어, 사용자(101A)의 전자 장치(104A)) 및 내비게이션 컨텍스트 데이터를 저장하기 위한 저장 장치에 의해 구현될 수 있다. 저장 장치는 소스 전자 장치 내에 포함되거나 별도의 장치일 수 있다. 하나 이상의 실시예들에서, 저장 장치는 컴퓨팅 서버(예를 들어, 프론트-엔드 서버(103E)), 데이터베이스(102A 내지 102B), 또 다른 전자 장치(104B 및 104C)일 수 있거나 그러한 장치 내에 포함될 수 있다.The method steps may be implemented by a source electronic device (eg, electronic device 104A of user 101A) and a storage device for storing navigation context data according to any embodiment disclosed herein. The storage device may be included in the source electronic device or may be a separate device. In one or more embodiments, the storage device may be a computing server (e.g., front-end server 103E), a database 102A-102B, another electronic device 104B and 104C, or be included within such a device. have.

하나 이상의 실시예들에서, 미디어 컨텐츠를 공유하기 위해, 소스 전자 장치(104A)의 디스플레이 스크린 상에 디스플레이된 미디어 컨텐츠는 컴퓨팅 서버(103E)를 통해 복수의 전자 장치들(104B 내지 104C)(즉, 목적지 전자 장치들)의 다른 전자 장치들로 전송되어야 한다. 컴퓨팅 서버(103E)는 미디어 액세스 데이터 및 연관된 메타데이터를 저장하기 위한 데이터베이스를 관리한다. 연관된 메타데이터는 내비게이션 컨텍스트가 복원될 수 있는 내비게이션 컨텍스트 메타데이터를 포함한다.In one or more embodiments, in order to share the media content, the media content displayed on the display screen of the source electronic device 104A is transmitted via the computing server 103E to a plurality of electronic devices 104B to 104C (i.e., Destination electronic devices) to other electronic devices. Computing server 103E manages a database for storing media access data and associated metadata. The associated metadata includes navigation context metadata from which the navigation context can be restored.

이하의 설명에서, 방법 단계들은 소스 전자 장치(104A)의 클라이언트 애플리케이션(106) 및 저장 장치로서 사용되는 프론트-엔드 서버(103E)의 서버 애플리케이션(107)에 의해 구현되지만, 임의의 다른 저장 장치 및 미디어 컨텐츠를 디스플레이하기 위한 임의의 다른 소프트웨어 애플리케이션에 적용가능하다.In the description below, the method steps are implemented by the client application 106 of the source electronic device 104A and the server application 107 of the front-end server 103E used as a storage device, but any other storage device and Applicable to any other software application for displaying media content.

단계(200)에서, 제 1 미디어 컨텐츠(M1)(예를 들어, 웹 페이지)는 소스 전자 장치(104A)의 디스플레이 스크린 상의 소프트웨어 애플리케이션(106)의 제 1 UI 윈도우(W1)에 디스플레이된다. 하나 이상의 실시예들에서, 제 1 미디어 컨텐츠(M1)의 제 1 부분만이 UI 윈도우에서 가시적이다. 하나 이상의 실시예들에서, 소프트웨어 애플리케이션(106)은 내비게이션 컨텍스트를 저장하는 프로세스를 시작하도록 구성된다. 프로세스는 예를 들어 주어진 인터랙션을 수행할 때, 사용자(101A)의 요청에 따라 또는 일부 사전결정된 조건이 충족될 때 시작될 수 있다.In step 200, the first media content M1 (eg, a web page) is displayed in the first UI window W1 of the software application 106 on the display screen of the source electronic device 104A. In one or more embodiments, only the first portion of the first media content M1 is visible in the UI window. In one or more embodiments, the software application 106 is configured to initiate a process of storing a navigation context. The process may be started, for example, when performing a given interaction, at the request of the user 101A, or when some predetermined condition is met.

단계(201)에서, 소프트웨어 애플리케이션(106)은 제 1 미디어 컨텐츠(M1)에 액세스할 수 있게 하는 미디어 액세스 데이터를 저장 장치(예를 들어, 컴퓨팅 서버(103E))에 전송하도록 구성된다. 미디어 액세스 데이터는 미디어 서버(103A, 103B, 및 103C)를 통해 제 1 미디어 컨텐츠에 액세스하기 위한 웹 페이지, 주소 및/또는 식별자로 액세스하기 위한 URL을 포함할 수 있다. 미디어 액세스 데이터는 제 1 미디어 컨텐츠(M1)를 인코딩하는 데이터를 포함할 수 있다. 미디어 액세스 데이터는 저장 장치(예를 들어, 컴퓨팅 서버(103E))에 의해 저장된다. 하나 이상의 실시예들에서, 내비게이션 컨텍스트 데이터는 수신된 미디어 액세스 데이터를 포함한다.In step 201, the software application 106 is configured to transmit media access data to a storage device (eg, computing server 103E) that allows access to the first media content M1. The media access data may include a web page for accessing the first media content through the media servers 103A, 103B, and 103C, an address and/or a URL for accessing with an identifier. The media access data may include data encoding the first media content M1. The media access data is stored by a storage device (eg, computing server 103E). In one or more embodiments, the navigation context data includes received media access data.

단계(205)에서, 소프트웨어 애플리케이션(106)은 UI 윈도우(W1)에 현재 디스플레이된 제 1 미디어 컨텐츠(M1)의 제 1 부분의 스크린샷을 수행하도록 구성된다.In step 205, the software application 106 is configured to take a screenshot of the first portion of the first media content M1 currently displayed in the UI window W1.

단계(206)에서, 소프트웨어 애플리케이션(106)은 저장 장치(예를 들어, 컴퓨팅 서버(103E))에 의한 저장을 위해 스크린샷을 저장 장치(예를 들어, 컴퓨팅 서버(103E))에 전송하도록 구성된다. 하나 이상의 실시예들에서, 내비게이션 컨텍스트 데이터는 수신된 스크린샷을 포함한다.In step 206, the software application 106 is configured to send the screenshot to the storage device (e.g., computing server 103E) for storage by the storage device (e.g., computing server 103E). do. In one or more embodiments, the navigation context data includes a received screenshot.

단계(210)에서, 소프트웨어 애플리케이션(106)은 제 1 미디어 컨텐츠(M1)에서 미디어 컨텐츠에 포함된 텍스트, 이미지들, 비디오들, 애니메이션들, 사운드, 애플릿들 및/또는 임의의 문서들, 아이콘, 버튼, 메뉴, 인터랙티브 객체들 등과 같은 하나 이상의 미디어 객체들의 세트를 식별하도록 구성된다. 웹 페이지의 경우, 미디어 객체들은 일반적으로 웹 페이지의 리소스들에 해당한다. 예를 들어, 웹 페이지의 경우, 웹 페이지의 코드(예를 들어, HTML 코드)는 웹 페이지의 웹 주소, 웹 페이지의 레이아웃, 및 웹 페이지의 미디어 객체들을 규정하는 리소스 데이터를 규정한다: 따라서 리소스들은 웹 페이지 데이터의 코드를 분석함으로써 식별될 수 있고 리소스 액세스 데이터는 웹 페이지의 코드로부터 추출될 수 있다.In step 210, the software application 106 includes text, images, videos, animations, sounds, applets and/or any documents, icons, and/or any documents contained in the media content in the first media content M1. Configured to identify a set of one or more media objects, such as buttons, menus, interactive objects, and the like. In the case of a web page, media objects generally correspond to resources of a web page. For example, in the case of a web page, the web page's code (e.g., HTML code) defines the web address of the web page, the layout of the web page, and resource data that defines the media objects of the web page: They can be identified by analyzing the code of the web page data and the resource access data can be extracted from the code of the web page.

미디어 객체들이 식별되는 입도는 제 1 미디어 컨텐츠에 사용되는 애플리케이션/요구들 또는 코딩 방식에 의존할 수 있다. 하나 이상의 실시예들에서, 미디어 객체는 하나 이상의 미디어 서브-객체들, 객체 컨테이너 또는 하나 이상의 미디어 객체들을 포함하는 객체들의 그룹, 계층 구조로 정렬된 하나 이상의 미디어 객체들 및 서브-객체들을 포함하는 미디어 객체들의 계층구조, 순서가 지정된 미디어 객체들의 목록 등을 포함하는 복합 미디어 객체일 수 있다. 예를 들어, 문서의 텍스트 및 연관된 픽처는 단일 미디어 객체로서 그룹화 및 처리되거나 별도로 처리 및 식별될 수 있다.The granularity by which media objects are identified may depend on the application/requirements or coding scheme used for the first media content. In one or more embodiments, the media object is one or more media sub-objects, an object container or a group of objects comprising one or more media objects, one or more media objects arranged in a hierarchical structure, and a media comprising sub-objects. It may be a composite media object including a hierarchical structure of objects, a list of ordered media objects, and the like. For example, the text and associated pictures of a document can be grouped and processed as a single media object or separately processed and identified.

하나 이상의 실시예들에서, 소프트웨어 애플리케이션(106)은 소스 전자 장치(104A)의 사용자(101A)로 하여금 사용자가 공유하고 싶지 않은 하나 이상의 미디어 객체들을 식별하고 배제하게 하도록 구성된다. 예를 들어, 관심있는 하나 이상의 미디어 객체들의 세트의 일부가 아닌 미디어 객체들은 배제된다. 또 다른 예에서, 사용자(101A)는 하나의 미디어 객체를 선택하고 다른 미디어 객체들이 배제되도록 요청하기 위해 일부 사전결정된 동작을 수행할 수 있다. 하나 이상의 실시예들에서, 하나 이상의 배제된 미디어 객체들은 UI 윈도우로부터 희미해지거나(예를 들어, 후술되는 도 8a 내지 도 8b 참조), 어두워지거나, 또는 제거되어, 배제에 대해 사용자(101A)에게 피드백을 제공할 수 있다. 하나 이상의 실시예들에서, 배제된 하나 이상의 미디어 객체들을 제거하기 위해 하나 이상의 미디어 객체들의 세트가 업데이트된다.In one or more embodiments, the software application 106 is configured to cause the user 101A of the source electronic device 104A to identify and exclude one or more media objects that the user does not want to share. For example, media objects that are not part of the set of one or more media objects of interest are excluded. In another example, user 101A may select one media object and perform some predetermined operation to request that other media objects be excluded. In one or more embodiments, the one or more excluded media objects are dimmed from the UI window (see, e.g., FIGS. 8A-8B described below), darkened, or removed to the user 101A for exclusion. You can provide feedback. In one or more embodiments, the set of one or more media objects is updated to remove the excluded one or more media objects.

하나 이상의 실시예들에서, 미디어 객체의 식별은 관련 미디어 객체의 리소스 액세스 데이터와 함께 전송될 수 있다. 웹 페이지의 경우, 관심있는 미디어 객체의 식별은 웹 페이지의 코드로부터 추출될 수 있거나, 소프트웨어 애플리케이션(106) 및/또는 저장 장치(예를 들어, 컴퓨팅 서버(103E))에 의해 검출된 미디어 객체로 할당될 수 있다.In one or more embodiments, the identification of the media object may be transmitted along with the resource access data of the associated media object. In the case of a web page, the identification of the media object of interest may be extracted from the code of the web page, or as a media object detected by the software application 106 and/or storage device (e.g., computing server 103E). Can be assigned.

단계(215)에서, 소프트웨어 애플리케이션(106)은 단계(210)에서 식별된 하나 이상의 미디어 객체들의 세트에서 하나 이상의 휘발성 미디어 객체들의 세트를 식별하도록 구성된다. 따라서, 미디어 객체들의 식별은 웹 사이트의 유형 또는 웹 애플리케이션의 유형에 적합하거나 웹 사이트에 특정적일 수 있다. 하나 이상의 실시예들에서, 페이지의 모든 미디어 객체들은 휘발성 미디어 객체들로 식별될 수 있다.In step 215, the software application 106 is configured to identify a set of one or more volatile media objects in the set of one or more media objects identified in step 210. Thus, the identification of media objects may be suitable for the type of web site or type of web application or may be web site specific. In one or more embodiments, all media objects on the page may be identified as volatile media objects.

단계(216)에서, 소프트웨어 애플리케이션(106)은 하나 이상의 휘발성 미디어 객체들의 세트에 대해, 하나 이상의 휘발성 미디어 객체들의 세트의 복원(예를 들어, 재생)을 가능하게 하는 리소스들로 액세스하기 위한 리소스 액세스 데이터를 저장 장치(예를 들어, 컴퓨팅 서버(103E))로 전송하도록 구성된다. 예를 들어, 제 1 미디어 컨텐츠가 웹 페이지 인 경우, 리소스 액세스 데이터는 관련 웹 페이지의 리소스들에 대한 포인터들(예를 들어, URL)일 수 있다. 하나 이상의 실시예들에서, 리소스 액세스 데이터는 리소스들 자체(예를 들어, 미디어 객체들을 인코딩하는 데이터)를 포함할 수 있다. 미디어 객체들을 인코딩하는 데이터는 예를 들어 객체 속성들 및/또는 상태, 데이터 인코딩 이미지(들), 텍스트 등을 포함할 수 있다. 리소스 액세스 데이터는 미디어 액세스 데이터와 관련하여 저장 장치(예를 들어, 컴퓨팅 서버(103E))에 의해 저장된다. 하나 이상의 실시예들에서, 내비게이션 컨텍스트 데이터는 수신된 리소스 액세스 데이터를 포함한다.At step 216, the software application 106 accesses a resource for accessing, for a set of one or more volatile media objects, to resources that enable restoration (e.g., playback) of the set of one or more volatile media objects. It is configured to transmit data to a storage device (eg, computing server 103E). For example, when the first media content is a web page, the resource access data may be pointers (eg, URL) to resources of a related web page. In one or more embodiments, the resource access data may include the resources themselves (eg, data encoding media objects). Data encoding media objects may include, for example, object properties and/or state, data encoding image(s), text, and the like. The resource access data is stored by a storage device (eg, computing server 103E) in association with the media access data. In one or more embodiments, the navigation context data includes received resource access data.

단계(220)에서, 소프트웨어 애플리케이션(106)은 하나 이상의 휘발성 미디어 객체들의 세트에서 하나 이상의 인터랙션 기능들과 연관된 하나 이상의 인터랙티브 미디어 객체들의 세트를 식별하도록 구성된다. 인터랙션 기능은, 예를 들어, 인터랙티브 미디어 객체와 연관된 URL에 의해 지시된 웹 페이지를 로딩하고, 메뉴를 디스플레이하고, 서브-윈도우를 디스플레이하고, 컨텐츠를 다운로드하고, 이메일을 전송하고, 애플리케이션을 시작하고, 통신 세션을 여는 것 등일 수 있다. 트리거링 데이터는 타겟 웹 페이지 상의 하이퍼링크(예를 들어, URL), 메뉴 및 연관된 리소스들의 규정, 인터랙션 기능의 코드 등을 포함할 수 있다. 웹 페이지의 경우, 트리거링 데이터는 웹 페이지의 코드로부터 추출될 수 있다.At step 220, the software application 106 is configured to identify a set of one or more interactive media objects associated with one or more interactive functions in the set of one or more volatile media objects. Interaction functions include, for example, loading a web page indicated by a URL associated with an interactive media object, displaying a menu, displaying a sub-window, downloading content, sending an email, launching an application, and , Opening a communication session, and the like. The triggering data may include a hyperlink (eg, URL) on a target web page, a definition of menus and related resources, an interaction function code, and the like. In the case of a web page, triggering data may be extracted from the code of the web page.

단계(221)에서, 소프트웨어 애플리케이션(106)은 각 식별된 인터랙티브 미디어 객체에 대해, 저장 장치(예를 들어, 컴퓨팅 서버(103E))로, 식별된 인터랙티브 미디어 객체와 연관된 하나 이상의 인터랙션 기능들의 실행을 트리거하기 위한 트리거링 데이터를 전송하도록 구성된다. 트리거링 데이터는 URL 및/또는 제 1 미디어 컨텐츠의 코드로부터 추출된 코드의 일부(예를 들어, HTML 코드)를 포함할 수 있다. 트리거링 데이터는 미디어 액세스 데이터와 연관되어 저장 장치(예를 들어, 컴퓨팅 서버(103E))에 의해 저장된다. 하나 이상의 실시예들에서, 내비게이션 컨텍스트 데이터는 수신된 트리거링 데이터를 포함한다.In step 221, the software application 106 performs, for each identified interactive media object, the execution of one or more interactive functions associated with the identified interactive media object to a storage device (e.g., computing server 103E). It is configured to transmit triggering data for triggering. The triggering data may include a URL and/or a part of code (eg, HTML code) extracted from the code of the first media content. The triggering data is associated with the media access data and stored by a storage device (eg, computing server 103E). In one or more embodiments, the navigation context data includes received triggering data.

단계(230)에서, 소프트웨어 애플리케이션(106)은 제 1 UI(사용자 인터페이스) 윈도우에 현재 디스플레이된 제 1 미디어 컨텐츠(M1)의 제 1 부분의 좌표들을 저장 장치(예를 들어, 컴퓨팅 서버(103E))에 전송하도록 구성된다. 제 1 부분의 좌표들은 미디어 액세스 데이터와 연관되어 저장 장치(예를 들어, 컴퓨팅 서버(103E))에 의해 저장된다. 하나 이상의 실시예들에서, 내비게이션 컨텍스트 데이터는 제 1 부분의 수신된 좌표들을 포함한다.In step 230, the software application 106 stores the coordinates of the first portion of the first media content M1 currently displayed in the first UI (user interface) window (e.g., computing server 103E). ). The coordinates of the first portion are associated with the media access data and stored by a storage device (eg, computing server 103E). In one or more embodiments, the navigation context data includes the received coordinates of the first portion.

제 1 UI 윈도우에 현재 디스플레이된 제 1 미디어 컨텐츠(M1)의 제 1 부분은 사용자(101A)에 대한 관심 구역, 예를 들어, 사용자(101A)가 인터랙션을 수행할 수 있는 구역 또는 사용자(101A)가 주석을 생성할 수 있는 구역 또는 사용자(101A)가 다른 사용자들과 공유하기를 원하는 구역을 나타낸다. 하나 이상의 실시예들에서, 제 1 부분의 좌표들은 미디어 컨텐츠와 연관된 좌표 시스템에 대해 상대적으로 규정된다. 제 1 부분의 좌표들은 소스 전자 장치(104A)의 디스플레이 스크린의 해상도 및/또는 크기에 의존할 수 있다.The first portion of the first media content M1 currently displayed in the first UI window is an area of interest for the user 101A, for example, an area in which the user 101A can interact or the user 101A Indicates an area in which an annotation can be created or an area that the user 101A wants to share with other users. In one or more embodiments, the coordinates of the first portion are defined relative to the coordinate system associated with the media content. The coordinates of the first part may depend on the resolution and/or size of the display screen of the source electronic device 104A.

단계(240)에서, 소프트웨어 애플리케이션(106)은, 단계(210)에서 식별된 하나 이상의 미디어 객체들의 세트에서, 소프트웨어 애플리케이션의 제 1 UI 윈도우에 현재 디스플레이된 제 1 미디어 컨텐츠(M1)의 제 1 부분에서 관심있는 하나 이상의 미디어 객체들의 세트를 식별하도록 구성된다. 관심있는 미디어 객체는 인터랙티브이거나 인터랙티브이 아닐 수 있다. 하나 이상의 실시예들에서, 관심있는 하나 이상의 미디어 객체들의 세트의 관심있는 하나 이상의 미디어 객체들은 인터랙티브 미디어 객체(들)이다. 관심있는 미디어 객체는 휘발성 또는 비휘발성일 수 있다. 하나 이상의 실시예들에서, 관심있는 하나 이상의 미디어 객체의 세트의 관심있는 하나 이상의 미디어 객체들은 휘발성 미디어 객체(들)이다.In step 240, the software application 106, in the set of one or more media objects identified in step 210, the first portion of the first media content M1 currently displayed in the first UI window of the software application. Is configured to identify a set of one or more media objects of interest. The media object of interest may or may not be interactive. In one or more embodiments, the one or more media objects of interest in the set of one or more media objects of interest are interactive media object(s). Media objects of interest may be volatile or non-volatile. In one or more embodiments, the one or more media objects of interest in the set of one or more media objects of interest are volatile media object(s).

관심있는 미디어 객체들의 식별은 상이한 방식들로 수행될 수 있다. 하나 이상의 실시예들에서, 관심있는 미디어 객체의 식별은 제 1 부분의 객체 상에서 사용자(101A)의 인터랙션을 검출하는 것 및 인터랙션이 검출된 미디어 객체를 식별하는 것을 포함한다. 하나 이상의 실시예들에서, 관심있는 미디어 객체의 식별은 제 1 미디어 컨텐츠를 시청하는 사용자(101A)의 시청 방향을 결정하는 것 및 디스플레이 영역이 시청 방향과 교차하거나 디스플레이 영역이 시청 방향과 디스플레이 화면의 교차점에 가장 가까운 하나 이상의 관심있는 미디어 객체들을 식별하는 것을 포함한다. 하나 이상의 실시예들에서, 관심있는 미디어 객체의 식별은 제 1 미디어 컨텐츠의 제 1 부분의 중심 위치에 가장 가까운 하나 이상의 미디어 객체들을 결정하는 것을 포함한다. 하나 이상의 실시예들에서, 관심있는 미디어 객체의 식별은 사용자로 하여금 (예를 들어, 터치 감지 디스플레이 상의 접촉에 의해) 하나 이상의 관심있는 미디어 객체들을 선택하도록 하고 선택된 하나 이상의 관심있는 미디어 객체들을 식별하는 것을 포함한다.Identification of media objects of interest can be performed in different ways. In one or more embodiments, the identification of the media object of interest includes detecting an interaction of the user 101A on the object of the first portion and identifying the media object from which the interaction was detected. In one or more embodiments, the identification of the media object of interest is determining the viewing direction of the user 101A viewing the first media content and the display area intersects the viewing direction or the display area is the viewing direction and the display screen. Identifying one or more media objects of interest closest to the intersection. In one or more embodiments, the identification of the media object of interest includes determining one or more media objects closest to a central location of the first portion of the first media content. In one or more embodiments, identification of a media object of interest allows the user to select one or more media objects of interest (e.g., by contact on a touch-sensitive display) and identify the selected one or more media objects of interest. Includes that.

단계(241)에서, 소프트웨어 애플리케이션(106)은 단계(240)에서 식별된 관심있는 미디어 객체(들)의 식별을 저장 장치(예를 들어, 컴퓨팅 서버(103E))로 전송하도록 구성된다. 관심있는 미디어 객체(들)의 식별은 미디어 액세스 데이터와 연관되어 저장된다. 하나 이상의 실시예들에서, 내비게이션 컨텍스트 데이터는 관심있는 미디어 객체(들)의 수신된 식별을 포함한다.In step 241, the software application 106 is configured to transmit the identification of the media object(s) of interest identified in step 240 to a storage device (eg, computing server 103E). The identification of the media object(s) of interest is stored in association with the media access data. In one or more embodiments, the navigation context data includes a received identification of the media object(s) of interest.

단계(250)에서, 소프트웨어 애플리케이션(106)은, 각 관심있는 객체에 대해, 제 1 UI 윈도우(W1)에 현재 디스플레이된 제 1 미디어 컨텐츠(M1)의 제 1 부분(관심있는 구역)에 대한 관심있는 객체의 객체 좌표들을 결정하도록 구성된다.In step 250, the software application 106, for each object of interest, for the first portion (area of interest) of the first media content M1 currently displayed in the first UI window W1. It is configured to determine the object coordinates of the present object.

단계(251)에서, 소프트웨어 애플리케이션(106)은, 각 관심있는 객체에 대해, 관심있는 객체의 객체 좌표들을 저장 장치(예를 들어, 컴퓨팅 서버(103E))로 전송하도록 구성된다. 객체 좌표들은 미디어 액세스 데이터와 연관되어 저장 장치(예를 들어, 컴퓨팅 서버(103E))에 의해 저장된다. 하나 이상의 실시예들에서, 내비게이션 컨텍스트 데이터는 수신된 객체 좌표들을 포함한다.In step 251, the software application 106 is configured to send, for each object of interest, object coordinates of the object of interest to a storage device (eg, computing server 103E). Object coordinates are associated with media access data and stored by a storage device (eg, computing server 103E). In one or more embodiments, the navigation context data includes received object coordinates.

단계들(200 내지 251)은 예를 들어 제 1 미디어 컨텐츠의 또 다른 부분 또는 또 다른 미디어 컨텐츠의 부분에 대해 각 내비게이션 컨텍스트가 저장되도록 반복될 수 있다. 단계들(200 내지 251)의 각 실행에 대해, 내비게이션 컨텍스트 데이터는 저장 장치(예를 들어, 컴퓨팅 서버(103E))에 의해 저장되고 대응하는 내비게이션 컨텍스트는 이러한 내비게이션 컨텍스트 데이터에 기초하여 복원될 수 있다.Steps 200 to 251 may be repeated such that each navigation context is stored for another portion of the first media content or a portion of another media content, for example. For each execution of steps 200 to 251, the navigation context data is stored by the storage device (e.g., computing server 103E) and the corresponding navigation context can be restored based on this navigation context data. .

도 2b는 하나 이상의 실시예들에 따른 내비게이션 컨텍스트를 복원하기 위한 방법의 흐름도를 도시한다. 흐름도의 다양한 단계들이 순차적으로 제시되고 기재되지만, 당업자는 단계들 중 일부 또는 전부가 상이한 순서들로 실행될 수 있고, 결합되거나 생략될 수 있고, 단계들의 일부 또는 전부가 병렬로 실행될 수 있음을 이해할 것이다.2B shows a flow diagram of a method for restoring a navigation context in accordance with one or more embodiments. While the various steps in the flowchart are presented and described sequentially, those skilled in the art will understand that some or all of the steps may be executed in different orders, may be combined or omitted, and some or all of the steps may be executed in parallel. .

방법 단계들은 본 명세서에 개시된 임의의 실시예에 따른 목적지 전자 장치(예를 들어, 전자 장치(104B)) 및 내비게이션 컨텍스트 데이터를 저장하기 위한 저장 장치에 의해 구현될 수 있다. 저장 장치는 소스 전자 장치에 포함되거나 별도의 장치일 수 있다. 하나 이상의 실시예들에서, 저장 장치는 컴퓨팅 서버(예를 들어, 프론트-엔드 서버(103E)), 데이터베이스(102A 내지 102B), 또 다른 전자 장치(104B 및 104C)일 수 있거나 그러한 장치에 포함될 수 있다.The method steps may be implemented by a destination electronic device (eg, electronic device 104B) and a storage device for storing navigation context data according to any embodiment disclosed herein. The storage device may be included in the source electronic device or may be a separate device. In one or more embodiments, the storage device may be or be included in a computing server (e.g., front-end server 103E), database 102A-102B, another electronic device 104B and 104C. have.

하나 이상의 실시예들에서, 미디어 컨텐츠를 공유하기 위해, 소스 전자 장치(104A) 상에 디스플레이된 제 1 미디어 컨텐츠는 컴퓨팅 서버(103E)를 통해 복수의 전자 장치들(104B 내지 104C)(즉, 목적지 전자 장치들)의 다른 전자 장치들로 전송되어야 한다. 제 1 미디어 컨텐츠는 소스 전자 장치(104A) 상에서 국부적으로 생성되거나 미디어 서버(1031 내지 103C)로부터 로딩될 수 있다. 컴퓨팅 서버(103E)는 미디어 액세스 데이터 및 연관된 메타데이터를 저장하기 위한 데이터베이스를 관리한다. 연관된 메타데이터는 내비게이션 컨텍스트 메타데이터를 포함한다.In one or more embodiments, in order to share the media content, the first media content displayed on the source electronic device 104A is transmitted via the computing server 103E to a plurality of electronic devices 104B to 104C (i.e., destination Electronic devices) to other electronic devices. The first media content may be locally generated on the source electronic device 104A or may be loaded from the media servers 1031 to 103C. Computing server 103E manages a database for storing media access data and associated metadata. Associated metadata includes navigation context metadata.

이하의 설명에서, 방법 단계들은 소스 전자 장치(104A)의 클라이언트 애플리케이션(106) 및 저장 장치로서 사용되는 프론트-엔드 서버(103E)의 서버 애플리케이션(107)에 의해 구현되지만, 임의의 다른 저장 장치 및 미디어 컨텐츠를 디스플레이하기 위한 임의의 다른 소프트웨어 애플리케이션에 적용가능하다.In the description below, the method steps are implemented by the client application 106 of the source electronic device 104A and the server application 107 of the front-end server 103E used as a storage device, but any other storage device and Applicable to any other software application for displaying media content.

단계(260)에서, 소프트웨어 애플리케이션(106)은 내비게이션 컨텍스트 데이터를 저장 장치로부터 획득(예를 들어, 데이터베이스, 컴퓨팅 서버(103E) 또는 소스 전자 장치(104A)로부터 수신)하고 내비게이션 컨텍스트 데이터에 기초하여 내비게이션 컨텍스트 복원을 시작한다. 하나 이상의 실시예들에서, 내비게이션 컨텍스트 데이터는 도 2a를 참조하여 기재된 바와 같이 생성된다.In step 260, the software application 106 obtains the navigation context data from the storage device (e.g., received from the database, computing server 103E or source electronic device 104A) and navigates based on the navigation context data. Start context restoration. In one or more embodiments, the navigation context data is generated as described with reference to FIG. 2A.

내비게이션 컨텍스트 데이터는 다음을 포함할 수 있다:Navigation context data may include:

미디어 서버를 통해 제 1 미디어 컨텐츠(M1)에 액세스하기 위한 미디어 액세스 데이터; 및/또는Media access data for accessing the first media content M1 through the media server; And/or

제 1 미디어 컨텐츠(M1)의 제 1 부분의 스크린샷; 및/또는A screenshot of the first portion of the first media content M1; And/or

제 1 미디어 컨텐츠(M1)에 대한 제 1 부분의 좌표들; 및/또는Coordinates of the first part for the first media content M1; And/or

제 1 미디어 컨텐츠에서의 미디어 객체(들)의 식별; 및/또는Identification of media object(s) in the first media content; And/or

제 1 부분 내에서의 관심있는 미디어 객체(들)의 식별; 및/또는Identification of media object(s) of interest within the first portion; And/or

제 1 미디어 컨텐츠(M1) 내의 휘발성 미디어 객체(들)의 식별; 및/또는Identification of volatile media object(s) in the first media content M1; And/or

제 1 미디어 컨텐츠(M1)의 하나 이상의 휘발성 미디어 객체(들)의 세트를 복원하기 위한 리소스 액세스 데이터; 및/또는Resource access data for restoring a set of one or more volatile media object(s) of the first media content M1; And/or

제 1 미디어 컨텐츠(M1)의 하나 이상의 인터랙티브 미디어 객체(들)와 연관된 하나 이상의 인터랙션 기능(들)의 실행을 복원하기 위한 트리거링 데이터Triggering data for restoring execution of one or more interaction function(s) associated with one or more interactive media object(s) of the first media content M1

제 1 미디어 컨텐츠의 제 1 부분에 대한 각 관심있는 미디어 객체의 객체 좌표들.Object coordinates of each media object of interest for the first portion of the first media content.

단계(265)에서, 소프트웨어 애플리케이션(106)은 스크린샷을 제 2 UI 윈도우에 디스플레이하도록 구성된다. 하나 이상의 실시예들에서, 스크린샷의 디스플레이는 제 2 UI 윈도우에 제 2 미디어 컨텐츠(M2)의 제 2 부분을 디스플레이하기 전에 수행된다(단계(290) 참조). 하나 이상의 실시예들에서, 스크린샷은 내비게이션 컨텍스트 데이터에 대응하는 북마크의 시각적 표현으로서 사용될 수 있다.In step 265, the software application 106 is configured to display the screenshot in the second UI window. In one or more embodiments, the display of the screenshot is performed prior to displaying the second portion of the second media content M2 in the second UI window (see step 290). In one or more embodiments, the screenshot may be used as a visual representation of a bookmark corresponding to the navigation context data.

하나 이상의 실시예들에서, 하나 이상의 스크린샷들이 디스플레이되고, 스크린샷에 대응하는 내비게이션 컨텍스트는 관련 스크린샷과 사용자의 인터랙션 검출시 및 연관된 내비게이션 컨텍스트 데이터에 기초하여 복원된다.In one or more embodiments, one or more screenshots are displayed, and a navigation context corresponding to the screenshot is restored upon detection of the user's interaction with the associated screenshot and based on the associated navigation context data.

단계(269)에서, 소프트웨어 애플리케이션(106)은 미디어 액세스 데이터를 사용하여 제 1 미디어 컨텐츠를 로딩하도록 구성된다. 하나 이상의 실시예들에서, 제 1 미디어 컨텐츠(M1B)는 미디어 서버(103A, 103B, 및 103C)로부터 로딩된다. 로딩된 제 1 미디어 컨텐츠(M1B)는 원래 디스플레이된 제 1 미디어 컨텐츠(M1)와 상이할 수 있다(단계(200)). 예를 들어, 단계(200)에서 원래 디스플레이된 바와 같은 제 1 미디어 컨텐츠(M1)의 하나 이상의 휘발성 미디어 객체들은 제 1 미디어 컨텐츠(M1B)가 로딩될 때 더 이상 액세스할 수 없을 수 있다.In step 269, the software application 106 is configured to load the first media content using the media access data. In one or more embodiments, the first media content M1B is loaded from media servers 103A, 103B, and 103C. The loaded first media content M1B may be different from the originally displayed first media content M1 (step 200). For example, one or more volatile media objects of the first media content M1 as originally displayed in step 200 may no longer be accessible when the first media content M1B is loaded.

단계(270)에서, 소프트웨어 애플리케이션(106)은 제 1 미디어 컨텐츠(M1)를 적어도 부분적으로 재생하는 제 2 미디어 컨텐츠(M2)를 생성하도록 구성된다. 하나 이상의 실시예들에서, 제 2 미디어 컨텐츠(M2)의 생성은 내비게이션 컨텍스트 데이터에 기초하여 수행된다. 하나 이상의 실시예들에서, 제 2 미디어 컨텐츠는 단계(240)에서 식별된 하나 이상의 관심있는 미디어 객체들의 세트를 포함한다. 하나 이상의 실시예들에서, 제 2 미디어 컨텐츠는 단계(215)에서 식별된 하나 이상의 휘발성 미디어 객체들의 세트를 포함한다.In step 270, the software application 106 is configured to generate a second media content M2 that at least partially plays the first media content M1. In one or more embodiments, the generation of the second media content M2 is performed based on navigation context data. In one or more embodiments, the second media content includes a set of one or more media objects of interest identified in step 240. In one or more embodiments, the second media content includes a set of one or more volatile media objects identified in step 215.

하나 이상의 실시예들에서, 제 2 미디어 컨텐츠(M2)는, 제 1 미디어 컨텐츠(M1)의 하나 이상의 휘발성 미디어 객체(들)의 세트의 리소스 액세스 데이터에 기초하여, 단계(215)에서 식별된 하나 이상의 휘발성 미디어 객체들의 세트를 복원하도록 로딩된 제 1 미디어 컨텐츠(M1B)를 수정함으로써 생성된다. 일부 경우에, 예를 들어, 휘발성 미디어 객체들의 세트가 원래 디스플레이된 제 1 미디어 컨텐츠(M1)와 비교하여 로딩된 제 1 미디어 컨텐츠(M1B)에 영향을 미치거나 수정되거나 변경되지 않는 경우, 휘발성 미디어 객체들의 일부의 복원은 필요하지 않을 수 있다(단계(200)). 하나 이상의 실시예들에서, 복원은 로딩된 제 1 미디어 컨텐츠(M1B)에 존재하지 않는 하나 이상의 휘발성 미디어 객체들 또는 하나 이상의 수정들이 발생하는 하나 이상의 휘발성 미디어 객체들에 대해 수행된다. 수정은 예를 들어 휘발성 미디어 객체에 대한 수정 또는 휘발성 미디어 객체들이 제시되는 순서의 수정일 수 있다.In one or more embodiments, the second media content M2 is the one identified in step 215 based on the resource access data of the set of one or more volatile media object(s) of the first media content M1. It is created by modifying the loaded first media content M1B to restore the above set of volatile media objects. In some cases, for example, when the set of volatile media objects affects, is not modified or altered, the loaded first media content M1B compared to the originally displayed first media content M1, the volatile media Restoration of some of the objects may not be necessary (step 200). In one or more embodiments, the restoration is performed for one or more volatile media objects not present in the loaded first media content M1B or one or more volatile media objects for which one or more modifications occur. The modification may be, for example, a modification to a volatile media object or a modification of the order in which volatile media objects are presented.

하나 이상의 실시예들에서, 인터랙션 컨텍스트는 인터랙티브 미디어 객체들과 연관된 인터랙션 기능(들)의 실행을 트리거링하기 위한 트리거링 데이터에 기초하여 제 2 미디어 컨텐츠에서 하나 이상의 미디어 객체들의 세트에 대해 복원된다.In one or more embodiments, the interaction context is restored for the set of one or more media objects in the second media content based on triggering data to trigger execution of the interaction function(s) associated with the interactive media objects.

하나 이상의 실시예들에서, 제 2 미디어 컨텐츠(M2)의 생성은, 인터랙티브 미디어 객체들과 연관된 인터랙션 기능(들)이 제 1 미디어 컨텐츠(M1)에서와 동일한 방식으로 트리거링될 수 있고 소프트웨어 애플리케이션(106)이 제 2 미디어 컨텐츠(M2)를 생성하기 위해 사용된 트리거링 데이터에 기초하여 인터랙티브 미디어 객체와 연관된 인터랙션 기능을 트리거링하도록 구성되도록 수행된다. 예를 들어, 제 1 미디어 컨텐츠(M1)에서 미디어 객체를 클릭함으로써 사용자가 타겟 웹 페이지로 리디렉션된 후, 제 2 미디어 컨텐츠(M2)에서 대응하는 미디어 객체를 클릭함으로써 사용자는 또한 동일한 타겟 웹 페이지로 리디렉션된다. 예를 들어, 제 1 미디어 컨텐츠(M1)에서 미디어 객체를 클릭함으로써 메뉴가 열린 다음, 제 2 미디어 컨텐츠(M2)에서 대응하는 미디어 객체를 클릭함으로써 동일한 메뉴가 제 2 미디어 컨텐츠(M2)에서 열릴 것이다. 따라서, 휘발성 미디어 객체들에 대해서도 인터랙션 컨텍스트가 복원될 수 있다.In one or more embodiments, the creation of the second media content M2 may cause the interaction function(s) associated with the interactive media objects to be triggered in the same manner as in the first media content M1 and the software application 106 ) Is configured to trigger an interaction function associated with the interactive media object based on the triggering data used to generate the second media content M2. For example, after the user is redirected to the target web page by clicking a media object in the first media content M1, and then clicking the corresponding media object in the second media content M2, the user can also go to the same target web page. Is redirected. For example, a menu is opened by clicking a media object in the first media content M1, and then the same menu will be opened in the second media content M2 by clicking a corresponding media object in the second media content M2. . Accordingly, the interaction context can be restored even for volatile media objects.

단계(275)에서, 소프트웨어 애플리케이션(106)은 수신자 전자 장치(104B)로부터 및/또는 내비게이션 컨텍스트가 복원되는 사용자(101B)에 대해 액세스할 수 없는 임의의 미디어 객체를 생성된 제 2 미디어 컨텐츠(M2)로부터 제거하도록 구성된다. 하나 이상의 실시예들에서, 소프트웨어 애플리케이션(106)은 하나 이상의 미디어 객체들의 세트의 미디어 객체가 사용자(101B)에 대해 액세스가능한지 여부를 결정하도록 구성된다. 이는 제 1 미디어 컨텐츠가 액세스된 소프트웨어 애플리케이션(예를 들어, 웹 애플리케이션)에 대한 사용자(101A)의 사용자 권한/프로파일과 비교된 사용자(101B)의 사용자 권한/프로파일에 의존할 수 있다. 이는 공개적으로 이용가능하지 않은 미디어 컨텐츠 또는 사용자(101A)에게 개인적인 미디어 컨텐츠에 관한 것일 수 있다. 제 2 미디어 컨텐츠(M2)의 생성은, 내비게이션 컨텍스트가 복원되는 소프트웨어 애플리케이션(106)의 사용자(101B)가 액세스할 수 없는 미디어 객체가 (예를 들어, 비 휘발성 미디어 컨텐츠에 대해) 제 2 미디어 컨텐츠(M2)로부터 제거되거나 (예를 들어, 로딩된 제 1 미디어 컨텐츠에 존재하지 않는 휘발성 미디어 객체에 대해) 제 2 미디어 컨텐츠(M2) 내로 삽입되지 않도록 수행된다.In step 275, the software application 106 creates a second media content (M2) that is inaccessible from the recipient electronic device 104B and/or to the user 101B whose navigation context is restored. ). In one or more embodiments, the software application 106 is configured to determine whether a media object in the set of one or more media objects is accessible to the user 101B. This may depend on the user rights/profile of the user 101B compared to the user rights/profile of the user 101A for the software application (eg, web application) to which the first media content was accessed. This may relate to media content that is not publicly available or to media content that is personal to the user 101A. Creation of the second media content M2 means that the media object that is not accessible to the user 101B of the software application 106 for which the navigation context is restored is the second media content (e.g., for non-volatile media content). It is performed so as not to be removed from (M2) or inserted into the second media content (M2) (for example, for a volatile media object not present in the loaded first media content).

단계(280)에서, 소프트웨어 애플리케이션(106)은 디스플레이될 제 2 미디어 컨텐츠(M2)에서 관심있는 부분(이하, 제 2 부분)을 식별하도록 구성된다. 하나 이상의 실시예들에서, 제 2 부분은 하나 이상의 관심있는 미디어 객체들의 세트에 기초하여 식별되고 (예를 들어, 단계(240))에서 식별된 하나 이상의 관심있는 미디어 객체들에 대해) 하나 이상의 관심있는 미디어 객체들의 세트 중 적어도 하나의 관심있는 미디어 객체를 포함한다In step 280, the software application 106 is configured to identify a portion of interest (hereinafter, a second portion) in the second media content M2 to be displayed. In one or more embodiments, the second portion is identified based on the set of one or more media objects of interest (e.g., for one or more media objects of interest identified in step 240). Contains at least one of the set of media objects of interest

하나 이상의 실시예들에서, 제 2 미디어 컨텐츠(M2)에 대한 제 2 부분의 좌표들은 하나 이상의 관심있는 객체에 대한 수신된 객체 좌표들에 기초하여 결정된다. 하나 이상의 실시예에서, 제 2 미디어 컨텐츠(M2)에 대한 제 2 부분의 좌표들은, 주어진 관심있는 객체에 대해, 제 2 미디어 컨텐츠(M2)의 제 2 부분에 대해, 관심있는 미디어 객체의 객체 좌표들이 제 1 미디어 컨텐츠(M1)의 제 1 부분에 대해, 동일한 관심있는 미디어 객체의 객체 좌표들과 동일 (또는 가능한 한 근접)하도록 결정된다. 하나 이상의 실시예들에서, 제 2 부분의 좌표들은 목적지 전자 장치(104B)의 디스플레이 스크린의 해상도 및/또는 크기에 따라 추가로 결정된다. 하나 이상의 실시예들에서, 제 2 부분의 좌표들은, 제 2 미디어 컨텐츠(M2)의 레이아웃이 제 1 미디어 컨텐츠(M1)의 레이아웃과 상이한 경우에도 관심있는 미디어 객체 (들)가 제 2 부분 내에 위치되고 제 1 미디어 컨텐츠(M1)의 레이아웃과 가능한 한 유사하게 디스플레이 윈도우에 대한 상대적인 위치에 위치되도록 보장하도록 결정된다.In one or more embodiments, the coordinates of the second portion for the second media content M2 are determined based on the received object coordinates for the one or more objects of interest. In one or more embodiments, the coordinates of the second portion for the second media content M2 are, for a given object of interest, the object coordinates of the media object of interest, for the second portion of the second media content M2 Are determined to be the same (or as close as possible) to the object coordinates of the same media object of interest, for the first portion of the first media content M1. In one or more embodiments, the coordinates of the second portion are further determined according to the resolution and/or size of the display screen of the destination electronic device 104B. In one or more embodiments, the coordinates of the second portion are such that the media object(s) of interest is located within the second portion even when the layout of the second media content M2 is different from the layout of the first media content M1 And it is determined to ensure that it is positioned at a position relative to the display window as similar as possible to the layout of the first media content M1.

하나 이상의 실시예들에서, 제 2 미디어 컨텐츠(M2)의 생성은, 소스 전자 장치(104A)의 디스플레이 스크린의 해상도 및/또는 크기와 비교하여 목적지 전자 장치(104B)의 디스플레이 스크린의 해상도 및/또는 크기에 의존하여 제 2 미디어 컨텐츠(M2)의 레이아웃이 제 1 미디어 컨텐츠(M1)의 레이아웃과 동일하거나 가능한 한 동일하도록 수행된다. 디스플레이 화면들의 해상도 및/또는 크기가 동일하면 동일한 레이아웃이 사용될 수 있다.In one or more embodiments, the generation of the second media content M2 is compared to the resolution and/or size of the display screen of the source electronic device 104A and/or the resolution and/or of the display screen of the destination electronic device 104B. Depending on the size, the layout of the second media content M2 is performed so that the layout of the first media content M1 is the same as or as much as possible. If the display screens have the same resolution and/or size, the same layout may be used.

단계(290)에서, 소프트웨어 애플리케이션(106)은 제 2 UI 윈도우에 제 2 미디어 컨텐츠(M2)의 제 2 부분을 디스플레이하도록 구성된다. 하나 이상의 실시예들에서, 제 2 미디어 컨텐츠(M2)의 제 2 부분의 디스플레이는 스크린샷이 디스플레이되는 동안 제 2 UI 윈도우에서 사용자(101B)와의 인터랙션의 검출시에 수행된다(단계(265) 참조). 제 2 부분이 디스플레이되면, 사용자(101B)는 제 2 부분에 현재 디스플레이되는 인터랙티브 객체(들)에 대한 인터랙션 기능(들)을 트리거링할 수 있거나 현재 디스플레이된 부분을 변경하도록 제 2 미디어 컨텐츠(M2)를 탐색할 수 있다.In step 290, the software application 106 is configured to display a second portion of the second media content M2 in a second UI window. In one or more embodiments, the display of the second portion of the second media content M2 is performed upon detection of an interaction with the user 101B in the second UI window while the screenshot is being displayed (see step 265). ). When the second part is displayed, the user 101B can trigger the interaction function(s) for the interactive object(s) currently displayed in the second part, or the second media content M2 to change the currently displayed part. You can explore.

내비게이션 컨텍스트 데이터에 기초하여 각 내비게이션 컨텍스트가 복원되도록 단계들(260 내지 290)이 반복될 수 있다.Steps 260 to 290 may be repeated so that each navigation context is restored based on the navigation context data.

하나 이상의 실시예들에서, 도 2a를 참조하여 기재된 저장하기 위한 방법 및도 2b를 참조하여 기재된 내비게이션 컨텍스트를 복원하기 위한 방법은 동일한 소프트웨어 애플리케이션(예를 들어, 소프트웨어 애플리케이션(106))에 의해 구현될 수 있지만, 여전히 내비게이션 컨텍스트 메타데이터를 (선택사양적으로 미디어 컨텐츠 자체의) 저장 장치(예를 들어, 컴퓨팅 서버(103E))로 전송하는 것을 의미한다. 따라서, 방법들은 저장 장치 상에 미디어 컨텐츠(예를 들어, 웹 페이지 또는 임의의 하이퍼텍스트 문서) 및 선택사양적으로 미디어 컨텐츠 자체에 대한 내비게이션 컨텍스트 메타데이터를 원격으로 저장하는 데 사용될 수 있다.In one or more embodiments, the method for storing described with reference to FIG. 2A and the method for restoring the navigation context described with reference to FIG. 2B may be implemented by the same software application (e.g., software application 106). Can, but still means transmitting the navigation context metadata to a storage device (e.g., computing server 103E) (optionally of the media content itself). Thus, the methods can be used to remotely store media content (eg, a web page or any hypertext document) on a storage device and, optionally, navigation context metadata for the media content itself.

도 3a 내지 도 3b는 하나 이상의 실시예들에 따른 동일한 전자 장치(예를 들어, 전자 장치(104A)) 상에 내비게이션 컨텍스트를 저장 및 복원하기 위한 방법의 흐름도를 도시한다. 흐름도의 다양한 단계들이 순차적으로 제시되고 기재되지만, 당업자는 단계들 중 일부 또는 전부가 상이한 순서들로 실행될 수 있고, 결합되거나 생략될 수 있고, 단계들의 일부 또는 전부가 병렬로 실행된다.3A-3B illustrate a flowchart of a method for storing and restoring a navigation context on the same electronic device (eg, electronic device 104A) according to one or more embodiments. Although the various steps in the flowchart are presented and described sequentially, those skilled in the art will appreciate that some or all of the steps may be executed in different orders, combined or omitted, and some or all of the steps may be executed in parallel.

방법 단계들은 본 명세서에 개시된 임의의 실시예에 따른 전자 장치(예를 들어, 전자 장치(104A))에 의해 구현될 수 있다. 방법 단계들은 예를 들어 소스 전자 장치(104A)의 클라이언트 애플리케이션(106)에 의해 구현될 수 있다.The method steps may be implemented by an electronic device (eg, electronic device 104A) according to any embodiment disclosed herein. The method steps may be implemented by the client application 106 of the source electronic device 104A, for example.

상기 방법은 저장 장치(예를 들어, 컴퓨팅 서버(103E))로의 미디어 컨텐츠 또는 메타데이터의 전송을 암시하지 않고 구현될 수 있다. 따라서, 방법은 미디어 컨텐츠(예를 들어, 웹 페이지, 또는 임의의 하이퍼텍스트 문서) 및 선택사양적으로 미디어 컨텐츠 자체에 대한 내비게이션 컨텍스트 메타데이터를 전자 장치(104A) 상에 국부적으로 저장하는 데 사용될 수 있다.The method may be implemented without implying the transfer of media content or metadata to a storage device (eg, computing server 103E). Thus, the method may be used to locally store media content (e.g., a web page, or any hypertext document) and, optionally, navigation context metadata for the media content itself on electronic device 104A. have.

이하에서 기재되는 단계들(300 내지 390)은 단계들이 동일하고 단일의 전자 장치 상에서 수행된다는 사실로 인해 단순화되며 도 2a 내지 도 2b를 참조하여 기재된 단계들(200 내지 290)에 각각 대응한다. 예를 들어, 데이터가 저장 장치로 전송될 필요가 없다. 예를 들어, 미디어 객체들의 프라이버시를 고려할 필요가 없다. 간략화를 위해, 도 2a 내지 도 2b를 참조하여 이미 기재된 실시예들 및 양태들은 본 명세서에서 반복되지 않고 적용가능하다.The steps 300 to 390 described below are simplified due to the fact that the steps are the same and are performed on a single electronic device and correspond to steps 200 to 290 described with reference to FIGS. 2A to 2B, respectively. For example, the data need not be transferred to the storage device. For example, there is no need to consider the privacy of media objects. For the sake of simplicity, the embodiments and aspects already described with reference to Figs. 2A to 2B are applicable without being repeated herein.

도 3a를 참조하면, 단계(300)에서, 소스 전자 장치(104A)의 디스플레이 스크린 상의 소프트웨어 애플리케이션(106)의 제 1 UI 윈도우(W1)에 제 1 미디어 컨텐츠(M1)(예를 들어, 웹 페이지)가 디스플레이되고, 소프트웨어 애플리케이션(106)은 내비게이션 컨텍스트 저장 프로세스를 시작하도록 구성된다. 프로세스는 예를 들어 주어진 인터랙션을 수행할 때, 사용자(101A)의 요청시 또는 일부 사전결정된 조건이 충족될 때 시작될 수 있다. 단계(301)에서, 소프트웨어 애플리케이션(106)은 제 1 미디어 컨텐츠(M1)에 액세스할 수 있게 하는 미디어 액세스 데이터를 저장하도록 구성된다. 미디어 액세스 데이터는 웹 페이지에 액세스하기 위한 하이퍼링크(예를 들어, URL), 바로가기, 주소 및/또는 미디어 서버(103A, 103B, 및 103C)를 통해 미디어 컨텐츠에 액세스하기 위한 식별자를 포함할 수 있다.3A, in step 300, a first media content M1 (eg, a web page) is displayed in a first UI window W1 of the software application 106 on the display screen of the source electronic device 104A. ) Is displayed, and the software application 106 is configured to begin the process of storing the navigation context. The process may be initiated, for example, when performing a given interaction, at the request of the user 101A, or when some predetermined condition is met. In step 301, the software application 106 is configured to store media access data that enables access to the first media content M1. The media access data may include a hyperlink (e.g., a URL) for accessing a web page, a shortcut, an address, and/or an identifier for accessing the media content through the media servers 103A, 103B, and 103C. have.

단계(305)에서, 소프트웨어 애플리케이션(106)은 UI 윈도우(W1)에 현재 디스플레이된 제 1 미디어 컨텐츠(M1)의 제 1 부분의 스크린샷을 수행하도록 구성된다.In step 305, the software application 106 is configured to take a screenshot of the first portion of the first media content M1 currently displayed in the UI window W1.

단계(306)에서, 소프트웨어 애플리케이션(106)은 스크린샷을 저장하도록 구성된다.In step 306, the software application 106 is configured to store the screenshot.

단계(310)에서, 소프트웨어 애플리케이션(106)은 제 1 미디어 컨텐츠(M1)에서 하나 이상의 미디어 객체들의 세트를 식별하도록 구성된다.In step 310, the software application 106 is configured to identify a set of one or more media objects in the first media content M1.

단계(315)에서, 소프트웨어 애플리케이션(106)은 단계(310)에서 획득된 하나 이상의 미디어 객체들의 세트에서 하나 이상의 휘발성 미디어 객체들의 세트를 식별하도록 구성된다. 따라서, 미디어 객체들의 식별은 웹 사이트의 유형 또는 웹 애플리케이션의 유형에 적합하거나 웹 사이트에 특정적일 수 있다. 하나 이상의 실시예들에서, 페이지의 모든 미디어 객체들은 휘발성 미디어 객체들로 식별될 수 있다.In step 315, the software application 106 is configured to identify a set of one or more volatile media objects in the set of one or more media objects obtained in step 310. Thus, the identification of media objects may be suitable for the type of web site or type of web application or may be web site specific. In one or more embodiments, all media objects on the page may be identified as volatile media objects.

단계(316)에서, 소프트웨어 애플리케이션(106)은, 하나 이상의 휘발성 미디어 객체들의 세트에 대해, 하나 이상의 휘발성 미디어 객체들의 세트의 복원(예를 들어, 재생)을 가능하게 하는 리소스들에 액세스하기 위한 리소스 액세스 데이터를 저장하도록 구성된다.In step 316, the software application 106 provides, for a set of one or more volatile media objects, a resource for accessing resources that enable restoration (e.g., playback) of the set of one or more volatile media objects. It is configured to store access data.

단계(320)에서, 소프트웨어 애플리케이션(106)은 하나 이상의 휘발성 미디어 객체들의 세트에서 하나 이상의 인터랙션 기능들과 연관된 하나 이상의 인터랙티브 미디어 객체들의 세트를 식별하도록 구성된다.At step 320, the software application 106 is configured to identify a set of one or more interactive media objects associated with one or more interactive functions in the set of one or more volatile media objects.

단계(321)에서, 소프트웨어 애플리케이션(106)은, 각 식별된 인터랙티브 미디어 객체에 대해, 식별된 인터랙티브 미디어 객체와 연관된 하나 이상의 인터랙션 기능들의 실행을 트리거링하기 위한 트리거링 데이터를 저장하도록 구성된다.At step 321, the software application 106 is configured to store, for each identified interactive media object, triggering data for triggering execution of one or more interaction functions associated with the identified interactive media object.

단계(330)에서, 소프트웨어 애플리케이션(106)은 제 1 UI(사용자 인터페이스) 윈도우에 현재 디스플레이된 제 1 미디어 컨텐츠(M1)에 제 1 부분의 좌표들을 저장하도록 구성된다.In step 330, the software application 106 is configured to store the coordinates of the first portion in the first media content M1 currently displayed in the first UI (user interface) window.

단계(340)에서, 소프트웨어 애플리케이션(106)은 하나 이상의 미디어 객체들의 세트에서 소프트웨어 애플리케이션의 제 1 UI 윈도우에 현재 디스플레이된 제 1 미디어 컨텐츠(M1)의 제 1 부분에서 관심있는 하나 이상의 미디어 객체들의 세트를 식별하도록 구성된다.In step 340, the software application 106 is a set of one or more media objects of interest in a first portion of the first media content M1 currently displayed in a first UI window of the software application in the set of one or more media objects. Is configured to identify.

단계(341)에서, 소프트웨어 애플리케이션(106)은 단계(340)에서 식별된 관심있는 미디어 객체(들)의 식별을 저장하도록 구성된다.In step 341, the software application 106 is configured to store an identification of the media object(s) of interest identified in step 340.

단계(350)에서, 소프트웨어 애플리케이션(106)은 제 1 UI 윈도우에 현재 디스플레이된 제 1 미디어 컨텐츠(M1)의 제 1 부분(관심있는 구역)에 대한 관심있는 객체의 객체 좌표들을 각 관심 객체에 대해 결정하도록 구성된다.In step 350, the software application 106 calculates the object coordinates of the object of interest for the first portion (region of interest) of the first media content M1 currently displayed in the first UI window for each object of interest. Is configured to decide.

단계(351)에서, 소프트웨어 애플리케이션(106)은 각 관심있는 객체에 대한 관심있는 객체의 객체 좌표들을 저장하도록 구성된다.In step 351, the software application 106 is configured to store object coordinates of the object of interest for each object of interest.

단계들(300 내지 351)은 각 내비게이션 컨텍스트가, 예를 들어, 제 1 미디어 컨텐츠의 또 다른 부분 또는 또 다른 미디어 컨텐츠의 부분에 대해 저장되도록 반복될 수 있다.Steps 300 to 351 may be repeated such that each navigation context is stored, for example, for another portion of the first media content or for another portion of another media content.

단계들(300 내지 351)의 각 실행에 대해, 내비게이션 컨텍스트 데이터는 소스 전자 장치(104A)에 의해 저장되고 대응하는 내비게이션 컨텍스트는 저장된 내비게이션 컨텍스트 데이터에 기초하여 복원될 수 있다.For each execution of steps 300 to 351, the navigation context data is stored by the source electronic device 104A, and the corresponding navigation context may be restored based on the stored navigation context data.

따라서, 저장된 내비게이션 컨텍스트 데이터는 다음을 포함할 수 있다:Thus, the stored navigation context data may include:

미디어 서버를 통해 제 1 미디어 컨텐츠(M1)에 액세스하기 위한 미디어 액세스 데이터; 및/또는Media access data for accessing the first media content M1 through the media server; And/or

제 1 미디어 컨텐츠(M1)의 제 1 부분의 스크린샷; 및/또는A screenshot of the first portion of the first media content M1; And/or

제 1 미디어 컨텐츠(M1)에 대한 제 1 부분의 좌표들; 및/또는Coordinates of the first part for the first media content M1; And/or

제 1 미디어 컨텐츠에서의 미디어 객체(들)의 식별; 및/또는Identification of media object(s) in the first media content; And/or

제 1 부분 내에서의 관심있는 미디어 객체(들)의 식별; 및/또는Identification of media object(s) of interest within the first portion; And/or

제 1 미디어 컨텐츠(M1) 내에서의 휘발성 미디어 객체(들)의 식별; 및/또는Identification of volatile media object(s) within the first media content M1; And/or

제 1 미디어 컨텐츠(M1)의 하나 이상의 휘발성 미디어 객체(들)의 세트를 복원하기 위한 리소스 액세스 데이터; 및/또는Resource access data for restoring a set of one or more volatile media object(s) of the first media content M1; And/or

인터랙티브 미디어 객체들과 연관된 인터랙션 기능(들)의 실행을 트리거링하기 위한 트리거링 데이터; 및/또는Triggering data for triggering execution of the interaction function(s) associated with the interactive media objects; And/or

제 1 미디어 컨텐츠의 제 1 부분에 대한 각 관심있는 미디어 객체의 객체 좌표들.Object coordinates of each media object of interest for the first portion of the first media content.

도 3b를 참조하면, 단계(360)에서, 소프트웨어 애플리케이션(106)은 내비게이션 컨텍스트 데이터를 검색(예를 들어, 데이터베이스, 데이터 파일 등으로부터 검색)하고 검색된 내비게이션 컨텍스트 데이터에 기초하여 내비게이션 컨텍스트 복원을 시작한다.3B, in step 360, the software application 106 retrieves the navigation context data (e.g., retrieves from a database, data file, etc.) and initiates a navigation context restoration based on the retrieved navigation context data. .

단계(365)에서, 소프트웨어 애플리케이션(106)은 스크린샷을 제 2 UI 윈도우에 디스플레이하도록 구성된다. 하나 이상의 실시예들에서, 스크린샷의 디스플레이는 제 2 UI 윈도우에 제 2 미디어 컨텐츠(M2)의 제 2 부분을 디스플레이하기 전에 수행된다(단계(390) 참조). 하나 이상의 실시예들에서, 스크린샷은 내비게이션 컨텍스트 데이터에 대응하는 북마크의 시각적 표현으로서 사용될 수 있다. 하나 이상의 실시예들에서, 하나 이상의 스크린샷들이 디스플레이되고, 스크린샷에 대응하는 내비게이션 컨텍스트는 관련 스크린샷과 사용자의 인터랙션의 검출시 및 연관된 내비게이션 컨텍스트 데이터에 기초하여 복원된다.In step 365, the software application 106 is configured to display the screenshot in the second UI window. In one or more embodiments, the display of the screenshot is performed prior to displaying the second portion of the second media content M2 in the second UI window (see step 390). In one or more embodiments, the screenshot may be used as a visual representation of a bookmark corresponding to the navigation context data. In one or more embodiments, one or more screenshots are displayed, and a navigation context corresponding to the screenshot is restored based on the associated navigation context data and upon detection of the user's interaction with the associated screenshot.

단계(369)에서, 소프트웨어 애플리케이션(106)은 미디어 액세스 데이터를 사용하여 제 1 미디어 컨텐츠를 로딩하도록 구성된다. 하나 이상의 실시예들에서, 제 1 미디어 컨텐츠(M1B)는 미디어 서버(103A, 103B, 및 103C)로부터 로딩된다. 로딩된 제 1 미디어 컨텐츠(M1B)는 원래 디스플레이된 제 1 미디어 컨텐츠(M1)와 상이할 수 있다(단계(200)).In step 369, the software application 106 is configured to load the first media content using the media access data. In one or more embodiments, the first media content M1B is loaded from media servers 103A, 103B, and 103C. The loaded first media content M1B may be different from the originally displayed first media content M1 (step 200).

단계(370)에서, 소프트웨어 애플리케이션(106)은 제 1 미디어 컨텐츠(M1)를 적어도 부분적으로 재생하는 제 2 미디어 컨텐츠(M2)를 생성하도록 구성된다. 하나 이상의 실시예들에서, 제 2 미디어 컨텐츠는 단계(340)에서 식별된 하나 이상의 관심있는 미디어 객체들의 세트를 포함한다. 하나 이상의 실시예들에서, 제 2 미디어 컨텐츠는 단계(315)에서 식별된 하나 이상의 휘발성 미디어 객체들의 세트를 포함한다.In step 370, the software application 106 is configured to generate a second media content M2 that at least partially plays the first media content M1. In one or more embodiments, the second media content includes a set of one or more media objects of interest identified in step 340. In one or more embodiments, the second media content includes a set of one or more volatile media objects identified in step 315.

하나 이상의 실시예들에서, 제 1 미디어 컨텐츠(M1)의 휘발성 미디어 객체(들)과 각각 연관된 리소스 액세스 데이터에 기초하여 단계(315)에서 식별된 하나 이상의 휘발성 미디어 객체들의 세트를 복원하도록 로딩된 제 1 미디어 컨텐츠(M1B)를 수정함으로써 제 2 미디어 컨텐츠(M2)가 생성된다. 일부 경우들에, 예를 들어, 휘발성 미디어 객체들의 세트가, 원래 디스플레이된 제 1 미디어 컨텐츠(M1)와 비교하여, 로딩된 제 1 미디어 컨텐츠(M1B)에 영향을 미치거나 수정되거나 변경되지 않는 경우, 휘발성 미디어 객체들의 일부의 복원이 필요하지 않을 수 있다(단계(300)). 하나 이상의 실시예들에서, 복원은 로딩된 제 1 미디어 컨텐츠(M1B)에 존재하지 않는 하나 이상의 휘발성 미디어 객체들 또는 하나 이상의 수정들이 발생하는 하나 이상의 휘발성 미디어 객체들에 대해 수행된다. 수정은 예를 들어 휘발성 미디어 객체에 대한 수정 또는 휘발성 미디어 객체가 제시되는 순서의 수정일 수 있다.In one or more embodiments, a first loaded to restore the set of one or more volatile media objects identified in step 315 based on resource access data each associated with the volatile media object(s) of the first media content M1. The second media content M2 is generated by modifying the first media content M1B. In some cases, for example, when the set of volatile media objects does not affect, modify or change the loaded first media content M1B compared to the originally displayed first media content M1 , It may not be necessary to restore some of the volatile media objects (step 300). In one or more embodiments, the restoration is performed for one or more volatile media objects not present in the loaded first media content M1B or one or more volatile media objects for which one or more modifications occur. The modification may be, for example, a modification to a volatile media object or a modification of the order in which the volatile media objects are presented.

하나 이상의 실시예들에서, 제 2 미디어 컨텐츠(M2)의 생성은, 인터랙티브 미디어 객체들과 연관된 인터랙션 기능(들)이 제 1 미디어 컨텐츠(M1)에서와 동일한 방식으로 트리거링될 수 있고 소프트웨어 애플리케이션(106)이 제 2 미디어 컨텐츠(M2)를 생성하기 위해 사용된 트리거링 데이터에 기초하여 인터랙티브 미디어 객체와 연관된 인터랙션 기능을 트리거링하도록 구성되도록 수행된다.In one or more embodiments, the creation of the second media content M2 may cause the interaction function(s) associated with the interactive media objects to be triggered in the same manner as in the first media content M1 and the software application 106 ) Is configured to trigger an interaction function associated with the interactive media object based on the triggering data used to generate the second media content M2.

하나 이상의 실시예들에서, 인터랙션 컨텍스트는 인터랙티브 미디어 객체들과 연관된 인터랙션 기능(들)의 실행을 트리거링하기 위한 트리거링 데이터에 기초하여 제 2 미디어 컨텐츠에서 하나 이상의 미디어 객체들의 세트에 대해 복원된다. 인터랙티브 휘발성 객체들의 경우에도 인터랙티비티가 복원될 수 있다.In one or more embodiments, the interaction context is restored for the set of one or more media objects in the second media content based on triggering data to trigger execution of the interaction function(s) associated with the interactive media objects. Even in the case of interactive volatile objects, interactivity may be restored.

단계(380)에서, 소프트웨어 애플리케이션(106)은 디스플레이될 제 2 미디어 컨텐츠(M2)에서 관심있는 부분(이하, 제 2 부분)을 식별하도록 구성된다. 하나 이상의 실시예들에서, 제 2 부분은 하나 이상의 관심있는 미디어 객체들의 세트에 기초하여 식별되고 하나 이상의 관심있는 미디어 객체들(예를 들어, 단계(340)에서 식별된 하나 이상의 관심있는 미디어 객체들)의 세트 중에서 적어도 하나의 관심있는 미디어 객체를 포함한다.In step 380, the software application 106 is configured to identify a portion of interest (hereinafter, a second portion) in the second media content M2 to be displayed. In one or more embodiments, the second portion is identified based on the set of one or more media objects of interest and one or more media objects of interest (e.g., one or more media objects of interest identified in step 340). ), including at least one media object of interest.

하나 이상의 실시예들에서, 제 2 미디어 컨텐츠(M2)에 대한 제 2 부분의 좌표들은 하나 이상의 관심있는 객체에 대한 수신된 객체 좌표들에 기초하여 결정된다.In one or more embodiments, the coordinates of the second portion for the second media content M2 are determined based on the received object coordinates for the one or more objects of interest.

하나 이상의 실시예들에서, 제 2 미디어 컨텐츠(M2)에 대한 제 2 부분의 좌표들은, 주어진 관심있는 객체에 대해, 관심있는 미디어 객체의 제 2 미디어 컨텐츠(M2)의 제 2 부분에 대한 객체 좌표들이 동일한 관심있는 미디어 객체의 제 1 미디어 컨텐츠(M1)의 제 1 부분에 대한 객체 좌표들과 동일(또는 가능한 한 근접)하도록 결정된다. 단계(390)에서, 소프트웨어 애플리케이션(106)은 제 2 UI 윈도우에서 제 2 미디어 컨텐츠(M2)의 제 2 부분을 디스플레이하도록 구성된다. 하나 이상의 실시예들에서, 제 2 미디어 컨텐츠(M2)의 제 2 부분의 디스플레이는 스크린샷이 디스플레이되는 동안 제 2 UI 윈도우에서 사용자(101B)와의 인터랙션의 검출시에 수행된다(단계(365) 참조). 일단 제 2 부분이 디스플레이되면, 사용자(101B)는, 제 2 부분에서 현재 디스플레이되는 인터랙티브 객체(들) 상에서 인터랙션 기능(들)을 트리거링할 수 있거나 현재 디스플레이된 부분을 변경하도록 제 2 미디어 컨텐츠(M2)에서 탐색할 수 있다.In one or more embodiments, the coordinates of the second portion for the second media content M2 are, for a given object of interest, the object coordinates for the second portion of the second media content M2 of the media object of interest. Are determined to be the same (or as close as possible) to the object coordinates for the first portion of the first media content M1 of the same media object of interest. In step 390, the software application 106 is configured to display a second portion of the second media content M2 in a second UI window. In one or more embodiments, the display of the second portion of the second media content M2 is performed upon detection of an interaction with the user 101B in the second UI window while the screenshot is being displayed (see step 365). ). Once the second portion is displayed, the user 101B can trigger the interaction function(s) on the interactive object(s) currently displayed in the second portion or to change the currently displayed portion of the second media content (M2). ), you can search.

내비게이션 컨텍스트 데이터에 기초하여 각 내비게이션 컨텍스트가 복원되도록 단계들(360 내지 390)이 반복될 수 있다.Steps 360 to 390 may be repeated so that each navigation context is restored based on the navigation context data.

도 4a 내지 도 4c 및 도 5a 내지 도 5c는 하나 이상의 실시예들에 따른 미디어 컨텐츠 및 사용자 인터페이스들을 나타낸다.4A-4C and 5A-5C illustrate media content and user interfaces in accordance with one or more embodiments.

도 4a는 제 1 픽처(P1) 및 연관된 텍스트(T1), 제 2 픽처(P2) 및 연관된 텍스트들(T21 및 T22), 제 3 픽처(P3) 및 연관된 텍스트(T3), 및 제 4 픽처(P4) 및 연관된 텍스트(T4)와 같은 여러 미디어 객체들을 포함하는 제 1 미디어 컨텐츠(M1)(예를 들어, 웹 페이지)를 도시한다. 4A shows a first picture (P1) and associated text (T1), a second picture (P2) and associated texts (T21 and T22), a third picture (P3) and associated text (T3), and a fourth picture ( P4) and a first media content M1 (e.g., a web page) comprising several media objects such as associated text T4.

도 4b는 소스 전자 장치(104A)의 디스플레이 스크린 상의 소프트웨어 애플리케이션의 윈도우(W1)에 디스플레이된 도 4a의 제 1 미디어 컨텐츠(M1)의 제 1 부분을 도시한다. 제 1 부분에서, 제 3 픽처(P3), 텍스트(T3), 제 4 픽처(P4) 및 텍스트(T4), 텍스트(T22)만이 가시적이며 다른 미디어 객체들(P1, T1, P2, 및 T21)은 비가시적이거나 부분적으로만 가시적이다.4B shows a first portion of the first media content M1 of FIG. 4A displayed in a window W1 of the software application on the display screen of the source electronic device 104A. In the first part, only the third picture (P3), text (T3), fourth picture (P4) and text (T4), text (T22) are visible and other media objects (P1, T1, P2, and T21) Is invisible or is only partially visible.

도 4c는 소스 전자 장치(104A)의 사용자(101A)에 의한 픽처(P4)의 선택시, 미디어 객체가 관심있는 미디어 객체로서 식별되는 것을 도시하며, 상기 관심있는 미디어 객체는 픽처(P4) 및 연관된 텍스트(T4)의 적어도 일부를 포함한다. 도시된 예에서, 관심있는 미디어 객체의 객체 좌표들은 윈도우(W1)의 상단으로부터 높이 Y=75%에 있는 것으로 결정된다. 도시된 예에서, 관심있는 미디어 객체의 수직 위치만이 고려되지만, 윈도우(W1)에 대한 수직 및 수평 위치 둘 모두가 고려될 수 있다.FIG. 4C shows that when a picture P4 is selected by the user 101A of the source electronic device 104A, a media object is identified as a media object of interest, and the media object of interest is the picture P4 and associated It contains at least a part of the text T4. In the illustrated example, the object coordinates of the media object of interest are determined to be at a height Y=75% from the top of the window W1. In the illustrated example, only the vertical position of the media object of interest is considered, but both the vertical and horizontal position relative to the window W1 may be considered.

도 5a는 도 4b에 도시된 윈도우(W1)에 디스플레이된 제 1 미디어 컨텐츠(M1)의 제 1 부분의 스크린샷(SC0)을 도시한다. 스크린샷(SC0)에서 제 3 픽처(P3), 텍스트(T3), 제 4 픽처(P4) 및 텍스트(T4)가 가시적이다.FIG. 5A shows a screen shot SC0 of a first portion of the first media content M1 displayed in the window W1 shown in FIG. 4B. In the screenshot SC0, the third picture P3, the text T3, the fourth picture P4, and the text T4 are visible.

도 5b는 목적지 전자 장치(104B)의 디스플레이 스크린 상의 소프트웨어 애플리케이션의 윈도우(W2)에 디스플레이된(예를 들어, 단계들(265 또는 365) 참조) 도 5a의 스크린샷(SC0)을 도시한다. 도 5b에 도시된 바와 같이, 소스 전자 장치(104A)의 디스플레이 스크린과 목적지 전자 장치(104B)의 디스플레이 스크린의 크기 및 해상도의 차로 인해, 디스플레이된 스크린샷은 윈도우(W2)를 완전히 커버하지 않을 수 있으며/있거나 목적지 전자 장치(104B)의 디스플레이 스크린의 디스플레이 비율에 맞지 않을 수 있다.FIG. 5B shows a screenshot SC0 of FIG. 5A displayed in a window W2 of the software application on the display screen of the destination electronic device 104B (see, eg, steps 265 or 365). As shown in FIG. 5B, due to the difference between the size and resolution of the display screen of the source electronic device 104A and the display screen of the destination electronic device 104B, the displayed screenshot may not completely cover the window W2. And/or may not fit the display ratio of the display screen of the destination electronic device 104B.

도 5c는 제 2 미디어 컨텐츠가 제 1 미디어 컨텐츠에 기초하여 생성될 때의 제 2 윈도우(W2)의 컨텐츠를 도시한다. 관심있는 미디어 객체(즉, 픽처(P4) 및 연관된 텍스트(T4)의 부분)를 포함하는 제 2 미디어 컨텐츠의 부분만이 가시적이다. 도시된 예에서, 제 2 윈도우(W2)에 디스플레이된 부분에 대한 관심있는 미디어 객체의 객체 좌표들은 도 4c에서와 동일하다. 도시된 예에서, 관심있는 미디어 객체의 수직 위치는 윈도우(W2)의 상단으로부터 높이 Y=75%에 집중된다. 수신자 전자 장치(104B)의 디스플레이 스크린의 크기가 소스 전자 장치(104B)의 디스플레이 스크린보다 크기 때문에, 추가적인 미디어 객체들(도 5c의 예에서, 픽처(P2)의 부분)은 전자 장치(104A)의 UI 윈도우(W1)에서 가시적인 미디어 객체들과 비교하여 가시적일 수 있다.5C illustrates contents of the second window W2 when the second media contents are generated based on the first media contents. Only the portion of the second media content containing the media object of interest (ie, the portion of the picture P4 and associated text T4) is visible. In the illustrated example, the object coordinates of the media object of interest for the portion displayed on the second window W2 are the same as in FIG. 4C. In the illustrated example, the vertical position of the media object of interest is concentrated at a height Y=75% from the top of the window W2. Because the size of the display screen of the recipient electronic device 104B is larger than the display screen of the source electronic device 104B, additional media objects (part of the picture P2 in the example of FIG. 5C) are It may be visible in comparison with media objects visible in the UI window W1.

도 6a 내지 도 6c 및 도 7a 내지 도 7c는 하나 이상의 실시예들에 따른 미디어 컨텐츠 및 사용자 인터페이스들을 나타낸다.6A-6C and 7A-7C illustrate media content and user interfaces in accordance with one or more embodiments.

도 6a는 미디어 객체들(O1 내지 O7)의 리스트를 포함하는 제 1 미디어 컨텐츠(M1)(예를 들어, 웹 페이지)를 도시하며, 각 미디어 객체는 픽처 및 동반되는 짧은 텍스트를 포함하는 미디어 객체들의 그룹(또는 컨테이너)이다. 미디어 객체들(O1 내지 O7)의 리스트는 소스 전자 장치(104A)의 사용자(101A)에 의해 입력된 검색 기준에 기초하여 검색 엔진에 의해 수행된 검색의 결과들이다. 그러한 검색의 결과는 검색이 수행되는 시간 및/또는 개인화 파라미터들(예를 들어, 사용자 프로파일 및/또는 사용자 쿠키 및/또는 사용자 위치)에 따라 가변될 수 있으며, 미디어 객체들(O1 내지 O7)의 리스트는 휘발성 미디어 객체들의 세트인 것으로 간주되고 연관된 리소스 액세스 데이터가 동일한 순서로 미디어 객체들(O1 내지 O7)의 이러한 리스트의 복원을 가능하게 하도록 저장된다.6A shows a first media content M1 (e.g., a web page) including a list of media objects O1 to O7, each media object including a picture and accompanying short text Group (or container). The list of media objects O1 to O7 are results of a search performed by a search engine based on a search criterion input by the user 101A of the source electronic device 104A. The result of such a search may vary depending on the time and/or personalization parameters (e.g., user profile and/or user cookie and/or user location) at which the search is performed, and the media objects O1 to O7 The list is considered to be a set of volatile media objects and the associated resource access data is stored to enable restoration of this list of media objects O1 to O7 in the same order.

도 6b는 소스 전자 장치(104A)의 디스플레이 스크린 상의 소프트웨어 애플리케이션의 윈도우(W1)에 디스플레이된 도 6a의 제 1 미디어 컨텐츠(M1)의 제 1 부분을 도시한다. 제 1 부분에서, 미디어 객체들(O2 내지 O6)만이 가시적이며 다른 미디어 객체들(O1 및 O7)은 비가시적이다.6B shows a first portion of the first media content M1 of FIG. 6A displayed in a window W1 of the software application on the display screen of the source electronic device 104A. In the first part, only media objects O2 to O6 are visible and other media objects O1 and O7 are invisible.

도 6c는 소스 전자 장치(104A)의 사용자(101A)에 의해 미디어 객체(O4)를 선택할 때, 휘발성 미디어 객체(O4)가 관심있는 미디어 객체로 식별되는 것을 도시한다. 도시된 예에서, 관심있는 미디어 객체의 객체 좌표들은 윈도우(W1)의 상단으로부터 높이 Y=50%에 있는 것으로 결정된다. 도시된 예에서, 관심있는 미디어 객체의 수직 위치만이 고려되지만, 윈도우(W1)에 대한 수직 및 수평 위치들 모두가 고려될 수 있다. 도시된 예에서, 휘발성 미디어 객체(O4)는 픽처(VP) 및 짧은 텍스트(ST)를 포함한다.6C shows that when the media object O4 is selected by the user 101A of the source electronic device 104A, the volatile media object O4 is identified as a media object of interest. In the illustrated example, the object coordinates of the media object of interest are determined to be at a height Y=50% from the top of the window W1. In the illustrated example, only the vertical position of the media object of interest is considered, but both vertical and horizontal positions for the window W1 may be considered. In the illustrated example, the volatile media object O4 includes a picture VP and a short text ST.

도 7a는 도 6b에 도시된 윈도우(W1)에 디스플레이된 제 1 미디어 컨텐츠(M1)의 제 1 부분의 스크린샷(SC1)을 도시한다. 미디어 객체들(O2 내지 O6)은 스크린샷(SC1)에서 가시적이다. 7A shows a screen shot SC1 of a first portion of the first media content M1 displayed in the window W1 shown in FIG. 6B. Media objects O2 to O6 are visible in the screenshot SC1.

도 7b는 목적지 전자 장치(104B)의 디스플레이 스크린 상의 소프트웨어 애플리케이션의 윈도우(W2)에 디스플레이된 (예를 들어 단계들(265 또는 365) 참조) 도 7a의 스크린샷(SC1)을 도시한다. 도 7b에 도시된 바와 같이, 소스 전자 장치(104A)의 디스플레이 스크린과 목적지 전자 장치(104B)의 디스플레이 스크린의 크기 및 해상도의 차로 인해, 디스플레이된 스크린샷은 윈도우(W2)를 완전히 커버하지 않을 수 있으며/있거나 목적지 전자 장치(104B)의 디스플레이 스크린의 디스플레이 비율에 맞지 않을 수 있다.7B shows a screenshot SC1 of FIG. 7A displayed in a window W2 of the software application on the display screen of the destination electronic device 104B (see, for example, steps 265 or 365). As shown in FIG. 7B, due to the difference between the size and resolution of the display screen of the source electronic device 104A and the display screen of the destination electronic device 104B, the displayed screenshot may not completely cover the window W2. And/or may not fit the display ratio of the display screen of the destination electronic device 104B.

도 7c는 제 2 미디어 컨텐츠(M2)가 제 1 미디어 컨텐츠(M1)에 기초하여 생성될 때의 제 2 윈도우(W2)의 컨텐츠를 도시한다. 동일한 검색 기준으로 검색을 트리거링하더라도, 제 1 미디어 컨텐츠의 초기 컨텐츠(도 6a 참조)에 대응하는 미디어 객체들(O1 내지 O7)의 정확한 순서를 복원함으로써 미디어 객체들(O1 내지 O7)의 리스트가 재생되며, 이는 검색이 목적지 전자 장치(104B) 상의 사용자(101B)에 의해 요청될 경우 미디어 객체들의 상이한 리스트를 초래할 것이다.7C illustrates contents of the second window W2 when the second media content M2 is generated based on the first media content M1. Even if the search is triggered based on the same search criteria, the list of media objects O1 to O7 is played by restoring the correct order of the media objects O1 to O7 corresponding to the initial contents of the first media content (see FIG. This will result in a different list of media objects when a search is requested by user 101B on destination electronic device 104B.

도 7c에 도시된 바와 같이, 제 2 미디어 컨텐츠의 부분만이 제 2 윈도우(W2)에서 가시적이며 이러한 부분은 관심있는 미디어 객체(O4)를 포함한다. 도시된 예에서, 제 2 윈도우에 디스플레이된 부분에 대한 관심있는 미디어 객체의 객체 좌표들은 도 6c에서와 동일하다. 도시된 예에서, 관심있는 미디어 객체의 수직 위치는 윈도우(W2)의 상단으로부터 높이 Y=50%에 집중된다. 수신자 전자 장치(104B)의 디스플레이 스크린의 크기가 소스 전자 장치(104B)의 디스플레이 스크린보다 크기 때문에, 추가 미디어 객체들은 전자 장치(104A)의 UI 윈도우(W1)에서 가시적인 미디어 객체들과 비교하여 가시적일 수 있다.As shown in FIG. 7C, only a portion of the second media content is visible in the second window W2, and this portion includes a media object O4 of interest. In the illustrated example, the object coordinates of the media object of interest for the portion displayed in the second window are the same as in FIG. 6C. In the illustrated example, the vertical position of the media object of interest is concentrated at a height Y=50% from the top of the window W2. Since the size of the display screen of the recipient electronic device 104B is larger than the display screen of the source electronic device 104B, the additional media objects are visible compared to the media objects visible in the UI window W1 of the electronic device 104A. Can be

도 7d는 도 7c의 윈도우(W2)에서 제 2 미디어 컨텐츠(M2)의 관심있는 미디어 객체(O4) 상의 인터랙션이 검출될 때의 제 2 윈도우(W2)의 컨텐츠를 도시한다. 미디어 객체(O4) 상의 인터랙션을 검출하면, 하나 이상의 인터랙션 기능들이 트리거링될 수 있다. 도시된 예에서, 트리거링된 기능은 (예를 들어, 트리거링 데이터에 포함된 하이퍼링크에 기초하여) 타겟 웹 페이지로의 리디렉션이고 타겟 웹 페이지는 윈도우(W2)에 디스플레이된다. 타겟 웹 페이지는 관심있는 미디어 객체(O4)와 연관된 추가 정보, 예를 들어 픽처(VP) 및 풀 텍스트(FT)를 포함할 수 있다. 따라서 인터랙션 컨텍스트가 복원되고 사용자는 이러한 타겟 웹 페이지로부터 탐색을 계속할 수 있다.FIG. 7D shows the contents of the second window W2 when an interaction of the second media content M2 on the media object O4 of interest is detected in the window W2 of FIG. 7C. When an interaction on the media object O4 is detected, one or more interaction functions may be triggered. In the illustrated example, the triggered function is a redirection to the target web page (eg, based on a hyperlink included in the triggering data) and the target web page is displayed in window W2. The target web page may include additional information associated with the media object O4 of interest, for example, a picture (VP) and full text (FT). Thus, the interaction context is restored and the user can continue browsing from these target web pages.

도 8a 내지 도 8c는 하나 이상의 실시예들에 따른 추가 사용자 인터페이스들을 나타낸다. 도 8a는 도 6b에 도시된 윈도우(W1)에 디스플레이된 제 1 미디어 컨텐츠(M1)의 제 1 부분의 스크린샷(SC2)을 도시하며, 여기서, 미디어 객체들의 일부는 관심있는 미디어 객체가 (예를 들어, 사용자 (101A)의 요청에 따라 또는 관심있는 미디어 객체(O4)의 식별시에 자동으로) 흐려지는 것으로 구별된다. 따라서, 미디어 객체들(O2 내지 O3 및 O5 내지 O6)이 스크린샷(SC2)에서 판독불가능하다. 스크린샷(SC2)에서, 미디어 객체(O4)는 픽처(VP) 및 요약 텍스트(ST)를 포함한다.8A-8C illustrate additional user interfaces in accordance with one or more embodiments. FIG. 8A shows a screenshot SC2 of a first portion of the first media content M1 displayed in the window W1 shown in FIG. 6B, wherein some of the media objects are media objects of interest (Example For example, it is distinguished by blurring (automatically) at the request of the user 101A or upon identification of the media object O4 of interest. Thus, the media objects O2 to O3 and O5 to O6 are not readable in the screenshot SC2. In the screenshot SC2, the media object O4 includes a picture VP and a summary text ST.

도 8b는 목적지 전자 장치(104B)의 디스플레이 스크린 상의 소프트웨어 애플리케이션의 윈도우(W2)에 디스플레이된(예를 들어, 단계들(265 또는 365) 참조) 도 7a의 스크린샷(SC2)을 도시한다. 도 7b에 도시된 바와 같이, 소스 전자 장치(104A)의 디스플레이 스크린과 목적지 전자 장치(104B)의 디스플레이 스크린의 크기 및 해상도의 차로 인해, 디스플레이된 스크린샷은 윈도우(W2)를 완전히 커버하지 않을 수 있으며/있거나 목적지 전자 장치(104B)의 디스플레이 스크린의 디스플레이 비율에 맞지 않을 수 있다.FIG. 8B shows a screenshot SC2 of FIG. 7A displayed in a window W2 of the software application on the display screen of the destination electronic device 104B (see, eg, steps 265 or 365). As shown in FIG. 7B, due to the difference between the size and resolution of the display screen of the source electronic device 104A and the display screen of the destination electronic device 104B, the displayed screenshot may not completely cover the window W2. And/or may not fit the display ratio of the display screen of the destination electronic device 104B.

도 8b는 제 2 미디어 컨텐츠(M2)가 제 1 미디어 컨텐츠(M1)에 기초하여 생성될 때의 제 2 윈도우(W2)의 컨텐츠를 도시한다. 미디어 객체들(O1 내지 O7)의 리스트는 재생되지 않는다. 대신, 관심있는 미디어 객체(O4)만이 재생되고 다른 미디어 객체들은 제거되었다.FIG. 8B shows contents of the second window W2 when the second media content M2 is generated based on the first media content M1. The list of media objects O1 to O7 is not played. Instead, only the media object O4 of interest is played and other media objects are removed.

도 8c에 도시된 바와 같이, 미디어 객체들의 리스트의 단일 미디어 객체(O4)만이 제 2 미디어 컨텐츠에서 복원되어야 하므로, 미디어 객체(O4)에 대한 더 큰 뷰가 제공될 수 있다. 예를 들어, 미디어 객체(O4)가 미디어 객체(O4)와 연관된 더 많은 정보를 포함하는 타겟 웹 페이지에 대한 하이퍼링크를 포함하는 경우, 미디어 객체(O4)에 더 큰 뷰를 제공하는 것은 타겟 웹 페이지를 디스플레이하는 것을 포함할 수 있다. 도시된 예에서, 복원된 미디어 객체(O4)에 대한 더 큰 뷰는 도 6a 내지 도 6c에서 이전에 가시적인 짧은 텍스트(ST)를 대신해 픽처(VP) 및 풀 텍스트(FT)를 포함한다.As shown in FIG. 8C, since only a single media object O4 in the list of media objects should be restored from the second media content, a larger view of the media object O4 can be provided. For example, if the media object O4 contains a hyperlink to a target web page containing more information associated with the media object O4, providing a larger view to the media object O4 is the target web It may include displaying the page. In the illustrated example, a larger view of the reconstructed media object O4 includes a picture VP and full text FT in place of the short text ST previously visible in FIGS. 6A-6C.

본 명세서에 기재된 실시예들은, 웹 애플리케이션 또는 미디어 컨텐츠로의 탐색을 위한 애플리케이션(예를 들어, 관심있는 미디어 객체가 도시 및/또는 지하철 역 등의 위치일 수 있는 도시의 대화식 맵을 표시하는 맵 애플리케이션)에 관계없이 임의의 종류의 소프트웨어에서 내비게이션 컨텍스트의 복원하는 데에 적용될 수 있다.Embodiments described herein are a web application or an application for navigation to media content (e.g., a map application that displays an interactive map of a city where the media object of interest may be a location such as a city and/or a subway station, etc.) ), it can be applied to restore navigation context in any kind of software.

Claims (17)

소프트웨어의 내비게이션 컨텍스트를 복원하는 방법으로서,
내비게이션 컨텍스트를 저장하는 단계로서,
상기 소프트웨어에 디스플레이된 제 1 미디어 컨텐츠에 액세스할 수 있게 하는 미디어 액세스 데이터를 저장하는 단계(301);
상기 제 1 미디어 컨텐츠에서, 하나 이상의 미디어 객체들의 세트를 검출하는 단계(310);
상기 하나 이상의 미디어 객체들의 세트에서, 제 1 사용자 인터페이스, UI, 윈도우에서 현재 가시적인 제 1 미디어 컨텐츠의 제 1 부분에서 하나 이상의 관심있는 미디어 객체들의 세트를 식별하는 단계(340); 및
상기 하나 이상의 관심있는 미디어 객체들의 식별을 저장하는 단계(341);를 포함하는, 상기 내비게이션 컨텍스트를 저장하는 단계, 및
상기 내비게이션 컨텍스트를 복원하는 단계로서,
상기 미디어 액세스 데이터에 기초하여 상기 제 1 미디어 컨텐츠를 로딩하는 단계(369);
상기 로딩된 제 1 미디어 컨텐츠에 기초하여 제 2 미디어 컨텐츠를 생성하는 단계(370)로서, 상기 제 2 미디어 컨텐츠는 상기 식별된 하나 이상의 관심있는 미디어 객체들에 대응하는 하나 이상의 복원된 관심있는 미디어 객체의 세트를 포함하는, 상기 제 2 미디어 컨텐츠를 생성하는 단계(370); 및
제 2 UI 윈도우에서 현재 가시적인 제 2 부분이 상기 하나 이상의 복원된 관심있는 미디어 객체들의 세트 중 적어도 하나의 복원된 관심있는 미디어 객체를 포함하도록 상기 제 2 미디어 컨텐츠를 디스플레이하는 단계(390);를 포함하는, 상기 내비게이션 컨텍스트를 복원하는 단계를 포함하는, 방법.
As a method of restoring the navigation context of the software,
Saving the navigation context,
Storing (301) media access data to enable access to the first media content displayed in the software;
Detecting (310) a set of one or more media objects in the first media content;
Identifying (340), in the set of one or more media objects, one or more sets of media objects of interest in a first user interface, a UI, a first portion of the first media content currently visible in a window; And
Storing the identification of the one or more media objects of interest (341); storing the navigation context, and
Restoring the navigation context,
Loading (369) the first media content based on the media access data;
Generating (370) second media content based on the loaded first media content, wherein the second media content is one or more reconstructed media objects of interest corresponding to the identified one or more media objects of interest Generating (370) the second media content comprising a set of; And
Displaying (390) the second media content so that the second portion currently visible in the second UI window includes at least one restored media object of interest from among the set of the one or more restored media objects of interest; Comprising restoring the navigation context.
제 1 항에 있어서,
상기 내비게이션 컨텍스트를 저장하는 단계는,
하나 이상의 미디어 객체의 세트에서 하나 이상의 휘발성 미디어 객체들의 세트를 식별하는 단계; 및
상기 하나 이상의 휘발성 미디어 객체들의 세트를 복원하기 위한 리소스들에 액세스하기 위한 리소스 액세스 데이터를 저장하는 단계;를 더 포함하며,
상기 제 2 미디어 컨텐츠를 생성하는 단계는,
상기 리소스 액세스 데이터에 기초하여 상기 하나 이상의 휘발성 미디어 객체들의 세트의 적어도 하나의 휘발성 미디어 객체를 상기 제 2 미디어 컨텐츠에서 복원함으로써 상기 로딩된 제 1 미디어 컨텐츠를 적어도 부분적으로 수정하는 단계를 포함하는, 방법.
The method of claim 1,
The step of storing the navigation context,
Identifying a set of one or more volatile media objects in the set of one or more media objects; And
Storing resource access data for accessing resources for restoring the set of one or more volatile media objects; and
Generating the second media content,
And at least partially modifying the loaded first media content by restoring at least one volatile media object of the set of one or more volatile media objects from the second media content based on the resource access data. .
제 1 항 또는 제 2 항에 있어서,
상기 내비게이션 컨텍스트를 저장하는 단계는,
하나 이상의 휘발성 미디어 객체들의 세트에서 하나 이상의 인터랙션 기능들과 연관된 하나 이상의 인터랙티브 미디어 객체들의 세트를 식별하는 단계; 및
각 식별된 인터랙티브 미디어 객체에 대해, 식별된 인터랙티브 미디어 객체와 연관된 상기 하나 이상의 인터랙션 기능들의 실행을 트리거링하기 위한 트리거링 데이터를 저장하는 단계;를 더 포함하며,
상기 제 2 미디어 컨텐츠는 하나 이상의 인터랙티브 미디어 객체들의 세트 중 적어도 하나의 인터랙티브 미디어 객체를 포함하고,
상기 내비게이션 컨텍스트를 복원하는 단계는, 상기 제 2 미디어 컨텐츠 내의 각 인터랙티브 미디어 객체에 대해,
사용자가 고려된 인터랙티브 미디어 객체와 연관된 상기 하나 이상의 인터랙션 기능들을 트리거할 수 있게 하는 단계; 및
상기 트리거링 데이터에 기초하여 고려되는 관심있는 미디어 객체와 연관된 상기 하나 이상의 인터랙션 기능들을 트리거링하는 단계;를 더 포함하는, 방법.
The method according to claim 1 or 2,
The step of storing the navigation context,
Identifying a set of one or more interactive media objects associated with one or more interaction functions in the set of one or more volatile media objects; And
For each identified interactive media object, storing triggering data for triggering execution of the one or more interaction functions associated with the identified interactive media object; and further comprising,
The second media content includes at least one interactive media object from a set of one or more interactive media objects,
Restoring the navigation context may include, for each interactive media object in the second media content,
Enabling a user to trigger the one or more interaction functions associated with the considered interactive media object; And
Triggering the one or more interaction functions associated with the media object of interest considered based on the triggering data.
제 3 항에 있어서,
하나 이상의 관심있는 미디어 객체들의 세트의 적어도 하나의 관심있는 미디어 객체는 상기 하나 이상의 인터랙티브 미디어 객체들의 세트의 인터랙티브 미디어 객체인, 방법.
The method of claim 3,
Wherein at least one media object of interest in the set of one or more media objects of interest is an interactive media object in the set of one or more interactive media objects.
제 1 항 내지 제 4 항 중 어느 한 항에 있어서,
적어도 하나의 관심있는 객체에 대해,
상기 내비게이션 컨텍스트를 저장하는 단계는,
상기 제 1 UI 윈도우에서 현재 가시적인 제 1 미디어 컨텐츠의 제 1 부분에 관심있는 객체의 객체 좌표들을 저장하는 단계를 더 포함하고,
상기 내비게이션 컨텍스트를 복원하는 단계는,
상기 객체 좌표들에 기초하여 제 2 미디어 컨텐츠에서 제 2 부분의 제 2 좌표들을 결정하는 단계를 더 포함하는, 방법.
The method according to any one of claims 1 to 4,
For at least one object of interest,
The step of storing the navigation context,
The step of storing object coordinates of an object of interest in a first portion of the first media content currently visible in the first UI window,
Restoring the navigation context includes:
Further comprising determining second coordinates of a second portion in second media content based on the object coordinates.
제 1 항 내지 제 5 항 중 어느 한 항에 있어서,
상기 내비게이션 컨텍스트를 저장하는 단계는,
상기 제 1 미디어 컨텐츠에서 제 1 부분의 스크린샷을 수행하는 단계를 포함하며,
상기 내비게이션 컨텍스트를 복원하는 단계는,
상기 스크린샷을 상기 제 2 UI 윈도우에 디스플레이하는 단계를 포함하며,
상기 스크린샷을 디스플레이하는 단계는 상기 제 2 UI 윈도우에서 제 2 미디어 컨텐츠의 제 2 부분을 디스플레이하기 전에 수행되며,
상기 소프트웨어의 제 2 UI 윈도우에서 상기 제 2 미디어 컨텐츠의 제 2 부분을 디스플레이하는 단계는 상기 제 2 UI 윈도우에서 사용자의 인터랙션의 검출시에 수행되는, 방법.
The method according to any one of claims 1 to 5,
The step of storing the navigation context,
And taking a screenshot of a first portion of the first media content,
Restoring the navigation context includes:
And displaying the screenshot on the second UI window,
Displaying the screenshot is performed before displaying the second portion of the second media content in the second UI window,
The displaying of the second portion of the second media content in the second UI window of the software is performed upon detection of a user's interaction in the second UI window.
제 1 항 내지 제 6 항 중 어느 한 항에 있어서,
상기 제 1 미디어 컨텐츠의 제 1 부분에서 하나 이상의 관심있는 미디어 객체들을 식별하는 단계는, 상기 제 1 부분에서 적어도 하나의 미디어 객체 상의 사용자의 인터랙션을 검출하는 단계 및 인터랙션이 검출된 상기 적어도 하나의 미디어 객체를 식별하는 단계를 포함하는, 방법.
The method according to any one of claims 1 to 6,
The step of identifying one or more media objects of interest in the first part of the first media content may include detecting an interaction of a user on at least one media object in the first part, and the at least one media in which the interaction is detected Identifying the object.
제 1 항 내지 제 7 항 중 어느 한 항에 있어서,
상기 제 1 미디어 컨텐츠의 제 1 부분에서 하나 이상의 관심있는 미디어 객체들을 식별하는 단계는, 상기 제 1 미디어 컨텐츠를 시청하는 사용자의 시청 방향을 결정하는 단계, 및 디스플레이 영역이 상기 시청 방향과 교차하거나 디스플레이 영역이 디스플레이 화면과 시청 방향의 교차점에 가장 가까운 하나 이상의 관심있는 미디어 객체들을 식별하는 단계를 포함하는, 방법.
The method according to any one of claims 1 to 7,
The step of identifying one or more media objects of interest in the first portion of the first media content may include determining a viewing direction of a user viewing the first media content, and a display area crossing the viewing direction or displaying Identifying one or more media objects of interest whose region is closest to the intersection of the display screen and the viewing direction.
제 1 항 내지 제 8 항 중 어느 한 항에 있어서,
상기 제 1 미디어 컨텐츠의 제 1 부분에서 하나 이상의 관심있는 미디어 객체들을 식별하는 단계는 상기 제 1 미디어 컨텐츠의 제 1 부분의 중심 위치에 가장 가까운 하나 이상의 미디어 객체들을 결정하는 단계를 포함하는, 방법.
The method according to any one of claims 1 to 8,
Wherein identifying one or more media objects of interest in the first portion of the first media content comprises determining one or more media objects closest to a central location of the first portion of the first media content.
제 1 항 내지 제 9 항 중 어느 한 항에 있어서,
상기 제 1 미디어 컨텐츠의 제 1 부분에서 하나 이상의 관심있는 미디어 객체들을 식별하는 단계는, 사용자가 하나 이상의 관심있는 미디어 객체들을 선택하도록 하는 단계, 및 상기 선택된 하나 이상의 관심있는 미디어 객체들을 식별하는 단계를 포함하는, 방법.
The method according to any one of claims 1 to 9,
The step of identifying one or more media objects of interest in the first portion of the first media content includes allowing a user to select one or more media objects of interest, and identifying the selected one or more media objects of interest. Containing, method.
제 1 항 내지 제 10 항 중 어느 한 항에 있어서,
상기 제 2 미디어 컨텐츠를 생성하는 단계는: 상기 내비게이션 컨텍스트가 복원되는 사용자에 대해 상기 하나 이상의 미디어 객체들의 세트의 미디어 객체가 액세스가능한지 여부를 결정하는 단계, 및 상기 고려된 미디어 객체가 액세스가능한 경우에만 미디어 객체를 상기 제 2 미디어 컨텐츠에 삽입하는 단계를 포함하는, 방법.
The method according to any one of claims 1 to 10,
The step of generating the second media content comprises: determining whether a media object of the set of one or more media objects is accessible to a user for which the navigation context is restored, and only if the considered media object is accessible Inserting a media object into the second media content.
제 1 항 내지 제 11 항 중 어느 한 항에 있어서,
상기 제 2 미디어 컨텐츠의 레이아웃은 제 1 미디어 컨텐츠의 레이아웃과 상이하며 디스플레이 화면의 화면 해상도 및/또는 화면 크기에 맞추어진 것인, 방법.
The method according to any one of claims 1 to 11,
The layout of the second media content is different from the layout of the first media content and is adapted to a screen resolution and/or a screen size of a display screen.
소프트웨어의 내비게이션 컨텍스트를 복원하는 방법으로서,
내비게이션 컨텍스트 데이터를 획득하는 단계(260; 360)로서, 내비게이션 컨텍스트 데이터는,
하나 이상의 미디어 객체들의 세트를 포함하는 제 1 미디어 컨텐츠로의 액세스를 가능하게 하는 미디어 액세스 데이터;
내비게이션 동안, 제 1 사용자 인터페이스, UI, 윈도우에서 상기 제 1 미디어 컨텐츠의 제 1 부분에 디스플레이되는 하나 이상의 관심있는 미디어 객체들의 세트의 식별;을 포함하는, 상기 내비게이션 컨텍스트 데이터를 획득하는 단계(260; 360); 및
상기 내비게이션 컨텍스트를 복원하는 단계로서,
상기 미디어 액세스 데이터에 기초하여 제 1 미디어 컨텐츠를 로딩하는 단계(269; 369);
상기 로딩된 제 1 미디어 컨텐츠에 기초하여 제 2 미디어 컨텐츠를 생성하는 단계(270; 370)로서, 상기 제 2 미디어 컨텐츠는 식별된 하나 이상의 관심있는 미디어 객체들에 대응하는 하나 이상의 복원된 관심있는 미디어 객체의 세트를 포함하는, 제 2 미디어 컨텐츠를 생성하는 단계(270; 370); 및
제 2 UI 윈도우에서 현재 가시적인 제 2 부분이 하나 이상의 복원된 관심있는 미디어 객체들의 세트 중 적어도 하나의 복원된 관심있는 미디어 객체를 포함하도록 상기 제 2 미디어 컨텐츠를 디스플레이하는 단계(290; 390);를 포함하는, 상기 내비게이션 컨텍스트를 복원하는 단계;를 포함하는, 방법.
As a method of restoring the navigation context of the software,
Acquiring the navigation context data (260; 360), the navigation context data,
Media access data enabling access to a first media content comprising a set of one or more media objects;
Obtaining (260) the navigation context data, including, during navigation, identification of a set of one or more media objects of interest displayed in a first portion of the first media content in a first user interface, UI, window; 360); And
Restoring the navigation context,
Loading (269; 369) first media content based on the media access data;
Generating (270; 370) second media content based on the loaded first media content, wherein the second media content is one or more reconstructed media of interest corresponding to the identified one or more media objects of interest. Generating (270; 370) second media content, comprising a set of objects; And
Displaying (290; 390) the second media content so that the second portion currently visible in the second UI window includes at least one restored media object of interest from among a set of one or more restored media objects of interest; Including, restoring the navigation context; Including, method.
제 13 항에 있어서,
상기 제 1 미디어 컨텐츠는 하나 이상의 휘발성 미디어 객체들의 세트를 포함하고,
상기 내비게이션 컨텍스트 데이터는 상기 하나 이상의 미디어 객체의 세트에서 식별된 하나 이상의 휘발성 미디어 객체들의 세트를 복원하기 위한 리소스들에 액세스하기 위한 리소스 액세스 데이터를 더 포함하고,
상기 제 2 미디어 컨텐츠를 생성하는 단계는,
상기 리소스 액세스 데이터에 기초하여 상기 하나 이상의 휘발성 미디어 객체들의 세트의 적어도 하나의 휘발성 미디어 객체를 상기 제 2 미디어 컨텐츠에서 복원함으로써 상기 로딩된 제 1 미디어 컨텐츠를 적어도 부분적으로 수정하는 단계를 포함하는, 방법.
The method of claim 13,
The first media content comprises a set of one or more volatile media objects,
The navigation context data further includes resource access data for accessing resources for restoring a set of one or more volatile media objects identified in the set of one or more media objects,
Generating the second media content,
And at least partially modifying the loaded first media content by restoring at least one volatile media object of the set of one or more volatile media objects from the second media content based on the resource access data. .
소프트웨어의 내비게이션 컨텍스트를 복원하는 방법으로서,
상기 소프트웨어에 디스플레이된 제 1 미디어 컨텐츠에 액세스할 수 있게 하는 미디어 액세스 데이터를 수신자 장치로 전송하는 단계(201);
상기 제 1 미디어 컨텐츠에서, 하나 이상의 미디어 객체들의 세트를 검출하는 단계(210);
상기 하나 이상의 미디어 객체들의 세트에서, 제 1 사용자 인터페이스, UI, 윈도우에서 현재 가시적인 상기 제 1 미디어 컨텐츠의 제 1 부분에서 하나 이상의 관심있는 미디어 객체들의 세트를 식별하는 단계(240);
상기 수신자 장치에 상기 하나 이상의 관심있는 미디어 객체들의 식별을 전송하는 단계(241); 및
상기 내비게이션 컨텍스트를 상기 수신자 장치 상에서 복원하는 단계;를 포함하며,
상기 내비게이션 텍스트를 복원하는 단계는,
상기 미디어 액세스 데이터에 기초하여 제 1 미디어 컨텐츠를 로딩하는 단계(269);
상기 로딩된 제 1 미디어 컨텐츠에 기초하여 제 2 미디어 컨텐츠를 생성하는 단계(270)로서, 상기 제 2 미디어 컨텐츠는 식별된 하나 이상의 관심있는 미디어 객체들에 대응하는 하나 이상의 복원된 미디어 객체의 세트를 포함하는, 상기 제 2 미디어 컨텐츠를 생성하는 단계(270); 및
제 2 UI 윈도우에서 현재 가시적인 제 2 부분이 상기 하나 이상의 복원된 관심있는 미디어 객체들의 세트 중 적어도 하나의 복원된 관심있는 객체를 포함하도록 상기 제 2 미디어 컨텐츠를 디스플레이하는 단계(290);를 포함하는, 방법.
As a method to restore the navigation context of the software,
Transmitting (201) media access data to a recipient device enabling access to the first media content displayed on the software;
Detecting (210) a set of one or more media objects in the first media content;
In the set of one or more media objects, identifying (240) a set of one or more media objects of interest in a first user interface, a UI, a first portion of the first media content currently visible in a window;
Transmitting (241) the identification of the one or more media objects of interest to the recipient device; And
Including; restoring the navigation context on the receiver device; and
The step of restoring the navigation text,
Loading (269) first media content based on the media access data;
Generating (270) second media content based on the loaded first media content, wherein the second media content comprises a set of one or more reconstructed media objects corresponding to the identified one or more media objects of interest. Generating (270) the second media content comprising; And
Displaying (290) the second media content so that the second portion currently visible in the second UI window includes at least one restored object of interest from among the set of one or more restored media objects of interest (290); How to.
프로세서; 및
상기 프로세서에 동작가능하게 결합된 메모리;를 포함하며,
상기 메모리는, 상기 프로세서에 의해 실행될 때 상기 프로세서가 제 1 항 내지 제 15 항 중 어느 한 항에 따른 방법의 단계들을 수행하도록 하는 컴퓨터로 판독가능한 명령어들을 포함하는, 전자 장치.
Processor; And
A memory operatively coupled to the processor; and
The electronic device comprising computer-readable instructions that, when executed by the processor, cause the processor to perform the steps of the method according to any one of claims 1 to 15.
컴퓨터에 의해 실행될 때, 상기 컴퓨터가 제 1 항 내지 제 15 항 중 어느 한 항에 따른 방법의 단계들을 수행하도록 하는 컴퓨터로 판독가능한 명령어들을 포함하는, 컴퓨터 프로그램 제품.A computer program product comprising computer readable instructions that, when executed by a computer, cause the computer to perform the steps of the method according to claim 1.
KR1020207026651A 2018-02-15 2019-02-11 Method and apparatus for saving and restoring navigation context KR20200131250A (en)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US15/898,136 US20190250999A1 (en) 2018-02-15 2018-02-15 Method and device for storing and restoring a navigation context
EP18305155.6A EP3528145A1 (en) 2018-02-15 2018-02-15 Method and device for storing and restoring a navigation context
EP18305155.6 2018-02-15
US15/898,136 2018-02-15
PCT/EP2019/053347 WO2019158490A1 (en) 2018-02-15 2019-02-11 Method and device for storing and restoring a navigation context

Publications (1)

Publication Number Publication Date
KR20200131250A true KR20200131250A (en) 2020-11-23

Family

ID=65278390

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020207026651A KR20200131250A (en) 2018-02-15 2019-02-11 Method and apparatus for saving and restoring navigation context

Country Status (4)

Country Link
KR (1) KR20200131250A (en)
CN (1) CN111868713A (en)
SG (1) SG11202006212RA (en)
WO (1) WO2019158490A1 (en)

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8041763B2 (en) * 2007-06-12 2011-10-18 International Business Machines Corporation Method and system for providing sharable bookmarking of web pages consisting of dynamic content
US20090254529A1 (en) * 2008-04-04 2009-10-08 Lev Goldentouch Systems, methods and computer program products for content management
US8775923B1 (en) * 2011-09-26 2014-07-08 Google Inc. Web page restoration
US10075399B2 (en) 2016-01-22 2018-09-11 Alkymia Method and system for sharing media content between several users

Also Published As

Publication number Publication date
WO2019158490A1 (en) 2019-08-22
CN111868713A (en) 2020-10-30
SG11202006212RA (en) 2020-07-29

Similar Documents

Publication Publication Date Title
US10705786B2 (en) Collaborative electronic whiteboard publication process
US8407576B1 (en) Situational web-based dashboard
US9213684B2 (en) System and method for rendering document in web browser or mobile device regardless of third-party plug-in software
US10769350B2 (en) Document link previewing and permissioning while composing an email
US20190278815A1 (en) Digital communications platform for webpage overlay
US9311283B2 (en) System for clipping webpages by traversing a dom, and highlighting a minimum number of words
CN101300621B (en) System and method for providing three-dimensional graphical user interface
CN104769581B (en) System and method for providing linked note-taking
US20040205633A1 (en) Previewing file or document content
US20090044133A1 (en) Updating Content Display Based on Cursor Position
RU2487400C2 (en) High-precision display of documents in browsing clients
US20170243017A1 (en) Bundling File Permissions For Sharing Files
US20100251085A1 (en) Content and subfolder navigation control
US10346523B1 (en) Content synchronization across devices
CN102007509A (en) Inserting a multimedia file through a web-based desktop productivity application
US9940396B1 (en) Mining potential user actions from a web page
US20160259630A1 (en) Systems, apparatus and methods for sharing visual model-based applications
US20140118405A1 (en) Providing images with zoomspots
JP2014219974A (en) Method and device for acquiring partial contents of web page
WO2017196408A1 (en) Coalescing notifications associated with interactive digital content
WO2017196407A1 (en) Forking digital content items between digital topical environments
US20190250999A1 (en) Method and device for storing and restoring a navigation context
US20170116291A1 (en) Network caching of search result history and interactions
US10795961B2 (en) Accessing specific portions of documents on a network
US20080297521A1 (en) System and method for providing skins for a web page