KR20190132480A - 소셜 네트워킹 데이터에 기초한 오디오 효과들 - Google Patents

소셜 네트워킹 데이터에 기초한 오디오 효과들 Download PDF

Info

Publication number
KR20190132480A
KR20190132480A KR1020197032152A KR20197032152A KR20190132480A KR 20190132480 A KR20190132480 A KR 20190132480A KR 1020197032152 A KR1020197032152 A KR 1020197032152A KR 20197032152 A KR20197032152 A KR 20197032152A KR 20190132480 A KR20190132480 A KR 20190132480A
Authority
KR
South Korea
Prior art keywords
user
audiovisual content
audio
social networking
networking system
Prior art date
Application number
KR1020197032152A
Other languages
English (en)
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
Application filed by 페이스북, 인크. filed Critical 페이스북, 인크.
Publication of KR20190132480A publication Critical patent/KR20190132480A/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/16Sound input; Sound output
    • G06F3/165Management of the audio stream, e.g. setting of volume, audio stream path
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q50/00Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
    • G06Q50/01Social networking
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q50/00Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
    • G06Q50/10Services
    • G06Q50/30
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q50/00Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
    • G06Q50/40Business processes related to the transportation industry
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/2866Architectures; Arrangements
    • H04L67/30Profiles
    • H04L67/306User profiles
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/25Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
    • H04N21/258Client or end-user data management, e.g. managing client capabilities, user preferences or demographics, processing of multiple end-users preferences to derive collaborative data
    • H04N21/25866Management of end-user data
    • H04N21/25891Management of end-user data being end-user preferences
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/439Processing of audio elementary streams
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/45Management operations performed by the client for facilitating the reception of or the interaction with the content or administrating data related to the end-user or to the client device itself, e.g. learning user preferences for recommending movies, resolving scheduling conflicts
    • H04N21/462Content or additional data management, e.g. creating a master electronic program guide from data received from the Internet and a Head-end, controlling the complexity of a video stream by scaling the resolution or bit-rate based on the client capabilities
    • H04N21/4622Retrieving content or additional data from different sources, e.g. from a broadcast channel and the Internet
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/47End-user applications
    • H04N21/478Supplemental services, e.g. displaying phone caller identification, shopping application
    • H04N21/4788Supplemental services, e.g. displaying phone caller identification, shopping application communicating with other users, e.g. chatting
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/81Monomedia components thereof
    • H04N21/8106Monomedia components thereof involving special audio data, e.g. different tracks for different languages

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Business, Economics & Management (AREA)
  • Databases & Information Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • General Physics & Mathematics (AREA)
  • Tourism & Hospitality (AREA)
  • Human Resources & Organizations (AREA)
  • Marketing (AREA)
  • Primary Health Care (AREA)
  • Strategic Management (AREA)
  • General Business, Economics & Management (AREA)
  • Economics (AREA)
  • General Engineering & Computer Science (AREA)
  • Computing Systems (AREA)
  • Human Computer Interaction (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Computer Graphics (AREA)
  • User Interface Of Digital Computer (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
  • Information Transfer Between Computers (AREA)
  • Operations Research (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

어떤 효과들을 시청각 콘텐트에 적용할지를 결정하기 위한 기술들이 기술된다. 시청각 콘텐트에 적용되는 효과는 오디오 효과일 수 있다. 시청각 콘텐트에 적용될 때, 오디오 효과는 시청각 콘텐트의 오디오 부분을 변경한다. 오디오 콘텐트에 효과들을 적용하는 것으로부터 기인된 변경된 시청각 콘텐트는 이후 사용자 디바이스를 통해 출력될 수 있다. 예를 들면, 변경된 시청각 콘텐트는 시청각 콘텐트를 출력하도록 구성되는 사용자 디바이스(예를 들면, 카메라 애플리케이션)에 의해 실행된 애플리케이션을 통해 출력될 수 있다. 시청각 콘텐트에 적용될 효과는 시청각 콘텐트(예를 들면, 시청각 콘텐트에 포함된 콘텐트)의 속성, 소셜 네트워킹 시스템에 의해 저장된 소셜 네트워킹 데이터, 변경된 시청각 콘텐트를 소비하기 위해 사용된 변경된 시청각 콘텐트의 타깃들 및 변경된 시청각 콘텐트를 소비하기 위해 사용된 디바이스들 등에 관련된 정보, 또는 그의 임의의 조합과 같이 다양한 기준들에 제한 없이 기초하여 결정될 수 있다.

Description

소셜 네트워킹 데이터에 기초한 오디오 효과들
본 출원은 그의 전체가 참조로서 본 명세서에 통합되는 2017년 4월 17일에 출원된 미국 출원 번호 제 15/489,715 호에 대한 우선권을 주장한다.
본 발명은 소셜 네트워킹 데이터에 기초한 오디오 효과들을 제공하는 방법에 관한 것이다.
소셜 네트워킹 시스템은 그의 사용자들이 소셜 네트워킹 시스템에 의해 제공된 다양한 인터페이스들을 통해 서로 상호 작용하고 정보를 공유하게 한다. 소셜 네트워킹 시스템을 사용하기 위해, 사용자는 일반적으로 소셜 네트워킹 시스템에 등록해야 한다. 등록의 결과로서, 소셜 네트워킹 시스템은 사용자 프로파일이라고 종종 지칭되는 사용자에 관한 정보를 생성 및 저장할 수 있다. 사용자 프로파일은 사용자의 신분 정보, 배경 정보, 채용 정보, 인구 통계 정보, 통신 채널 정보, 개인 관심사들, 또는 다른 적절한 정보를 포함할 수 있다. 사용자에 대하여 소셜 네트워킹 시스템에 의해 저장된 정보는 소셜 네트워킹 시스템 및 소셜 네트워킹 시스템의 다른 사용자들과 사용자의 상호 작용들에 기초하여 업데이트될 수 있다.
소셜 네트워킹 시스템은 또한 소셜 네트워킹 시스템에서 다른 엔티티들(예들면, 사용자들, 그룹들, 포스트들, 페이지들, 이벤트들, 사진들, 시청각 콘텐트(예를 들면, 비디오들), 앱들 등)과의 사용자의 관계들 및 상호 작용들에 관련된 정보를 또한 저장할 수 있다. 소셜 네트워킹 시스템은 소셜 그래프에 정보를 저장할 수 있다. 예를 들면, 소셜 그래프는 개인들, 그룹들, 엔티티들, 조직들 등을 나타내는 노드들을 포함할 수 있다. 그리고 노드들간의 에지들은 엔티티들간의 상호 작용들 또는 상호 의존들의 하나 이상의 특정 형태들을 나타낼 수 있다. 소셜 네트워킹 시스템은 다양한 서비스들(예를 들면, 월 포스트들, 사진 공유, 이벤트 조직, 메시징, 게임들, 광고들 등)을 제공하기 위해 이러한 저장된 정보를 사용할 수 있어서 그의 사용자들이 소셜 네트워킹 시스템을 사용하는 사용자들간에 사회적 상호 작용을 가능하게 한다. 소셜 네트워킹 시스템은 소셜 네트워킹 시스템 내 사용자들의 경험을 향상시키기 위해 그의 사용자들에게 제공할 새로운 서비스들을 항상 찾고 있다.
본 개시는 어느 효과들을 시청각 콘텐트를 적용할지를 결정하기 위한 기술들을 설명한다. 효과들은 시청각 콘텐트에서 변경을 야기할 수 있고, 그 결과는 사용자의 디바이스를 통해 출력될 수 있다. 예를 들면, 변경된 시청각 콘텐트는 시청각 콘텐트를 출력하도록 구성되는 사용자의 디바이스(예를 들면, 카메라 애플리케이션)에 의해 실행하는 애플리케이션을 통해 출력될 수 있다.
특정 실시예들에서, 시청각 콘텐트에 적용되는 효과는 오디오 효과, 비디오 효과, 또는 그의 조합일 수 있다. 시청각 콘텐트에 적용될 때, 오디오 효과는 시청각 콘텐트의 오디오 부분을 변경한다.
상기에 나타낸 바와 같이, 오디오 효과들은 시청각 콘텐트에 적용될 수 있다. 오디오 효과는 시청각 콘텐트의 오디오 부분을 삭제, 시청각 콘텐트의 오디오 부분의 특징을 변경(예를 들면, 피치를 변경), 시청각 콘텐트에 새로운 오디오 부분을 추가, 또는 그의 임의의 조합에 의해 시청각 콘텐트에 적용될 수 있다. 주변 오디오 효과들(예를 들면, 배경 사운드), 트리거된 오디오 효과들(예를 들면, 시청각 콘텐트에서 발생하는 특정 이벤트들에 기초하여 트리거되는 오디오 효과들), 디지털 신호 프로세서(DSP) 기술들을 사용하여 생성된 오디오 효과들(예를 들면, 오디오의 피치, 에코 효과 등과 같은 사운드의 하나 이상의 품질들에 대한 변경들), 하나 이상의 알고리즘들에 기초하여 실시간으로 음악 또는 사운드들을 합성하는 합성 오디오 효과들, 공간화된 오디오 효과들(예를 들면, 오디오가 공간에서 특정 지점으로부터 오는 느낌(impression)을 제공하기 위해 가상 객체 또는 실세계에서 상이한 위치에 연결된 오디오 효과들), 또는 그의 임의의 조합과 같지만, 그에 제한 없이 다양한 상이한 형태들의 오디오 효과들이 적용될 수 있다.
특정 실시예들에서, 시청각 콘텐트에 적용될 하나 이상의 오디오 효과들을 결정하기 위해 적응되는 오디오 엔진이 제공된다. 오디오 엔진은 시청각 콘텐트에 적용될 하나 이상의 효과들을 결정하기 위해 다양한 기준들을 사용할 수 있다. 예를 들면, 오디오 엔진은 소셜 네트워킹 시스템에 의해 저장된 정보를 사용할 수 있다.
소셜 네트워킹 시스템은 그의 사용자들에 관한 정보(예를 들면, 사용자 프로파일들)를 저장할 수 있고 소셜 네트워킹 시스템에서 다른 엔티티들(예를 들면, 사용자들, 그룹들, 포스트들, 페이지들, 이벤트들, 사진들, 시청각 콘텐트(예를 들면, 비디오들), 앱들 등)과의 사용자들의 관계들 및 상호 작용들에 관련된 정보를 또한 저장할 수 있다. 예를 들면, 소셜 네트워킹 시스템은 소셜 그래프에 정보를 저장할 수 있다. 소설 그래프는, 예를 들면, 개인들, 그룹들, 엔티티들, 조직들 등을 나타내는 노드들을 포함할 수 있다. 소셜 그래프는 또한 엔티티들간의 상호 작용들 또는 상호 의존들의 하나 이상의 특정 형태들을 나타내는 노드들 간의 에지들을 포함할 수 있다. 특정 실시예들에서, 오디오 엔진은 시청각 콘텐트에 적용될 하나 이상의 오디오 효과들을 결정하기 위해 소셜 네트워킹 시스템에 의해 저장된 정보를 사용할 수 있다.
일 예시적인 예에 대하여, 오디오 엔진은 특정한 시청각 콘텐트가 타깃된 사용자에게 의도되는 것을 결정할 수 있다. 타깃된 사용자는 콘텐트 크리에이터에 대한 프로파일 정보에 기초하여 식별될 수 있다(예를 들면, 오디오 효과로부터 오디오 효과를 수신할 예정인 사용자 또는 오디오 엔진이 오디오 효과에 기초한 시청각 콘텐트를 변경하게 할 예정인 사용자). 특히, 오디오 엔진은 오늘이 콘텐트 크리에이터의 결혼 기념일이라는 것을 결정할 수 있다. 또한, 콘텐트 크리에이터의 프로파일 정보에 기초하여, 오디오 엔진은 타깃된 사용자의 프로파일 정보를 식별할 수 있다. 타깃된 사용자의 프로파일 정보는 콘텐트 크리에이터가 타깃된 사용자와 결혼했을 때 연주된 특별한 노래를 포함할 수 있다. 오디오 엔진은 이후 변경된 시청각 콘텐트가 출력될 때, 특별한 노래가 배경 음악으로서 또한 출력되도록 시청각 콘텐트에 오디오 효과로서 특별한 노래를 추가할 것을 결정할 수 있다.
특정 실시예들에서, 오디오 엔진은 디바이스로부터 수신된 시청각 콘텐트의 속성들에 기초하여 시청각 콘텐트에 적용될 하나 이상의 효과들을 또한 결정할 수 있다. 이들 속성들은, 예를 들면, 수신된 시청각 콘텐트에서 발생하는 이벤트들, 수신된 시청각 콘텐트에서 발생하는 사람 또는 장소들 등과 같은 수신된 시청각 콘텐트의 콘텐트를 포함할 수 있다. 시청각 콘텐트의 다른 속성은 시청각 콘텐트의 하나 이상의 타깃된 사용자들일 수 있다. 타깃된 사용자는 시청각 콘텐트의 의도된 수신자/뷰어인 소셜 네트워킹 시스템의 다른 사용자일 수 있다.
특정 실시예들에서, 오디오 엔진은 사용자의 디바이스에 관해 이용 가능한 지리적 정보에 기초한 사용자의 위치, 사용자의 디바이스상의 온도 센서에 의해 나타내진 온도 표시, 움직임의 속력을 포함하여, 사용자가 정지 상태인지 움직이는 상태인지를 나타내는 사용자의 디바이스상의 가속도계로부터의 정보 등과 같은, 사용자의 디바이스상의 하나 이상의 센서들로부터의 이용 가능한 정보에 기초한 시청각 콘텐트에 추가될 하나 이상의 효과들을 또한 결정할 수 있다.
본 개시에 따른 실시예들은 방법, 저장 매체, 시스템 및 컴퓨터 프로그램 제품에 대하여 첨부된 청구항들에서 개시되고, 하나의 청구항 카테고리, 예를 들면, 방법에 언급된 임의의 특징은 다른 청구항 카테고리, 예를 들며, 시스템에서 또한 주장될 수 있다. 첨부된 청구항들에서 이후 참조들의 종속들은 단지 형식적인 이유들을 위해 선택된다. 그러나, 임의의 이전 청구항들에 대해 이후 의도된 참조로부터 기인하는 이러한 요지가 또한 주장될 수 있어서, 청구항들 및 그의 특징들의 임의의 조합이 개시되고 첨부된 청구항들에서 선택된 종속들에 관련 없이 주장될 수 있다. 청구될 수 있는 요지는 첨부된 청구항들에서 설명되는 특징들의 조합들뿐만 아니라, 청구항들에서 특징들의 임의의 다른 조합도 포함할 수 있고, 청구항들에서 언급된 각각의 특징은 청구항들에서 임의의 다른 특징 또는 다른 특징들의 조합과 조합될 수 있다. 또한, 본 명세서에 기술되거나 도시된 실시예들 및 특징들 중 임의의 것은 개별 청구항에서 및/또는 본 명세서에서 기술되거나 도시된 임의의 실시예 또는 특징 또는 첨부된 청구항들의 특징들의 임의의 것과의 임의의 조합에서 청구될 수 있다.
일 실시예에서, 디바이스상의 시청각 콘텐트를 변경하기 위해 디바이스에 오디오 효과를 전송하기 위해 컴퓨터 시스템에 의해 수행된 방법이 제공된다. 방법은 소셜 네트워킹 시스템의 사용자를 식별하는 단계를 포함할 수 있다. 일부 실시예들에서, 사용자는 디바이스와 연관된다. 다른 실시예들에서, 사용자는 디바이스와 연관되지 않는다. 이러한 실시예들에서, 사용자는 제 1 사용자일 수 있고, 제 2 사용자는 디바이스와 연관된다. 예를 들면, 제 1 사용자는 소셜 네트워킹 시스템의 소셜 그래프에 기초하여 제 2 사용자의 친구일 수 있다.
방법은 소셜 네트워킹 시스템에 의해 저장된 데이터에 액세스하는 단계를 더 포함할 수 있다. 일부 실시예들에서, 데이터는 사용자와 연관될 수 있다. 일부 실시예들에서, 소셜 네트워킹 시스템에 의해 저장된 데이터는 사용자를 설명하는 데이터 또는 소셜 네트워킹 시스템의 사용자들간의 연결들에 관련된 데이터를 포함할 수 있다. 이러한 실시예들에서, 소셜 네트워킹 시스템의 사용자들은 사용자를 포함할 수 있다.
방법은 소셜 네트워킹 시스템에 의해 저장된 데이터에 기초하여 오디오 효과를 결정하는 단계를 더 포함할 수 있다. 일부 실시예들에서, 오디오 효과는 시청각 콘텐트의 오디오 부분을 어떻게 변경할지를 나타낼 수 있다. 이러한 실시예들에서, 오디오 효과는 시청각 콘텐트에 추가될 주변 사운드, 오디오 부분이 시청각 콘텐트에 추가되게 하기 위한 이벤트의 표시, 사운드를 합성하기 위한 하나 이상의 알고리즘들, 공간화된 오디오에 대한 사운드를 밸런싱하기 위해 사용될 위치, 또는 하나 이상의 디지털 신호 프로세서(DSP) 기술들을 시청각 콘텐트에 적용하기 위한 하나 이상의 파라미터들을 포함할 수 있다.
방법은 디바이스상의 시청각 콘텐트를 변경하기 위해 디바이스로 오디오 효과, 또는 (2) 디바이스로 변경된 시청각 콘텐트를 전송하는 단계를 더 포함할 수 있고, 변경된 시청각 콘텐트는 오디오 효과에 기초하여 변경된 오디오 부분을 포함한다. 일부 실시예들에서, 시청각 콘텐트를 변경하는 것은 오디오 효과를 시청각 콘텐트와 병합하는 것을 포함할 수 있다. 일부 실시예들에서, 변경된 시청각 콘텐트는 디바이스에 의해 출력될 수 있다. 이러한 실시예들에서, 변경된 시청각 콘텐트의 오디오 부분은 디바이스의 오디오 출력 서브시스템을 사용하여 출력될 수 있고, 변경된 시청각 콘텐트의 비디오 부분은 디바이스의 비디오 출력 서브시스템을 사용하여 출력될 수 있다.
방법은 사용자와 연관된 시청각 콘텐트를 수신하는 단계 및 수신된 시청각 콘텐트의 속성을 결정하는 단계를 더 포함할 수 있다. 일부 실시예들에서, 오디오 효과를 결정하는 단계는 또한 속성에 기초할 수 있다. 이러한 실시예들에서, 사용자는 수신된 시청각 콘텐트에 기초하여 식별될 수 있다. 일부 실시예들에서, 사용자는 수신된 시청각 콘텐트에서 사용자의 존재를 검출함으로써 식별될 수 있다.
방법은 디바이스의 하나 이상의 센서들로부터 센서 데이터를 수신하는 단계를 더 포함할 수 있고, 오디오 효과를 결정하는 단계는 또한 센서 데이터에 기초한다. 일부 실시예들에서, 센서 데이터는 디바이스의 물리적 위치를 나타내는 데이터를 포함할 수 있다. 다른 실시예들에서, 센서 데이터는 디바이스의 가속도계에 의해 생성된 가속도계 데이터 또는 디바이스상의 온도 센서에 의해 감지된 온도 표시를 포함할 수 있다.
일 실시예에서, 비일시적 컴퓨터 판독 가능 저장 매체는 하나 이상의 프로세서들에 의해 실행 가능한 복수의 명령들을 저장할 수 있고, 하나 이상의 프로세서들에 의해 실행될 때 복수의 명령들은 하나 이상의 프로세서들이: 컴퓨터 시스템에 의해, 소셜 네트워킹 시스템의 사용자를 식별하고; 컴퓨팅 시스템에 의해, 소셜 네트워킹 시스템에 의해 저장된 데이터에 액세스하고, 데이터는 사용자와 연관되고; 컴퓨팅 시스템에 의해, 소셜 네트워킹 시스템에 의해 저장된 데이터에 기초하여 오디오 효과를 선택하고, 오디오 효과는 시청각 콘텐트의 오디오 부분을 어떻게 변경할지를 나타내고; 컴퓨팅 시스템에 의해, 디바이스상의 시청각 콘텐트를 변경하기 위해 디바이스로 오디오 효과, 또는 디바이스로 변경된 시청각 콘텐트를 전송하게 할 수 있고, 변경된 시청각 콘텐트는 오디오 효과에 기초하여 변경된 오디오 부분을 포함한다.
하나 이상의 프로세서에 의해 실행될 때 복수의 명령들은 또한 하나 이상의 프로세서들이: 컴퓨팅 시스템에서, 사용자와 연관된 시청각 콘텐트를 수신하고; 컴퓨팅 시스템에 의해, 수신된 시청각 콘텐트의 속성을 결정하게 할 수 있고, 오디오 효과를 결정하는 것은 또한 속성에 기초한다.
하나 이상의 프로세서에 의해 실행될 때 복수의 명령들은 또한 하나 이상의 프로세서들이: 컴퓨팅 시스템에서, 디바이스의 하나 이상의 센서들로부터의 센서 데이터를 수신하게 할 수 있고, 오디오 효과를 결정하는 것은 또한 센서 데이터에 기초한다.
일 실시예에서, 시스템은: 하나 이상의 프로세서들; 및 하나 이상의 프로세서들에 의해 실행될 때, 하나 이상의 프로세서들이 동작들을 수행하게 하는 명령들을 포함하는 비일시적 컴퓨터 판독 가능 매체를 포함할 수 있고, 동작들은: 소셜 네트워킹 시스템의 사용자를 식별하고; 소셜 네트워킹 시스템에 의해 저장된 데이터에 액세스하고, 데이터는 사용자와 연관되고; 소셜 네트워킹 시스템에 의해 저장된 데이터에 기초하여 오디오 효과를 선택하고, 오디오 효과는 시청각 콘텐트의 오디오 부분을 어떻게 변경할지를 나타내고; 디바이스상의 시청각 콘텐트를 변경하기 위해 디바이스로 오디오 효과, 또는 디바이스로 변경된 시청각 콘텐트를 전송하는 것을 포함하고, 변경된 시청각 콘텐트는 오디오 효과에 기초하여 변경된 오디오 부분을 포함한다.
명령들은 또한 하나 이상의 프로세서들이 동작들을 수행하게 하게 할 수 있고, 동작들은: 사용자와 연관된 시청각 콘텐트를 수신하는 것; 및 수신된 시청각 콘텐트의 속성을 결정하는 것을 포함하고, 오디오 효과를 결정하는 것은 또한 속성에 기초한다.
명령들은 또한 하나 이상의 프로세서들이 동작들을 수행하게 할 수 있고, 동작들은: 디바이스의 하나 이상의 센서들로부터 센서 데이터를 수신하는 것을 포함하고, 오디오 효과를 결정하는 것은 또한 센서 데이터에 기초한다.
일 실시예에서, 하나 이상의 컴퓨터 판독 가능 비일시적 저장 매체는 실행될 때 본 개시에서 임의의 실시예에 따라 방법을 수행하도록 동작 가능한 소프트웨어를 포함할 수 있다.
일 실시예에서, 시스템은: 하나 이상의 프로세서들; 및 프로세서들에 결합되고 프로세서들에 의해 실행 가능한 명령들을 포함하는 적어도 하나의 메모리를 포함할 수 있고, 프로세서들은 명령들을 실행할 때 본 개시의 임의의 실시예에 따른 방법을 수행하도록 동작 가능하다.
일 실시예에서, 컴퓨터 판독 가능 비일시적 저장 매체를 바람직하게 포함하는 컴퓨터 프로그램 제품은 데이터 처리 시스템상에서 실행될 때 본 개시의 임의의 실시예에 따른 방법을 수행하도록 동작 가능할 수 있다.
본 개시에서 채용한 용어들 및 표현들은 제한이 아닌 설명으로서 사용되고, 도시되고 기술된 특징들의 임의의 동등물들 또는 그의 부분들을 배제하는 이러한 용어들 및 표현들의 사용의 의도는 없다. 그러나, 다양한 변경들이 청구된 시스템들 및 방법들의 범위 내에서 가능하다는 것이 인식된다. 따라서, 특정 개념들 및 기술들이 구체적으로 개시되지만, 이들 개념들 및 기술들의 변경 및 변동은 당업자에 의해 재분류될 수 있고, 이러한 변경들 및 변동들은 본 개시에 의해 규정되는 시스템들 및 방법들의 범위 내에 있는 것으로 생각된다는 것이 이해되어야 한다.
본 요약은 청구된 요지의 주요하거나 필수적인 특징들을 식별하도록 의도되지 않고, 또한 청구된 요지의 범위를 결정하기 위해 별개로 사용될 것이 의도되지도 않는다. 요지는 본 출원의 전체 명세의 적절한 부분들, 어느 하나의 또는 모든 도면들, 및 각각의 청구항에 대한 참조로서 이해되어야 한다
다른 특징들 및 예들과 함께 전술한 것은 다음의 명세, 청구항, 및 첨부하는 도면들에 이하에 더 상세히 기술될 것이다.
예시적인 실시예들은 다음 도면들을 참조하여 이하에 상세히 기술된다:
도 1은 특정 실시예들에 따라 오디오 엔진 및 디바이스에 의해 수행된 처리를 도시하는 간략화된 플로차트.
도 2는 특정 실시예들에 따라 시청각 콘텐트에 대해 하나 이상의 효과들을 결정하기 위한 시스템의 간략화된 블록도.
도 3은 특정 실시예들에 따라 오디오 엔진에 의해 수행된 처리를 도시하는 간략화된 플로차트.
도 4는 일 예시적인 실시예를 구현할 수 있는 분산된 환경(400)의 간략화된 블록도.
도 5는 컴퓨팅 시스템의 블록도의 일 예를 도시하는 도면.
다음의 기술에서, 설명의 목적을 위해, 특정한 상세들은 본 개시의 예들의 완전한 이해를 제공하기 위해 진술된다. 그러나, 다양한 예들이 이들 특정한 상세들 없이 실시될 수 있다는 것이 명백할 것이다. 예를 들면, 회로들, 시스템들, 네트워크들, 프로세스들, 및 다른 구성 요소들은 불필요한 상세로 예들을 모호하게 하지 않도록 블록도 형태로 구성요소들로서 도시될 수 있다. 다른 경우들에서, 잘 알려진 회로들, 프로세스들, 알고리즘들, 구조들, 및 기술들은 예들을 모호하게 하는 것을 피하기 위해 필요한 상세 없이 도시될 수 있다. 도면들 및 기술은 제한하는 것이 의도되지 않는다.
다음의 기술은 단지 예들을 제공하고, 본 개시의 범위, 적용 가능성, 또는 구성을 제한하도록 의도되지 않는다. 오히려, 예들의 다음의 설명은 당업자에게 예들을 구현하기 위한 가능한 설명을 제공할 것이다. 다양한 변경들이 첨부된 청구항들에서 진술되는 본 개시의 정신 및 범위로부터 벗어나지 않고 요소들의 구성 및 기능에서 행해질 수 있다는 것이 이해되어야 한다.
또한, 개별 예들이 플로차트, 흐름도, 데이터 흐름도, 구조도, 또는 블록도로서 도시되는 프로세스로서 기술될 수 있다는 것이 주의된다. 플로차트가 순차적인 프로세스로서 동작들을 기술할 수 있지만, 다수의 동작들이 동시에 또는 함께 수행될 수 있다. 또한, 동작들의 순서는 재정렬될 수 있다. 프로세스는 그의 동작들이 완료될 때 종료되지만, 도면에 포함되지 않은 추가의 단계들을 가질 수 있다. 프로세스는 방법, 기능, 절차, 서브루틴, 서브프로그램 등에 대응할 수 있다. 프로세스가 기능에 대응할 때, 그의 종료는 호출 기능 또는 주요 기능에 대한 기능의 리턴에 대응할 수 있다.
용어 "기계 판독 가능 저장 매체" 또는 "컴퓨터 판독 가능 저장 매체"는 이동식 또는 비이동식 저장 디바이스들, 광학 저장 디바이스, 및 명령(들) 및/또는 데이터를 저장, 포함, 또는 전달할 수 있는 다양한 다른 매체들을 포함하지만, 그로 제한되지 않는다. 기계 판독 가능 저장 매체 또는 컴퓨터 판독 가능 저장 매체는 데이터가 저장될 수 있고 무선 또는 유선 접속들로 전파하는 일시적인 전자 신호들 및/또는 반송파들을 포함하지 않는 비일시적 매체를 포함할 수 있다. 비일시적 매체의 예들은 자기 디스크 또는 테이프, 광 저장 매체 예컨대 컴팩트 디스크(CD) 또는 디지털 다기능 디스크(DVD), 플래시 메모리, 메모리 또는 메모리 디바이스들을 포함할 수 있지만, 그로 제한되지 않는다. 컴퓨터 프로그램 제품은 절차, 기능, 서브프로그램, 프로그램, 루틴, 서브루틴, 모듈, 소프트웨어 패키지, 클래스, 또는 명령들, 데이터 구조들, 또는 프로그램문들의 임의의 조합을 나타낼 수 있는 기계 실행 가능 명령들 및/또는 코드를 포함할 수 있다.
또한, 예들은 하드웨어, 소프트웨어, 펌웨어, 미들웨어, 마이크로코드, 하드웨어 기술 언어들(hardware description languages), 또는 그의 임의의 조합에 의해 구현될 수 있다. 소프트웨어, 펌웨어, 미들웨어 또는 마이크로코드에서 구현될 때, 필요한 태스크들을 수행하기 위한 프로그램 코드 또는 코드 세그먼트들(컴퓨터-프로그램 제품)은 기계 판독 가능 매체에 저장될 수 있다. 하나 이상의 프로세서들은 필요한 태스크들을 수행하기 위해 소프트웨어, 펌웨어, 미들웨어, 마이크로코드, 프로그램 코드, 또는 코드 세그먼트들을 실행할 수 있다.
도면들의 일부에 도시된 시스템들은 다양한 구성들로 제공될 수 있다. 일부 예들에서, 시스템들은 시스템의 하나 이상의 구성 요소들은 클라우드 컴퓨팅 시스템에서와 같이 하나 이상의 네트워크들에 걸쳐 분산되는 분산형 시스템으로 구성될 수 있다.
구성 요소들이 특정 동작들을 수행하도록 "구성되는" 것으로 기술되지만, 이러한 구성은, 예를 들면, 동작을 수행하기 위해 전자 회로들 또는 다른 하드웨어를 지정함으로써, 동작을 수행하기 위해 프로그램 가능 전자 회로들(예를 들면, 마이크로프로세서들, 또는 다른 적절한 전자 회로들)을 프로그램함으로써, 그의 임의의 조합으로 달성될 수 있다.
특정 실시예들에 따라, 본 개시는 어느 효과들을 시청각 콘텐트에 적용할 것인지를 결정하기 위한 기술들을 설명한다. 효과들은 시청각 콘텐트에서 변경을 야기할 수 있고, 그의 결과는 사용자의 디바이스를 통해 출력될 수 있다. 예를 들면, 변경된 시청각 콘텐트는 시청각 콘텐트를 출력하도록 구성되는 사용자의 디바이스(예를 들면, 카메라 애플리케이션)에 의해 실행하는 애플리케이션을 통해 출력될 수 있다.
특정 실시예들에서, 시청각 콘텐트에 적용되는 효과는 오디오 효과, 비디오 효과, 또는 그의 임의의 조합일 수 있다. 시청각 콘텐트에 적용될 때, 오디오 효과는 시청각 콘텐트의 오디오 부분을 변경할 수 있다. 특히, 오디오 효과는 시청각 콘텐트의 오디오 부분을 삭제하거나, 시청각 콘텐트의 오디오 부분의 특징을 변경하거나(예를 들면, 피치(pitch)를 변경), 새로운 오디오 부분을 시청각 콘텐트에 추가하거나, 또는 그의 임의의 조합에 의해 시청각 콘텐트를 변경할 수 있다. 주변 오디오 효과들(예를 들면, 배경 사운드), 트리거된 오디오 효과들(예를 들면, 시청각 콘텐트에서 발생하는 특정 이벤트들에 기초하여 트리거되는 오디오 효과들), 디지털 신호 프로세서(DSP) 기술들을 사용하여 생성된 오디오 효과들(예를 들면, 오디오의 피치, 에코 효과 등과 같은 사운드의 하나 이상의 품질들에 대한 변경들), 하나 이상의 알고리즘에 기초하여 실시간으로 음악 또는 사운드들을 합성하는 합성 오디오 효과들, 공간화된 오디오 효과들(예를 들면, 오디오가 공간에서 특정 지점으로부터 들어오고 있는 느낌을 제공하기 위해 가상 물체 또는 실세계에서의 상이한 위치에 연결된 오디오 효과들), 또는 그의 임의의 조합과 같지만 제한 없이 다양한 상이한 형태들의 오디오 효과들이 적용될 수 있다. 주변 오디오 효과들은 미리 기록된 주변 오디오 트랙들(단일 재생 또는 루핑)일 수 있다. 공간화된 오디오 효과들(때때로 360 오디오 효과들이라고 칭해짐)은 오디오가 사용자 귀로 가는 사운드를 밸런싱함으로써 특정 지점으로부터 들어오는 느낌을 제공할 수 있다. 공간화된 오디오 효과들은 사용자가 그들 뒤에 위치된 무언가를 보도록 지향시키기 위해 및 현실감의 높아진 지각을 위해 유용할 수 있다.
특정 실시예들에서, 시청각 콘텐트에 적용될 하나 이상의 오디오 효과들을 결정하기 위해 적용된 오디오 엔진이 제공된다. 오디오 엔진은 시청각 콘텐트에 적용될 하나 이상의 오디오 효과들을 결정하기 위해 다양한 기준들을 사용할 수 있다. 예를 들면, 오디오 엔진은 소셜 네트워킹 시스템에 의해 저장된 정보를 사용할 수 있다.
소셜 네트워킹 시스템은 그의 사용자들에 관한 정보(예를 들면, 사용자 프로파일들)을 저장할 수 있고, 소셜 네트워킹 시스템에서 다른 엔티티들(예를 들면, 사용자들, 그룹들, 포스트들, 페이지들, 이벤트들, 사진들, 시청각 콘텐트(예를 들면, 비디오들), 앱들 등)과의 사용자들의 상호 작용들 및 관계들에 관련된 정보를 또한 저장할 수 있다. 예를 들면, 소셜 네트워킹 시스템은 소셜 그래프에 정보를 저장할 수 있다. 소셜 그래프는, 예를 들면, 개인들, 그룹들, 엔티티들, 조직들 등을 나타내는 노드들을 포함할 수 있다. 소셜 그래프는 엔티티들간의 하나 이상의 특정한 형태들의 상호 의존들 또는 상호 작용들을 나타내는 노드들간의 에지들을 더 포함할 수 있다. 특정 실시예들에서, 오디오 엔진은 시청각 콘텐트에 적용될 하나 이상의 오디오 효과들을 결정하기 위해 소셜 네트워킹 시스템에 의해 저장된 정보를 사용할 수 있다.
일 예시적인 예에 대하여, 오디오 엔진은 특별한 시청각 콘텐트에 대해 타깃된 사용자를 식별할 수 있다. 예를 들면, 타깃된 사용자는 특정한 시청각 콘텐트(예를 들면, 변경된 시청각 콘텐트)에 오디오 효과를 적용한 결과를 수신할 사용자일 수 있다. 이러한 일 예에서, 사용될 오디오 효과는 타깃된 사용자, 콘텐트 크리에이터(콘텐트 크리에이터는 시청각 콘텐트를 변경하기 위한 오디오 효과를 수신할 사용자이거나 타깃된 사용자로 변경된 시청각 콘텐트를 전송하도록 오디오 엔진에 지시할 사용자이다), 특정 시청각 콘텐트에 태그된 사용자(예를 들면, 콘텐트 크리에이터는 태그된 사용자가 특정 시청각 콘텐트를 수신하지 않더라도 특정 시청각 콘텐트와 사용자를 연관시킬 수 있다), 또는 그의 임의의 조합의 소셜 네트워킹 데이터에 기초하여 결정될 수 있다.
소셜 네트워킹 데이터에 기초하여, 오디오 엔진은 오늘이 콘텐트 크리에이터의 결혼 기념일이라는 것을 결정할 수 있다. 또한, 소셜 네트워킹 시스템에 의해 저장된 정보에 기초하여, 오디오 엔진은 콘텐트 크리에이터 또는 콘텐트 크리에이터의 부인이 콘텐트 크리에이터(즉, 타깃된 사용자)가 결혼할 때 연주된 특별한 노래를 가지도록 결정할 수 있다. 오디오 엔진은 이후 시청각 콘텐트에 오디오 효과로서 상기 특별한 노래를 추가할 것을 결정할 수 있어서 변경된 시청각 콘텐트가 출력될 때, 특별한 노래가 또한 배경 음악으로 출력된다.
특정 실시예들에서, 오디오 엔진은 또한, 디바이스로부터 수신된 시청각 콘텐트의 속성들에 기초하여 시청각 콘텐트에 적용될 하나 이상의 효과들을 결정할 수 있다. 이들 속성들은, 예를 들면, 수신된 시청각 콘텐트의 콘텐트, 예컨대 수신된 시청각 콘텐트에서 발생하는 이벤트들, 사람들, 또는 수신된 시청각 콘텐트에서 발생하는 장소들 등을 포함할 수 있다. 시청각 콘텐트의 다른 속성은 시청각 콘텐트의 하나 이상의 타깃된 사용자들일 수 있다.
특정 실시예들에서, 오디오 엔진은 사용자의 디바이스상의 하나 이상의 센서들로부터 이용 가능한 정보, 예컨대 사용자의 디바이스에 관하여 이용 가능한 지리적 정보에 기초한 사용자의 위치, 사용자의 디바이스상의 온도 센서에 의해 나타내진 온도 측정값, 이동 속력을 포함하여, 사용자가 정지 상태인지 이동 상태인지를 나타내는 사용자의 디바이스 상의 가속도계로부터의 정보 등에 기초하여 시청각 콘텐트에 추가될 하나 이상의 효과들을 또한 결정할 수 있다.
도 1은 특정 실시예들에 따라 디바이스 및 오디오 엔진에 의해 수행된 처리를 나타내는 간략화된 플로차트이다. 도 1에 도시된 처리는 각각의 시스템들의 하나 이상의 처리 유닛들(예를 들면, 프로세서들, 코어들), 하드웨어, 또는 그의 조합들에 의해 실행된 소프트웨어(예를 들면, 코드, 명령들, 프로그램)에서 구현될 수 있다. 소프트웨어는 비일시적 저장 매체 상(예를 들면, 메모리 디바이스 상)에 저장될 수 있다. 도 1에 나타내지고 이하에 기술된 방법은 예시적이고 비제한적이도록 의도된다. 도 1에 도시된 특별한 일련의 처리 단계들은 제한하도록 의도되지 않는다. 점선의 좌측상의 단계들은 디바이스에 의해 수행되고, 점선의 우측상의 단계들은 오디오 엔진에 의해 수행되고, 점선의 양측들상의 단계들은 디바이스 또는 오디오 엔진에 의해 수행될 수 있다.
110에서, 소셜 네트워킹 시스템의 사용자가 식별될 수 있다. 사용자는 디바이스 또는 오디오 엔진에 의해 식별될 수 있다. 일부 실시예들에서, 사용자는 변경된 시청각 콘텐트를 생성하고 있는 디바이스와 연관될 수 있는 콘텐트 크리에이터일 수 있다(예를 들면, 변경된 시청각 콘텐트는 디바이스상에 또는 소셜 네트워킹 시스템상에 생성될 수 있다). 다른 실시예들에서, 사용자는 변경된 시청각 콘텐트의 의도된 수신자일 수 있는 타깃된 사용자일 수 있다. 의도된 수신자는 디바이스의 사용자가 변경된 시청각 콘텐트를 전송하도록 의도하는 누군가일 수 있다. 다른 실시예들에서, 사용자는 콘텐트 크리에이터와 관련된 사용자일 수 있다(예를 들면, 시청각 콘텐트에 태그된 사용자 또는 변경된 시청각 콘텐트의 의도된 수신자이도록 오디오 엔진에 의해 식별된 사용자).
사용자가 식별될 수 있는 다수의 방식들이 존재한다는 것이 인식되어야 하지만, 이하에는 일부가 기술될 것이다. 예를 들면, 디바이스는 디바이스상에 실행하는 소셜 네트워킹 애플리케이션과 연관된 사용자를 식별할 수 있고, 소셜 네트워킹 애플리케이션은 소셜 네트워킹 시스템과 연관된다. 이러한 일 예에서, 오디오 엔진은 디바이스로부터 메시지를 수신할 수 있고, 여기서 메시지는 사용자의 식별을 포함한다.
다른 예에 대하여, 오디오 엔진은 소셜 네트워킹 시스템의 사용자들에 기초하여 사용자를 식별할 수 있다. 예를 들면, 오디오 엔진은 하나 이상의 기준들을 만족시키는 소셜 네트워킹 시스템의 모든 사용자들에게 요청할 수 있다. 이러한 일 예에서, 하나 이상의 기준들에 기초하여 소셜 네트워킹 시스템에 의해 리턴된 사용자는 사용자로서 확립될 수 있다.
다른 예에 대하여, 오디오 엔진은 디바이스(또는 다른 디바이스 또는 시스템)로부터 시청각 콘텐트를 수신할 수 있다. 오디오 엔진은 이후 수신된 시청각 콘텐트에 기초하여 사용자를 식별할 수 있다(예를 들면, 수신된 시청각 콘텐트의 콘텐트 인식).
120에서, 사용자가 식별된 후, 소셜 네트워킹 시스템에 의해 저장된 데이터(때때로 소셜 네트워킹 데이터라고 지칭됨)가 평가될 수 있다. 소셜 네트워킹 데이터는 사용자-프로파일 데이터, 소셜-그래프 데이터, 또는 소셜 네크워킹 시스템에 의해 저장된 다른 데이터(이하에 더 기술되는 바와 같은)를 포함하지만 그로 제한되지 않는 다양한 데이터의 형태들을 포함할 수 있다. 일부 실시예들에서, 사용자-프로파일 데이터(또는 그의 부분들)는 소셜-그래프 데이터에 포함될 수 있다.
사용자-프로파일 데이터는 소셜 네트워킹 시스템의 사용자에 관한 또는 그와 관련된 정보를 포함할 수 있다. 사용자는 소셜 네트워킹 시스템을 사용하는 개인(인간 사용자), 엔티티(예를 들면, 기업, 회사, 또는 제 3 자 애플리케이션), 또는 그룹(예를 들면, 개인들 또는 엔티티들의)일 수 있다. 사용자는 소셜 네트워킹 시스템의 다른 사용자들 또는 엔티티들과 상호작용, 통신, 또는 정보를 공유하기 위해 소셜 네트워킹 시스템을 사용할 수 있다. 사용자를 위한 사용자-프로파일 데이터는 사용자 이름, 프로파일 사진, 연락처 정보, 생일 정보, 성별 정보, 결혼 상태 정보, 가족 상황 정보, 직장 정보, 교육 배경 정보, 사용자의 선호들, 관심사들, 또는 다른 인구학적 정보와 같은 정보를 포함할 수 있다. 소셜 네트워킹 시스템은 소셜 네트워킹 시스템을 사용하는 사용자의 상호 작용들에 기초하여 이러한 정보를 업데이트할 수 있다.
제한으로서가 아닌 일 예로서, 사용자-프로파일 데이터는 적절한 성명들(개인의 제 1 이름, 중간 이름, 성, 기업체의 상표명 또는 회사명 등), 별명, 바이오그래픽, 인구 통계, 사용자의 성별, 현재 거주 도시, 생일, 고향, 관계 상태, 결혼 기념일, 결혼식에서 연주된 노래, 정치적 견해, 사용자가 찾고 있는 것 또는 사용자가 소셜 네트워킹 시스템을 사용하는 방법(예를 들면, 친구, 관련자들, 교제, 네트워킹 등 찾기), 사용자가 참여하거나 즐기는 다양한 활동들, 사용자의 다양한 흥미들, 사용자의 다양한 미디어 선호들(예를 들면, 음악, 텔레비전 쇼, 책, 시세), 사용자의 연락처 정보(예를 들면, 이메일 주소들, 전화 번호들, 거주지 주소, 직장 주소, 또는 다른 적절한 연락처 정보), 사용자의 교육 이력, 사용자의 근무 경력, 및 사용자의 다른 형태들의 설명 정보를 포함할 수 있다.
소셜-그래프 데이터는 소셜 네트워킹 시스템에 의해 저장된 소셜 그래프와 관련될 수 있다. 특정한 구현들에서, 소셜 그래프는 소셜 네트워킹 시스템 내 사용자들 및 다른 엔티티들을 나타내는 노드들을 가지는 다수의 노드들을 포함할 수 있다. 소셜 그래프는 또한 노드들을 연결하는 에지들을 포함할 수 있다. 노드들 및 에지들은 각각 소셜 네트워킹 시스템에 의해 데이터 객체들로서 저장될 수 있다.
특별한 실시예들에서, 소셜 그래프 내 사용자 노드는 소셜 네트워킹 시스템의 사용자에 대응할 수 있다. 특별한 사용자를 나타내는 노드에 대하여, 특별한 사용자에 관련된 정보는 소셜 네트워킹 시스템에 의해 노드와 연관될 수 있다.
특정한 실시예들에서, 소셜 그래프의 노드들의 쌍은 하나 이상의 에지들에 의해 연결될 수 있다. 노드들의 쌍을 연결하는 에지는 노드들의 쌍간의 관계를 나타낼 수 있다. 특별한 실시예들에서, 에지는 노드들의 쌍 사이의 관계에 대응하는 데이터 객체(또는 속성)을 포함하거나 나타낼 수 있다. 제한으로서가 아닌 일 예로서, 제 1 사용자는 제 2 사용자가 제 1 사용자의 "친구"인 것을 나타낼 수 있다. 이러한 표시에 응답하여, 소셜 네트워킹 시스템은 "친구 요청"을 제 2 사용자에게 송신할 수 있다. 제 2 사용자가 "친구 요청"을 확정한 경우, 소셜 네트워킹 시스템은 소셜 그래프에서 제 1 사용자의 사용자 노드 및 제 2 사용자의 사용자 노드를 연결하는 에지를 생성하고, 하나 이상의 데이터 저장소들에서 소셜-그래프 데이터로서 에지를 저장한다. 제한이 아닌 일 예로서, 에지는 친구 관계, 가족 관계, 사업 또는 고용 관계, 팬 관계, 팔로어 관계, 방문자 관계, 가입자 관계, 상급자/하급자 관계, 상호 관계, 비상호 관계, 다른 적절한 형태의 관계, 또는 두 개 이상의 이러한 관계들을 나타낼 수 있다.
특별한 실시예들에서, 에지 형태는 대응하는 노드들의 쌍들간의 특정한 형태의 연결을 기술하는 메타 데이터 또는 더 많은 상세를 추가하는 하나 이상의 에지 하위 형태들을 포함할 수 있다. 에지는 에지가 소셜 그래프에서 연결하는 노드들의 형태에 적어도 부분적으로 기초하는 복수의 에지 형태들 중 하나일 수 있다. 제한이 아닌 일 예로서, NETFLIX에 대한 웹 애플리케이션은 "내가 시청하기를 원하는 영화들"을 지정하는 에지 형태를 초래할 수 있다. 에지들이 연관된 에지 형태들을 가지거나 할당받는 이러한 실시예들에서, 에지 자체는 에지가 연결하는 노드들의 쌍 사이의 연결의 형태를 규정하는 데이터, 예컨대, 예를 들면, 에지가 연결하는 노드들의 형태들을 기술하는 데이터(예를 들면, 사용자, 허브, 카테고리, 또는 허브의 분류)를 저장하거나, 그와 함께 저장될 수 있다.
특별한 실시예들에서, 각각의 에지는 에지가 연결하는 노드들의 형태들에 관계 없이 노드들 사이의 연결을 간단하게 규정하거나 나타낼 수 있다. 에지 자체는 에지가 연결하는 노드들의 식별자들을 저장하거나 그와 함께 저장될 수 있지만, 에지가 연결하는 노드들의 쌍 사이의 연결의 형태를 기술하는 데이터를 저장하거나 그와 함께 저장될 수 없다. 또한, 이들 또는 다른 실시예들 중 어느 실시예에서, 에지에 의해 연결된 노드들 사이의 관계 또는 연결의 형태를 나타낼 수 있는 데이터는 그들 자체가 노드들과 함께 저장될 수 있다. 특별한 실시예들에서, 에지들, 뿐만 아니라 속성들(예를 들면, 에지 형태 및 에지에 의해 연결된 노드들에 대응하는 노드 식별자들), 메타데이터, 또는 에지들을 규정하거나, 특징화하거나, 또는 그와 관련된 다른 정보가 소셜-그래프 데이터베이스에 (예를 들면, 데이터 객체들로서) 저장될 수 있다.
130에서, 오디오 효과는 소셜 네트워킹 시스템에 의해 저장된 데이터에 기초하여 결정될 수 있다. 일부 실시예들에서, 오디오 엔진은 특별한 오디오 효과가 소셜 네트워킹 시스템에 의해 저장된 데이터로부터 식별된 특별한 이벤트에 관련될 때를 결정하기 위한 로직을 포함할 수 있다. 예를 들면, 오디오 엔진은 생일에 대한 오디오 효과들을 식별할 수 있어서, 오디오 엔진은 데이터가 생일을 나타낼 때 생일에 관련된 오디오 효과를 결정할 수 있다. 다른 실시예들에서, 오디오 효과들은 오디오 효과들이 관련되는 대상들을 나타내는 메타데이터를 포함할 수 있다. 예를 들면, 오디오 효과는 오디오 효과가 관련될 때를 기술하는 하나 이상의 태그들을 포함할 수 있다. 다른 실시예들에서, 오디오 엔진은 오디오 효과가 소셜 네트워킹 시스템에 의해 저장된 데이터에 기초하여 결정되어야 하는지의 여부를 결정하기 위해 오디오 효과를 실행할 수 있다. 일부 실시예들에서, 오디오 엔진은 하나 이상의 소스들로부터 수신될 수 있는 오디오 효과들의 풀에 액세스할 수 있다. 이러한 실시예들에서, 오디오 엔진은 오디오 효과들의 풀로부터 오디오 효과를 결정할 수 있다.
오디오 효과는 시청각 콘텐트에 추가될 주변 사운드, 오디오 효과가 시청각 콘텐트에 적용되게 하기 위한 이벤트의 표시, 하나 이상의 디지털 신호 프로세서(DSP) 기술들을 시청각 콘텐트에 적용하기 위한 하나 이상의 파라미터들, 사운드를 합성하기 위한 하나 이상의 알고리즘들, 공간화된 오디오에 대하여 사운드를 밸런싱하기 위해 사용될 위치, 또는 그의 임의의 조합을 포함할 수 있다.
일부 실시예들에서, 오디오 효과를 결정하는 것은 또한 디바이스에 의해 획득된 데이터(때때로 센서 입력들이라고 지칭됨)에 기초할 수 있다. 예를 들면, 센서 입력들은 디바이스의 물리적 위치, 디바이스가 위치된 환경의 현재 온도, 가속도 정보, 또는 디바이스의 하나 이상의 센서들에 의해 감지된 다른 데이터를 포함할 수 있다.
130 후에, 디바이스 또는 오디오 엔진이 시청각 콘텐트를 변경하고 있는지의 여부에 따라 플로차트는 140 또는 150으로 진행할 수 있다. 140에서, 오디오 효과는 디바이스에 의한 출력을 위해 디바이스로 전송될 수 있다. 일부 실시예들에서, 오디오 효과는 오디오 효과를 시청각 콘텐트에 적용하기 위한 로직을 포함할 수 있다. 오디오 효과는 오디오 효과를 적용할 때를 결정하기 위한 로직을 또한 포함할 수 있다. 오디오 효과는 또한 오디오 효과를 적용할 때 사용될 오디오를 포함할 수 있다. 그리고 150에서, 오디오 효과는 디바이스에 의해 수신될 수 있다.
160에서, 시청각 콘텐트는 오디오 효과에 기초하여 변경될 수 있다. 예를 들면, 오디오 효과는 시청각 콘텐트의 오디오 부분을 삭제하거나, 시청각 콘텐트의 오디오 부분의 특징을 변경하거나(예를 들면, 피치를 변경), 새로운 오디오 부분을 시청각 콘텐트에 추가하거나, 그의 임의의 조합에 의해 시청각 콘텐트를 변경할 수 있다. 시청각 콘텐트를 변경하는 것은 변경된 시청각 콘텐트를 생성할 수 있다. 일부 실시예들에서, 시청각 콘텐트를 변경하는 것은 시청각 콘텐트와 오디오 효과를 병합하는 것을 포함할 수 있다. 일부 예들에서, 오디오 효과들은 다수의 오디오 효과들이 시청각 콘텐트에 적용되도록 계층화될 수 있다. 예를 들면, 제 1 층(예를 들면 제 1 오디오 효과)은 시청각 콘텐트에 적용될 수 있다. 이러한 일 예에서, 제 2 층(예를 들면, 제 2 오디오 효과)는 또한 시청각 콘텐트에 적용될 수 있고, 제 1 층은 시청각 콘텐트가 알려지는 방법을 변경하기 위해 제 2 층의 상부상에 적용된다. 일부 예들에서, 변경들은 디바이스상에서 발생할 수 있다. 다른 예들에서, 변경은 오디오 엔진에 의해 발생할 수 있다.
170에서, 변경된 시청각 콘텐트는 디바이스에 의해 출력될 수 있다. 일부 실시예들에서, 변경된 시청각 콘텐트의 오디오 부분은 디바이스의 오디오 출력 서브시스템을 사용하여 출력될 수 있고, 변경된 시청각 콘텐트의 비디오 부분은 디바이스의 비디오 출력 서브시스템을 사용하여 출력될 수 있다.
도 1은 특정한 순서로 특정한 디바이스들 또는 시스템들에 의해 수행되는 특정 단계들을 기술하지만, 단계들은 상이한 디바이스들 또는 시스템들에 의해 및/또는 상이한 순서로 수행될 수 있다는 것이 인식되어야 한다.
도 2는 특정 실시예들에 따라 시청각 콘텐트에 대한 하나 이상의 오디오 효과들을 결정하기 위한 시스템(200)의 간략화된 블록도이다. 도 2에 도시된 시스템(200)은 단순히 예이고, 청구항에서 인용된 발명의 실시예들의 범위를 부당하게 제한하도록 의도되지 않는다. 당업자는 다수의 가능한 변형들, 대안들, 및 변경들을 인식할 것이다. 예를 들면, 일부 구현들에서, 시스템(200)은 도 2에 도시된 것들보다 많거나 적은 시스템들을 가질 수 있거나, 두 개 이상의 시스템들을 조합할 수 있거나, 시스템들의 상이한 구성 또는 배열을 가질 수 있다.
도 2에 도시된 바와 같이, 시스템(200)은 입력으로서 시청각 콘텐트를 수신하고, 다양한 기준들에 기초하여 사용자의 디바이스상에 시청각 콘텐트를 적용하기 위해 하나 이상의 오디오 효과들을 결정하고, 하나 이상의 효과들이 사용자의 디바이스에 의해 출력될 시청각 콘텐트에 적용되도록 사용자 디바이스에 하나 이상의 오디오 효과들을 전송하도록 적응되는 오디오 엔진(200)을 포함한다.
수신된 시청각 콘텐트는 다양한 시청각 콘텐트 소스들(210)로부터일 수 있다. 예를 들면, 수신된 시청각 콘텐트는 원격 시스템 또는 사용자의 디바이스의 시청각 정보 캡처 서브시스템(예를 들면, 캡처된 콘텐트(212))으로부터일 수 있다. 예를 들면, 시청각 정보 캡처 서브시스템은 실시간으로 오디오 및/또는 비디오 정보를 캡처할 수 있다. 일부 실시예들에서, 시청각 정보는 이미지들 또는 비디오를 캡처하기 위한 하나 이상의 카메라들, 오디오를 캡처하기 위한 하나 이상의 마이크로폰들 등을 포함할 수 있다. 시청각 콘텐트는 또한 (사용자의 디바이스 또는 원격 시스템상에 실행하고 있는) 애플리케이션으로부터 출력될 수 있다.
특정 실시예들에서, 수신된 시청각 콘텐트는 예를 들면, 사용자에 의해 창작된 비디오 클립, 오디오 클립 등을 포함할 수 있는 창작된 콘텐트(216)를 포함할 수 있다. 창작된 콘텐트(216)는 다양한 이용 가능한 창작 애플리케이션들(예를 들면, 오디오 및 비디오 편집 애플리케이션들)을 사용하여 창작될 수 있다. 창작된 콘텐트(216)는 원래의 콘텐트, 라이센스 콘텐트, 또는 그의 임의의 조합을 포함할 수 있다.
특정 실시예들에서, 수신된 시청각 콘텐트는 저장된 위치로부터 액세스된 저장된 시청각 콘텐트(214)를 포함할 수 있다. 저장된 위치는 소셜 네트워킹 시스템 내의 저장 위치 또는 원격 위치로부터의 사용자 디바이스상일 수 있다.
오디오 엔진(220)은 사용자의 디바이스상의 시청각 콘텐트에 적용될 하나 이상의 오디오 효과들을 결정하도록 구성된다. 상기에 나타낸 바와 같이, 오디오 엔진(220)은 하나 이상의 효과들을 결정하기 위해 다양한 상이한 기준들을 사용할 수 있다. 일부 실시예들에서, 하나 이상의 오디오 효과들을 결정하는 것은 센서 입력들(230), 소셜 네트워킹 데이터(240), 수신된 시청각 콘텐트(예를 들면, 수신된 시청각 콘텐트에서 일어나는 특정 이벤트들 또는 수신된 시청각 콘텐트와 연관된 사용자의 표시), 또는 그의 임의의 조합에 기초할 수 있다.
센서 입력들(230)은 사용자의 디바이스상의 하나 이상의 센서들에 의해 획득되는 현재 정보일 수 있다. 센서 입력들(230)의 예들은 사용자의 디바이스의 현재 위치, 사용자의 디바이스가 위치되는 환경의 현재 온도, 가속도계 정보 등을 포함한다.
소셜 네트워킹 데이터(240)는 소셜 네트워킹 시스템에 의해 저장된 데이터를 나타낸다. 소셜 네트워킹 데이터(240)는 사용자-프로파일 데이터(242), 소셜-그래프 데이터(244), 또는 상기에 기술되는 소셜 네트워킹 시스템에 의해 저장된 다른 데이터를 포함하지만 그로 제한되지 않는 다양한 형태들의 데이터를 포함할 수 있다. 일부 실시예들에서, 사용자-프로파일 데이터(242)(또는 그의 부분들)는 소셜-그래프 데이터(244)에 포함될 수 있다. 예시적인 예를 위하여, 소셜 네트워킹 데이터(240)는 사용자가 오늘 생일이라는 것을 나타낼 수 있다. 상기 정보에 기초하여, 생일 축하 오디오 효과가 사용자의 디바이스에 의해 제시되도록 결정될 수 있다.
소셜-그래프 데이터(244)는 소셜 네트워킹 시스템에 의해 저장된 소셜 그래프에 관련될 수 있다. 특정 구현들에서, 소셜 그래프는 상기에 기술되는 소셜 네트워킹 시스템 내 사용자들 및 다른 엔티티들을 나타내는 노드들을 갖는 다수의 노드들을 포함할 수 있다. 소셜 그래프는 또한 상기에 기술되는 노드들을 연결하는 에지들을 포함할 수 있다.
일부 실시예들에서, 오디오 엔진(220)은 특별한 오디오 효과가 소셜 네트워킹 데이터(240)로부터 식별된 특별한 이벤트에 관련될 때를 결정하기 위한 로직을 포함할 수 있다. 예를 들면, 오디오 엔진(220)은 생일들에 대하여 오디오 효과들을 식별할 수 있어서, 오디오 엔진(220)은 소셜 네트워킹 데이터(240)가 생일을 나타낼 때 생일들과 관련된 오디오 효과를 결정할 수 있다. 다른 실시예들에서, 오디오 효과들은 오디오 효과들이 관련되는 대상들을 나타내는 메타데이터를 포함할 수 있다. 예를 들면, 오디오 효과는 오디오 효과가 관련될 때를 기술하는 하나 이상의 태그들을 포함할 수 있다. 다른 실시예들에서, 오디오 엔진(220)은 오디오 효과가 소셜 네트워킹 데이터(240)에 기초하여 결정되어야 하는지의 여부를 결정하기 위해 오디오 효과를 실행할 수 있다. 일부 실시예들에서, 오디오 엔진(220)은 오디오 효과 소스들(250)로부터 수신될 수 있는 오디오 효과들의 풀에 액세스할 수 있다. 이러한 실시예들에서, 오디오 엔진(220)은 오디오 효과들의 풀로부터 오디오 효과를 결정할 수 있다.
일부 실시예들에서, 하나 이상의 오디오 효과들은 하나 이상의 오디오 효과 소스들(250)로부터 결정될 수 있다. 오디오 효과 소스들은 편집기(252), 코더(254), 사전 구성 효과 데이터 저장소(256), 또는 그의 임의의 조합을 포함할 수 있다. 편집기(252)는 효과(예를 들면, 오디오 효과)를 생성하기 위해 사용자를 위한 그래픽 사용자 인터페이스를 제공할 수 있다. 코더(254)는 효과를 생성하기 위해 사용자에게 텍스쳐 사용자 인터페이스를 제공할 수 있다. 사전 구성 효과 데이터 저장소(256)는 그위에 저장된 전체 효과들을 갖는 데이터베이스일 수 있다.
오디오 엔진(220)이 사용자의 디바이스상의 시청각 콘텐트에 적용될 하나 이상의 오디오 효과들을 결정한 후, 오디오 엔진(220)은 사용자의 디바이스에 하나 이상의 오디오 효과들을 전송하도록 구성된다. 서브시스템(260)을 변경하는 오디오를 사용하는, 사용자의 디바이스는 변경된 시청각 콘텐트를 생성하기 위해 사용자의 디바이스상의 시청각 콘텐트에 결정된 하나 이상의 오디오 효과들을 적용할 수 있다. 예를 들면, 하나 이상의 오디오 효과들은 사용자의 디바이스상에 시청각 콘텐트상의 오디오 부분을 변경할 수 있다. 사운드 부분을 변경하는 것은 사용자의 디바이스상의 시청각 콘텐트의 오디오 부분을 삭제하는 것, 사용자의 디바이스 상의 시청각 콘텐트의 오디오 부분의 특징을 변경하는 것(예를 들면, 피치를 변경하는 것), 사용자의 디바이스상의 시청각 콘텐트에 새로운 오디오 부분을 추가하는 것, 또는 그의 조합들을 포함할 수 있다.
특정 실시예들에서, 시청각 출력 서브시스템(270)을 사용하는, 사용자의 디바이스는 변경된 시청각 콘텐트를 출력할 수 있다. 변경된 시청각 콘텐트의 비디오 부분은 시청각 출력 서브시스템(270)의 비디오 출력 서브시스템(272)을 통해 출력될 수 있다. 변경된 오디오를 포함하는, 변경된 시청각 콘텐트의 오디오 부분은 시청각 출력 서브시스템(270)의 오디오 출력 서브시스템(274)(예를 들면, 스피커들)을 사용하여 출력될 수 있다.
도 3은 특정 실시예들에 따라 오디오 엔진에 의해 수행된 처리를 도시하는 간략화된 플로차트이다. 도 3에 도시된 처리는 각각의 시스템들, 하드웨어, 또는 그의 조합들의 하나 이상의 처리 유닛들(예를 들면, 프로세서들, 코어들)에 의해 실행된 소프트웨어(예를 들면, 코드, 명령들, 프로그램)에서 구현될 수 있다. 소프트웨어는 비일시적 저장 매체상(예를 들면, 메모리 디바이스상)에 저장될 수 있다. 도 3에 나타내지고 이하에 기술된 방법은 예시적인 것이고 비제한적인 것으로 의도된다. 도 3에 도시된 특정한 일련의 처리 단계들은 제한하도록 의도되지 않는다.
310에서, 시청각 콘텐트는 오디오 엔진(도 2에 도시된 오디오 엔진(220))에 의해 수신될 수 있다. 도 2에 관하여 이전에 논의된 바와 같이, 시청각 콘텐트는 다양한 소스들로부터 수신될 수 있다. 시청각 콘텐트는 시각 부분(예를 들면, 하나 이상의 프레임들) 및/또는 청각 부분(예를 들면, 오디오의 시간 길이)을 포함할 수 있다.
320에서, 수신된 시청각 콘텐트의 하나 이상의 속성들이 결정될 수 있다. 예를 들면, 상기에 기술된 바와 같이, 속성은 수신된 시청각 콘텐트의 콘텐트 자체, 예컨대 수신된 시청각 콘텐트에서 발생하는 이벤트들, 사람, 또는 수신된 시청각 콘텐트에서 발생하는 장소들 등을 포함할 수 있다. 시청각 콘텐트의 다른 속성은 시청각 콘텐트의 하나 이상의 타깃된 사용자들일 수 있다.
일부 실시예들에서, 하나 이상의 속성들을 결정하는 것은 수신된 시청각 콘텐트에 기초하여 사용자들을 식별하는 것을 포함할 수 있다. 예를 들면, 사용자는 시청각 콘텐트 자체 내에서 식별된다(예를 들면, 얼굴 인식, 위치 결정, 및 콘텐트에서 사용자들을 태그하기 위한 다른 기술들을 통해). 다른 예에 대하여, 수신된 시청각 콘텐트는 사용자를 나타내는 데이터를 포함할 수 있다(또는 수신된 시청각 콘텐트로부터 개별적으로 전송될 수 있다). 구체적으로, 캡처되거나 업로드될 때, 콘텐트는 소셜 네트워킹 시스템의 사용자의 식별자(UID)와 연관된다. 다른 예에 대하여, 시청각 콘텐트를 수신하는 것보다는, 오디오 엔진은 사용자를 고유하게 식별하는 데이터(예를 들면, IUD)를 수신할 수 있다.
330에서, 오디오 엔진은 320에서 결정된 하나 이상의 속성들에 기초하여 및 사용자의 디바이스로부터 수신된 센서 데이터 및/또는 소셜 네트워킹 시스템에 의해 저장된 소셜 네트워킹 시스템 데이터를 포함하는 다양한 기준들에 기초하여 하나 이상의 효과들을 선택한다. 오디오 효과는 시청각 콘텐트에 추가될 주변 사운드, 오디오 효과가 시청각 콘텐트에 적용되게 하기 위한 이벤트의 표시, 하나 이상의 디지털 신호 프로세서(DSP) 기술들을 시청각 콘텐트에 적용하기 위한 하나 이상의 파라미터들, 사운드를 합성하기 위한 하나 이상의 알고리즘들, 공간화된 오디오에 대하여 사운드를 밸런싱하기 위해 사용될 위치, 또는 그의 임의의 조합을 포함할 수 있다.
소셜 네트워킹 데이터는 소셜 네트워킹 시스템으로부터 획득된 데이터를 포함할 수 있다. 소셜 네트워킹 시스템으로부터 획득된 데이터의 예들은 소셜 네트워킹 시스템에 의해 알려진 사용자-프로파일 데이터, 사용자들간의 연결들, 및 다른 정보를 포함할 수 있다. 일부 실시예들에서, 소셜 네트워킹 데이터는 사용자의 디바이스와 연관된 사용자에 관련된 것일 수 있다. 예를 들면, 사용자는 사용자의 디바이스상의 하나 이상의 오디오 효과들과 시청각 콘텐트를 공유하고 있는 사람일 수 있다. 소셜 네트워킹 데이터는 또한 하나 이상의 오디오 효과들과 함께 시청각 콘텐트를 수신하기 위한 것인 사용자에 관련될 수 있다. 예를 들면, 사용자의 친구는 오늘이 생일일 수 있다. 예에서, 하나 이상의 오디오 효과들은 오늘 친구의 생일인 사실에 기초하여 결정될 수 있다. 따라서, 하나 이상의 오디오 효과들은 사용자보다는 친구에 기초하여 결정된다.
센서 입력들은 사용자의 디바이스에 의해 획득된 데이터를 포함할 수 있다. 예를 들면, 센서 입력들은 사용자의 디바이스의 물리적 위치, 사용자의 디바이스가 위치되는 환경의 현재 온도, 가속도계 정보, 또는 사용자 디바이스의 하나 이상의 센서들에 의해 감지된 다른 데이터를 포함할 수 있다.
일부 실시예들에서, 하나 이상의 오디오 효과들을 결정하는 것은 사용자를 위해 소셜 네트워킹 시스템에 의해 저장된 사용자-프로파일 데이터를 식별하는 것을 포함할 수 있다. 사용자-프로파일 데이터는 사용자들간의 연결들에 관련된 데이터 또는 사용자를 기술하는 데이터를 포함할 수 있다.
소셜 네트워킹 데이터에 기초하여 결정된 오디오 효과들의 예들은: 사용자의 생일인 것을 나타내는 데이터에 기초하여 재생될 "생일 축하" 노래; 사용자의 기념일인 것 및 최종 사용자의 기념일 노래가 특별한 기념일 노래인 것을 나타내는 데이터에 기초하여 재생될 특별한 기념일 노래; 사용자가 최종 사용자의 나이를 나타내는 데이터에 기초하여 추가될 청소년일 때를 회상하는 오디오 효과들 등을 포함한다.
340에서, 하나 이상의 오디오 효과들은 사용자의 디바이스에 의한 출력을 위한 사용자의 디바이스로 전송될 수 있다. 예를 들면, 사용자의 디바이스상의 시청각 콘텐트는 변경된 시청각 콘텐트를 생성하기 위해 하나 이상의 오디오 효과들을 적용함으로서 변경될 수 있다. 일부 실시예들에서, 시청각 콘텐트에 적용되는 것은 하나 이상의 오디오 효과들이 사용자의 디바이스상에 시청각 콘텐트의 오디오와 함께 추가되는 추가 오디오를 포함하는 것을 나타낼 수 있다. 다른 실시예들에서, 시청각 콘텐트에 적용되는 것은 하나 이상의 오디오 효과들이 사용자의 디바이스상의 시청각 콘텐트의 오디오에 대한 변경들(예를 들면, 피치 변경, 뮤팅, 볼륨 변경 등)을 포함하는 것을 나타낼 수 있다. 일부 실시예들에서, 시청각 콘텐트를 변경하는 것은 사용자 디바이스상의 시청각 콘텐트와 오디오 효과를 병합하는 것을 포함한다. 효과의 병합은 소셜 네트워킹 시스템상에서(시청각 콘텐트는 소셜 네트워킹 시스템에 전송됨) 또는 사용자의 디바이스에 의해(예를 들면, 오디오 효과 또는 오디오 효과에 대한 참조는 소셜 네트워킹 시스템에 의해 선택되고 사용자의 디바이스로 전송됨) 발생할 수 있다. 하나 이상의 오디오 효과들을 가지는 시청각 콘텐트는 사용자의 디바이스에 의해 출력될 수 있다. 일부 실시예들에서, 변경된 시청각 콘텐트의 오디오 부분은 디바이스의 오디오 출력 서브시스템을 사용하여 출력될 수 있고 변경된 시청각 콘텐트의 비디오 부분은 디바이스의 비디오 출력 서브시스템을 사용하여 출력될 수 있다.
도 4는 일 예시적인 실시예를 구현할 수 있는 분산된 환경(400)의 간략화된 블록도이다. 분산된 환경(400)은 하나 이상의 통신 네트워크들(440)을 통해 서로에 통신 가능하게 결합된 다수의 시스템들을 포함할 수 있다. 분산된 환경(400)은 디바이스(410) 및 소셜 네트워킹 시스템(450)을 포함한다. 도 4에 도시된 분산된 환경(400)은 단순히 예이고, 청구항들에 인용된 발명의 실시예들의 범위를 부당하게 제한하도록 의도되는 것이 아니다. 당업자는 다수의 가능한 변형들, 대안들, 및 변경들을 인식할 것이다. 예를 들면, 일부 구현들에서, 분산된 환경(400)은 도 4에 도시된 것보다 더 많거나 더 적은 시스템들을 가질 수 있거나, 시스템들의 상이한 구성 또는 배열을 가질 수 있다.
분산된 환경(400)은 외부 시스템(460)을 더 포함할 수 있다. 외부 시스템(460)은 통신 네트워크(440)를 사용하여 디바이스(410)와 통신할 수 있는 각각이 하나 이상의 웹 페이지들(예를 들면, 웹 페이지(462a) 및 웹 페이지(462b))을 포함하는 하나 이상의 웹 서버들을 포함할 수 있다. 외부 시스템(460)은 소셜 네트워킹 시스템(450)으로부터 분리될 수 있다. 예를 들면, 외부 시스템(460)은 제 1 도메인과 연관될 수 있고, 소셜 네트워킹 시스템(450)은 별개의 소셜 네트워킹 도메인과 연관될 수 있다. 외부 시스템(460)에 포함된 웹 페이지들(462a, 462b)은 콘텐트를 식별하고, 포맷팅 또는 식별된 콘텐트의 프레젠테이션을 지정하는 명령들을 포함하는 마크업 언어 문서들을 포함할 수 있다.
통신 네트워크(440)는 도 4에 도시된 다양한 시스템들간의 통신들을 가능하게 한다. 통신 네트워크(440)는 다양한 형태들일 수 있고 하나 이상의 통신 네트워크들을 포함할 수 있다. 통신 네트워크(340)의 예들은, 인터넷, 광역 통신망(WAN), 근거리 통신망(LAN), 이더넷 네트워크, 공중 또는 사설 네트워크, 유선 네트워크, 무선 네트워크 등, 및 그의 조합을 제한 없이 포함한다. 상이한 통신 프로토콜들은 프로토콜들의 IEEE 802.XX 조, TCP/IP, IPX, SAN, AppleTalk®, Bluetooth®, 및 다른 프로토콜들과 같은 유선 및 무선 프로토콜들 모두를 포함하는 통신들을 가능하게 하기 위해 사용될 수 있다. 일반적으로, 통신 네트워크(440)는 도 4에 도시된 다양한 시스템들간의 통신들을 가능하게 하는 임의의 기반구조를 포함할 수 있다.
사용자는 소셜 네트워킹 애플리케이션(420)과 같은 디바이스(410)에 의해 실행된 애플리케이션들과 상호 작용하기 위해 디바이스(410)를 사용할 수 있다. 디바이스(410)는 모바일 디바이스(예를 들면, iPhone™ 디바이스, iPad™ 디바이스), 데스크탑 컴퓨터, 랩탑 컴퓨터, 또는 다른 컴퓨팅 디바이스일 수 있다. 디바이스(410)는 입력 및/또는 출력(I/O) 서브시스템(430)을 포함하는 다수의 서브시스템들을 포함할 수 있다.
I/O 서브시스템(430)은 디바이스(410)로 또는 디바이스(410)로부터 데이터를 입력 및/또는 출력하기 위한 구성요소들을 포함할 수 있다. 예를 들면, I/O 서브시스템(430)은 디바이스(410)상에 콘텐트를 디스플레이하기 위한 스크린을 포함할 수 있다. 다른 예에 대하여, I/O 서브시스템(430)은 디바이스 주위의 피처들을 검출하고 상호 작용들을 수신하기 위한 하나 이상의 센서들(432)을 포함할 수 있다. 센서들의 예들은 범지구 위치 결정 시스템(GPS), 가속도계, 키보드, 스피커, 온도계, 고도계, 또는 디바이스에 실황 입력을 제공할 수 있는 다른 센서들을 포함할 수 있다.
일부 실시예들에서, 비디오 출력 서브시스템 및 오디오 출력 서브시스템은 I/O 서브시스템(430)에 포함될 수 있다. 비디오 출력 서브시스템(도시되지 않음)은 디바이스(410)로부터 하나 이상의 프레임들(예를 들면, 이미지 또는 비디오)을 출력할 수 있다. 오디오 출력 서브시스템(도시되지 않음)은 디바이스(410)로부터 오디오를 출력할 수 있다.
일부 실시예들에서, I/O 서브시스템(430)은 청각 및/또는 시각 정보를 캡처하기 위한 시청각 정보 캡처 서브시스템(434)을 포함할 수 있다. 시청각 정보 캡처 서브시스템(434)은, 예를 들면, 이미지들 또는 비디오 정보를 캡처하기 위한 하나 이상의 카메라들, 오디오 정보를 캡처하기 위한 하나 이상의 마이크로폰들 등을 포함할 수 있다.
하나 이상의 애플리케이션들은 디바이스(410)상에 설치될 수 있고, 카메라 애플리케이션(422)을 포함할 수 있는 소셜 네트워킹 애플리케이션(430)과 같은 디바이스(410)에 의해 실행될 수 있다. 도 4는 소셜 네트워킹 애플리케이션(420)만을 도시하지만, 이는 제한하는 것으로 의도되지 않고, 다른 애플리케이션들이 디바이스(410)에 의해 또한 실행될 수 있다. 또한, 카메라 애플리케이션(422)은 도 4의 소셜 네트워킹 애플리케이션(420)의 부분으로서 도시되고, 일부 다른 실시예들에서, 카메라 애플리케이션(422)은 소셜 네트워킹 애플리케이션(420)으로부터 분리될 수 있다(예를 들면, 디바이스(410)상에 실행하는 개별 애플리케이션).
특정 실시예들에서, 카메라 애플리케이션(422)은 시청각 정보 캡처 서브시스템(434)에 의해 캡처된 하나 이상의 이미지들, 비디오, 비디오 스트림, 및/또는 오디오 정보를 수신 및 출력할 수 있다.
상기에 기술된 바와 같이, 분산된 환경(400)은 소셜 네트워킹 시스템(450)을 포함할 수 있다. 특정 실시예들에서, 소셜 네트워킹 시스템(450)은 디바이스(410)에 의해 실행된 소셜 네트워킹 애플리케이션(420)에 대한 서비스측 구성 요소의 역할을 할 수 있다. 예를 들면, 소셜 네트워킹 시스템(450)은 디바이스(410)로부터 시청각 콘텐트, 센서 입력들, 또는 다른 데이터와 같은 디바이스(410)로부터의 데이터를 수신할 수 있다. 유사하게는, 소셜 네트워킹 시스템(450)은 변경된 시청각 데이터와 같은 데이터를 디바이스(410)로 전송할 수 있다.
소셜 네트워킹 시스템(450)은 오디오 엔진(452), 소셜 네트워킹 데이터(454), 및 효과 데이터 저장소(456)를 포함할 수 있다. 도 4는 소셜 네트워킹 시스템(450)에 포함된 이들 구성요소들의 각각을 도시하지만, 이는 구성요소들 중 하나 이상이 소셜 네트워킹 시스템(450)으로부터 멀리 있을 수 있다는 것이 인식되어야 한다. 예를 들면, 효과 데이터 저장소(456)는 원격 네트워크상에 있을 수 있고 및/또는 소셜 네트워킹 시스템(450)에 관련되는 서버일 수 있다.
오디오 엔진(452)은 디바이스(410)로부터 시청각 콘텐트를 수신할 수 있다. 시청각 콘텐트(또는 시청각 콘텐트를 수반하는 데이터)에 기초하여, 오디오 엔진은 하나 이상의 오디오 효과들을 갖는 시청각 콘텐트를 변경할 것을 결정할 수 있다. 일부 실시예들에서, 하나 이상의 오디오 효과들은 효과 데이터 저장소(456)에 저장될 수 있다. 다른 실시예들에서, 하나 이상의 오디오 효과들 중 적어도 일 부분은 디바이스(410)(또는 다른 디바이스)상에 저장될 수 있고, 오디오 엔진(452)으로 전송될 수 있다. 이러한 실시예들에서, 오디오 효과는 시청각 콘텐트와 함께(또는 그와 분리되어) 오디오 엔진(452)으로 전송될 수 있다.
일부 예들에서, 소셜 네트워킹 시스템(450)은 디바이스(410)로부터 시청각 콘텐트를 수신할 수 없다. 대신, 소셜 네트워킹 시스템(450)은 사용자의 식별 정보(예를 들면, 사용자 식별자(UID))를 수신할 수 있다. 예를 들면, 사용자가 카메라 애플리케이션(422)을 열 때, 디바이스(410)는 소셜 네트워킹 시스템(450)에 사용자에 대한 UID를 전송할 수 있다. 다른 예에 대하여, 소셜 네트워킹 시스템(450)은 이미 사용자를 식별할 수 있다. 이러한 일 예에서, 카메라 애플리케이션(422)은 UID 없이 오디오 효과를 요청하는 메시지를 전송할 수 있다. 일부 예들에서, 사용자의 식별 외에, 소셜 네트워킹 시스템(450)은 디바이스(410)의 위치를 식별할 수 있다(예를 들면, 디바이스(410) 및/또는 소셜 네트워킹 애플리케이션(420)에 관하여 소셜 네트워킹 시스템(450)에 의해 저장된 정보를 통하여 또는 소셜 네트워킹 애플리케이션(420)으로부터 전송된 데이터, 예컨대 GPS 데이터를 통하여).
일 예시적인 예에서, 소셜 네트워킹 시스템(450)은 특정한 사용자가 박물관 내에 있고 오디오 효과를 카메라 애플리케이션(422)에 제공한다는 것을 식별할 수 있다. 오디오 효과는 이후 디바이스(410)에 의해 수신될 수 있고 디바이스(410)에 의해 제안되는 시청각 콘텐트에 적용될 수 있다. 예를 들면, 디바이스(410)에 의해 제안되는 시청각 콘텐트는 디바이스(410)에 의해 저장되지 않을 수 있고, 오히려 시청각 콘텐트가 시청각 정보 캡처 서브시스템(434)으로부터 디바이스(410)에 의해 수신되고 있는 카메라 모드에 있을 수 있다. 이러한 일 예에서, 사용자는 변경된 시청각 콘텐트의 일 부분(오디오 효과에 기초하여 변경되는 시청각 콘텐트)이 디바이스(410)에 의해 저장되게 할 수 있다.
소셜 네트워킹 시스템(450)은 복수의 사용자들을 포함하고, 소셜 네트워크의 다른 사용자들과 통신하고 상호 작용하기 위한 능력을 소셜 네트워크의 사용자들에게 제공하는 소셜 네트워크를 위한 하나 이상의 컴퓨팅 디바이스들과 연관될 수 있다. 일부 경우들에서, 소셜 네트워크는 그래프(예를 들면, 에지들 및 노드들을 포함하는 데이터 구조)에 의해 나타내질 수 있다. 다른 데이터 구조들은 또한 데이터베이스들, 객체들, 클래스들, 메타 요소들, 파일들, 또는 임의의 다른 데이터 구조를 포함하지만 그로 제한되지 않는 소셜 네트워크를 나타내기 위해 사용될 수 있다. 소셜 네트워킹 시스템(450)은 운영자에 의해 운영, 관리, 또는 제어될 수 있다. 소셜 네트워킹 시스템(450)의 운영자는 인간, 자동화된 애플리케이션, 또는 소셜 네트워킹 시스템(450) 내에서 콘텐트를 관리, 정책들을 규제, 및 사용 기준들을 수집하기 위한 일련의 애플리케이션들일 수 있다. 임의의 형태의 운영자가 사용될 수 있다.
사용자들은 소셜 네트워킹 시스템(450)에 참여하고 이후 그들이 연결되기를 원하는 소셜 네트워킹 시스템(450)의 임의의 수의 다른 사용자들에 대한 연결들을 추가할 수 있다. 본 명세서에서 사용되는, 용어 "친구"는 사용자가 소셜 네트워킹 시스템(450)을 통한 연결, 연합, 또는 관계를 형성한 소셜 네트워킹 시스템(450)의 임의의 다른 사용자를 지칭한다. 예를 들면, 일 실시예에서, 소셜 네트워킹 시스템(450)의 사용자들이 소셜 그래프에서 노드들로서 나타내질 경우, 용어 "친구"는 두 개의 사용자 노드들을 직접 연결하는 및 그들간에 형성된 에지를 지칭할 수 있다.
접속들은 사용자에 의해 명백하게 추가될 수 있거나 사용자들의 공통 특징들에 기초하여 소셜 네트워킹 시스템(450)에 의해 자동으로 생성될 수 있다(예를 들면, 동일한 교육 기관의 졸업생인 사용자들). 예를 들면, 제 1 사용자는 구체적으로 친구인 특정한 다른 사용자를 선택한다. 소셜 네트워킹 시스템(450)에서 연결들은 통상 양방향이지만, 그럴 필요는 없어서, 용어들 "사용자" 및 "친구"는 기준의 프레임을 따른다. 소셜 네트워킹 시스템(450)의 사용자들간의 연결들은 통상 쌍방("양방향"), 또는 "상호간"이지만, 연결들은 또한 일방, 또는 "한쪽 방향"일 수 있다. 예를 들면, Bob과 Joe 둘 모두가 소셜 네트워킹 시스템(450)의 사용자들이고 서로 연결된 경우, Bob과 Joe는 서로의 연결들이다. 다른 한편으로, Bob이 Joe에 의해 소셜 네트워킹 시스템(450)에 전달된 데이터를 보기 위해 Joe에 연결하기 원하지만 Joe는 상호 연결을 형성하기를 원하지 않는 경우, 일방 연결이 수립된다. 사용자들간의 연결은 직접 연결일 수 있다; 그러나, 소셜 네트워킹 시스템(450)의 일부 실시예들은 연결들의 하나 이상의 레벨들 또는 분리의 정도들을 통해 간접적인 연결을 허용한다.
사용자들 사이의 접속들을 확립 및 유지하고 사용자들간의 상호 동작들을 허용하는 것 외에, 소셜 네트워킹 시스템(450)은 사용자들에게 소셜 네트워킹 시스템(450)에 의해 지원된 다양한 형태들의 아이템들에 대한 동작들을 취하기 위한 능력을 사용자들에게 제공한다. 이들 아이템들은 소셜 네트워킹 시스템(450)의 사용자들이 속하는 그룹들 또는 네트워크들(예를 들면, 사람들, 엔티티들, 및 개념들의 소셜 네트워크들), 사용자가 관심 있는 이벤트들 또는 캘린더 엔트리들, 사용자가 소셜 네트워킹 시스템(450)을 통해 사용할 수 있는 컴퓨터 기반 애플리케이션들, 소셜 네트워킹 시스템(450)에 의해 또는 그를 통해 제공된 서비스들을 통해 사용자가 아이템들을 구입 또는 판매하게 하는 트랜잭션들, 및 사용자가 소셜 네트워킹 시스템(450)의 온 또는 오프를 수행하게 하는 광고들과의 상호 작용들을 포함할 수 있다. 이들은 사용자가 소셜 네트워킹 시스템(450)상에서 작동시킬 수 있는 아이템들의 일부 예들이고, 다수의 다른 것들이 가능하다. 사용자는 소셜 네트워킹 시스템(450), 또는 소셜 네트워킹 시스템(450)으로부터 분리되거나 통신 네트워크(440)를 통해 소셜 네트워킹 시스템(450)에 결합된, 외부 시스템(460)에 나타내질 수 있는 임의의 것들과 상호 작용할 수 있다.
소셜 네트워킹 시스템(450)은 또한 다양한 엔티티들을 링크할 수 있다. 예를 들면, 소셜 네트워킹 시스템(450)은 사용자들이 서로, 뿐만 아니라 API, 웹 서비스, 또는 다른 통신 채널들을 통해 외부 시스템들 또는 다른 엔티티들과 상호 동작하게 한다. 소셜 네트워킹 시스템(450)은 복수의 에지들에 의해 상호 연결하는 복수의 노드들을 포함하는 "소셜 그래프"를 생성 및 유지한다. 소셜 그래프의 각각의 노드는 다른 노드상에 동작할 수 있고 및/또는 다른 노드에 의해 동작될 수 있는 엔티티를 나타낼 수 있다. 소셜 그래프는 다양한 형태들의 노드들을 포함할 수 있다. 노드들의 형태들의 예들은 사용자들, 사람이 아닌 엔티티들, 콘텐트 아이템들, 웹 페이지들, 그룹들, 활동들, 메시지들, 개념들, 및 소셜 네트워킹 시스템(450)에서 객체에 의해 나타내질 수 있는 임의의 다른 것들을 포함한다. 소셜 그래프에서 두 개의 노드들간의 에지는 두 개의 노드들간의 특별한 종류의 연결 또는 연합을 나타낼 수 있고, 이는 다른 노드상의 노드들 중 하나에 의해 수행되는 동작 또는 노드 관계들을 초래할 수 있다. 일부 경우들에서, 노드들간의 에지들이 가중될 수 있다. 에지의 가중치는 노드들간의 연결 또는 연합의 강도와 같은 에지와 연관된 속성을 나타낼 수 있다. 상이한 형태들의 에지들은 상이한 가중치들을 제공받을 수 있다. 예를 들면, 사용자가 다른 사용자를 "좋아요"할 때 생성된 에지는 하나의 가중치를 제공받을 수 있지만, 사용자가 다른 사용자를 친구로 할 때 생성된 에지는 상이한 가중치를 제공받을 수 있다.
일 예로서, 제 1 사용자가 제 2 사용자를 친구로서 식별할 때, 소셜 그래프의 에지는 제 1 사용자를 나타내는 노드 및 제 2 사용자를 나타내는 제 2 노드를 연결하여 생성된다. 다양한 노드들이 서로 관련되거나 상호 작용하기 때문에, 소셜 네트워킹 시스템(450)은 관계들 및 상호 작용들을 반영하기 위해 다양한 노드들을 연결하는 에지들을 변경한다.
소셜 네트워킹 시스템(450)은 또한 사용자 생성된 콘텐트를 포함하고, 이는 소셜 네트워킹 시스템(450)과의 사용자의 상호 동작들을 향상시킨다. 사용자 생성된 콘텐트는 사용자가 소셜 네트워킹 시스템(450)에 추가, 업로드, 전송, 또는 "포스트"할 수 있는 임의의 것을 포함할 수 있다. 예를 들면, 사용자는 디바이스(410)로부터 소셜 네트워킹 시스템(450)에 포스트들을 전달한다. 포스트들은 상태 업데이트들 또는 다른 텍스트 데이터와 같은 데이터, 위치 정보, 사진들과 같은 이미지들, 비디오들, 링크들, 음악 또는 다른 유사한 데이터 및/또는 미디어를 포함할 수 있다. 콘텐트는 또한 제 3 자에 의해 소셜 네트워킹 시스템(450)에 추가될 수 있다. 콘텐트 "아이템들"은 소셜 네트워킹 시스템(450)에서 객체들로서 나타내질 수 있다. 이러한 방식으로, 소셜 네트워킹 시스템(450)의 사용자들은 다양한 통신 채널들을 통해 다양한 형태들의 미디어의 텍스트 및 콘텐트 아이템들을 포스팅함으로써 서로 통신하도록 권장된다. 이러한 통신은 서로와의 사용자들의 상호 작용을 증가시키고 사용자들이 소셜 네트워킹 시스템(450)과 상호 작용하는 횟수를 증가시킨다.
소셜 네트워킹 시스템(450)은 웹 서버, API 요청 서버, 사용자 프로파일 저장소, 연결 저장소, 동작 로거(action logger), 작업 로그, 허가 서버, 또는 그의 임의의 조합을 포함할 수 있다. 일부 실시예들에서, 소셜 네트워킹 시스템(450)은 다양한 애플리케이션들의 추가의, 더 적은, 또는 상이한 구성 요소들을 포함할 수 있다. 네트워크 인터페이스들, 보안 메커니즘들, 부하 밸런서들, 장애 극복 서버(failover server), 관리 및 네트워크 동작 콘솔들 등과 같은 다른 구성 요소들은 시스템의 상세들을 모호하게 하지 않도록 도시되지 않는다.
소셜 네트워킹 데이터(454)에 포함될 수 있는 사용자 프로파일은 바이오그래픽, 데모그래픽, 및 사용자들에 의해 선언되거나 소셜 네트워킹 시스템(450)에 의해 추론된 근무 경력, 교육 이력, 취미들 또는 선호들, 위치 등과 같은 다른 형태들의 기술 정보를 포함하는 사용자 계정들에 관한 정보를 보유할 수 있다. 이러한 정보는 사용자 프로파일 저장소에 저장되어서 각각의 사용자가 고유하게 식별된다. 소셜 네트워킹 시스템(450)은 또한 연결 저장소에서 상이한 사용자들간의 하나 이상의 연결들을 기술하는 데이터를 저장한다. 연결 정보는 유사하거나 공통의 근무 경력, 그룹 멤버십들, 취미들, 또는 교육 이력을 가지는 사용자들을 식별할 수 있다. 추가로, 소셜 네트워킹 시스템(450)은 상이한 사용자들간의 사용자 규정된 연결들을 포함하여, 사용자들이 다른 사용자들과 그들의 관계들을 지정하게 한다. 예를 들면, 사용자 규정된 연결들은 사용자들이 친구들, 동료들, 파트너들 등과 같은 사용자들의 실세계 관계들과 일치하는 다른 사용자들과의 관계들을 생성하게 한다. 사용자들은 미리 규정된 형태들의 연결들을 선택할 수 있거나 그들 자신의 연결 형태들을 필요에 따라 규정할 수 있다. 사람이 아닌 엔티티들, 버킷들, 클러스터 센터들, 이미지들, 관심사들, 페이지들, 외부 시스템들, 개념들 등과 같은 소셜 네트워킹 시스템(450) 내 다른 노드들과의 연결들은 또한 연결 저장소에 저장된다.
소셜 네트워킹 시스템(450)은 사용자가 상호 동작할 수 있는 객체들에 관한 데이터를 보유한다. 이러한 데이터를 보유하기 위해, 사용자 프로파일 및 연결 저장소는 소셜 네트워킹 시스템(450)에 의해 보유된 대응하는 형태의 객체들의 인스턴스들을 저장할 수 있다. 각각의 객체 형태는 객체의 형태에 적절한 정보를 저장하기에 적절한 정보 필드들을 가진다. 예를 들면, 사용자 프로파일 저장소는 사용자의 계정에 관련된 정보 및 사용자의 계정을 기술하기에 적절한 필드들을 갖는 데이터 구조들을 포함한다. 특정한 형태의 새로운 객체가 생성될 때, 소셜 네트워킹 시스템(450)은 대응하는 형태의 새로운 데이터 구조를 초기화하고, 고유한 객체 식별자를 그에 할당하고, 필요에 따라 객체에 대한 데이터를 추가하기 시작한다. 이는, 예를 들면, 사용자가 소셜 네트워킹 시스템(450)의 사용자가 될 때 발생하고, 소셜 네트워킹 시스템(450)은 사용자 프로파일 저장소에 사용자 프로파일의 새로운 인스턴스를 생성하고, 고유한 식별자를 사용자 계정에 할당하고, 사용자에 의해 제공된 정보로 사용자 계정의 필드들을 채우기 시작한다.
연결 저장소는 다른 사용자들에 대한 사용자들의 연결들, 외부 시스템들에 대한 연결들 또는 다른 엔티티들에 대한 연결들을 기술하기에 적절한 데이터 구조들을 포함한다. 연결 저장소는 또한 연결 형태를 사용자의 연결들과 연관시킬 수 있고, 이는 사용자에 관한 정보에 대한 액세스를 규제하기 위해 사용자의 프라이버시 설정과 함께 사용될 수 있다. 일 실시예에서, 사용자 프로파일 저장소 및 연결 저장소는 연합된 데이터베이스로서 구현될 수 있다.
접속 저장소, 사용자 프로파일 저장소, 및 작업 로그에 저장된 데이터는 소셜 네트워킹 시스템(450)이 다양한 객체들을 식별하기 위해 노드들 및 상이한 객체들간의 관계들을 식별하기 위해 노드들을 연결하는 에지들을 사용하는 소셜 그래프를 생성하게 한다. 예를 들면, 제 1 사용자가 소셜 네트워킹 시스템(450)에서 제 2 사용자와 연결을 수립한 경우, 사용자 프로파일 저장소로부터 제 1 사용자 및 제 2 사용자의 사용자 계정들이 소셜 그래프의 노드들의 역할을 한다. 연결 저장소에 의해 저장된 제 1 사용자와 제 2 사용자간의 연결은 제 1 사용자 및 제 2 사용자와 연관된 노드들 사이의 에지이다. 이러한 예에 계속하여, 제 2 사용자는 이후 소셜 네트워킹 시스템(450) 내에서 메시지를 제 1 사용자에게 전송할 수 있다. 저장될 수 있는 메시지를 전송하는 동작은 제 1 사용자 및 제 2 사용자를 나타내는 소셜 그래프의 두 개의 노드들간의 다른 에지이다. 추가로, 메시지 자체는 제 1 사용자 및 제 2 사용자를 나타내는 노드들에 접속된 다른 노드로서 식별되고 소셜 그래프에 포함될 수 있다.
다른 예에서, 제 1 사용자는 소셜 네트워킹 시스템(450)에 의해 보유되는 이미지에(또는 대안적으로 소셜 네트워킹 시스템(450) 외부의 다른 시스템에 의해 보유된 이미지에) 제 2 사용자를 태그할 수 있다. 이미지는 소셜 네트워킹 시스템(450)에서 노드로서 그 자체를 나타낼 수 있다. 이러한 태깅 동작은 제 1 사용자와 제 2 사용자간에 에지들을 생성할 수 있고 뿐만 아니라 또한 소셜 그래프에서 노드일 수 있는 이미지와 사용자들 각각 사이에 에지를 생성할 수 있다. 또 다른 예에서, 사용자가 이벤트에 참여하는 것을 확정한 경우, 사용자 및 이벤트는 사용자 프로파일 저장소로부터 획득된 노드들이고, 이벤트의 참여는 작업 로그로부터 검색될 수 있는 노드들간의 에지이다. 소셜 그래프를 생성하고 보유함으로써, 소셜 네트워킹 시스템(450)은 다수의 상이한 형태들의 객체들 및 상호 작용들 및 사회적으로 관련된 정보의 풍부한 소스를 제공하는 이들 객체들간의 연결들을 기술하는 데이터를 포함한다.
웹 서버는 통신 네트워크(440)를 통해 소셜 네트워킹 시스템(450)을 하나 이상의 사용자 디바이스들(예를 들면, 디바이스(410)) 및/또는 하나 이상의 외부 시스템들(예를 들면, 외부 시스템(460))에 링크한다. 웹 서버는 웹 페이지들, 뿐만 아니라 웹 관련 컨텐트, 예컨대 Java, JavaScript, Flash, XML 등을 서빙한다. 웹 서버는 소셜 네트워킹 시스템(450)과 하나 이상의 사용자 디바이스들(예를 들면, 디바이스(410))간에 메시지들을 수신 및 라우팅하기 위한 메일 서버 또는 다른 메시징 기능을 포함할 수 있다. 메시지들은 인스턴트 메시지들, 큐잉된 메시지들(예를 들면, 이메일), 텍스트 및 SMS 메시지들, 또는 임의의 다른 적절한 메시징 포맷일 수 있다.
API 요청 서버는 하나 이상의 API 기능들을 호출함으로써 하나 이상의 외부 시스템들 및 사용자 디바이스들이 소셜 네트워킹 시스템(450)으로부터 액세스 정보를 호출하게 한다. API 요청 서버는 또한 API들을 호출함으로써 외부 시스템들이 정보를 소셜 네트워킹 시스템(450)에 전송하게 할 수 있다. 일 실시예에서, 외부 시스템(460)은 통신 네트워크(440)를 통해 API 요청을 소셜 네트워킹 시스템(450)에 전송하고, API 요청 서버는 API 요청을 수신한다. API 요청 서버는 적절한 응답을 생성하기 위해 API 요청과 연관된 API를 호출함으로써 요청을 처리하고, API 요청 서버는 통신 네트워크(440)를 통해 외부 시스템(460)과 통신한다. 예를 들면, API 요청에 응답하여, API 요청 서버는 외부 시스템(460)으로 로그된 사용자의 연결들과 같은 사용자와 연관된 데이터를 수집하고, 수집된 데이터를 외부 시스템(460)에 전달한다. 다른 실시예에서, 디바이스(410)는 외부 시스템(460)과 동일한 방식으로 API들을 통해 소셜 네트워킹 시스템(450)과 통신한다.
동작 로거는 소셜 네트워킹 시스템(450)을 온 및/또는 오프하는 사용자 동작들에 관하여 웹 서버로부터 통신들을 수신할 수 있다. 동작 로거는, 소셜 네트워킹 시스템(450)이 소셜 네트워킹 시스템(450) 내에서 및 소셜 네트워킹 시스템(450)의 외부에서 그의 사용자들에 의해 취해진 다양한 동작들을 발견하게 하여, 사용자 동작들에 관한 정보로 작업 로그를 채운다. 특정한 사용자가 소셜 네트워킹 시스템(450)상의 다른 노드에 관하여 취한 임의의 동작은 작업 로그 또는 유사한 데이터베이스 또는 다른 데이터 저장소에 보유된 정보를 통해 각각의 사용자의 계정과 연관될 수 있다. 식별되고 저장되는 소셜 네트워킹 시스템(450) 내에서 사용자에 의해 취해진 동작들의 예들은, 예를 들면, 다른 사용자에 대한 연결을 추가하는 것, 다른 사용자들에 메시지를 전송하는 것, 다른 사용자로부터의 메시지를 판독하는 것, 다른 사용자와 연관된 콘텐트를 시청하는 것, 다른 사용자에 의해 포스팅된 이벤트에 참여하는 것, 이미지를 포스팅하는 것, 이미지를 포스팅하기를 시도하는 것, 또는 다른 사용자 또는 다른 객체와 상호 작용하는 다른 동작들을 포함할 수 있다. 사용자가 소셜 네트워킹 시스템(450) 내에서 동작을 취할 때, 동작은 작업 로그에 기록된다. 일 실시예에서, 소셜 네트워킹 시스템(450)은 엔트리들의 데이터베이스로서 작업 로그를 보유한다. 동작이 소셜 네트워킹 시스템(450) 내에서 취해질 때, 동작에 대한 엔트리는 작업 로그에 추가된다. 작업 로그는 동작 로그라고 지칭될 수 있다.
추가로, 사용자 동작들은 소셜 네트워킹 시스템(450)으로부터 분리되는 외부 시스템(460)과 같은 소셜 네트워킹 시스템(450) 외부의 엔티티 내에서 발생하는 동작들 및 개념들과 연관될 수 있다. 예를 들면, 동작 로거는 웹 서버로부터 외부 시스템(460)과 사용자의 상호 작용을 기술하는 데이터를 수신할 수 있다. 이러한 예에서, 외부 시스템(460)은 소셜 그래프에서 객체들 및 구조화된 동작들에 따라 사용자의 상호 작용을 보고한다.
사용자가 외부 시스템(460)과 상호 작용하는 동작들의 다른 예들은 사용자가 외부 시스템(460) 또는 다른 엔티티에 관심을 표현하는 것, 사용자가 외부 시스템(460) 또는 외부 시스템(460) 내 웹 페이지(462a)를 논의하는 소셜 네트워킹 시스템(450)에 대한 코멘트를 포스팅하는 것, 사용자가 소셜 네트워킹 시스템(450), URL(Uniform Resource Locator) 또는 외부 시스템(460)과 연관된 다른 식별자에 포스팅하는 것, 사용자가 외부 시스템(460)과 연관된 이벤트에 참여하는 것, 또는 외부 시스템(460)과 관련되는 사용자에 의한 임의의 다른 동작을 포함한다. 따라서, 작업 로그는 소셜 네트워킹 시스템(450)의 사용자와 소셜 네트워킹 시스템(450)으로부터 분리된 외부 시스템(460) 사이의 상호 작용들을 기술하는 동작들을 포함할 수 있다.
허가 서버는 소셜 네트워킹 시스템(450)의 사용자들의 하나 이상의 프라이버시 설정들을 실행한다. 사용자의 프라이버시 설정은 사용자와 연관된 특정한 정보가 공유될 수 있는 방법을 결정한다. 프라이버시 설정은 사용자와 연관된 특정한 정보의 명세 및 정보가 공유될 수 있는 엔티티 또는 엔티티들의 명세를 포함한다. 정보가 공유될 수 있는 엔티티들의 예들은 다른 사용자들, 애플리케이션들, 외부 시스템들, 또는 정보에 잠재적으로 액세스할 수 있는 임의의 엔티티를 포함할 수 있다. 사용자에 의해 공유될 수 있는 정보는 프로파일 사진들, 사용자와 연관된 전화 번호들, 사용자의 연결들, 연결을 추가하고, 사용자 프로파일 정보를 변경하는 것과 같은 사용자에 의해 취해진 동작들 등과 같은 사용자 계정 정보를 포함할 수 있다.
프라이버시 설정 명세는 상이한 레벨들의 세분성으로 제공될 수 있다. 예를 들면, 프라이버시 설정은 다른 사용자들과 공유될 특정 정보를 식별할 수 있다; 프라이버시 설정은 직장 전화 번호 또는 특정한 세트의 관련 정보, 예컨대 프로파일 사진, 집 전화 번호, 및 상태를 포함하는 개인 정보를 식별한다. 대안적으로, 프라이버시 설정은 사용자와 연관된 모든 정보에 적용할 수 있다. 특정한 정보에 액세스할 수 있는 엔티티들의 세트의 명세는 또한 다양한 레벨들의 세분성으로 지정될 수 있다. 정보가 공유될 수 있는 다양한 세트들의 엔티티들은, 예를 들면, 사용자의 모든 친구들, 친구들의 모든 친구들, 모든 애플리케이션들, 또는 모든 외부 시스템들을 포함할 수 있다. 일 실시예는 엔티티들의 세트의 명세가 엔티티들의 목록을 포함하게 한다. 예를 들면, 사용자는 특정 정보에 액세스하도록 허용되는 외부 시스템들의 리스트를 제공할 수 있다. 다른 실시예는 명세가 정보에 액세스하도록 허용되지 않는 예외들과 함께 엔티티들의 세트를 포함하게 한다. 예를 들면, 사용자는 모든 외부 시스템들이 사용자의 직업 정보에 액세스하게 할 수 있지만, 직업 정보에 액세스하도록 허용되지 않는 외부 시스템들의 리스트를 지정할 수 있다. 특정 실시예들은 특정 정보에 액세스하도록 허가되지 않은 예외들의 리스트를 "차단 리스트"라고 부른다. 사용자에 의해 지정된 차단 리스트에 속하는 외부 시스템들은 프라이버시 설정에서 지정된 정보에 액세스하는 것이 차단된다. 정보의 명세의 세분성, 및 정보가 공유될 수 있는 엔티티들의 명세의 세분성의 다양한 조합들이 가능하다. 예를 들면, 모든 개인 정보는 친구들과 공유될 수 있지만 모든 직업 정보는 친구들의 친구들과 공유될 수 있다.
허가 서버는 사용자와 연관된 특정 정보가 사용자의 친구들, 외부 시스템들, 및/또는 다른 애플리케이션들 및 엔티티들에 의해 액세스될 수 있을지를 결정하기 위한 로직을 포함한다. 외부 시스템(460)은 사용자의 직장 전화 번호와 같은 사용자의 더 많은 프라이버시 및 민감한 정보에 액세스하기 위해 허가 서버로부터 허가를 필요로 할 수 있다. 사용자의 프라이버시 설정들에 기초하여, 허가 서버는 다른 사용자, 외부 시스템(460), 애플리케이션, 또는 다른 엔티티가 사용자에 의해 취해진 동작들에 관한 정보를 포함하여 사용자와 연관된 정보에 액세스하도록 허용되는지를 결정한다.
예시의 목적을 위해, 분산된 환경(400)은 단일의 외부 시스템(460) 및 단일의 디바이스(410)를 포함한다. 그러나, 다른 실시예들에서, 분산된 환경(400)은 더 많은 사용자 디바이스들(410) 및/또는 더 많은 외부 시스템들(460)을 포함할 수 있다. 특정 실시예들에서, 소셜 네트워킹 시스템(450)은 소셜 네트워크 제공자에 의해 작동되지만, 외부 시스템(460)은 그들이 상이한 엔티티들에 의해 작동될 수 있는 소셜 네트워킹 시스템(450)으로부터 분리된다. 그러나, 다양한 실시예들에서, 소셜 네트워킹 시스템(450) 및 외부 시스템(460)은 소셜 네트워킹 시스템(450)의 사용자들(또는 멤버들)에게 소셜 네트워킹 서비스들을 제공하기 위해 협력하여 작동한다. 이러한 의미에서, 소셜 네트워킹 시스템(450)은 외부 시스템(460)과 같은 다른 시스템들이 통신 네트워크(440)를 가로질러 소셜 네트워킹 서비스들 및 기능들을 사용자들에게 제공하기 위해 사용할 수 있는 플랫폼 또는 백본을 제공한다.
도 4는 특정 실시예들을 구현하기 위해 사용될 수 있는 분산된 환경을 도시한다. 그러나, 이는 제한하도록 의도되지 않는다. 일부 대안적인 실시예들에서, 상기에 기술된 모든 처리는 단일 시스템에 의해 수행될 수 있다. 예를 들면, 특정 실시예들에서, 처리는 사용자 디바이스(410)상에서 전적으로, 또는 소셜 네트워킹 시스템(450) 상에서 전적으로 수행될 수 있다.
예들
본 섹션은 오디오 엔진(예를 들면, 오디오 엔진(220))에 의해 결정될 수 있고 시청각 콘텐트에 적용될 수 있는 오디오 효과들의 다양한 예들을 기술한다. 이들 예들은 임의의 방식으로 제한되도록 의도되지 않는다.
예 #1: 친구의 생일 관련. 사용자와 연관된 소셜 네트워킹 애플리케이션은 사용자의 친구의 생일을 디스플레이할 수 있다. 친구는 디바이스와 연관되지 않을 수 있고, 오히려 사용자와 상이한 사용자일 수 있다. 사용자가 소셜 네트워킹 애플리케이션과 연관된 카메라 애플리케이션을 여는 것에 응답하여, 카메라 애플리케이션은 소셜 네트워킹 시스템상의 오디오 엔진에 메시지를 전송할 수 있다. 메시지는 사용자의 식별을 포함할 수 있다. 사용자의 식별을 사용하여, 오디오 엔진은 사용자의 소셜 그래프를 사용하여 친구의 생일을 식별할 수 있다. 오디오 엔진은 이후 사용자가 친구의 생일에 대해 사용자에게 변경된 시청각 콘텐트를 전송하기 위해 오디오 효과를 사용할 수 있도록 사용자의 디바이스로 생일 축하 노래를 포함하는 오디오 효과를 전송할 수 있다. 디바이스는 오디오 효과의 이용 가능성의 표시를 제공할 수 있거나 생일 축하 노래가 재생되게 하는 오디오 효과를 적용하는 것을 자동으로 시작할 수 있다.
예 #2: 사용자의 기념일. 사용자가 소셜 네트워킹 애플리케이션과 연관된 카메라 애플리케이션을 열 때, 카메라 애플리케이션은 소셜 네트워킹 시스템상의 오디오 엔진에 메시지를 전송할 수 있다. 메시지는 사용자의 디바이스의 카메라에 의해 획득된 시청각 콘텐트를 포함할 수 있다. 일부 경우들에서, 메시지는 또한 그것이 사용자의 기념일이라는 표시를 포함할 수 있다. 다른 경우들에서, 사용자에 대한 사용자 프로파일이 그것이 사용자의 기념일인 것을 표시할 수 있다. 오디오 엔진은 사용자가 그들의 프로파일을 작성한 포스트에 기초하여 사용자의 기념일 노래를 식별할 수 있다. 포스트는 사용자에 대한 소셜 그래프에 포함될 수 있다. 오디오 엔진은 이후 사용자의 기념일 노래를 포함하는 오디오 효과를 획득할 수 있다. 오디오 엔진은 또한 사용자가 "행복한 기념일"을 말한 후 사용자의 기념일 노래를 재생할 것을 결정할 수 있다. 따라서, 오디오 엔진은 사용자의 기념일 노래 및 단어들 "행복한 기념일"이 말해지는 시작 요건과 함께 오디오 효과를 전송할 수 있다. 단어들 "행복한 기념일"이 식별될 때, 디바이스는 배경에 사용자의 기념일 노래를 추가함으로써 디바이스의 시청각 콘텐트를 변경할 수 있다.
예 #3: 사용자의 생일. 소셜 네트워킹 시스템의 오디오 엔진은 사용자가 태어난 연도를 식별할 수 있다. 연도에 기초하여, 오디오 엔진은 사용자가 사용자의 디바이스상에서 카메라 애플리케이션을 여는 다음 시간에 시청각 콘텐트를 추가하기 위해 다수의 오디오 효과들을 식별할 수 있다. 다수의 효과들 중 하나의 오디오 효과가 사용자의 음성의 피치를 낮은 음성으로 변경하는 것을 포함할 수 있다. 다른 오디오 효과는 낮은 음성이 활성화될 때 트리거될 수 있어서, 배경으로 재생된 비행기 소리들을 만든다. 그리고 최종 오디오 효과는 그들이, 그들이 멀리 있는 것 같은 사운드를 만들기 위해 비행기들의 사운드의 볼륨을 감소시킬 수 있다. 다수의 오디오 효과들은 이후 카메라 애플리케이션이 열리는 시작 요건과 함께 디바이스로 전송될 수 있다.
예 #4: 콘텐트 인식. 오디오 엔진은 얼굴 인식을 사용하여 시청각 콘텐트에서 사용자를 식별할 수 있다. 사용자의 식별에 기초하여, 오디오 엔진은 킥이 시청각 콘텐트에서 발생하는 것이 식별될 때 칼 더글러스의 노래 "쿵 푸 파이팅"을 포함하는 오디오 효과를 획득할 수 있다. 사용자의 디바이스는 오디오 엔진이 킥이 콘텐트 인식 시스템을 사용하여 발생하는 것을 식별할 때까지 오디오 엔진에 시청각 콘텐트를 계속 전송할 수 있다. 오디오 엔진이 킥이 발생한 것을 식별했을 때, 오디오 엔진은 디바이스상의 시청각 콘텐트에 오디오 효과가 적용되게 하기 위해 메시지를 디바이스로 전송할 수 있다. 다른 경우들에서, 콘텐트 인식 시스템은 디바이스상에 위치될 수 있어서 시청각 콘텐트는 오디오 엔진에 반복적으로 전송될 필요가 없다. 노래의 오디오 효과는 킥이 식별될 때 디바이스상에 시청각 콘텐트에 추가될 수 있다.
데이터 프라이버시
명세서에 기술된 일부 실시예들은 하나 이상의 사용자들에 의해 자발적으로 제공된 정보를 포함할 수 있는 소셜 네트워킹 데이터를 사용한다. 이러한 실시예들에서, 데이터 프라이버시는 다수의 방법들로 보호될 수 있다.
예를 들면, 사용자는 사용자 데이터가 수집되거나 사용되기 전에 임의의 데이터 수집에 참여할 수 있는 것이 요구될 수 있다. 사용자는 또한 임의의 데이터 수집에 참여하지 않기 위한 기회도 제공받는다. 데이터 수집에 참여하기 전에, 사용자는 데이터가 사용될 방식들, 얼마나 오래 데이터가 보유될지, 및 개시로부터 데이터를 보호하기 위해 준비되는 안전 장치들의 기술을 제공받을 수 있다.
데이터가 수집되는 사용자를 식별하는 임의의 정보는 데이터로부터 제거 또는 연관 해제될 수 있다. 임의의 식별 정보가 보유될 필요가 있는 경우(예를 들면, 규정 요건들을 충족하기 위해), 사용자에게 식별 정보의 수집, 식별 정보를 구성하는 용도들 및 식별 정보가 유지될 시간량이 알려질 수 있다. 사용자를 구체적으로 식별하는 정보는 제거될 수 있고, 예를 들면, 포괄적인 식별 번호 또는 다른 비지정 형태의 식별로 대체될 수 있다.
수집될 때, 데이터는 데이터에 비인가된 액세스를 방지하기 위해 안전 장치들을 포함하는 안전한 데이터 저장 위치에 저장될 수 있다. 데이터는 암호화된 포맷으로 저장될 수 있다. 식별 정보 및/또는 비식별 정보는 미리 결정된 시간 기간 후 데이터 저장소로부터 제거될 수 있다.
특정 프라이버시 보호 기술들이 예시의 목적들을 위해 본 명세서에 기술되지만, 당업자는 또한 다른 방식으로 보호된 프라이버시를 인식할 것이다.
컴퓨팅 시스템
도 5는 컴퓨팅 시스템의 블록도의 일 예를 도시한다. 도 5에 도시된 컴퓨팅 시스템은 본 명세서에 기술된 디바이스(410), 소셜 네트워킹 시스템(450), 또는 임의의 다른 컴퓨팅 디바이스를 구현하기 위해 사용될 수 있다. 이러한 예에서, 컴퓨팅 시스템(500)은 모니터(510), 컴퓨터(420), 키보드(430), 사용자 입력 디바이스(540), 하나 이상의 컴퓨터 인터페이스들(550) 등을 포함한다. 본 예에서, 사용자 입력 디바이스(540)는 일반적으로 컴퓨터 마우스, 트랙볼, 트랙 패드, 조이스틱, 무선 원격, 드로잉 태블릿, 음성 명령 시스템, 아이 트랙킹 시스템 등으로 구현된다. 사용자 입력 디바이스(540)는 일반적으로 사용자가 버튼 등의 클릭과 같은 명령을 통해 모니터(510)상에 나타나는 객체들, 아이콘들, 텍스트 등을 선택하게 한다.
컴퓨터 인터페이스들(450)의 예들은 일반적으로 이더넷 카드, 모뎀(전화, 위성, 케이블, ISDN), (비동기식) 디지털 가입자 회선(DSL) 유닛, 파이어와이어 인터페이스, USB 인터페이스 등을 포함한다. 예를 들면, 컴퓨터 인터페이스들(550)은 컴퓨터 네트워크(555), 파이어와이어 버스 등에 결합될 수 있다. 다른 실시예들에서, 컴퓨터 인터페이스들(550)은 컴퓨터(520)의 마더보드에 물리적으로 통합될 수 있고, 소프트 DSL와 같은 소프트웨어 프로그램 등일 수 있다.
다수의 예들에서, 컴퓨터(520)는 일반적으로 프로세서(560), 및 랜덤 액세스 메모리(RAM; 470), 디스크 드라이브들(580)과 같은 메모리 저장 디바이스들과 같은 친숙한 컴퓨터 구성 요소, 및 상기 구성요소들과 상호 연결하는 시스템 버스(590)를 포함한다.
RAM(570) 및 디스크 드라이브(580)는 실행가능한 컴퓨터 코드, 인간 판독 가능 코드 등을 포함하는 본 개시의 실시예들과 같은 데이터를 포함하도록 구성된 유형의 매체들의 예들이다. 다른 형태들의 유형의 매체들은 플로피 디스크들, 제거 가능한 하드 디스크들, CD-ROM들, DVD들 및 바 코드들과 같은 광 저장 매체, 플래시 메모리들과 같은 반도체 메모리들, 판독 전용 메모리들(ROMS), 배터리 전원 사용 휘발성 메모리들(battery-backed volatile memories), 네트워킹된 저장 디바이스들 등을 포함한다.
다양한 예들에서, 컴퓨팅 시스템(500)은 또한 HTTP, TCP/IP, RTP/RTSP 프로토콜들 등과 같은 네트워크를 통해 통신들을 가능하게 하는 소프트웨어를 또한 포함할 수 있다. 본 개시의 대안적인 실시예들에서, 다른 통신 소프트웨어 및 전송 프로토콜들은 또한 예를 들면, IPX, UDP 등이 사용될 수 있다.
특정한 예들이 기술되었지만, 다양한 변경들, 대안들, 대안적인 구성들, 및 동등물들이 가능하다. 실시예들은 특정한 데이터 처리 환경들 내에서 동작에 대해 제한되지 않지만, 복수의 데이터 처리 환경들 내에서 자유롭게 동작한다. 추가로, 특정한 실시예들이 특별한 일련의 트랜잭션들 및 단계들을 사용하여 기술되었지만, 그가 제한되는 것이 의도되지 않는 것을 당업자에게 명백할 것이다. 일부 플로차트들이 순차적인 프로세스로서 동작들을 기술하지만, 다수의 동작들은 병행하거나 동시에 수행될 수 있다. 또한, 동작들의 순서는 재정렬될 수 있다. 프로세스는 도면에 포함되지 않는 추가의 단계들을 가질 수 있다. 상기에 기술된 실시예들의 다수의 특징들 및 양태들은 개별적으로 또는 공동으로 사용될 수 있다.
또한, 특정한 실시예들이 하드웨어 및 소프트웨어의 특정 조합을 사용하여 기술되었지만, 하드웨어 및 소프트웨어의 다른 조합이 또한 가능한 것이 인식되어야 한다. 특정 실시예들은 하드웨어에 전용이거나, 소프트웨어에 전용이거나, 그의 조합들을 사용하여 구현될 수 있다. 일 예에서, 소프트웨어는 컴퓨터 프로그램 코드 또는 본 개시에서 기술된 단계들, 동작들, 또는 프로세스들 중 어느 하나 또는 모두를 수행하기 위해 하나 이상의 프로세서들에 의해 실행 가능한 명령들을 포함하는 컴퓨터 프로그램 제품으로서 구현될 수 있고, 컴퓨터 프로그램은 비일시적 컴퓨터 판독 가능 매체상에 저장될 수 있다. 본 명세서에 기술된 다양한 프로세스들은 동일한 프로세서 또는 임의의 조합의 상이한 프로세서들상에 구현될 수 있다.
디바이스들, 시스템들, 구성요소들 또는 모듈들이 특정한 동작들 또는 기능들을 수행해도록 구성된 것으로 기술되었지만, 이러한 구성은, 예를 들면, 동작을 수행하도록 전자 회로들을 설계함으로써, 컴퓨터 명령들 또는 코드를 실행하는 것과 같은 동작을 수행하도록 프로그램 가능한 전자 회로들(예컨대 마이크로프로세서들), 또는 비일시적 메모리 매체상에 저장된 코드 또는 명령들을 실행하도록 프로그래밍된 프로세서들 또는 코어들을 프로그래밍함으로써, 또는 그의 임의의 조합으로 달성될 수 있다. 프로세스들은 프로세스간 통신들을 위한 종래의 기술들을 포함하지만 그로 제한되지 않는 다양한 기술들을 사용하여 통신할 수 있거나, 상이한 쌍들의 프로세스들은 상이한 기술들을 사용할 수 있거나, 동일한 쌍의 프로세스들은 상이한 시간에 상이한 기술들을 사용할 수 있다.
특정한 상세들은 실시예들의 완전한 이해를 제공하기 위해 본 개시에서 제공된다. 그러나, 실시예들은 이들 특정한 상세들 없이 실행될 수 있다. 예를 들면, 잘알려진 회로들, 프로세스들, 알고리즘들, 구조들, 및 기술들은 실시예들을 모호하게 하는 것을 피하기 위해 불필요한 상세 없이 도시되었다. 본 상세한 설명은 예시 실시예들만을 제공하고, 다른 실시예들의 범위, 적용 가능성, 또는 구성을 제한하도록 의도되지 않는다. 오히려, 실시예들의 이전 기술은 다양한 실시예들을 구현하기 위한 실시 가능한 기술을 당업자에게 제공할 것이다. 다양한 변경들은 요소들의 기능 및 배열에서 수행될 수 있다.
명세 및 도면들은 따라서 제한적인 의미보다는 예시적인 것으로 간주될 것이다. 그러나, 추가들, 삭감들, 삭제들, 및 다른 변경들 및 변화들이 청구항에 설명된 것보다 더 넓은 범위로 벗어나지 않고 그에 대해 행해질 수 있다는 것이 명백할 것이다. 따라서, 특정한 실시예들이 기술되었지만, 이들은 제한하도록 의도되지 않는다. 다양한 변경들 및 균등물들은 다음의 청구항들의 범위 내에 있다.

Claims (37)

  1. 방법에 있어서,
    컴퓨팅 시스템에 의해, 소셜 네트워킹 시스템의 사용자를 식별하는 단계;
    컴퓨팅 시스템에 의해, 소셜 네트워킹 시스템에 의해 저장된 데이터에 액세스하는 단계로서, 데이터는 사용자와 연관되는, 데이터에 액세스하는 단계;
    컴퓨팅 시스템에 의해, 소셜 네트워킹 시스템에 의해 저장된 데이터에 기초하여 오디오 효과를 선택하는 단계로서, 오디오 효과는 시청각 콘텐트의 오디오 부분을 어떻게 변경할지를 나타내는, 오디오 효과를 선택하는 단계; 및
    컴퓨팅 시스템에 의해:
    디바이스상의 시청각 콘텐트를 변경하기 위해 디바이스로 음향 효과; 또는
    디바이스로 변경된 시청각 콘텐트를 전송하는 단계를 포함하고, 변경된 시청각 콘텐트는 오디오 효과에 기초하여 변경된 오디오 부분을 포함하는, 방법.
  2. 제 1 항에 있어서,
    오디오 효과는 시청각 콘텐트에 추가될 주변 사운드, 오디오 부분이 시청각 콘텐트에 추가되게 하기 위한 이벤트의 표시, 사운드를 합성하기 위한 하나 이상의 알고리즘, 공간화된 오디오에 대한 사운드를 밸런싱하기 위해 사용될 위치, 또는 하나 이상의 디지털 신호 프로세서(DSP) 기술들을 시청각 콘텐트에 적용하기 위한 하나 이상의 파라미터들을 포함하는, 방법.
  3. 제 1 항에 있어서,
    소셜 네트워킹 시스템에 의해 저장된 데이터는 사용자를 기술하는 데이터 또는 소셜 네트워킹 시스템의 사용자들간의 연결들에 관련된 데이터를 포함하고, 소셜 네트워킹 시스템의 사용자들은 사용자를 포함하는, 방법.
  4. 제 1 항에 있어서,
    디바이스상의 시청각 콘텐트를 변경하는 단계는 디바이스상의 시청각 콘텐트와 오디오 효과를 병합하는 단계를 포함하는, 방법.
  5. 제 1 항에 있어서,
    변경된 시청각 콘텐트는 디바이스에 의해 출력되는, 방법.
  6. 제 5 항에 있어서,
    변경된 시청각 콘텐트의 오디오 부분은 디바이스의 오디오 출력 서브시스템을 사용하여 출력되고,
    변경된 시청각 콘텐트의 비디오 부분은 디바이스의 비디오 출력 서브시스템을 사용하여 출력되는, 방법.
  7. 제 1 항에 있어서,
    사용자는 디바이스와 연관되는, 방법.
  8. 제 1 항에 있어서,
    사용자는 제 1 사용자이고,
    제 2 사용자는 디바이스와 연관되는, 방법.
  9. 제 1 항에 있어서,
    컴퓨팅 시스템에서, 사용자와 연관된 시청각 콘텐트를 수신하는 단계; 및
    컴퓨팅 시스템에 의해, 수신된 시청각 콘텐트의 속성을 결정하는 단계를 더 포함하고, 오디오 효과를 결정하는 것은 또한 속성에 기초하는, 방법.
  10. 제 9 항에 있어서,
    사용자는 수신된 시청각 콘텐트에 기초하여 식별되는, 방법.
  11. 제 9 항에 있어서,
    사용자는 수신된 시청각 콘텐트에서 사용자의 존재를 검출함으로써 식별되는, 방법.
  12. 제 1 항에 있어서,
    컴퓨팅 시스템에서, 디바이스의 하나 이상의 센서들로부터 센서 데이터를 수신하는 단계를 더 포함하고, 오디오 효과를 결정하는 것은 또한 센서 데이터에 기초하는, 방법.
  13. 제 12 항에 있어서,
    센서 데이터는 디바이스의 물리적 위치를 나타내는 데이터를 포함하는, 방법.
  14. 제 12 항에 있어서,
    센서 데이터는 디바이스의 가속도계에 의해 생성된 가속도계 데이터 또는 디바이스상의 온도 센서에 의해 감지된 온도 측정값을 포함하는, 방법.
  15. 하나 이상의 프로세서들에 의해 실행 가능한 복수의 명령들을 저장하는 비일시적 컴퓨터 판독가능 저장 매체에 있어서,
    하나 이상의 프로세서에 의해 실행될 때 복수의 명령들은 하나 이상의 프로세서들이:
    컴퓨팅 시스템에 의해, 소셜 네트워킹 시스템의 사용자를 식별하고;
    컴퓨팅 시스템에 의해, 소셜 네트워킹 시스템에 의해 저장된 데이터에 액세스하고, 데이터는 사용자와 연관되고,
    컴퓨팅 시스템에 의해, 소셜 네트워킹 시스템에 의해 저장된 데이터에 기초하여 오디오 효과를 선택하고, 오디오 효과는 시청각 콘텐트의 오디오 부분을 어떻게 변경할지를 나타내고,
    컴퓨팅 시스템에 의해:
    디바이스상의 시청각 콘텐트를 변경하기 위해 디바이스로 오디오 효과; 또는
    디바이스로 변경된 시청각 콘텐트를 전송하게 하고, 변경된 시청각 콘텐트는 오디오 효과에 기초하여 변경된 오디오 부분을 포함하는, 비일시적 컴퓨터 판독가능 저장 매체.
  16. 제 15 항에 있어서,
    하나 이상의 프로세서에 의해 실행될 때 복수의 명령들은 또한 하나 이상의 프로세서들이:
    컴퓨팅 시스템에서, 사용자와 연관된 시청각 콘텐트를 수신하고,
    컴퓨팅 시스템에 의해, 수신된 시청각 콘텐트의 속성을 결정하게 하고, 오디오 효과를 결정하는 것은 또한 속성에 기초하는, 비일시적 컴퓨터 판독가능 저장 매체.
  17. 제 15 항에 있어서,
    하나 이상의 프로세서에 의해 실행될 때 복수의 명령들은 또한 하나 이상의 프로세서들이:
    컴퓨팅 시스템에서, 디바이스의 하나 이상의 센서들로부터 센서 데이터를 수신하게 하고, 오디오 효과를 결정하는 것은 또한 센서 데이터에 기초하는, 비일시적 컴퓨터 판독가능 저장 매체.
  18. 시스템에 있어서,
    하나 이상의 프로세서들; 및
    명령들을 포함하는 비일시적 컴퓨터 판독 가능 매체를 포함하고, 명령들은 하나 이상의 프로세서들에 의해 실행될 때, 하나 이상의 프로세서들이:
    소셜 네트워킹 시스템의 사용자를 식별하고,
    소셜 네트워킹 시스템에 의해 저장된 데이터에 액세스하고, 데이터는 사용자와 연관되고,
    소셜 네트워킹 시스템에 의해 저장된 데이터에 기초하여 오디오 효과를 선택하고, 오디오 효과는 시청각 콘텐트의 오디오 부분을 어떻게 변경할지를 나타내고,
    디바이스상의 시청각 콘텐트를 변경하기 위해 디바이스로 오디오 효과, 또는
    디바이스로 변경된 시청각 콘텐트를 전송하는 것을 포함하는 동작들을 수행하게 하고, 변경된 시청각 콘텐트는 오디오 효과에 기초하여 변경된 오디오 부분을 포함하는, 시스템.
  19. 제 18 항에 있어서,
    명령들은 또한 하나 이상의 프로세서들이:
    사용자와 연관된 시청각 콘텐트를 수신하고,
    수신된 시청각 콘텐트의 속성을 결정하는 것을 포함하는 동작들을 수행하게 하고, 오디오 효과를 결정하는 것은 또한 속성에 기초하는, 시스템.
  20. 제 18 항에 있어서,
    명령들은 또한 하나 이상의 프로세서들이:
    디바이스의 하나 이상의 센서들로부터 센서 데이터를 수신하는 것을 포함하는 동작들을 수행하게 하고, 오디오 효과를 결정하는 것은 또한 센서 데이터에 기초하는, 시스템.
  21. 방법에 있어서,
    컴퓨팅 시스템에 의해, 소셜 네트워킹 시스템의 사용자를 식별하는 단계;
    컴퓨팅 시스템에 의해, 소셜 네트워킹 시스템에 의해 저장된 데이터에 액세스하는 단계로서, 데이터는 사용자와 연관되는, 저장된 데이터에 액세스하는 단계;
    컴퓨팅 시스템에 의해, 소셜 네트워킹 시스템에 의해 저장된 데이터에 기초하여 오디오 효과를 선택하는 단계로서, 오디오 효과는 시청각 콘텐트의 오디오 부분을 어떻게 변경할지를 나타내는, 오디오 효과를 선택하는 단계; 및
    컴퓨팅 시스템에 의해,
    디바이스상의 시청각 콘텐트를 변경하기 위해 디바이스로 오디오 효과; 또는
    디바이스로 변경된 시청각 콘텐트를 전송하는 단계를 포함하고, 변경된 시청각 콘텐트는 오디오 효과에 기초하여 변경된 오디오 부분을 포함하는, 방법.
  22. 제 21 항에 있어서,
    오디오 효과는 시청각 콘텐트에 추가될 주변 사운드, 오디오 부분이 시청각 콘텐트에 추가되게 하기 위한 이벤트의 표시, 사운드를 합성하기 위한 하나 이상의 알고리즘들, 공간화된 오디오에 대한 사운드를 밸런싱하기 위해 사용될 위치, 또는 하나 이상의 디지털 신호 프로세서(DSP) 기술들을 시청각 콘텐트에 적용하기 위한 하나 이상의 파라미터들을 포함하는, 방법.
  23. 제 21 항 또는 제 22 항에 있어서,
    소셜 네트워킹 시스템에 의해 저장된 데이터는 사용자를 기술하는 데이터 또는 소셜 네트워킹 시스템의 사용자들간의 연결들에 관련된 데이터를 포함하고, 소셜 네트워킹 시스템의 사용자들은 사용자를 포함하는, 방법.
  24. 제 21 항 내지 제 23 항 중 어느 한 항에 있어서,
    디바이스상의 시청각 콘텐트를 변경하는 단계는 오디오 효과를 디바이스상의 시청각 콘텐트와 병합하는 단계를 포함하는, 방법.
  25. 제 21 항 내지 제 24 항 중 어느 한 항에 있어서,
    변경된 시청각 콘텐트는 디바이스에 의해 출력되는, 방법.
  26. 제 25 항에 있어서,
    변경된 시청각 콘텐트의 오디오 부분은 디바이스의 오디오 출력 서브시스템을 사용하여 출력되고,
    변경된 시청각 콘텐트의 비디오 부분은 디바이스의 비디오 출력 서비스시스템을 사용하여 출력되는, 방법.
  27. 제 21 항 내지 제 26 항 중 어느 한 항에 있어서,
    사용자는 디바이스와 연관되는, 방법.
  28. 제 21 항 내지 제 27 항 중 어느 한 항에 있어서,
    사용자는 제 1 사용자이고,
    제 2 사용자는 디바이스와 연관되는, 방법.
  29. 제 21 항 내지 제 28 항 중 어느 한 항에 있어서,
    컴퓨팅 시스템에서, 사용자와 연관된 시청각 콘텐트를 수신하는 단계; 및
    컴퓨팅 시스템에 의해, 수신된 시청각 콘텐트의 속성을 결정하는 단계로서, 오디오 효과를 결정하는 단계는 속성에 또한 기초하는, 수신된 시청각 콘텐트의 속성을 결정하는 단계를 더 포함하는, 방법.
  30. 제 29 항에 있어서,
    사용자는 수신된 시청각 콘텐트에 기초하여 식별되는, 방법.
  31. 제 29 항에 있어서,
    사용자는 수신된 시청각 콘텐트에서 사용자의 존재를 검출함으로써 식별되는, 방법.
  32. 제 21 항 내지 제 31 항 중 어느 한 항에 있어서,
    컴퓨팅 시스템에서, 디바이스의 하나 이상의 센서들로부터 센서 데이터를 수신하는 단계를 더 포함하고, 오디오 효과를 결정하는 단계는 또한 센서 데이터에 기초하는, 방법.
  33. 제 32 항에 있어서,
    센서 데이터는 디바이스의 물리적 위치를 나타내는 데이터를 포함하는, 방법.
  34. 제 32 항에 있어서,
    센서 데이터는 디바이스의 가속도계에 의해 생성된 가속도계 데이터 또는 디바이스상의 온도 센서에 의해 감지된 온도 측정값을 포함하는, 방법.
  35. 제 21 항 내지 제 34 항 중 어느 한 항에 따른 방법을 수행하기 위해 실행될 때 동작 가능한 소프트웨어를 포함하는, 하나 이상의 컴퓨터 판독 가능 비일시적 저장 매체들.
  36. 시스템에 있어서:
    하나 이상의 프로세서들; 및 프로세서들에 결합되고 프로세서들에 의해 실행 가능한 명령들을 포함하는 적어도 하나의 메모리를 포함하고, 프로세서들은 명령들을 실행할 때 제 21 항 내지 제 34 항 중 어느 한 항에 따른 방법을 수행하도록 동작 가능한, 시스템.
  37. 데이터 처리 시스템상에서 실행될 때 제 21 항 내지 제 34 항 중 어느 한 항에 따른 방법을 수행하도록 동작 가능한 컴퓨터 판독 가능 비일시적 저장 매체들을 바람직하게 포함하는, 컴퓨터 프로그램 제품.
KR1020197032152A 2017-04-17 2017-04-18 소셜 네트워킹 데이터에 기초한 오디오 효과들 KR20190132480A (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US15/489,715 US20180300100A1 (en) 2017-04-17 2017-04-17 Audio effects based on social networking data
US15/489,715 2017-04-17
PCT/US2017/028212 WO2018194571A1 (en) 2017-04-17 2017-04-18 Audio effects based on social networking data

Publications (1)

Publication Number Publication Date
KR20190132480A true KR20190132480A (ko) 2019-11-27

Family

ID=63790586

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020197032152A KR20190132480A (ko) 2017-04-17 2017-04-18 소셜 네트워킹 데이터에 기초한 오디오 효과들

Country Status (6)

Country Link
US (1) US20180300100A1 (ko)
EP (1) EP3613010A4 (ko)
JP (1) JP6942196B2 (ko)
KR (1) KR20190132480A (ko)
CN (1) CN110741337A (ko)
WO (1) WO2018194571A1 (ko)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102148006B1 (ko) * 2019-04-30 2020-08-25 주식회사 카카오 동영상에 특수 이펙트를 제공하는 방법 및 장치
US11157230B2 (en) * 2019-08-09 2021-10-26 Whisper Capital Llc Motion activated sound generating and monitoring mobile application
US11381797B2 (en) * 2020-07-16 2022-07-05 Apple Inc. Variable audio for audio-visual content
CN112492355B (zh) * 2020-11-25 2022-07-08 北京字跳网络技术有限公司 发布和回复多媒体内容的方法、装置和设备
US11792031B2 (en) * 2021-03-31 2023-10-17 Snap Inc. Mixing participant audio from multiple rooms within a virtual conferencing system
CN113365113B (zh) * 2021-05-31 2022-09-09 武汉斗鱼鱼乐网络科技有限公司 目标节点识别方法及装置

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8108509B2 (en) * 2001-04-30 2012-01-31 Sony Computer Entertainment America Llc Altering network transmitted content data based upon user specified characteristics
CN101502089B (zh) * 2006-07-28 2013-07-03 西门子企业通讯有限责任两合公司 进行音频会议的方法、音频会议装置和编码器之间的切换方法
JP5258967B2 (ja) * 2008-07-15 2013-08-07 エルジー エレクトロニクス インコーポレイティド オーディオ信号の処理方法及び装置
US8566855B2 (en) * 2008-12-02 2013-10-22 Sony Corporation Audiovisual user interface based on learned user preferences
JP2010152550A (ja) * 2008-12-24 2010-07-08 Canon Inc 作業装置及びその校正方法
US8844051B2 (en) * 2009-09-09 2014-09-23 Nokia Corporation Method and apparatus for media relaying and mixing in social networks
EP2766816A4 (en) * 2011-10-10 2016-01-27 Vivoom Inc RESTITUTION AND ORIENTATION BASED ON A NETWORK OF VISUAL EFFECTS
US9088697B2 (en) * 2011-12-13 2015-07-21 Google Inc. Processing media streams during a multi-user video conference
WO2014001607A1 (en) * 2012-06-29 2014-01-03 Nokia Corporation Video remixing system
US9215020B2 (en) * 2012-09-17 2015-12-15 Elwha Llc Systems and methods for providing personalized audio content
US9294853B1 (en) * 2012-12-28 2016-03-22 Google Inc. Audio control process
US20140229321A1 (en) * 2013-02-11 2014-08-14 Facebook, Inc. Determining gift suggestions for users of a social networking system using an auction model
US9319019B2 (en) * 2013-02-11 2016-04-19 Symphonic Audio Technologies Corp. Method for augmenting a listening experience
US20140310335A1 (en) * 2013-04-11 2014-10-16 Snibbe Interactive, Inc. Platform for creating context aware interactive experiences over a network
US9268787B2 (en) * 2014-01-31 2016-02-23 EyeGroove, Inc. Methods and devices for synchronizing and sharing media items
US10417799B2 (en) * 2015-05-07 2019-09-17 Facebook, Inc. Systems and methods for generating and presenting publishable collections of related media content items
US20160350953A1 (en) * 2015-05-28 2016-12-01 Facebook, Inc. Facilitating electronic communication with content enhancements

Also Published As

Publication number Publication date
EP3613010A1 (en) 2020-02-26
US20180300100A1 (en) 2018-10-18
CN110741337A (zh) 2020-01-31
JP2020518896A (ja) 2020-06-25
JP6942196B2 (ja) 2021-09-29
EP3613010A4 (en) 2020-04-22
WO2018194571A1 (en) 2018-10-25

Similar Documents

Publication Publication Date Title
KR101945922B1 (ko) 오프라인 컨텐츠의 생성
JP6942196B2 (ja) ソーシャルネットワーキングデータに基づくオーディオ効果
US20190147112A1 (en) Systems and methods for ranking ephemeral content item collections associated with a social networking system
US20170195338A1 (en) Browser with integrated privacy controls and dashboard for social network data
US9699187B2 (en) Social networking groups as a platform for third party integration
KR101815142B1 (ko) 소셜 컨텍스트에 기반한 이미지 필터링 방법 및 시스템
US10110666B2 (en) Systems and methods for interactive media content exchange
US10084885B2 (en) Systems and methods for substituting references to content
US10652075B2 (en) Systems and methods for selecting content items and generating multimedia content
KR20190093216A (ko) 증강 현실 맞춤형 콘텐츠를 제공하기 위한 시스템들 및 방법들
US10887422B2 (en) Selectively enabling users to access media effects associated with events
US11126344B2 (en) Systems and methods for sharing content
JP2018502398A (ja) メディアコンテンツ上に重ね合わされるテキストのソーシャルリマークスを提供するためのシステムおよび方法
US20190205929A1 (en) Systems and methods for providing media effect advertisements in a social networking system
US20210342060A1 (en) Systems and methods for augmenting content
KR20160144481A (ko) 컨텐츠의 사용자 공유 유도
US20180189554A1 (en) Systems and methods to present reactions to media content in a virtual environment
US20190207993A1 (en) Systems and methods for broadcasting live content
US11361021B2 (en) Systems and methods for music related interactions and interfaces
US20220084078A1 (en) Methods and Systems for Untargeting Users of an Online Service for Advertising
US20180287979A1 (en) Systems and methods for generating content
US20190057415A1 (en) Systems and methods for providing content item collections based on probability of spending time on related content items in a social networking system
TW202327320A (zh) 協作故事

Legal Events

Date Code Title Description
E902 Notification of reason for refusal
E601 Decision to refuse application