KR20190109563A - 라이브 비디오 스트림의 브로드캐스트 동안 뷰어들의 반응의 비디오 클립들의 송신 - Google Patents

라이브 비디오 스트림의 브로드캐스트 동안 뷰어들의 반응의 비디오 클립들의 송신 Download PDF

Info

Publication number
KR20190109563A
KR20190109563A KR1020197026850A KR20197026850A KR20190109563A KR 20190109563 A KR20190109563 A KR 20190109563A KR 1020197026850 A KR1020197026850 A KR 1020197026850A KR 20197026850 A KR20197026850 A KR 20197026850A KR 20190109563 A KR20190109563 A KR 20190109563A
Authority
KR
South Korea
Prior art keywords
viewer
video
live
broadcaster
video stream
Prior art date
Application number
KR1020197026850A
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 KR20190109563A publication Critical patent/KR20190109563A/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/65Transmission of management data between client and server
    • H04N21/658Transmission by the client directed to the server
    • 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/472End-user interface for requesting content, additional data or services; End-user interface for interacting with content, e.g. for content reservation or setting reminders, for requesting event notification, for manipulating displayed content
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L51/00User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
    • H04L51/07User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail characterised by the inclusion of specific contents
    • H04L51/10Multimedia information
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L51/00User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
    • H04L51/07User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail characterised by the inclusion of specific contents
    • H04L51/18Commands or executable codes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L51/00User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
    • H04L51/52User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail for supporting social networking services
    • 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/21Server components or server architectures
    • H04N21/218Source of audio or video content, e.g. local disk arrays
    • H04N21/2187Live feed
    • 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/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/236Assembling of a multiplex stream, e.g. transport stream, by combining a video stream with other content or additional data, e.g. inserting a URL [Uniform Resource Locator] into a video stream, multiplexing software data into a video stream; Remultiplexing of multiplex streams; Insertion of stuffing bits into the multiplex stream, e.g. to obtain a constant bit-rate; Assembling of a packetised elementary stream
    • H04N21/2365Multiplexing of several video streams
    • 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/254Management at additional data server, e.g. shopping server, rights management server
    • 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/254Management at additional data server, e.g. shopping server, rights management server
    • H04N21/2541Rights Management
    • 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/27Server based end-user applications
    • H04N21/274Storing end-user multimedia data in response to end-user request, e.g. network recorder
    • H04N21/2743Video hosting of uploaded data from client
    • 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/41Structure of client; Structure of client peripherals
    • H04N21/422Input-only peripherals, i.e. input devices connected to specially adapted client devices, e.g. global positioning system [GPS]
    • 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/41Structure of client; Structure of client peripherals
    • H04N21/422Input-only peripherals, i.e. input devices connected to specially adapted client devices, e.g. global positioning system [GPS]
    • H04N21/4223Cameras
    • 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/431Generation of visual interfaces for content selection or interaction; Content or additional data rendering
    • 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/431Generation of visual interfaces for content selection or interaction; Content or additional data rendering
    • H04N21/4312Generation of visual interfaces for content selection or interaction; Content or additional data rendering involving specific graphical features, e.g. screen layout, special fonts or colors, blinking icons, highlights or animations
    • H04N21/4316Generation of visual interfaces for content selection or interaction; Content or additional data rendering involving specific graphical features, e.g. screen layout, special fonts or colors, blinking icons, highlights or animations for displaying supplemental content in a region of the screen, e.g. an advertisement in a separate window
    • 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/44Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Multimedia (AREA)
  • Databases & Information Systems (AREA)
  • Business, Economics & Management (AREA)
  • Human Computer Interaction (AREA)
  • Marketing (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Computing Systems (AREA)
  • General Health & Medical Sciences (AREA)
  • Computer Security & Cryptography (AREA)
  • Health & Medical Sciences (AREA)
  • Physics & Mathematics (AREA)
  • Primary Health Care (AREA)
  • Strategic Management (AREA)
  • Tourism & Hospitality (AREA)
  • Economics (AREA)
  • General Business, Economics & Management (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Human Resources & Organizations (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
  • Information Transfer Between Computers (AREA)
  • Social Psychology (AREA)

Abstract

본 개시사항은 브로드캐스터 디바이스로부터 뷰어 디바이스들로 라이브 비디오 스트림을 송신하고, 라이브 비디오 스트림의 프리젠테이션 동안 반응들의 비디오 클립들을 (라이브 비디오 스트림에 대한 뷰어들에 의해) 브로드캐스터 디바이스로 중계하는 시스템들 및 방법들을 포함한다. 특정 실시예들에서, 뷰어들이 뷰어 디바이스를 사용하여 라이브 비디오 스트림에 대한 반응들의 비디오 클립들을 캡처하고, 차례로 라이브 비디오 스트림의 브로드캐스트 동안 뷰어 디바이스로부터 수신된 비디오 클립들을 브로드캐스터 디바이스로 송신하는 것을 가능케 한다. 예를 들면, 일부 실시예들에서, 시스템들 및 방법들은 라이브-비디오-스트림 브로드캐스트 동안 뷰어의 반응의 비디오 클립들을 브로드캐스터 디바이스에 제공한다. 또한, 일부 실시예들에서, 시스템들 및 방법들은 라이브-비디오-스트림 브로드캐스트 동안 다른 뷰어들의 반응들의 비디오 클립들을 뷰어 디바이스에 제공한다.

Description

라이브 비디오 스트림의 브로드캐스트 동안 뷰어들의 반응의 비디오 클립들의 송신
본 발명은 라이브-비디오-스트림의 브로드캐스트 동안 뷰어들의 반응의 비디오 클립들의 송신에 관한 것이다.
네트워크 사용자들은 소셜 네트워킹 시스템들을 통해 서로 통신하기 위하여 더욱 더 비디오를 사용한다. 종래의 소셜 네트워킹 시스템들이 일단 사용자들을 기록된 디지털 통신들을 통해 통신하는 것에 제한하였지만, 일부 소셜 네트워킹 시스템들은 현재 사용자들이 통신들을 전송하기 위한 옵션들에 스마트폰과 같은 개인 컴퓨팅 디바이스에 의해 캡처된 비디오를 제공한다. 예를 들면, 일부 소셜 네트워킹 시스템들은 사용자들이 소셜 네트워킹 시스템들의 다른 사용자들에게 라이브-비디오-스트림들을 제공하는 것을 가능케 한다. 일부 경우들에서, 예를 들면, 소셜 네트워킹 시스템은 내부 라이브-비디오-브로드캐스팅 시스템을 사용하여 사용자의 스마트폰 카메라에 의해 캡처된 라이브-비디오-스트림을 소셜 네트워킹 시스템에 연결된 다른 사용자들에게 브로드캐스트한다.
뉴스캐스터들, 정치인들, 사업가들, 및 다른 다양한 사용자들은 라이브-비디오-스트림 옵션들을 활용하여 소셜 네트워킹 시스템 내에서 소규모 또는 대규모 청중들과 신속하게 통신한다. 그러나, 많은 라이브 비디오 스트림들 동안, 브로드캐스터에게는 종종 관객이 라이브 비디오 스트림에 참여하고 있는지를 나타내는 신호들 또는 피드백이 부족하다. 소셜 네트워킹 시스템들이 종종 라이브 비디오 스트림을 뷰어들에게 단방향 브로드캐스트로 송신하기 때문에, 이러한 상황들 하에서 브로드캐스터들에게는 피드백이 부족하다. 또한, 소셜 네트워킹 시스템 내부 시스템들을 포함하여 많은 기존의 라이브-비디오-브로드캐스팅 시스템들을 통해, 브로드캐스터에게는 관객이 비디오에 참여하는지에 대한 정보뿐만 아니라 라이브 비디오 스트림에 대한 뷰어들의 반응들을 나타내는 정보도 부족하다.
브로드캐스터에 대한 제한된 피드백에 덧붙여, 종래의 라이브-비디오-브로드캐스팅 시스템들에는 종종 라이브-비디오-스트림 브로드캐스트 동안 뷰어가 브로드캐스터와 상호작용할 수 있는 옵션들이 부족하다. 또한, 기존의 라이브-비디오-브로드캐스팅 시스템들을 사용할 때, 뷰어들에게는 종종 동일한 라이브 비디오 스트림에 대한 다른 뷰어들의 참여 레벨을 나타내는 신호들이 부족하다. 이러한 상황들 하에서, 각 뷰어는 브로드캐스터 또는 다른 뷰어들과 상호작용하지 않고 고립되어 동일한 라이브 비디오 스트림을 시청할 수 있다.
따라서, 많은 종래의 라이브-비디오-브로드캐스팅 시스템들에는, 브로드캐스터가 뷰어들의 피드백의 실-시간 표시를 수신하는, 뷰어들이 브로드캐스트에 참여하는, 및 마찬가지로 뷰어들이 다른 뷰어들 참여 레벨들의 표시를 수신하는 적합한 응답 메커니즘들이 부족하다.
본 개시사항은, 라이브 비디오 스트림을 브로드캐스터 디바이스로부터 뷰어 디바이스들로 송신하고, 라이브 비디오 스트림의 프리젠테이션 동안 (뷰어들에 의해 라이브 비디오 스트림에 대한) 반응들의 비디오 클립을 브로드캐스터 디바이스에 중계하는 시스템들 및 방법들을 통해, 전술한 문제들의 일부 또는 모두에 대한 해결책들을 기술한다. 개시된 시스템들 및 방법들은 뷰어들이 뷰어 디바이스를 사용하여 라이브 비디오 스트림에 대한 반응들의 비디오 클립들을 캡처하는 것을 가능하게 하고, 차례로 뷰어 디바이스로부터 수신된 비디오 클립들을 라이브 비디오 스트림의 브로드캐스트 도중에 브로드캐스터 디바이스로 송신한다. 일부 실시예들에서, 예를 들면, 시스템들 및 방법들은 라이브-비디오-스트림 브로드캐스트 동안 뷰어들의 반응의 비디오 클립들을 브로드캐스터 디바이스에 제시한다. 추가의 또는 대안적인 실시예들에서, 시스템들 및 방법들은 라이브-비디오-스트림 브로드캐스트 동안 다른 뷰어들의 반응들의 비디오 클립들을 뷰어 디바이스에 제시한다.
예를 들면, 특정 실시예들에서, 시스템들 및 방법들은 브로드캐스터 디바이스로부터 한 그룹의 뷰어들에 대한 브로드캐스트를 위해 라이브 비디오 스트림을 수신한다. 개시된 시스템들 및 방법들은 이후 라이브 비디오 스트림을 한 그룹의 뷰어들을 위한 뷰어 디바이스들로 송신한다. 뷰어 디바이스 중 적어도 일부가 라이브 비디오 스트림을 제시하지만, 시스템들 및 방법들은 뷰어가 뷰어 디바이스를 사용하여 캡처한 라이브 스트림에 대한 뷰어들의 반응 비디오 클립을 수신한다. 라이브 비디오 스트림이 계속 브로드캐스트되는 동안, 시스템들 및 방법들은 브로드캐스터 디바이스가 브로드캐스터에게 제시하기 위해 비디오 클립을 브로드캐스터 디바이스로 송신한다.
라이브-비디오-스트림 브로드캐스트 동안 반응들의 비디오 클립들을 수신 및 송신함으로써, 개시된 시스템들 및 방법들은 뷰어들이 라이브 비디오 스트림에 대한 시각적 반응을 통해 라이브 비디오 스트림 (및 브로드캐스터)에 참여하는 것을 가능케 한다. 비디오 클립은 종래의 라이브-비디오-브로드캐스팅 시스템들에 의해 제공되는 다른 반응 옵션들보다 더 개인화되고 시각적인 형태의 반응을 제공한다. 또한 뷰어가 라이브 비디오 스트림에 참여하도록 장려하는 실-시간 응답 옵션을 제공한다.
일부 실시예들에서, 개시된 방법들 및 시스템들이 개인화되고 시각적인 반응에 비디오 클립을 제공함으로써 뷰어들을 장려할뿐만 아니라, 비디오 클립이 또한 뷰어들이 라이브-비디오-스트림 브로드캐스트 도중에 상호작용할 수 있는 요소들을 포함할 수 있다. 예를 들면, 일부 실시예들에서, 개시된 시스템들 및 방법들은 라이브 비디오 스트림의 디스플레이 상에 오버레이된 그래픽 요소 내에서 브로드캐스터 디바이스에 의한 (또는 뷰어 디바이스에 의한) 프리젠테이션을 위해 비디오 클립을 송신한다. 그러한 경우들에서, 비디오 클립은 라이브-비디오-스트림 브로드캐스트 동안 브로드캐스터 (및 때때로 다른 뷰어들)에 대한 상호작용형 사용자 경험을 가능하게 한다. 일부 실시예들에서 제시된 바와 같이, 브로드캐스터 또는 뷰어는 그래픽 요소 내의 비디오 클립과 상호작용하여, 예를 들면, 비디오 클립에 댓글을 달거나, 팔로우 요청을 전송하거나, 또는 브로드캐스트 도중 라이브 비디오 스트림 상에 오버레이된 비디오 클립의 시청을 유지할 수 있다.
더 많은 참여, 상호작용 및 실-시간 응답에 비디오 클립을 제공하는 것에 추가하여, 개시된 시스템들 및 방법들은 언제 그리고 어떤 뷰어들이 반응의 비디오 클립을 공유할 수 있는지에 대한 제어를 추가로 제공한다. 예를 들어, 일부 실시예들에서, 개시된 방법들 및 시스템들은 뷰어들에 의한 반응들의 비디오 클립들을 캡처하기 위해 반응-비디오 요소를 일부(또는 모든) 뷰어 디바이스들에서 선택적으로 활성화시킨다. 예를 들면, 브로드캐스터가 특정 뷰어들에게 그들의 반응들의 비디오 클립들을 라이브 비디오 스트림에 부가할 수 있는 허가를 부여하였을 때, 또는 임계 수보다 적은 수의 뷰어들이 라이브 비디오 스트림을 시청하고 있을 때, 시스템들 및 방법들은 반응-비디오 요소를 선택적으로 활성화할 수 있다.
다음의 설명은 소셜 네트워킹 시스템의 추가 특징들 및 장점들을 설명한다. 이들 추가적인 특징들 및 장점들 중 일부는 설명으로부터 명백해질 것이거나, 또는 그러한 실시예들의 실시에 의해 학습될 수 있다. 당업자는 첨부된 청구항들에서 특히 지적된 시스템들 및 방법들을 통해 이들 실시예들의 특징들 및 이점들을 실현하고 얻을 수 있다.
아래는 상세한 설명이 참조하는 도면들의 간략한 설명이다.
도 1은 하나 이상의 실시예들에 따른 시스템을 구현하기 위한 환경의 블록도.
도 2a 및 도 2b는 하나 이상의 실시예들에 따라 뷰어들에 의한 반응들의 비디오 클립들을 라이브 비디오 스트림으로 중계하는 시퀀스 흐름도들.
도 3a 내지 도 3h는 하나 이상의 실시예들에 따른 라이브 비디오 스트림에 대한 반응의 비디오 클립을 포함하는 브로드캐스터 디바이스의 사용자 인터페이스를 도시하는 도면들.
도 4a 내지 도 4f는 하나 이상의 실시예들에 따른 라이브 비디오 스트림에 대한 반응의 비디오 클립을 포함하는 뷰어 디바이스의 사용자 인터페이스를 도시하는 도면들.
도 5는 하나 이상의 실시예들에 따라 반응의 비디오 클립을 라이브 비디오 스트림에 제시하는 방법에서 일련의 동작들의 플로차트.
도 6은 하나 이상의 실시예들에 따라 반응의 비디오 클립을 라이브 비디오 스트림으로 송신하는 방법에서 일련의 동작들의 플로차트.
도 7은 하나 이상의 실시예들에 따라 반응의 비디오 클립을 라이브 비디오 스트림으로 송신하는 방법에서 일련의 동작들의 플로차트.
도 8은 하나 이상의 실시예들에 따른 예시적인 컴퓨팅 디바이스의 블록도.
도 9는 하나 이상의 실시예들에 따른 소셜 네트워킹 시스템의 네트워크 환경을 도시하는 도면.
도 10은 하나 이상의 실시예들에 따른 소셜 네트워킹 시스템에 대한 예시적인 소셜 그래프를 도시하는 도면.
본 개시사항은 브로드캐스터 디바이스로부터 뷰어 디바이스들로 라이브 비디오 스트림을 송신하고, 라이브 비디오 스트림의 프리젠테이션 동안 반응들의 비디오 클립들을(라이브 비디오 스트림에 대한 뷰어들에 의해) 브로드캐스터 디바이스로 중계하는 시스템의 하나 이상의 실시예들을 기술한다. 개시된 시스템은 뷰어들이 뷰어 디바이스를 사용하여 라이브 비디오 스트림에 대한 반응들의 비디오 클립들을 캡처하고, 차례로 라이브 비디오 스트림의 브로드캐스트 도중에 뷰어 디바이스로부터 수신된 비디오 클립들을 브로드캐스터 디바이스로 송신하는 것을 가능케 한다. 일부 실시예들에서, 예를 들면, 시스템은 라이브 비디오 스트림의 브로드캐스트 동안 브로드캐스터 디바이스 상에 프리젠테이션을 위해 뷰어의 반응의 비디오 클립을 브로드캐스터 디바이스에 송신한다. 일부 실시예들에서, 시스템은 라이브 비디오 스트림의 브로드캐스트 동안 뷰어 디바이스 상에서의 프리젠테이션을 위해 다른 뷰어들의 반응들의 비디오 클립들을 추가로 송신한다.
예를 들어, 특정 실시예들에서, 시스템은 한 그룹의 뷰어들에게 브로드캐트하기 위해 브로드캐스터 디바이스로부터 라이브 비디오 스트림을 수신한다. 그 후, 시스템은 한 그룹의 뷰어들을 위한 뷰어 디바이스들로 라이브 비디오 스트림을 송신한다. 뷰어 디바이스들 중 적어도 일부가 라이브-비디오-스트림을 제시하지만, 시스템은 뷰어가 뷰어 디바이스를 사용하여 캡처한 라이브 스트림에 대한 뷰어 반응의 비디오 클립을 수신한다. 그 후, 시스템이 브로드캐스터 디바이스로부터 라이브 비디오 스트림을 수신하는 동안, 시스템은 브로드캐스터 디바이스가 브로드캐스터에게 제시할 비디오 클립을 브로드캐스터 디바이스로 송신한다. 일부 실시예들에서, 시스템은 마찬가지로 뷰어 디바이스들이 라이브 비디오 스트림과 함께 제시할 비디오 클립을 뷰어 디바이스들 중 일부(또는 모두)로 송신한다.
라이브-비디오-스트림 브로드캐스트 동안 반응들의 비디오 클립들을 수신 및 송신함으로써, 개시된 시스템은 뷰어들이 라이브 비디오 스트림에 대한 시각적 반응을 통해 브로드캐스터 및 라이브 비디오 스트림에 참여하는 것을 가능케 한다. 비디오 클립은 종래의 라이브-비디오-브로드캐스팅 시스템들에 의해 제공되는 다른 반응 옵션들보다 더 개인화되고 시각적인 형태의 반응을 제공한다. 또한 뷰어가 라이브 비디오 스트림에 참여하도록 장려하는 실-시간 응답 옵션을 제공한다.
일부 실시예들에서, 개시된 시스템은 개인화된 시각적 반응에 비디오 클립을 제공함으로써 뷰어를 장려할뿐만 아니라, 뷰어들이 라이브-비디오-스트림 브로드캐스트 동안 상호작용할 수 있는 다른 요소를 또한 추가한다. 예를 들어, 일부 실시예들에서, 시스템은 라이브 비디오 스트림의 디스플레이 상에 오버레이된 그래픽 요소 내에서 브로드캐스터 디바이스(또는 뷰어 디바이스)에 의한 프리젠테이션을 위해 비디오 클립을 송신한다. 유사하게, 일부 실시예들에서, 소셜 네트워킹 시스템은 라이브 비디오 스트림 상에 오버레이된 그래픽 요소들 내에서 브로드캐스터 디바이스(또는 뷰어 디바이스)에 의한 프리젠테이션을 위해 추가 뷰어들의 반응들의 추가 비디오 클립들을 송신한다. 그러한 경우들에서, 그래픽 요소 내의 비디오 클립은 라이브-비디오-스트림 브로드캐스트 동안 브로드캐스터(및 때때로 다른 뷰어들)에 대한 상호작용형 사용자 경험을 가능하게 한다. 일부 실시예들에서 제시된 바와 같이, 브로드캐스터 또는 뷰어는 그래픽 요소 내에서 비디오 클립과 상호작용하여, 예를 들어 비디오 클립에 댓글을 달거나, 팔로우 요청을 보내거나, 또는 브로드캐스트 도중에 라이브 비디오 스트림 상에 오버레이된 비디오 클립의 시청을 유지할 수 있다.
따라서, 개시된 시스템은 일부 종래의 라이브-비디오-브로드캐스팅 시스템들에 존재하는 상호작용형 공백을 채우는 상호작용형 시각적 반응을 제공한다. 일부 실시예들에서, 개시된 시스템은 뷰어의 시각적 반응을 전달하고, 라이브 비디오 스트림 내에서 브로드캐스터에 의해 선택된 콘텐츠를 어둡게 하는 것을 회피하는 시간-제한 비디오 클립으로 공백을 채운다. 일부 경우들에서, 개시된 시스템은 또한 브로드캐스터가 뷰어들이 다른 뷰어들에 의해 캡처된 비디오 클립들을 시청할지의 여부 및 어느 정도로 시청할지를 제어하는 것을 가능케 한다.
비디오 클립이 제공된 더 많은 참여, 상호작용 및 실-시간 응답을 제공하는 것에 더하여, 일부 실시예들에서, 시스템은 언제 그리고 어떤 뷰어들이 반응의 비디오 클립을 공유할 수 있는지에 대한 제어를 추가로 제공한다. 예를 들어, 일부 실시예들에서, 개시된 시스템은 뷰어들에 의한 반응들의 비디오 클립들을 캡처하기 위해 일부(또는 모든) 뷰어 디바이스들 상에서 반응-비디오 요소를 선택적으로 활성화시킨다. 시스템은, 예를 들어, 브로드캐스터가 특정 뷰어에게 그들의 반응들의 비디오 클립들을 라이브 비디오 스트림에 부가할 수 있는 허가를 부여하였을 때, 또는 임계 수보다 적은 수의 뷰어들이 라이브 비디오 스트림을 시청하고 있을 때, 반응-비디오 요소를 선택적으로 활성화할 수 있다.
설명의 목적들을 위해, 본 개시사항은 다음 정의들을 갖는 여러 용어들을 사용한다. "라이브 비디오 스트림"이라는 용어는 상당한 지연 없이 브로드캐스터 디바이스로부터 라이브 비디오를 송신하는데 사용된 일련의 디지털 인코딩된 데이터를 지칭한다. 따라서, 본 개시사항에서 사용되는 바와 같이, 라이브 비디오 스트림은 서버 또는 서버들의 그룹을 포함하는 하나의 컴퓨팅 디바이스로부터 다른 컴퓨팅 디바이스(또는 다수의 컴퓨팅 디바이스들)로 데이터의 송신을 포함한다. 라이브 비디오 스트림은 서버(또는 서버들의 그룹)로부터 뷰어 디바이스(또는 다수의 뷰어 디바이스들)로의 데이터의 단방향 브로드캐스트를 더 포함한다. 예를 들어, 시스템은 모바일 디바이스로부터 수신된 라이브 비디오 스트림을 -비디오를 캡처하는 모바일 디바이스의 수 밀리초 또는 수 초 내에- 소셜 네트워킹 애플리케이션의 인터페이스 내에서 다른 모바일 디바이스들에 의한 프리젠테이션을 위해 다른 모바일 디바이스들로 송신할 수 있다.
본 개시사항에서 또한 사용되는 바와 같이, 용어 "비디오 클립"은 비교적 짧은 지속시간의 시간-제한 비디오를 지칭한다. 예를 들어, 일부 실시예들에서, 비디오 클립은 뷰어 디바이스에 의해 캡처된 라이브 비디오 스트림에 반응하는 뷰어의 얼굴을 보여주는 4-초 비디오를 포함한다. 일부 실시예들에서, 시스템은 기록된 비디오 클립이 최대 지속시간을 초과하지 않도록 비디오 클립의 최대 지속시간을 부과한다. 비디오 클립이 라이브 비디오 스트림에 대한 반응으로서 뷰어의 얼굴을 보여줄 수 있지만, 비디오 클립은 마찬가지로 손짓 또는 다른 제스처와 같은 다른 형태들의 반응을 보여줄 수 있다. 또한, 비디오 클립은 3초 또는 25초와 같이 4초보다 짧거나 더 긴 지속시간을 가질 수 있다. 또한, 비디오 클립은 더 긴 비디오의 한 부분이거나 더 긴 비디오의 부분이 아닌 독립형 비디오일 수 있다.
이제 도면들을 참조하면, 도 1은 소셜 네트워킹 시스템(102)이 동작하는 시스템 환경(100)의 일 실시예의 블록도를 도시한다. 도 1에 도시된 바와 같이, 시스템 환경(100)은 서버(들)(104)를 포함하는 소셜 네트워킹 시스템(102)을 포함한다. 시스템 환경(100)은 브로드캐스터 디바이스(106) 및 뷰어 디바이스들(114a, 114b, 내지 114n)(집합적으로 "뷰어 디바이스들(114)"로 지칭된다)을 더 포함한다. 도 1에 도시된 바와 같이, 브로드캐스터 디바이스(106)는 관련된 사용자(110)를 갖는다. 유사하게, 각각의 뷰어 디바이스들(114)은 관련된 사용자(118)(뷰어 디바이스(114a)와 관련된 사용자(118a), 뷰어 디바이스(114b)와 관련된 사용자(118b), 및 뷰어 디바이스(114n)와 관련된 사용자(118n)(총칭하여 "사용자들(118)"로 지칭된다)를 갖는다.
도 1에 도시된 사용자(110)는 라이브 비디오 스트림을 시작하는 브로드캐스터이다. 따라서, 본 개시사항은 종종 브로드캐스터 디바이스(106)와 관련된 사용자(110)를 브로드캐스터로서 설명한다. 반대로, 도 1에 도시된 사용자들(118)은 라이브 비디오 스트림의 뷰어들이다. 따라서, 본 개시사항은 종종 뷰어 디바이스들(114)과 관련된 사용자들(118)을 뷰어들로서 설명한다. 도 1이 특정 수의 뷰어 디바이스들(114) 및 다수의 관련된 사용자들(118)을 도시하지만, 시스템 환경(100)은 임의의 수의 뷰어 디바이스들 및 임의의 수의 관련된 사용자들을 포함할 수 있다.
도 1에 도시된 바와 같이, 브로드캐스터 디바이스(106) 및 뷰어 디바이스들(114)은 네트워크(112)를 통해 서버(들)(104)를 포함하는 소셜 네트워킹 시스템(102)과 통신할 수 있다. 소셜 네트워킹 시스템(102)과 관련된 추가 세부사항들은 도 9 및 도 10을 참조하여 아래에서 논의된다. 또한, 네트워크(112)는 인터넷, 기업 인트라넷, 가상 사설 네트워크("VPN"), 근거리 네트워크("LAN"), 무선 로컬 네트워크("WLAN"), 셀룰러 네트워크, 광역 네트워크("WAN"), 대도시 지역 네트워크("MAN") 또는 이러한 네트워크들의 둘 이상의 조합과 같은 네트워크 또는 네트워크들의 집합을 나타낼 수 있다. 따라서, 네트워크(112)는 브로드캐스터 디바이스(106) 및 뷰어 디바이스들(114)(또는 다른 구성요소들)이 소셜 네트워킹 시스템(102)에 (또는 그 반대로) 액세스할 수 있는 임의의 적절한 네트워크일 수 있다.
아래에 기술되는 바와 같이, 서버(들)(104)는 예를 들어 소셜 네트워킹 시스템(102) 내의 명령들을 사용하여 본 개시사항에서 기술된 다양한 기능들, 특징들, 프로세스들, 방법들, 및 시스템들을 가능케 할 수 있다. 추가적으로 또는 대안적으로, 서버(들)(104)는 이하에서 더 상세히 기술되는 다양한 기능들, 특징들, 프로세스들, 방법들 및 시스템들을 수행하거나 제공하기 위해 브로드캐스터 디바이스(106) 및/또는 뷰어 디바이스들(114)과 협력한다. 도 1은 소셜 네트워킹 시스템(102), 서버(들)(104), 브로드캐스터 디바이스(106), 네트워크(112), 및 뷰어 디바이스들(114)의 특별한 배치를 도시하지만, 다양한 추가 배치들이 가능하다. 예를 들어, 소셜 네트워킹 시스템(102) 및 서버(들)(104)는 브로드캐스터 디바이스(106) 및/또는 뷰어 디바이스들(114)과 직접 통신하여, 네트워크(112)를 우회할 수 있다.
일반적으로, 브로드캐스터 디바이스(106) 및 뷰어 디바이스들(114)은 다양한 유형들의 클라이언트 디바이스들 중 어느 하나를 포함할 수 있다. 예를 들어, 브로드캐스터 디바이스(106) 또는 뷰어 디바이스들(114)은 모바일 디바이스(예를 들어, 스마트폰), 태블릿, 랩톱 컴퓨터, 데스크탑 컴퓨터, 텔레비전, 또는 도 8을 참조하여 아래에 추가로 설명되는 임의의 다른 유형의 컴퓨팅 디바이스를 포함할 수 있다. 부가적으로, 서버(들)(104)는 도 8을 참조하여 아래에 설명된 것들을 포함하는 하나 이상의 컴퓨팅 디바이스들을 포함할 수 있다. 또한, 서버(들)(104), 소셜 네트워킹 시스템(102), 브로드캐스터 디바이스(106), 네트워크(112), 및 뷰어 디바이스들(114)은 데이터 통신들을 지원하는 임의의 공지된 통신 기술들, 디바이스들, 매체 및 프로토콜들을 포함하여, 데이터 및/또는 통신 신호들을 수송하기에 적합한 임의의 통신 플랫폼들 및 기술들을 사용하여 통신할 수 있고, 이들의 예들은 도 9를 참조하여 아래에 기술된다.
시스템 환경(100)의 개요로서, 서버(들)(104)는 브로드캐스터 디바이스(106)를 제공하고, 뷰어 디바이스들(114)은 네트워크(112)를 통해 소셜 네트워킹 시스템(102)에 액세스한다. 하나 이상의 실시예들에서, 소셜 네트워킹 시스템(102)의 서버(들)(104)에 액세스할 때, 브로드캐스터 디바이스(106)는, 라이브 비디오 스트림, 게시물(post), 인스턴트 메시지 또는 댓글을 나타내는 디지털 인코딩된 데이터와 같은 디지털 인코딩된 데이터를 소셜 네트워킹 시스템(102)으로 송신한다. 소셜 네트워킹 시스템(102)은, 예를 들어, 사용자(110)가 라이브 비디오 스트림을 개시하거나, 또는 소셜 네트워킹 시스템(102) 내의 디지털 통신에 관한 다른 동작들을 게시, 전송, 편집, 삭제 또는 수행하는 것을 가능케 하는 웹 사이트를 제공할 수 있다. 반대로, 하나 이상의 실시예들에서, 뷰어 디바이스들(114)이 (예를 들어, 웹 사이트를 통해) 소셜 네트워킹 시스템(102)의 서버(들)(104)에 액세스할 때, 뷰어 디바이스들(114)은 라이브 비디오 스트림, 게시물, 인스턴트 메시지 또는 댓글을 나타내는 디지털 인코딩된 데이터와 같은 디지털 인코딩된 데이터의 송신을 소셜 네트워킹 시스템(102)으로부터 수신한다.
대안적으로, 브로드캐스터 디바이스(106) 및 뷰어 디바이스들(114)은 브로드캐스터 디바이스(106) 및 뷰어 디바이스(114) 상의 전용 애플리케이션을 통해 소셜 네트워킹 시스템(102)의 서버(들)(104)와 각각 통신한다. 특히, 및 도 1에 또한 도시된 바와 같이, 브로드캐스터 디바이스(106) 및 뷰어 디바이스들(114)은 각각 관련된 소셜 네트워킹 애플리케이션(브로드캐스터 디바이스(106)와 관련된 소셜 네트워킹 애플리케이션(108), 뷰어 디바이스(114a)와 관련된 소셜 네트워킹 애플리케이션(116a), 뷰어 디바이스(114b)와 관련된 소셜 네트워킹 애플리케이션(116b), 및 뷰어 디바이스(114n)와 관련된 소셜 네트워킹 애플리케이션(116n))을 갖는다. 본 개시사항은 소셜 네트워킹 애플리케이션들(116a, 116b, 및 116n)을 집합적으로 "소셜 네트워킹 애플리케이션들(116)"로 지칭한다.
일부 실시예들에서, 소셜 네트워킹 애플리케이션(108) 및 소셜 네트워킹 애플리케이션들(116)은 각각 브로드캐스터 디바이스(106) 및 뷰어 디바이스들(114)에 이용 가능한 웹 브라우저들, 애플릿들 또는 다른 소프트웨어 애플리케이션들(예를 들어, 네이티브 애플리케이션들)을 포함한다. 일부 예들에서, 소셜 네트워킹 시스템(102)은 소셜 네트워킹 애플리케이션(108) 또는 소셜 네트워킹 애플리케이션(116)을 포함하는 데이터 패킷들을 브로드캐스터 디바이스(106) 및 뷰어 디바이스들(114)에 (예를 들어, 소프트웨어 애플리케이션을 나타내는 데이터를 모바일 디바이스에 제공함으로써) 각각 제공한다.
브로드캐스터 디바이스(106)는 소셜 네트워킹 시스템(102)과의 상호작용을 가능하게 하기 위해 소셜 네트워킹 애플리케이션(108)을 시작할 수 있다. 일부 이러한 실시예들에서, 소셜 네트워킹 애플리케이션(108)은 브로드캐스터 디바이스(106)와 서버(들)(104) 사이의 통신들을 조정하여, 예를 들어 브로드캐스터 디바이스(106)는 라이브 비디오 스트림을 소셜 네트워킹 시스템(102)에 송신하거나(소셜 네트워킹 시스템(102)은 차례로 라이브 비디오 스트림을 뷰어 디바이스들(114)에 송신하거나), 또는 소셜 네트워킹 시스템(102)의 웹 페이지들에 액세스한다.
소셜 네트워킹 시스템(102)과의 사용자 상호작용을 가능하게 하기 위해, 소셜 네트워킹 애플리케이션(108)은 소셜 네트워킹 시스템(102)과 관련된 하나 이상의 그래픽 사용자 인터페이스들을 포함할 수 있고; 그래픽 사용자 인터페이스들과 사용자(110)의 상호작용의 표시들을 수신할 수 있고; 다른 사용자 입력에 대한 다양한 요청들, 질의들 또는 응답들을 수행할 수 있다. 비교하여, 소셜 네트워킹 애플리케이션들(116)은 소셜 네트워킹 애플리케이션(108)이 브로드캐스터 디바이스(106)(및 사용자(110))에 대해 수행하는 것과 동일한 뷰어 디바이스들(114)(및 사용자들(118))에 대한 기능들을 수행할 수 있다.
예를 들어, 소셜 네트워킹 애플리케이션(108) 및 소셜 네트워킹 애플리케이션들(116)의 그래픽 사용자 인터페이스들은 라이브 비디오 스트림들 및 라이브 비디오 스트림에 대한 반응들의 비디오 클립들 모두의 송신을 가능하게 한다. 사용자(110)와 (라이브-비디오-스트림 요소의 선택과 같은)(브로드캐스터 디바이스(106)에 의해 제공되는) 그래픽 사용자 인터페이스 사이의 상호작용을 검출하는 것에 기초하여, 브로드캐스터 디바이스(106)는 한 그룹의 뷰어들에 대한 브로드캐스트를 위해 라이브 비디오 스트림을 소셜 네트워킹 시스템(102)에 송신한다. 라이브 비디오 스트림을 수신하면, 소셜 네트워킹 시스템(102)은 라이브 비디오 스트림을 뷰어 디바이스들(114)에 송신한다. 반대로, 사용자(118a)와 (반응-비디오 요소의 선택과 같은)(뷰어 디바이스(114a)에 의해 제공되는) 그래픽 사용자 인터페이스 사이의 상호작용을 검출하는 것에 기초하여, 뷰어 디바이스(114a)는 라이브 비디오 스트림에 대해 사용자(118a)에 의한 반응의 비디오 클립을 기록하고, 비디오 클립을 소셜 네트워킹 시스템(102)에 송신한다. 소셜 네트워킹 시스템(102)은 이후, 소셜 네트워킹 시스템(102)이 브로드캐스터 디바이스(106)로부터 라이브 비디오 스트림을 계속 수신하는 동안, 비디오 클립을 브로드캐스터 디바이스(106)가 제시하도록 브로드캐스터 디바이스(106)에 (및/또는 뷰어 디바이스들(114b 및 114n)이 제시하도록 뷰어 디바이스들(114b 및 114n)에) 송신한다.
이제 도 2a 내지 도 2b를 참조하면, 이들 도면들은 라이브-비디오-스트림 브로드캐스트 동안 라이브 비디오 스트림에 대한 반응의 비디오 클립들을 중계하는 소셜 네트워킹 시스템(102)의 실시예들의 개요를 제공한다. 구체적으로, 도 2a 및 도 2b는 소셜 네트워킹 시스템(102), 브로드캐스터 디바이스(106) 또는 뷰어 디바이스들(114)이 라이브 비디오 스트림 및 라이브 비디오 스트림에 대한 뷰어들에 의한 반응들의 비디오 클립들을 송신하도록 수행하는 일련의 동작들(202-232)의 표현을 도시한다. 예를 들어, 일부 실시예들에서, 소셜 네트워킹 시스템(102), 브로드캐스터 디바이스(106), 또는 뷰어 디바이스들(114)은, 프로세서에 의해 실행될 때 소셜 네트워킹 시스템(102), 브로드캐스터 디바이스(106), 또는 뷰어 디바이스들(114)이 도 2a 및 도 2b의 시퀀스 흐름도에 도시된 동작들(202-232) 중 하나를 수행하도록 야기하는 컴퓨터 실행-가능 명령들을 포함한다.
위 개시사항과 일치하여, 일부 실시예들에서, 브로드캐스터 디바이스(106)는 소셜 네트워킹 시스템(102)이 이후 뷰어 디바이스들(114)에 송신하는 라이브 비디오 스트림을 송신(및 소셜 네트워킹 시스템(102)이 수신)한다. 도 2a에 도시된 바와 같이, 브로드캐스터 디바이스(106)는 라이브 비디오 스트림을 소셜 네트워킹 시스템(102)으로 송신하는 동작(202)을 수행하고, 소셜 네트워킹 시스템(102)은 라이브 비디오 스트림을 뷰어 디바이스들(114)로 송신하는 동작(204)을 수행한다. 예를 들어, 동작(202)은 브로드캐스터 디바이스(106)가 라이브 비디오 스트림(브로드캐스터 디바이스(106)의 카메라에 의해 캡처된)을 소셜 네트워킹 시스템(102)으로 송신하는 것을 포함할 수 있다. 또한, 동작(204)은, 브로드캐스터 디바이스(106)로부터 라이브 비디오 스트림을 수신하고 수 초 또는 수 밀리초 내에, 그리고 브로드캐스터 디바이스(106)로부터 라이브 비디오 스트림을 계속 수신하는 동안, 소셜 네트워킹 시스템(102)이 라이브 비디오 스트림을 뷰어 디바이스들(114)로 송신하는 것을 포함할 수 있다.
소셜 네트워킹 시스템(102)으로부터 라이브 비디오 스트림을 수신한 후, 뷰어 디바이스들(114)은 라이브 비디오 스트림을 뷰어에게 제공하는 동작(206)을 수행한다. 예를 들어, 동작(206)은 뷰어 디바이스들(114)이 소셜 네트워킹 애플리케이션(116)의 그래픽 사용자 인터페이스들 내에서 라이브 비디오 스트림을 뷰어들에게 제시하는 것을 포함할 수 있다. 본 개시사항은 뷰어 디바이스들(114) 중 하나에 의한 라이브 비디오 스트림의 프리젠테이션을 도 4a를 참조하여 이하에서 보다 상세히 기술한다.
위에서 나타낸 바와 같이, 일부 실시예들에서, 소셜 네트워킹 시스템(102)은 라이브 비디오 스트림들과 관련하여 뷰어들(또는 잠재적 뷰어들)에게 브로드캐스터에 의해 부여된 허가의 표시들을 수신한다. 예를 들어, 도 2a에 도시된 바와 같이, 브로드캐스터 디바이스(106)는 선택적으로 라이브 비디오 스트림에 대한 반응들의 비디오 클립들을 부가하기 위한 허가(들)를 검출하는 동작(208) 및 검출된 허가(들)의 표시를 소셜 네트워킹 시스템(102)으로 전송하는 동작(210)을 수행한다. 예를 들어, 동작(208)은 특정 뷰어, 잠재적 뷰어, 뷰어들의 그룹 또는 잠재적 그룹의 뷰어들이 그들의 반응들의 비디오 클립을 라이브-비디오-스트림 브로드캐스트에 부가하기 위하여 브로드캐스터에 의해 부여된 허가들을 검출하는 것을 포함할 수 있다.
일부 실시예들에서, 예를 들어, 브로드캐스터 디바이스(106)는 뷰어, 잠재적 뷰어, 뷰어들의 그룹, 또는 잠재적 그룹의 뷰어들이 비디오 클립들을 라이브-비디오-스트림 브로드캐스트에 부가하기 위한 허가의 부여를 나타내는 사용자(110)와 소셜 네트워킹 애플리케이션(108)의 그래픽 사용자 인터페이스 사이의 상호작용을 검출한다. 검출된 허가는, 소셜 네트워킹 시스템(102)의 특정 사용자, 조직, 브로드캐스터의 친구들 또는 팔로어들 또는 대중과 관련된 소셜 네트워킹 시스템(102)의 사용자들이 비디오 클립을 부가하기 위한 허가를 포함하여, 다양한 사용자들이 비디오 클립들을 브로드캐스터의 라이브-비디오-스트림 브로드캐스트에 부가하기 위한 허가를 포함할 수 있다. 추가로, 검출된 허가는 사용자들이 비디오 클립들을 브로드캐스터로부터 특정 라이브 비디오 스트림 또는 미래의 라이브 비디오 스트림에 부가하기 위한 허가를 포함할 수 있다.
그러한 허가들의 검출을 가능하게 하기 위하여, 일부 실시예들에서, 소셜 네트워킹 시스템(102)은 비디오 클립들을 라이브 비디오 스트림(또는 미래의 라이브 비디오 스트림)에 부가하기 위한 후보들로서 제안된 뷰어(또는 제안된 그룹의 뷰어들)를 브로드캐스터에게 제공한다. 예를 들어, 소셜 네트워킹 시스템(102)은 소셜 네트워킹 시스템(102)의 사용자가 임계값을 초과하는 브로드캐스터에 대한 친밀도 계수를 갖는 것으로 결정하기 위해 소셜 그래프(예를 들어,도 10의 소셜 그래프(1000))를 사용할 수 있다. 이 예에서, 임계 친밀도 계수는 비디오 클립들을 라이브 비디오 스트림에 부가할 수 있는 후보 뷰어를 선택하기 위한 마커로서 작용한다. 그러한 하나의 예에서, 소셜 네트워킹 시스템(102)은, 브로드캐스터 및 친구 또는 팔로어를 나타내는 노드들 및 소셜 그래프 내에서 그러한 노드들을 연결하는 에지들에 기초하여, 브로드캐스터의 게시물들 또는 라이브 비디오 스트림들에 자주 반응하는(또는 시청하는) 브로드캐스터의 친구 또는 팔로어가 브로드캐스터에 대한 임계 친밀도 계수를 초과한다고 결정할 수 있다. 대안적으로, 소셜 네트워킹 시스템(102)은 소셜 그래프(예를 들어, 도 10의 소셜 그래프(1000))를 사용하여, 비디오 클립들을 라이브 비디오 스트림에 추가할 수 있는 후보 그룹의 뷰어들을 선택하는 목적들을 위해, 브로드캐스터가 임계치를 초과하는 조직에 대한 친밀도 계수를 갖는 것으로 결정할 수 있다. 그러한 하나의 예에서, 소셜 네트워킹 시스템(102)은, 조직과 관련된 브로드캐스터와 팔로어를 나타내는 노드들 및 소셜 그래프 내에서 그러한 노드들을 연결하는 에지들에 기초하여, 브로드캐스터가 조직과 관련된 몇몇 팔로어들에 대한 임계 친밀도 계수를 초과한다고 결정한다. 본 개시사항은 소셜 네트워킹 시스템(102)이 친밀도 계수들을 결정하는 방법을 도 10을 참조하여 아래에서 더 상세하게 설명한다.
친밀도 계수들을 결정하는 것에 기초하여, 특정 실시예들에서, 소셜 네트워킹 시스템(102)은 소셜 네트워킹 애플리케이션(108)의 그래픽 사용자 인터페이스 내에서의 디스플레이를 위해 제안된 뷰어(또는 제안된 그룹의 뷰어들)를 브로드캐스터에게 (비디오 클립들을 라이브 비디오 스트림에 추가하기 위한 허가를 위한 후보들로서) 제공한다. 제안을 수신할 때, 일부 실시예들에서, 브로드캐스터 디바이스(106)는 소셜 네트워킹 애플리케이션(108)의 그래픽 사용자 인터페이스의 선택 가능한 옵션 내들 내에서 후보들을 제시한다. 이러한 실시예들에서, 브로드캐스터 디바이스(106)는, 비디오 클립들을 라이브 비디오 스트림에 추가하기 위한 허가를 특정 후보에게 부여하기 위한 선택을 검출할 때, 사용자(110)와 선택 가능한 옵션들 사이의 사용자 상호작용을 검출한다.
또한, 일부 실시예들에서, 동작(208)의 검출된 허가(들)(및 동작(210)의 전송된 허가(들))는 소셜 네트워킹 시스템(102)이 뷰어 디바이스들(114) 중 일부 상의 요소를 활성화시키도록 유발하여, 라이브 비디오 스트림에 대한 반응들의 비디오 클립들을 캡처할 수 있게 한다. 도 2a에 도시된 바와 같이, 예를 들어, 소셜 네트워킹 시스템(102)은 선택적으로 일부 또는 모든 뷰어 디바이스들(114) 상의 반응-비디오 요소를 활성화시키는 동작(212)을 수행한다. 본 개시사항에서 사용되는 용어 "반응-비디오 요소"는 라이브 비디오 스트림에 대한 반응의 비디오 클립을 캡처하기 위한 선택 가능한 옵션을 지칭한다. 예를 들어, 반응-비디오 요소는, (사용자(118a)에 의해 선택된 때) 뷰어 디바이스(114a)의 카메라로 하여금 라이브 비디오 스트림에 대한 사용자(118a)에 의한 반응의 비디오 클립을 기록하게 하는 소셜 네트워킹 애플리케이션(116a) 내의 선택 옵션을 포함한다. 본 개시사항은 반응-비디오 요소의 일 실시예를 도 4a 및 도 4b를 참조하여 아래에서 추가로 설명한다.
동작(212)을 수행할 때, 일부 실시예들에서, 소셜 네트워킹 시스템(102)은 대응하는 뷰어 디바이스들(114)이 소셜 네트워킹 애플리케이션(116) 내에서 반응-비디오 요소를 활성화하게 하는 통신 또는 신호를 하나 이상의 뷰어 디바이스들(114)에 전송한다. 특정 상황들 하에서, 소셜 네트워킹 시스템(102)은 예를 들어 다양한 허가들 또는 활성화 설정들에 기초하여 (만약 존재한다면) 일부 또는 모든 뷰어 디바이스들(114)상에서 반응-비디오 요소를 활성화시킨다.
위에서 제안한 바와 같이, 일부 실시예들에서, 소셜 네트워킹 시스템(102)은 브로드캐스터에 의해 부여된 허가들에 기초하여 일부 또는 모든 뷰어 디바이스들(114) 상에서 반응-비디오 요소를 활성화시킨다. 따라서, 동작(212)을 수행할 때, 소셜 네트워킹 시스템(102)은 특정 뷰어 디바이스들(114)를 선택하고, 특정 뷰어 디바이스들(114) 상에서 소셜 네트워킹 시스템(102)의 특별한 사용자, 제안된 후보들 중에서 선택된 한 그룹의 잠재 뷰어들, 또는 대중을 위해 부여된 허가들과 같이, 동작(208)과 관련하여 위에서 기술된 임의의 허가들에 따라 반응-비디오 요소를 활성화시킨다.
추가로 또는 대안으로, 특정 실시예들에서, 소셜 네트워킹 시스템(102)은 특정 뷰어 디바이스들(114)이 비디오 클립들을 라이브 비디오 스트림에 추가할 수 있음을 지정하는 활성화 설정들에 기초하여, 뷰어 디바이스들(114)상에서 반응-비디오 요소를 선택적으로 활성화시킨다. 예를 들어, 활성화 설정들은 소셜 네트워킹 시스템(102)이 소셜 네트워킹 시스템(102)에 의한 결정들에 기초하여 하나 이상의 뷰어 디바이스들(114)상에서 반응-비디오 요소를 선택적으로 활성화시키는 것을 지정할 수 있다. 일부 이러한 실시예들에서, 소셜 네트워킹 시스템(102)은, 임계 수보다 적은 수의 뷰어들이 라이브 비디오 스트림을 보고 있다고 결정하는 것(예를 들어, 20명 미만의 뷰어가 라이브 비디오 스트림을 보고 있을 때 전부 또는 오로지 특정의 뷰어 디바이스들(114)을 활성화시키는 것), 특정 뷰어 디바이스들(114)이 브로드캐스터의 친구들 또는 팔로어들의 뷰어 계정들(예컨대, 브로드캐스터 디바이스(106)에 대응하는 브로드캐스터 계정의 친구들 또는 팔로어들)에 대응한다고 결정하는 것, 또는 특정 뷰어 디바이스들(114)에 대응하는 뷰어에 대한 친밀도 계수가 브로드캐스터에 대한 임계 친밀도 계수를 초과한다고(예컨대, 뷰어 디바이스(114a)에 대응하는 뷰어 계정에 대한 친밀도 계수가 브로드캐스터 디바이스(106)에 대응하는 브로드캐스터 계정에 대한 임계 친밀도 계수를 초과한다고) 결정하는 것에 기초하여, 특정 뷰어 디바이스들(114) 상에서 반응-비디오 요소를 활성화시킨다.
일단, 반응-비디오 요소가 뷰어 디바이스들(114) 중 하나에서 활성화되면, 소셜 네트워킹 시스템(102)은 대응하는 뷰어 디바이스(114)가 비디오 클립을 캡처하여 잠재적으로 라이브-비디오-스트림 브로드캐스트에 추가할 수 있게 한다. 도 2a에 도시된 바와 같이, 예를 들어, 뷰어 디바이스들(114)은 반응-비디오 요소를 제시하는 동작(214) 및 비디오 클립을 기록하는 동작(216)을 수행한다. 설명의 목적들을 위해, 본 개시사항은 뷰어 디바이스(114a)를 동작들(214-218)을 수행하는 것으로 기술한다. 그러나, 반응-비디오 요소가 활성화된 임의의 뷰어 디바이스들(114)은 본 명세서에 설명된 바와 같이 동작들(214-218)을 수행할 수 있다.
일부 실시예들에서, 동작(214)은 소셜 네트워킹 애플리케이션(116a)의 그래픽 사용자 인터페이스 내에서 반응-비디오 요소를 제시하는 뷰어 디바이스(114a)를 포함한다. 예를 들어, 뷰어 디바이스(114a)는 라이브-비디오-스트림 브로드캐스트 동안 라이브 비디오 스트림 및 반응-비디오 요소를 동일한 그래픽 사용자 인터페이스 내에서 선택적으로 제시한다. 그래픽 사용자 인터페이스가 제시될 때, 뷰어는 라이브 비디오 스트림에 대한 뷰어의 반응의 비디오 클립을 기록하는 것을 시작하거나 중지하기 위해 반응-비디오 요소와 상호작용할 수 있다.
예를 들어, 뷰어 디바이스(114a)가 반응-비디오 요소(예를 들어, 터치 제스처 또는 마우스 클릭)와의 사용자 상호작용의 개시를 검출할 때, 뷰어 디바이스(114a)의 카메라는 비디오 클립을 기록하는 동작(216)을 수행하기 시작한다. 반대로, 뷰어 디바이스(114a)가 반응-비디오 요소(예를 들어, 다른 터치 제스처, 터치 제스처의 개시의 해제 또는 마우스 클릭)와의 사용자 상호작용의 종료를 검출할 때, 뷰어 디바이스(114a)의 카메라는 비디오 클립을 기록하는 동작(216)의 수행을 중지한다. 대안적으로, 일부 실시예들에서, 소셜 네트워킹 애플리케이션(116)은 미리 결정된 시간(예를 들어, 4초, 10초)이 경과한 후 카메라가 비디오 클립의 기록을 중지하도록 한다.
비디오 클립을 캡처하는 것에 덧붙여, 뷰어 디바이스들(114)은 뷰어가 비디오 클립의 송신 및 다른 양태들을 제어할 수 있게 하는 기능들을 선택적으로 제공한다. 도 2a에 도시된 바와 같이, 예를 들어, 뷰어 디바이스(114a)는 비디오 클립의 미리보기를 제시하는 동작(218)을 선택적으로 수행한다. 예를 들어, 동작(218)은, 뷰어 디바이스(114a)가, 비디오 클립을 소셜 네트워킹 시스템(102)에 송신하기 전에 전체 비디오 클립의 미리보기와 같은, 소셜 네트워킹 애플리케이션(116a)의 그래픽 사용자 인터페이스 내에서 비디오 클립의 미리보기를 제시하는 것을 포함할 수 있다.
미리보기의 일부로서 또는 그에 부가하여, 일부 실시예들에서, 뷰어 디바이스(114a)는 또한 비디오 클립을 브로드캐스터 또는 라이브 비디오 스트림의 다른 뷰어들과 공유하는 옵션을 제공한다. 따라서, 뷰어 디바이스(114a)는 기록된 비디오 클립을 송신할지 여부 및 비디오 클립을 누구에게 송신할지에 대한 뷰어 제어를 선택적으로 제공한다. 대조적으로, 일부 대안적인 실시예들에서, 소셜 네트워킹 시스템(102)은 뷰어 디바이스(114a)가 브로드캐스터 디바이스(106) 및/또는 다른 뷰어 디바이스들(114)로의 송신을 포함하여 미리보기 없이 비디오 클립을 자동으로 송신하도록 지시한다. 본 개시사항은 미리보기의 실시예를 도 4c를 참조하여 아래에서 더 상세히 기술한다.
뷰어 디바이스(114a)가 미리보기를 제시하는지 또는 비디오 클립의 송신에 대한 제어들을 제공하는지에 관계없이, 일부 실시예들에서, 뷰어 디바이스(114a)는 비디오 클립을 브로드캐스터 디바이스(106)와 공유한다. 도 2b에 도시된 바와 같이, 예를 들어, 뷰어 디바이스(114a)는 비디오 클립을 소셜 네트워킹 시스템(102)으로 송신하는 동작(220)을 수행하고, 소셜 네트워킹 시스템(102)은 비디오 클립을 브로드캐스터 디바이스(106)로 송신하는 동작(222)을 수행한다. 라이브 비디오 스트림의 송신과 유사하게, 동작(222)은 소셜 네트워킹 시스템(102)이 뷰어 디바이스(114a)로부터 비디오 클립을 수신하는 수 초 또는 수 밀리초 내에 비디오 클립을 브로드캐스터 디바이스(106)에 송신하는 동작을 포함할 수 있다.
비디오 클립을 수신할 때, 브로드캐스터 디바이스(106)는 비디오 클립을 제시하는 동작(224)을 수행한다. 동작(224)은 예를 들어, 브로드캐스터 디바이스(106)가 라이브 비디오 스트림을 캡처하는 동안 브로드캐스터 디바이스(106)가 소셜 네트워킹 애플리케이션(108)의 그래픽 사용자 인터페이스 내에서 비디오 클립을 제시하는 것을 포함할 수 있다. 일부 실시예들에서, 브로드캐스터 디바이스(106)는 동일한 그래픽 사용자 인터페이스 내에서 라이브 비디오 스트림 및 비디오 클립 모두를 제시한다. 예를 들어, 브로드캐스터 디바이스(106)는 그래픽 사용자 인터페이스 내의 라이브 비디오 스트림 상에 오버레이된 그래픽 요소 내에 비디오 클립을 제시한다. 본 개시사항은 비디오 클립을 제시하는 브로드캐스터 디바이스(106)의 일 실시예를 도 3a 내지 도 3h를 참조하여 아래에서 기술한다.
상술한 송신들 및 부여된 허가들에 추가하여 또는 대안으로, 특정 실시예들에서, 소셜 네트워킹 시스템(102)은 시스템(102)이 비디오 클립을 라이브 비디오 스트림에 추가하는지 여부를 제어하는 상이한 프로세스를 제공한다. 이러한 선택적 프로세스에서, 소셜 네트워킹 시스템(102)은 예를 들어 브로드캐스터가 특별한 비디오 클립이 라이브 비디오 스트림에 추가되도록 허용하는지를 결정한다. 도 2b에 도시된 바와 같이, 브로드캐스터 디바이스(106)는 비디오 클립을 라이브 비디오 스트림에 추가하는 허가를 검출하는 동작(226) 및 검출된 허가의 표시를 소셜 네트워킹 시스템(102)에 송신하는 동작(228)를 선택적으로 수행한다.
그러한 일 예에서, 동작(226)은 브로드캐스터 디바이스(106)가 비디오 클립을 브로드캐스터에게 제시하는 동안(또는 이후) 특별한 비디오 클립이 라이브 비디오 스트림에 추가되기 위해 브로드캐스터에 의해 부여된 허가를 검출하는 것을 포함할 수 있다. 일부 실시예들에서, 브로드캐스터 디바이스(106)는 그래픽 사용자 인터페이스 내에서 비디오 클립의 프리젠테이션 동안 비디오 클립과의 사용자 상호작용을 검출한다. 사용자 상호작용은, 예를 들어, 브로드캐스터 디바이스(106)가 허가들 및/또는 다른 옵션들의 메뉴를 생성하게 하는 터치 제스처 또는 마우스 클릭을 포함할 수 있다.
이러한 일부 실시예들에서, 이러한 메뉴는, 비디오 클립이 한 그룹의 뷰어들을 위한 라이브 비디오 스트림에 포함되도록 하기 위한 허가를 브로드캐스터가 부여하는 선택 가능한 옵션, 특별한 뷰어(비디오 클립을 캡처한)가 비디오 클립들을 브로드캐스터로부터의 미래의 라이브 비디오 스트림들에 추가하기 위한 허가를 브로드캐스터가 부여하는 선택 가능한 옵션, 또는 한 그룹의 뷰어들에 대해 비디오 클립이 라이브 비디오 스트림에 포함되도록 하기 위한 허가를 브로드캐스터가 거부하는 선택 가능한 옵션을 포함하여, 몇몇 허가 옵션들을 포함한다. 이전 실시예가 허가들의 메뉴를 포함하지만, 브로드캐스터 디바이스(106)는 대안적으로 허가 옵션들을 직렬로 또는 일부 다른 적절한 구성으로 제시한다.
소셜 네트워킹 시스템(102)의 일부 실시예들은 상이한 발생 또는 스케줄에 따라 비디오 클립들에 대한 허가 옵션들을 제공한다. 예를 들어, 일부 실시예들에서, 소셜 네트워킹 시스템(102)은 뷰어의 신원에 관계없이 또는 브로드캐스터의 라이브 비디오 스트림에 뷰어에 의해 이전에 추가된 비디오 클립들의 수에 관계없이 브로드캐스터 디바이스(106)가 각 비디오 클립에 대한 허가 옵션들을 제공하도록 지시한다. 그러나, 다른 실시예들에서, 소셜 네트워킹 시스템(102)은 브로드캐스터 디바이스(106)가, 라이브-비디오-스트림 브로드캐스트 도중에 특별 뷰어로부터 초기 비디오 클립(또는 초기 번호의 비디오 클립들)에 대한 허가 옵션들을 제공하는 것과 같이, 비디오 클립들을 라이브 비디오 스트림에 추가하기 전에만 선택된 비디오 클립들에 대한 허가 옵션들을 제공하도록 지시한다. 더욱이, 일부 실시예들에서, 소셜 네트워킹 시스템(102)은 브로드캐스터 디바이스(106)로 하여금, 뷰어가 뷰어 디바이스(114a)로부터 브로드캐스터 디바이스(106)로 비디오 클립을 초기에 송신할 때 선택된 비디오 클립들에 대한 허가 옵션들을 제공하고, 그리고 (만약 브로드캐스터가 허가를 부여한다면) 뷰어 디바이스(114a)로부터 브로드캐스터 디바이스(106)로 뷰어의 비디오 클립들의 후속 송신들에 대해 허가 옵션을 제공하지 않도록 지시한다.
브로드캐스터 디바이스(106)가 라이브 비디오 스트림에 비디오 클립을 추가하기 위한 허가를 검출하는지, 언제 검출하는지 또는 어떻게 검출하지는지에 관계없이, 일부 실시예들에서, 소셜 네트워킹 시스템(102)은 라이브 비디오 스트림과의 프리젠테이션을 위해 비디오 클립들을 뷰어 디바이스들(114)의 일부 또는 모두에 송신한다. 도 2b에 도시된 바와 같이, 예를 들어, 소셜 네트워킹 시스템(102)은 비디오 클립을 뷰어 디바이스들(114)의 일부 또는 모두에 송신하는 동작(230)을 선택적으로 수행하고, 대응하는 뷰어 디바이스들(114)은 비디오 클립을 제시하는 동작(232)을 수행한다.
예를 들어, 동작(232)은 특정 뷰어 디바이스들(114)이 (뷰어 디바이스(114)가 라이브 비디오 스트림을 제시하는 동안) 소셜 네트워킹 애플리케이션(116) 중 하나의 그래픽 사용자 인터페이스 내에서 비디오 클립을 제시하는 것을 포함할 수 있다. 일부 실시예들에서, 특정 뷰어 디바이스들(114)은 그래픽 사용자 인터페이스 내의 라이브 비디오 스트림 상에 오버레이된 그래픽 요소 내에 비디오 클립을 제시한다. 예를 들어, 특정 뷰어 디바이스들(114)은 동일한 그래픽 사용자 인터페이스 내에 라이브 비디오 스트림 및 비디오 클립 모두를 제시할 수 있다.
이제 도 3a 내지 도 3h를 참조하면, 이들 도면들은 브로드캐스터 디바이스(예를 들어, 브로드캐스터 디바이스(106))의 관점에서 라이브 비디오 스트림 및 라이브 비디오 스트림에 대한 반응의 비디오 클립을 도시한다. 아래에 기술되는 바와 같이, 도 3a 내지 도 3h는 브로드캐스터 디바이스(106)의 일 예가 그래픽 사용자 인터페이스와의 사용자 상호작용에 응답하여 옵션들을 디스플레이하거나 비디오 클립의 외관 또는 위치를 변경하는 특정 실시예들을 추가로 도시한다. 본 개시사항이 도 3a 내지 도 3h를 설명할 때, 사용자 상호작용들의 예들로서 터치 제스처들 또는 마우스 클릭들을 지칭하지만, 추가적인 또는 대안적인 실시예들에서, 브로드캐스터 디바이스(106)는 스타일러스 상호작용 또는 키보드 입력을 포함하는 임의의 적절한 사용자 상호작용을 검출한다.
도 3a에 도시된 바와 같이, 예를 들어, 브로드캐스터 디바이스(106)는 라이브 비디오 스트림의 프리젠테이션을 가능하게 하는 터치 스크린 디스플레이(302)를 포함한다. 브로드캐스터가 라이브-송신 옵션(미도시) 또는 라이브 비디오 스트림과 관련된 다른 옵션을 선택하는 것에 응답하여, 브로드캐스터 디바이스(106)의 카메라(301)는 브로드캐스터의 관점에서 비디오를 캡처하고, 브로드캐스터 디바이스(106)는 라이브 비디오 스트림을 소셜 네트워킹 시스템(102)에 송신하고, 브로드캐스터 디바이스(106)는 터치 스크린 디스플레이(302)를 통해 라이브-비디오-스트림 GUI(304) 내에서 라이브 비디오 스트림을 제시한다. 따라서, 브로드캐스터 디바이스(106)는 라이브-비디오-스트림 브로드캐스트 동안 브로드캐스터를 위한 라이브 비디오 스트림의 디스플레이를 제시한다.
하나 이상의 실시예들에서, 라이브-비디오-스트림 GUI(304)는 라이브 표시기(308), 뷰어 표시기(310), 및 라이브-비디오-스트림 디스플레이(306)를 포함한다. 라이브 표시기(308)는 소셜 네트워킹 시스템(102)이 현재 카메라(301)에 의해 캡처된 라이브 비디오를 브로드캐스트하고 있음을 브로드캐스터에 나타낸다. 추가적으로, 뷰어 표시기(310)는 현재 라이브 비디오 스트림을 보고 있는 뷰어들의 수를 나타낸다. 반대로, 라이브-비디오-스트림 디스플레이(306)는 브로드캐스터 디바이스(106)의 카메라(301)에 의해 캡처된 라이브 비디오 스트림의 뷰를 포함한다. 따라서, 뷰어 표시기(310)는 브로드캐스터에게 현재 뷰어들의 수를 나타내고, 라이브-비디오-스트림 디스플레이(306)는 뷰어들이 라이브 비디오 스트림에서 보는 것의 뷰를 포함한다.
전술한 바와 같이, 일부 실시예들에서, 소셜 네트워킹 시스템(102)은 라이브 비디오 스트림에 대한 반응의 비디오 클립을 중계(및 브로드캐스터 디바이스가 제시)한다. 도 3a는 브로드캐스터 디바이스(106)에 의해 제시된 이러한 비디오 클립의 실시예를 도시한다. 도시된 바와 같이, 라이브-비디오-스트림 GUI(304)는 비디오-그래픽 요소(312)를 포함한다. 비디오-그래픽 요소(312)는 라이브 비디오 스트림에 대한 뷰어의 반응의 비디오 클립의 뷰를 포함한다. 이러한 특별한 실시예에서, 브로드캐스터 디바이스(106)는 라이브-비디오-스트림 디스플레이(306) 상에 오버레이된 비디오-그래픽 요소(312) 내의 전체 지속 시간(예를 들어, 4초) 동안 비디오 클립을 제시한다. 부가적으로, 일부 실시예들에서, 브로드캐스터 디바이스(106)는 비디오 클립이 그 끝에 도달한 후에 재생되도록 비디오-그래픽 요소(312) 내에서 비디오 클립을 지속시간 동안(되풀이해서) 반복적으로 제시한다.
비디오 클립을 수신 및 중계하는 것에 더하여, 일부 실시예들에서, 소셜 네트워킹 시스템(102)은 라이브-비디오-스트림 브로드캐스트 동안 비디오 클립들을 불능케 하는 옵션들을 제공한다. 예를 들어, 소셜 네트워킹 시스템(102)은 소셜 네트워킹 애플리케이션(108) 내에서 비디오-반응 제어를 선택적으로 제공한다. 도 3a에 도시된 바와 같이, 라이브-비디오-스트림 GUI(304)는 또한 비디오-반응 제어(318)를 포함한다. 비디오-반응 제어(318)는 상호작용식 그래픽 요소를 포함하고, 이를 통해 브로드캐스터는 뷰어들이 일반적으로 특정 라이브-비디오-스트림 브로드캐스트 동안 비디오 클립들을 기록 및/또는 추가하는 것을 가능케 하거나 불능케 할 수 있다.
일부 실시예들에서, 브로드캐스터 디바이스(106)는 뷰어들이 비디오 클립들을 기록 및/또는 추가하는 것을 가능케 하거나 불능케 하는 브로드캐스터와 비디오-반응 제어(318) 사이의 사용자 상호작용들을 검출한다. 도 3a에 도시된 바와 같이. 비디오-반응 제어(318)는 반응-비디오 요소들이 일반적으로(예를 들어, 모든 뷰어들 또는 선택된 뷰어들에 대해) 가능케 되는 것을 나타낸다. 일부 실시예들에서, 비디오-반응 제어(318)는 그래픽 요소(예를 들어, X 마크)에 의해 커버된 것으로 보이고, 따라서 반응-비디오 요소들이 일반적으로 (예를 들어, 모든 뷰어들에 대해) 불능케 되는 것을 나타낸다. 그러나, 비디오-반응 제어(318)는 단지 비디오 클립들을 가능케 또는 불능케 하는 옵션의 일 예를 포함한다. 비디오-반응 제어에 추가하여 또는 대안으로, 소셜 네트워킹 시스템(102)은 라이브-비디오-스트림 브로드캐스트 동안 비디오 클립을 가능케 또는 불능케 하기 위한 선택 가능한 옵션을 포함하는 설정 메뉴 또는 다른 그래픽 요소들을 소셜 네트워킹 애플리케이션(108)에 제공할 수 있다.
비디오 클립들을 중계하는 것에 더하여, 일부 실시예들에서, 소셜 네트워킹 시스템(102)은 라이브 비디오 스트림에 관한 뷰어들에 의한 댓글들을 브로드캐스터에게 중계한다. 도 3a에 도시된 바와 같이, 예를 들어, 라이브-비디오-스트림 GUI(304)는 댓글(314)을 포함한다. 라이브-비디오-스트림 브로드캐스트 동안 비디오 클립을 수신하는 것과 유사하게, 소셜 네트워킹 시스템(102)은 라이브-비디오-스트림 브로드캐스트 도중에 뷰어 디바이스로부터 댓글들을 수신하여 브로드캐스터 디바이스에게 송신할 수 있다. 브로드캐스터 디바이스는 차례로, 브로드캐스터 디바이스(106)가 라이브-비디오-스트림 GUI(304) 내에 댓글(314)을 제시하는 것과 같이, 그래픽 사용자 인터페이스 내에서 댓글을 제시한다. 따라서, 소셜 네트워킹 시스템(102)은 뷰어가 라이브 비디오 스트림에 댓글을 달고, 이에 대해 반응하는 비디오 클립들을 기록하기 위한 도구들을 제공한다.
비디오 클립들에 대한 제어들을 제공하는 것과 유사하게, 일부 실시예들에서, 소셜 네트워킹 시스템(102)은 라이브-비디오 스트림 브로드캐스트 동안 댓글들을 가능케 또는 불능케 하는 옵션들을 제공한다. 도 3a에 도시된 바와 같이, 예를 들어, 라이브-비디오-스트림 GUI(304)는 댓글 제어(316)를 포함한다. 댓글 제어(316)는 상호작용식 그래픽 요소를 포함하고, 이에 의해 브로드캐스터는 특정 라이브-비디오-스트림 브로드캐스트 동안 뷰어들이 일반적으로 댓글을 다는 것을 (예를 들어, 일부 또는 모든 소셜 네트워킹 애플리케이션들(116)의 그래픽 사용자 인터페이스 내에서 댓글 텍스트 박스를 가능케 또는 불능케 함으로써) 가능케 또는 불능케 할 수 있다.
일부 실시예들에서, 브로드캐스터 디바이스(106)는 뷰어들이 라이브-비디오-스트림 GUI(304)에 댓글들을 추가하는 것을 가능케 하거나 불능케 하는 브로드캐스터와 댓글 제어(316) 사이의 사용자 상호작용들을 검출한다. 도 3a에 도시된 바와 같이, 예를 들어, 댓글 제어(316)는 임의의 그래픽 요소에 의해 노출된 것으로 보인다. 명확한 것으로 표시될 때, 댓글 제어(316)는 댓글들이 (예를 들어, 모든 뷰어들, 선택된 뷰어들, 친구들 또는 팔로어들에 대해) 일반적으로 가능케 되는 것을 나타낸다. 일부 실시예들에서, 댓글 제어(316)는 그래픽 요소(예를 들어, X 마크 또는 그레이 오버레이)에 의해 덮인 것으로 보인다. 이러한 대안적인 실시예에서, 불명확한 댓글 제어(316)는 비디오 클립들이 일반적으로 (예를 들어, 모든 뷰어들에 대해) 불능케 된 것을 나타낸다. 그러나, 댓글 제어(316)는 댓글들을 가능케 또는 불능케 하는 옵션의 단지 일 예를 포함한다. 댓글 제어에 추가하여 또는 대안으로, 소셜 네트워킹 시스템(102)은 라이브-비디오-스트림 브로드캐스트 동안 댓글을 가능케 또는 불능케 하기 위한 설정 메뉴 또는 다른 선택 가능한 옵션들을 소셜 네트워킹 애플리케이션(108)에 제공할 수 있다.
위에서 언급한 바와 같이, 도 3a는 비디오-그래픽 요소의 일 예를 도시한다. 특히, 도 3a는 라이브-비디오-스트림 GUI(304)에 대한 비디오-그래픽 요소(312)의 크기의 일 예를 도시한다. 그러나, 일부 실시예들에서, 소셜 네트워킹 시스템(102)은, 브로드캐스터 디바이스(106)가 비디오-그래픽 요소의 크기를 조정하거나 그래픽 사용자 인터페이스에 대해 상이한 크기들로 비디오-그래픽 요소를 제시할 수 있게 하는 옵션들을 (예를 들어, 소셜 네트워킹 애플리케이션(108)의 일부로서) 브로드캐스터 디바이스(106)에 제공한다. 도 3b 및 도 3c에 도시된 바와 같이, 예를 들어, 비디오-그래픽 요소(312)는 라이브-비디오-스트림 GUI(304) 내에서 확장 가능하다.
예를 들어, 도 3b에서, 브로드캐스터 디바이스(106)는 라이브-비디오-스트림 GUI(304) 내에서 주어진 또는 디폴트 크기로 비디오-그래픽 요소(312)를 제시한다. 브로드캐스터 디바이스(106)가 브로드캐스터와 비디오-그래픽 요소(312) 사이의 (비디오-그래픽 요소의 크기를 확대하는 것을 나타내는 핀치-앤-오픈(pinch-and-open) 터치 제스처 또는 다른 터치 제스처와 같은) 사용자 상호작용을 검출할 때, 브로드캐스터 디바이스(106)는 그 사용자 상호작용의 표시를 소셜 네트워킹 애플리케이션(108)에 전송한다. 표시를 수신할 때, 소셜 네트워킹 애플리케이션(108)은 라이브-비디오-스트림 GUI(304) 내의 비디오-그래픽 요소(312)의 디스플레이를 확대한다. 예를 들어, 도 3c에 도시된 바와 같이, 브로드캐스터 디바이스(106)는 도 3b에 도시된 주어진 또는 디폴트 크기보다 더 큰 크기로 비디오-그래픽 요소를 라이브-비디오-스트림 GUI(30) 내에서 제시한다.
검출된 사용자 상호작용에 기초하여 비디오-그래픽 요소의 크기를 조정하는 것에 덧붙여, 일부 실시예들에서, 소셜 네트워킹 시스템(102)은 비디오-그래픽 요소의 크기를 제어 또는 조정하기 위한 데이터를 브로드캐스터 디바이스(106)에 송신한다. 예를 들어, 일부 실시예들에서, 소셜 네트워킹 시스템(102)은 다양한 요소들에 기초하여 비디오-그래픽 요소의 크기를 제어 또는 조정하는 데이터를 브로드캐스터 디바이스(106)에 송신한다. 이러한 요소들은 해당 비디오 클립을 캡처한 뷰어와 관련된 친구들 또는 팔로어들의 수, 브로드캐스터에 대한 뷰어(대응하는 비디오 클립을 캡처한)에 대한 친밀도 계수, 및/또는 비디오 클립에 대해 다른 뷰어들로부터 수신된 반응들(예를 들어, 비디오 클립에 대한 댓글들 또는 반응 요소들)을 포함하지만, 이에 국한되는 것은 아니다.
이러한 일부 실시예들에서, 뷰어와 관련된 친구들 또는 팔로어들이 많을수록, 대응하는 비디오-그래픽 요소의 크기가 더 커진다. 유사하게, 일부 실시예들에서, 뷰어에 대한 친밀도 계수가 클수록, 대응하는 비디오-그래픽 요소의 크기가 더 커진다. 일부 예들에서, 비디오 클립에 응답하여 수신된 반응이 더 많을수록, 대응하는 비디오-그래픽 요소의 크기가 더 커진다. 그러나, 일부 실시예들에서, 소셜 네트워킹 시스템(102)은 비디오-그래픽 요소가 (라이브-비디오-스트림 GUI에 비해) 초과할 수 없는 최대 크기를 설정한다.
검출된 사용자 상호작용 또는 다양한 요소들에 기초하여 비디오-그래픽 요소의 크기를 조정하는 것에 덧붙여, 일부 실시예들에서, 소셜 네트워킹 시스템(102)은, 브로드캐스터 디바이스(106)가 비디오-그래픽 요소의 위치를 조정하거나 그래픽 사용자 인터페이스 내의 다른 위치에 비디오-그래픽 요소를 제시할 수 있게 하는 데이터를 (예를 들어, 소셜 네트워킹 애플리케이션(108)의 일부로서) 브로드캐스터 디바이스(106)에 제공한다. 도 3d는 사용자 상호작용을 검출하는 것에 응답하여 라이브-비디오-스트림 GUI(304) 내의 비디오-그래픽 요소(312)의 위치를 업데이트하는 브로드캐스터 디바이스(106)의 일 예를 도시한다.
도 3d에 도시된 바와 같이, 브로드캐스터 디바이스(106)는 (비디오-그래픽 요소(312)의 위치를 변경하는 것을 나타내는 스와이프(swipe), 플릭(flick) 또는 다른 터치 제스처와 같은) 브로드캐스터와 비디오-그래픽 요소(312) 사이의 사용자 상호작용을 검출할 때, 브로드캐스터 디바이스(106)는 그러한 사용자 상호작용의 표시를 소셜 네트워킹 애플리케이션(108)에 전송한다. 위치를 변경하라는 표시를 수신할 때, 소셜 네트워킹 애플리케이션(108)은 사용자 상호작용에 의해 표시된 위치에 따라 라이브-비디오-스트림 GUI(304) 내에서 비디오-그래픽 요소(312)의 위치를 업데이트한다. 도 3d에 도시된 특정 예에서, 소셜 네트워킹 애플리케이션(108)은 브로드캐스터 디바이스(106)가 드래그-좌측 터치 제스처를 검출하는 것에 응답하여 라이브-비디오-스트림 GUI(304) 내의 비디오-그래픽 요소(312)의 위치를 라이브-비디오-스트림 GUI(304)의 좌측으로 이동시키도록 업데이트한다.
그러나, 도 3d는 비디오-그래픽 요소(312)의 위치를 업데이트하는 소셜 네트워킹 애플리케이션(108)의 단지 일 예를 도시한다. 추가 실시예들에서, 소셜 네트워킹 애플리케이션(108)은 비디오-그래픽 요소(312)의 위치를 그 위치에 대응하는 검출된 터치 제스처에 따라 라이브-비디오-스트림 GUI(304) 내의 임의의 위치로 업데이트한다. 대안적으로, 소셜 네트워킹 애플리케이션(108)은 마우스 클릭, 마우스 드래그, 스타일러스 상호작용, 또는 키보드 입력을 포함하는 다른 형태들의 사용자 상호작용들에 따라 그래픽 사용자 상호작용 내에서 비디오-그래픽 요소의 위치를 업데이트한다.
비디오-그래픽 요소의 크기 또는 위치를 조정하는 것에 더하여, 소셜 네트워킹 시스템(102)은 선택적으로 소셜 네트워킹 애플리케이션(108) 내에서 뷰어들에게 허가의 부여 또는 거부를 개시하거나, 브로드캐스터와 뷰어 사이의 상호작용을 개시하는 옵션들 또는 기능들을 제공한다. 일부 실시예들에서, 예를 들어, 소셜 네트워킹 시스템(102)은 비디오-그래픽 요소와의 사용자 상호작용들에 기초하여 허가들 또는 통신들에 관련된 (예를 들어, 소셜 네트워킹 애플리케이션(108) 내에서) 옵션들을 제공한다. 도 3e는 그러한 상호작용형 옵션들의 생성을 유발하는 비디오-그래픽 요소(312)와의 사용자 상호작용을 브로드캐스터 디바이스(106)가 검출하는 일 예를 도시한다.
도 3e에 도시된 바와 같이, 브로드캐스터 디바이스(106)는 브로드캐스터가 비디오-그래픽 요소(312) 내에서 비디오 클립을 캡처한 뷰어와 상호작용하기 (및 허가를 제어하기) 위한 다양한 옵션들을 포함하는 상호작용형 메뉴(320)를 (라이브-비디오-스트림 GUI(304) 내에서) 제공한다. 브로드캐스터 디바이스(106)가 (비디오-그래픽 요소(312)에 참여하기 위한 요청을 나타내는 더블 탭 또는 다른 터치 제스처와 같은) 브로드캐스터와 비디오-그래픽 요소(312) 사이의 특정 사용자 상호작용을 검출할 때, 브로드캐스터 디바이스(106)는 그러한 사용자 상호작용의 표시를 소셜 네트워킹 애플리케이션(108)에 전송한다. 사용자 상호작용의 표시를 수신하는 것에 응답하여, 소셜 네트워킹 애플리케이션(108)은 브로드캐스터 디바이스(106)가 상호작용형 메뉴(320)를 제시하게 한다. 도 3e에 도시된 바와 같이, 상호작용형 메뉴(320)는, 비디오-클립-유지 옵션(322), 멀티-스트림 옵션(324), 메시지 옵션(326), 쇼-뷰어 옵션(328), 신뢰-뷰어 옵션(330) 및 숨기기 옵션(332)을 포함하는 다양한 상호작용형 옵션들을 포함한다.
위에서 제안한 바와 같이, 브로드캐스터 디바이스(106)가 상호작용형 옵션들(322-332) 중 하나의 브로드캐스터에 의한 선택을 검출할 때, 소셜 네트워킹 애플리케이션(108)은 허가 부여, 허가 거부 또는 각 옵션에 대응하는 통신을 제공한다. 예를 들어, 비디오-클립-유지 옵션(322)이 선택될 때, 소셜 네트워킹 애플리케이션(108)은 비디오-그래픽 요소(312)의 디스플레이를 (예를 들어, 라이브-스트림-비디오 GUI(304) 내에서 비디오-그래픽 요소(312)의 디스플레이를 유지함으로써 및/또는 비디오-그래픽 요소(312)의 디스플레이를 뷰어에게 도시된 라이브 비디오 스트림의 오버레이로 유지함으로써) 유지한다. 멀티-스트림 옵션(324)이 선택될 때, 소셜 네트워킹 애플리케이션(108)은 다수의 사용자들을 브로드캐스터들로서 포함하는 멀티-사용자-라이브-비디오 스트림을 (예를 들어, 비디오 클립을 캡처한 뷰어로부터 라이브-비디오 스트림을 라이브-비디오-스트림 디스플레이 내에서 브로드캐스터의 라이브-비디오 스트림에 추가함으로써) 개시한다. 이러한 일부 실시예들에서, 소셜 네트워킹 애플리케이션(108)은 브로드캐스터 디바이스(106)가 (소셜 네트워킹 시스템(102)을 통해) 디지털 초대를 뷰어 디바이스(예를 들어, 뷰어 디바이스(114a))로 송신하게 하고, 여기서 디지털 초대는 브로드캐스터로서 라이브-비디오 스트림에 참여하는 요청을 포함한다.
라이브-비디오 스트림의 시각적 프리젠테이션을 제어하는 옵션들에 덧붙여, 상호작용형 메뉴(320)는 비디오-그래픽 요소(312) 내에서 비디오 클립을 캡처한 뷰어와 직접 상호작용하기 위한 옵션들을 포함한다. 메시지 옵션(326)이 선택될 때, 예를 들어, 소셜 네트워킹 애플리케이션(108)은 브로드캐스터 디바이스(106)가 비디오-그래픽 요소(312) 내에서 비디오 클립을 캡처한 뷰어에게 송신하기 위해 인스턴트 메시지, 개인 메시지 또는 다이렉트 메시지를 개시한다. 예를 들면, 일부 실시예들에서, 소셜 네트워킹 애플리케이션(108)은 브로드캐스터 디바이스(106)가 브로드캐스터가 뷰어를 위한 메시지를 입력할 수 있는 텍스트 박스 및 비디오-그래픽 요소(312) 내에서 비디오 클립을 캡처한 뷰어에게 메시지를 전송하기 위한 추가 옵션을 제시하게 한다. 입력된 텍스트, 및 메시지를 송신하기 위한 추가 옵션의 선택을 수신할 때, 소셜 네트워킹 애플리케이션(108)은 브로드캐스터 디바이스(106)가 메시지를 전송하도록 지시한다.
상호작용형 메뉴(320)는 비디오-그래픽 요소가 뷰어들을 위한 라이브-비디오 스트림과 함께 출현하기 위한 허가들을 제어하는 옵션들을 더 포함한다. 예를 들어, 쇼-뷰어들 옵션(328)이 선택될 때, 브로드캐스트 디바이스(300)는 소셜 네트워킹 시스템(102)으로 하여금 비디오-그래픽 요소(312)를 다양한 뷰어 디바이스들(예를 들어, 뷰어 디바이스들(114a-114n))로 송신된 라이브 비디오 스트림에 추가하도록 지시한다. 일부 실시예들에서, 쇼-뷰어들 옵션(328)은 비디오-그래픽 요소(312)를, 모든 뷰어 디바이스들로 송신된, 또는 대안적으로, 비디오 클립들을 시청하기 위한 허가를 이전에 부여받은 뷰어들에 대응하는 뷰어 디바이스들에만 송신된 라이브 비디오 스트림에 추가한다. 유사하게, 신뢰-뷰어 옵션(330)이 선택될 때, 소셜 네트워킹 애플리케이션(108)은 소셜 네트워킹 시스템(102)으로 하여금 비디오-그래픽 요소(312)를 캡처한 뷰어가 브로드캐스터로부터의 미래의 라이브-비디오 스트림들에 비디오 클립들을 추가하는 것을 허가하도록 지시한다. 일부 실시예들에서, 예를 들어, 신뢰-뷰어 옵션(330)은 비디오-그래픽 요소(312)를 캡처한 뷰어가 비디오 클립들을, 모든 뷰어 디바이스들로 송신된 미래의 라이브 비디오 스트림들에, 또는 대안적으로 비디오 클립들을 시청하기 위한 허가를 이전에 부여받은 뷰어들에 대응하는 뷰어 디바이스들로 송신된 미래의 라이브 비디오 스트림들에 추가하도록 허용한다.
반대로, 숨기기 옵션(332)이 선택될 때, 소셜 네트워킹 애플리케이션(108)은 소셜 네트워킹 시스템(102)으로 하여금 다양한 뷰어 디바이스들(예를 들어, 뷰어 디바이스들(114a-114n))로 송신된 라이브 비디오 스트림으로부터 비디오-그래픽 요소(312)를 제거하도록 지시한다. 예를 들어, 일부 실시예들에서, 숨기기 옵션(332)은 소셜 네트워킹 애플리케이션(108)으로 하여금 모든 뷰어 디바이스들로 송신된 라이브 비디오 스트림으로부터, 또는 대안적으로, 비디오 클립들을 시청하기 위한 허가가 이전에 거부된 뷰어들에 대응하는 뷰어 디바이스들로 송신된 라이브 비디오 스트림으로부터 비디오-그래픽 요소(312)를 제거하도록 유발한다.
도 3e에 도시된 옵션들에 덧붙여, 소셜 네트워킹 시스템(102)은 때때로 (브로드캐스터에 의해 선택될 때) 소셜 네트워킹 애플리케이션(108)으로 하여금 뷰어가 라이브 비디오 스트림을 시청하지 못하게 하는 옵션들과 같은 추가 옵션들을 제공하거나, 브로드캐스터가 비디오-그래픽 요소(312) 내의 비디오 클립에 응답하여 댓글을 입력할 수 있는 텍스트 박스를 제공하거나, 또는 브로드캐스터가 비디오-그래픽 요소(312) 내의 비디오 클립에 반응하기 위하여 선택할 수 있는 반응 옵션들(예를 들어, 엄지 척, 박동하는 하트, 웃는 얼굴, 놀란 얼굴, 우는 얼굴, 화난 얼굴 또는 다른 반응 요소)의 목록을 제공한다.
비디오-그래픽 요소와 상호작용하거나 또는 이의 위치를 변경하기 위한 옵션들을 제공하는 것에 부가하여, 일부 실시예들에서, 소셜 네트워킹 시스템(102)은, 소셜 네트워킹 애플리케이션(108)으로 하여금 비디오-그래픽 요소의 위치를 변경하고/하거나 그래픽 사용자 인터페이스로부터 비디오-그래픽 요소를 (예를 들어, 움직임에 대응하는 사용자 상호작용 없이) 제거하도록 지시하는 데이터를 (예를 들어, 소셜 네트워킹 애플리케이션(108)의 일부로서) 제공한다. 도 3f에 도시된 바와 같이, 예를 들어, 브로드캐스터 디바이스(106)는, 소셜 네트워킹 애플리케이션(108)이 비디오-그래픽 요소(312)의 위치를 업데이트하여 라이브-비디오-스트림 GUI(304)를 가로질러 이동함에 따라, 라이브-비디오-스트림 GUI(304) 내에서 비디오-그래픽 요소(312)를 제시한다.
도 3f에 도시된 것과 같은 일부 실시예들에서, 소셜 네트워킹 애플리케이션(108)은 비디오-그래픽 요소(312)의 위치를 업데이트하여, (연속적인 움직임을 구체적으로 제어하는 브로드캐스터로부터 임의의 사용자 상호작용 또는 입력을 검출하지 않고) 라이브-비디오-스트림 GUI(304)를 가로질러 라이브-비디오-스트림 GUI(304)의 에지를 향해 계속 이동한다. 이러한 특정 실시예에서, 움직임을 제어하는 사용자 상호작용 또는 입력을 검출하는 것보다, 브로드캐스터 디바이스(106)는 스와이프, 플릭, 더블 탭의 해제 또는 종료와 같은 비디오-그래픽 요소(312)와의 사용자 상호작용의 종료, 또는 비디오-그래픽 요소(312)를 이동시키거나 선택하는 다른 터치 제스처의 종료를 검출한다. 사용자 상호작용의 종료를 검출할 때, 소셜 네트워킹 애플리케이션(108)은 라이브-비디오-스트림 GUI(304)를 업데이트하여, 비디오-그래픽 요소(312)를 이전 위치로 복귀시키거나, 또는 브로드캐스터 디바이스(106)가 비디오-그래픽 요소(312) 내에서 비디오 클립을 제시하는 동안 라이브-비디오 스트림 GUI(304)를 가로질러 연속적으로 이동한다. 도 3f에 도시된 바와 같이, 예를 들어, 터치 제스처의 종료를 검출한 후, 브로드캐스터 디바이스(106)는 검출된 종료의 표시를 소셜 네트워킹 애플리케이션(108)에 전송한다. 소셜 네트워킹 애플리케이션(108)은 이후 라이브-비디오-스트림 GUI(304)를 업데이트하여, 비디오-그래픽 요소(312)를 플로팅 패턴으로 라이브-비디오-스트림 GUI(304)의 상부를 향해 연속적으로 이동시킨다.
비디오-그래픽 요소의 위치를 변경하거나 비디오-그래픽 요소를 제거하는 것 외에도, 일부 실시예들에서, 소셜 네트워킹 애플리케이션(108)은 소셜 네트워킹 애플리케이션(108)이 사용자 상호작용에 응답하여 비디오-그래픽 요소의 위치를 유지하도록 지시하는 데이터를 (예를 들어, 소셜 네트워킹 애플리케이션(108)의 일부로서) 제공한다. 예를 들어, 일부 예들에서, 브로드캐스터 디바이스(106)는 비디오-그래픽 요소의 위치를 유지하는 것을 나타내는 탭 또는 다른 터치 제스처와 같은, 비디오-그래픽 요소(312)와의 사용자 상호작용을 검출한다. 사용자 상호작용을 검출할 때, 소셜 네트워킹 애플리케이션(108)은 라이브-비디오-스트림 GUI(304)를 업데이트하여, (브로드캐스터 디바이스(106)가 비디오 클립을 비디오-그래픽 요소(312) 내에서 제시하는 동안) 라이브-비디오-스트림 GUI(304) 내의 현재 위치에서 비디오-그래픽 요소(312)를 유지한다. 일부 예들에서, 검출된 사용자 상호작용은 라이브-비디오-스트림 GUI(304)를 가로질러 비디오-그래픽 요소(312)의 움직임을 정지시키는 지시를 나타낸다. 도 3f에 도시된 바와 같이, 예를 들어, 비디오-그래픽 요소(312)의 검출된 탭은, 비디오-그래픽 요소(312)가 라이브-비디오-스트림 GUI(304)를 가로질러(예를 들어, 위쪽으로, 옆으로) 이동하는 것을 중지시키도록 소셜 네트워킹 애플리케이션(108)에 나타낼 것이다.
일부 실시예들에서, 비디오-그래픽 요소(312)의 독립적인 이동을 가능하게 하는 것 외에도, 소셜 네트워킹 시스템(102)은 비디오-그래픽 요소(312)의 이동을 비디오 클립의 지속시간에 부합하도록 제어하는 데이터를 (예를 들어, 소셜 네트워킹 애플리케이션(108)의 일부로서) 제공한다. 예를 들어, 일부 실시예들에서, 소셜 네트워킹 애플리케이션(108)은 비디오-그래픽 요소(312)를 라이브-비디오-스트림 GUI(304) 내의 한 위치에서 다른 위치로(예를 들어, 라이브-비디오-스트림 GUI(304)의 하부에서 상부로) 연속적으로 이동시킨다. 최종 위치 (예를 들어, 라이브-비디오-스트림 GUI(304)의 상부 또는 에지)에 도달할 때, 소셜 네트워킹 애플리케이션(108)은 비디오-그래픽 요소(312)를 제거하기 위해 라이브-비디오-스트림 GUI(304)를 업데이트한다. 예를 들면, 일부 실시예들에서, 소셜 네트워킹 애플리케이션(108)은, 비디오-그래픽 요소(312)가 라이브-비디오-스트림 GUI(304)에서 점차 사라질 때까지, 비디오-그래픽 요소(312)를 라이브-비디오-스트림 GUI(304)의 하부에서 상부로 플로팅 방식으로 연속적으로 이동시킨다.
예를 들어, 상호작용형 메뉴를 유발하는 전술한 사용자 상호작용들에 더하여, 일부 실시예들에서, 소셜 네트워킹 시스템(102)은 상호작용형 메뉴에 해당하지 않지만 그럼에도 불구하고 사용자 상호작용에 기초한 옵션들을 제공한다. 실제로, 일부 실시예들에서, 상술된 기능들 또는 옵션들 중 어느 하나는 상호작용형 메뉴(예를 들어, 터치 제스처 또는 마우스 클릭)가 없는 사용자 상호작용에 대응한다. 도 3g 및 도 3h는 상호작용형 메뉴 없이 사용자 상호작용이 유발되는 하나의 이러한 옵션의 일 실시예를 도시한다.
도 3g 및 도 3h에 도시된 바와 같이, 소셜 네트워킹 애플리케이션(108)은 비디오-그래픽 요소(312)의 디스플레이를 유지한다. 구체적으로, 도 3g에 도시된 바와 같이, 브로드캐스터 디바이스(106)가 (비디오-그래픽 요소(312)를 디지털 비디오 프레임(334)으로 드래깅 또는 다른 터치 제스처와 같은) 브로드캐스터와 비디오-그래픽 요소(312) 사이의 사용자 상호작용을 검출할 때, 브로드캐스터 디바이스(106)는 사용자 상호작용의 표시를 소셜 네트워킹 애플리케이션(108)에 송신한다. 도 3h에 도시된 바와 같이, 사용자 상호작용의 표시를 수신한 것에 응답하여, 소셜 네트워킹 애플리케이션(108)은 라이브-비디오-스트림 브로드캐스트 동안 비디오-그래픽 요소(312)의 디스플레이를 유지한다. 예를 들어, 소셜 네트워킹 애플리케이션(108)은 라이브-비디오-스트림 디스플레이(306) 상에 오버레이된 라이브-비디오-스트림 GUI(304)의 하부-우측 코너에 비디오-그래픽 요소의 디스플레이를 유지한다.
도 3a 내지 도 3h가 브로드캐스터 디바이스(106)의 관점에서 소셜 네트워킹 시스템(102)의 실시예들을 도시하지만, 소셜 네트워킹 시스템(102)은 마찬가지로 뷰어 디바이스(예를 들어, 뷰어 디바이스(114a))가 도 3a 내지 도 3h를 통해 도시된 브로드캐스터 디바이스(106)에 의해 수행된 기능들 중 일부를 수행하는 실시예들을 포함한다. 예를 들어, 일부 실시예들에서 그리고 위의 개시사항과 일치하여, (소셜 네트워킹 애플리케이션(116a)과 조합된) 뷰어 디바이스(114a)는 라이브 비디오 스트림을 제시하거나, 비디오-그래픽 요소 내에서 라이브 비디오 스트림에 대한 뷰어 반응의 비디오 클립을 제시하거나, 사용자 상호작용 또는 다양한 요소들에 기초하여 비디오-그래픽 요소의 크기 또는 위치의 조정을 유발하는 사용자 상호작용들을 검출하거나, 비디오-그래픽 요소의 디스플레이를 유지하거나, (오로지 뷰어 디바이스의 그래픽 사용자 인터페이스로부터) 비디오-그래픽 요소의 디스플레이를 제거하거나, 또는 비디오-그래픽 요소(312) 내의 비디오 클립에 응답하여 댓글을 단다.
위에서 언급한 바와 같이, 일부 실시예들에서, 뷰어 디바이스는 라이브 비디오 스트림을 제시하고, 뷰어에 의해 라이브 비디오 스트림에 대한 반응의 비디오 클립을 기록한다. 도 4a 내지 도 4f는 뷰어 디바이스가 비디오 클립의 캡처 및 프리젠테이션과 관련된 다양한 특징들 및 기능들을 수행하는 소셜 네트워킹 시스템(102)의 특정 실시예들을 도시한다. 본 개시사항은 도 4a 내지 도 4f를 기술할 때 사용자 상호작용들의 예들로서 터치 제스처들 또는 마우스 클릭들을 지칭하지만, 추가적인 또는 대안적인 실시예들에서, 브로드캐스터 디바이스(106)는 스타일러스 상호작용 또는 키보드 입력을 포함하는 임의의 적절한 사용자 상호작용을 검출한다.
도 4a에 도시된 바와 같이, 뷰어 디바이스(114a)의 예는 라이브 비디오 스트림의 프리젠테이션을 가능하게 하는 터치 스크린 디스플레이(404)를 포함한다. 예를 들어, 브로드캐스터 디바이스로부터 발생하는 라이브 비디오 스트림을 수신하고 라이브 비디오 스트림을 시청하기 위한 옵션의 뷰어의 선택을 검출한 후, 뷰어 디바이스(114a)는 터치 스크린 디스플레이(404)를 통해 라이브 비디오 스트림을 라이브-비디오-스트림 GUI(406) 내에서 제시한다. 라이브-비디오-스트림 GUI(406) 내에서 도시된 바와 같이, 라이브-비디오-스트림 디스플레이(414)는 브로드캐스터 디바이스로부터 시작된 라이브 비디오 스트림의 뷰를 포함한다.
하나 이상의 실시예들에서, 라이브-비디오-스트림 GUI(406)는 브로드캐스터 표시기(407), 라이브 표시기(408) 및 뷰어 표시기(410)를 포함한다. 브로드캐스터 표시기(407)는 라이브 비디오를 송신하는 브로드캐스터 디바이스에 대응하는 브로드캐스터의 신원을 나타낸다. 라이브 표시기(408)는 소셜 네트워킹 시스템(102)이 현재 브로드캐스터 디바이스에 의해 캡처된 라이브 비디오를 브로드캐스트하고 있음을 뷰어에게 표시한다. 관련하여, 뷰어 표시기(410)는 현재 라이브 비디오 스트림을 시청하고 있는 뷰어들의 수를 표시한다.
또한 도 4a에 도시된 바와 같이, 라이브-비디오-스트림 GUI(406)는 출구-스트림 옵션(412)을 더 포함한다. 출구-스트림 옵션(412)은 (뷰어에 의해 선택될 때) 소셜 네트워킹 애플리케이션(116a)이 라이브 비디오 스트림의 전체-화면 보기를 종료하게 하는 선택 가능한 옵션을 포함한다. 예를 들어, 소셜 네트워킹 애플리케이션(116a)이 뷰어에 의해 출구-스트림 옵션(412)의 선택에 대한 표시를 뷰어 디바이스(114a)로부터 수신할 때, 소셜 네트워킹 애플리케이션(116a)은 라이브 비디오 스트림의 전체-화면 보기를 종료하고, 라이브-비디오-스트림 GUI(406) 또는 라이브-비디오-스트림 디스플레이(414)를 최소화한다. 대안적으로, 일부 실시예들에서, 출구-스트림 옵션(412)은 (뷰어에 의해 선택될 때) 소셜 네트워킹 애플리케이션(116a)으로 하여금 (예를 들어, 터치 스크린 디스플레이(404)로부터 라이브-비디오-스트림 GUI(406) 또는 라이브-비디오-스트림 디스플레이(414)를 숨기거나 제거함으로써) 라이브 비디오 스트림의 제시를 중지하게 한다.
스트리밍 표시기들 및 옵션들에 더하여, 일부 실시예들에서, 소셜 네트워킹 시스템(102)은 (예를 들어, 모든 뷰어 디바이스들 또는 뷰어 디바이스들의 선택에 대해) 뷰어 디바이스 상에서 반응-비디오 요소를 활성화시킨다. 도 4a에 도시된 바와 같이, 라이브-비디오-스트림 GUI(406)는 반응-비디오 요소(416)를 포함한다. 반응-비디오 요소(416)는 라이브 비디오 스트림에 대한 반응의 비디오 클립을 캡처하기 위한 선택 가능한 옵션을 포함한다. 위의 개시사항과 일치하여, 일부 실시예들에서, 뷰어 디바이스(114a)는 소셜 네트워킹 시스템(102)으로부터 반응-비디오 요소(416)를 활성화시키는 신호를 수신한다. 신호를 수신하는 것에 기초하여, 소셜 네트워킹 애플리케이션(116a)은 뷰어 디바이스(114a)로 하여금 반응-비디오 요소(416)를 제시하게 한다. 대안적으로, 일부 실시예들에서, 신호를 수신하는 것에 기초하여, 소셜 네트워킹 애플리케이션(116a)은 사용자 상호작용들에 응답하여 (이미 라이브-비디오-스트림 GUI(406) 내에서 제시된) 반응-비디오 요소(416)를 활성화시킨다.
도 4a에 추가로 도시된 바와 같이, 뷰어 디바이스(114a)는 반응-비디오 요소(416)의 선택 (또는 사용자 상호작용)을 검출한다. 일부 실시예들에서, 선택 또는 사용자 상호작용은 반응-비디오 요소(416)의 탭 또는 반응-비디오 요소(416)에 대응하는 다른 터치 제스처(예, 긴 누름 또는 누름-및-유지 제스처)를 포함한다. 선택 또는 사용자 상호작용을 검출할 때, 소셜 네트워킹 애플리케이션(116a)은 뷰어 디바이스(114a)의 카메라(402)로 하여금 (뷰어 디바이스(114a)가 라이브 비디오 스트림을 제시하는 동안) 라이브 비디오 스트림에 대한 반응의 비디오 클립의 캡처를 시작하게 한다.
도 4b에 도시된 바와 같이, 뷰어 디바이스(114a)는 비디오-그래픽 요소(418) 내에 비디오 클립을 제시하는 반면, 카메라(402)는 라이브 비디오 스트림에 대한 반응의 비디오 클립을 기록한다. 이 실시예에서, 카메라(402)는, 뷰어 디바이스(114a)가 반응-비디오 요소(416)의 선택 (또는 사용자 상호작용)의 종료를 검출할 때까지, 또는 소셜 네트워킹 애플리케이션(116a)이 카메라(402)로 하여금 (예, 최대 지속시간 이후) 기록을 정지하게 할 때까지, 라이브 비디오 스트림에 대한 반응을 계속 기록한다.
도 4b에 더 도시된 바와 같이, 비디오-그래픽 요소(418)는 비디오 클립의 뷰 및 시간-만료 표시기(420)를 모두 포함한다. 시간-만료 표시기(420)는 비디오 클립에 대한 최대 지속시간(예를 들어, 4초, 10초, 20초))을 향한 기록 진행의 시각적 신호를 포함한다. 구체적으로, 소셜 네트워킹 애플리케이션(116a)은 시간-만료 표시기(420)가 시계 방향으로 (모두 비디오-그래픽 요소(418) 내에 있는) 비디오-그래픽 요소(418)의 상단으로부터 비디오-그래픽 요소(418)의 경계를 둘러 다시 비디오-그래픽 요소(418)의 상단으로 이동하게 한다. 비디오 클립의 기록은 비디오-그래픽 요소(418)의 상단으로 다시 이동할 때 최대 지속시간에 도달한다. 그러나, 소셜 네트워킹 애플리케이션(116a)이 뷰어 디바이스(114a)로부터 비디오-그래픽 요소(418)의 선택(또는 사용자 상호작용)의 종료를 수신하면, 소셜 네트워킹 애플리케이션(116a)은 카메라(402)가 비디오 클립의 기록을 중지하게 한다.
도 4a 및 도 4b는 라이브 비디오 스트림에 대한 반응의 비디오 클립을 기록하는 뷰어 디바이스(114a)의 단지 일 예를 도시한다. 다른 실시예들에서, 뷰어 디바이스(114a)는 뷰어 디바이스(114a)의 물리적 버튼 또는 라이브-비디오-스트림 GUI(406) 내의 다른 그래픽 요소의 선택(또는 사용자 상호작용)을 검출하는 것에 기초하여 비디오 클립을 기록한다. 추가적으로, 일부 실시예들에서, 비디오-그래픽 요소(418)는 시간-만료 표시기(420)를 포함하지 않는다.
비디오 클립의 기록을 가능하게 하는 것에 더하여, 일부 실시예들에서, 소셜 네트워킹 애플리케이션(116a)은 (예를 들어, 소셜 네트워킹 애플리케이션에 미리보기 기능을 제공함으로써) 비디오 클립의 미리보기를 제공하는 것을 가능하게 한다. 도 4c에 도시된 바와 같이, 소셜 네트워킹 애플리케이션(116a)은 뷰어 디바이스(114a)가 라이브-비디오 스트림 GUI(406) 내에서 비디오 클립의 미리보기(426)를 제시하게 한다. 미리보기(426)를 제공함으로써, 소셜 네트워킹 애플리케이션(116a)은 뷰어가 비디오 클립을 브로드캐스터 또는 다른 뷰어들에게 송신하기 전에, 비디오 클립을 시청하는 것을 허용한다. 구체적으로, 뷰어 디바이스(114a)가 미리보기(426)의 선택(또는 사용자 상호작용)을 검출할 때, 소셜 네트워킹 애플리케이션(116a)은 뷰어 디바이스(114a)로부터 선택(또는 사용자 상호작용)의 표시를 수신하여, 뷰어 디바이스(114a)가 미리보기(426)를 재생하게 한다.
미리보기를 용이하게 하는 것에 더하여, 소셜 네트워킹 애플리케이션(116a)은 비디오 클립을 삭제하거나 브로드캐스터 또는 다른 뷰어에게 전송하는 옵션들을 포함한다. 또한 도 4c에 도시된 바와 같이, 뷰어 디바이스(114a)는 라이브-비디오-스트림 GUI(406) 내에서 삭제 옵션(422) 및 공유 옵션(424)을 제시한다. 삭제 옵션(422)의 선택(또는 사용자 상호작용)을 검출할 때, 뷰어 디바이스(114a)는 선택(또는 사용자 상호작용)의 표시를 소셜 네트워킹 애플리케이션(116a)에 전송한다. 표시를 수신한 것에 응답하여, 소셜 네트워킹 애플리케이션(116a)은 뷰어 디바이스(114a)가 비디오 클립을 삭제하게 한다.
반대로, 공유 옵션(424)의 선택(또는 사용자 상호작용)을 검출할 때, 뷰어 디바이스(114a)는 선택(또는 사용자 상호작용)의 표시를 소셜 네트워킹 애플리케이션(116a)에 전송한다. 표시를 수신한 것에 응답하여, 소셜 네트워킹 애플리케이션(116a)은, 브로드캐스트 디바이스 및/또는 다른 뷰어 디바이스들(예를 들어, 뷰어 디바이스들(114b-114n))로의 후속 송신을 위해, 뷰어 디바이스(114a)가 비디오 클립을 소셜 네트워킹 시스템(102)으로 송신하게 한다. 이 특정 실시예에서, 뷰어 디바이스(114a)는 비디오 클립을 송신하는 한편 뷰어 디바이스(114a)는 라이브 비디오 스트림을 제시한다.
브로드캐스터 디바이스와 유사하게, 일부 실시예들에서, 뷰어 디바이스는, 비디오 클립을 캡처한 뷰어와 관련된 뷰어 디바이스를 포함하여 그래픽 사용자 인터페이스 내에 송신된 비디오 클립을 제시한다. 도 4d에 도시된 바와 같이, 예를 들어, 뷰어 디바이스(114a)는, 비디오 클립을 소셜 네트워킹 시스템(102)에 송신한 후, 라이브-비디오-스트림 GUI(406) 내에서 비디오-그래픽 요소(418)를 제시한다. 도 3f에 도시된 비디오-그래픽 요소(312)와 유사하게, 도 4d에 도시된 비디오-그래픽 요소(418)는 라이브-비디오-스트림 GUI(406)를 가로질러 계속 이동한다. 구체적으로, 소셜 네트워킹 애플리케이션(116a)은 비디오-그래픽 요소(418)의 위치를 업데이트하여, 연속적인 움직임을 구체적으로 제어하는 뷰어로부터의 임의의 사용자 상호작용 또는 입력을 검출하지 않고, 라이브-비디오-스트림 GUI(406)를 가로질러 라이브-비디오-스트림 GUI(406)의 에지를 향해 계속 이동한다.
도 4d에 도시된 실시예에서, 뷰어 디바이스(114a)는, 스와이프, 플릭, 더블 탭의 릴리스 또는 종료, 또는 비디오-그래픽 요소(418)를 이동 또는 선택하는 다른 터치 제스처의 종료와 같은, 비디오-그래픽 요소(418)와의 사용자 상호작용의 종료를 검출한다. 사용자 상호작용의 종료를 검출할 때, 소셜 네트워킹 애플리케이션(114a)은 라이브-비디오-스트림 GUI(406)를 업데이트하여, 비디오-그래픽 요소(418)를 이전 위치로 복귀시키거나, 또는 (뷰어 디바이스(114a)가 비디오-그래픽 요소(418) 내에서 비디오 클립을 제시하는 동안) 라이브 비디오 스트림 GUI(406)를 가로질러 연속적으로 이동한다.
단일 비디오 클립을 송신하는 것에 더하여, 일부 실시예들에서, 소셜 네트워킹 시스템(102)은 다수의 뷰어 디바이스들로부터 다수의 비디오 클립들을 수신한다. 수신된 허가들, 뷰어들의 임계 수, 또는 다른 요소들에 의존하여, 소셜 네트워킹 시스템(102)은 선택적으로 다수의 비디오 클립들을 브로드캐스트 디바이스 및 다수의 뷰어 디바이스들에 송신한다. 이러한 송신을 수신할 때, 일부 실시예들에서, 브로드캐스터 디바이스 및 다수의 뷰어 디바이스들은 그들 각각의 그래픽 사용자 인터페이스들 내에서 다수의 비디오 클립들을 제시한다.
도 4e에 도시된 바와 같이, 예를 들어, 뷰어 디바이스(114a)는 뷰어 디바이스(114a)와 관련된 뷰어에 의해 캡처된 비디오 클립을 제시하는 것에 더하여 다수의 비디오 클립을 수신 및 제시한다. 구체적으로, 뷰어 디바이스(114a)는 (동시에 라이브 비디오 스트림을 제시하면서) 라이브-비디오-스트림 GUI(406) 내에서 비디오-그래픽 요소들(418, 428 및 430)을 제시한다. 비디오-그래픽 요소들(418, 428 및 430) 각각은 상이한 뷰어 디바이스들을 사용하여 뷰어에 의해 생성된 비디오 클립을 포함한다. 상술한 바와 같이, 뷰어 디바이스(114a)와 관련된 뷰어는, 예를 들어 카메라(402)를 사용하여 비디오-그래픽 요소(418) 내에서 비디오 클립을 캡처했다. 대조적으로, 뷰어 디바이스들(114b 및 114n)와 관련된 뷰어들은 뷰어 디바이스들(114a 및 114n)의 카메라들을 사용하여 비디오-그래픽 요소들(428 및 430) 내에서 비디오 클립들을 각각 캡처했다. 각각의 뷰어 디바이스들(114a, 114b 및 114n)은 그들의 각각의 비디오 클립들을 소셜 네트워킹 시스템(102)으로 송신하고, 소셜 네트워킹 시스템(102)은 차례로 비디오 클립들을 브로드캐스터 디바이스(106) 및 다른 뷰어 디바이스들로 송신한다.
다수의 비디오-그래픽 요소들를 제시하는 것에 더하여, 뷰어 디바이스(114a)는 비디오-그래픽 요소들(418, 428 및 430) 각각을 라이브-비디오-스트림 GUI(406) 내에서 상이한 크기들 및 상이한 위치들에 제시한다. 예를 들어, 비디오-그래픽 요소(428)는 비디오-그래픽 요소들(418 및 430)보다 크다. 위의 개시사항에 일관되게, 뷰어 디바이스(114a)는 (소셜 네트워킹 애플리케이션(116a)와 조합하여) 사용자 상호작용 또는 다양한 요소들에 기초하여 비디오-그래픽 요소들(418, 428 및 430)의 크기 또는 위치를 조정한다. 예를 들어, 일부 실시예들에서, 소셜 네트워킹 시스템(102)은, 대응하는 비디오 클립을 캡처한 뷰어와 관련된 친구들 또는 팔로어들의 수(또는 잠재적 영향), 브로드캐스터에 대해 뷰어(대응하는 비디오 클립을 캡처한)에 대한 친밀도 계수, 및/또는 비디오 클립에 대해 다른 뷰어들로부터 수신된 반응들(예를 들어, 비디오 클립에 대한 댓글 또는 반응 요소들)에 기초하여 비디오-그래픽 요소의 크기를 제어 또는 조정하는 데이터를 뷰어 디바이스(114a)에 송신한다.
도 4e에 도시된 바와 같이, 예를 들어, 뷰어 디바이스(114a)는 비디오-그래픽 요소(428)를 비디오-그래픽 요소(418 및 430)보다 더 큰 크기로 제시하여 브로드캐스터와의 관계를 반영한다. 구체적으로, 비디오-그래픽 요소(428) 내에서 비디오 클립을 캡처한 뷰어는 비디오-그래픽 요소들(418 및 430) 내에서 비디오 클립들을 캡처한 뷰어들보다 브로드캐스터에 대해 더 높은 친밀도 계수를 갖는다. 따라서, 도 4e에 도시된 실시예에서, 비디오-그래픽 요소들(418, 428 및 430)의 크기는 라이브 비디오 스트림의 브로드캐스터에 대해 각각의 대응하는 비디오 클립을 캡처한 뷰어들의 친밀도 계수들을 반영한다.
추가적이거나 대안적인 실시예들에서, 비디오-그래픽 요소들(418, 428 및 430)의 크기들은 각각의 대응하는 비디오 클립을 캡처한 뷰어들과 관련된 친구들 또는 팔로어들의 수, 또는 비디오-그래픽 요소들(418, 428 및 430) 내에서 각 비디오 클립에 응답하여 수신된 반응들을 반영한다. 또한, 일부 실시예들에서, 소셜 네트워킹 시스템(102)은 비디오-그래픽 요소가 초과할 수 없는 또는 떨어질 수 없는 최대 또는 최소 크기(라이브-비디오-스트림 GUI에 비해)를 설정한다. 도 4e에 도시된 바와 같이, 뷰어 디바이스(114a)는 비디오-그래픽 요소(428)를 최대 크기로, 그리고 비디오-그래픽 요소(418 및 430)를 소셜 네트워킹 시스템(102)에 의해 설정된 최소 크기로 제시한다.
다수의 비디오-그래픽 요소들을 다양한 크기들로 송신하는 것에 더하여, 하나 이상의 실시예들에서, 소셜 네트워킹 시스템(102)은 라이브 비디오 스트림에 대해 뷰어에 의한 반응을 수신하고 브로드캐스트 디바이스 및/또는 뷰어 디바이스들로 송신한다. 이러한 일부 실시예들에서, 소셜 네트워킹 시스템(102)은, 브로드캐스터 디바이스 또는 뷰어 디바이스에 의해 제시될 라이브 비디오 스트림에 대한 반응을, 그래픽 사용자 인터페이스 내에서 비디오 클립과 함께 송신한다.
도 4e에 도시된 바와 같이, 뷰어 디바이스(114a)는 (소셜 네트워킹 시스템(102)으로부터)을 수신하고 라이브-비디오 스트림 디스플레이(414) 상에 오버레이된 반응 스트림(432)을 제시한다. 예를 들어, 반응 스트림(432)은 라이브-비디오-스트림 디스플레이(414)를 가로질러(예를 들어, 왼쪽에서 오른쪽으로) 떠 다녀, 뷰어들이 라이브 비디오 스트림에 대해 갖는 반응들의 유형들을 나타내는 것으로 보이는 반응 요소들(예를 들어, 하트, 엄지 척, 웃는 얼굴)을 포함한다. 이러한 실시예들에서, 소셜 네트워킹 시스템(102)은 라이브 비디오 스트림에 대한 뷰어의 참여를 증가시키기 위해 반응 스트림(432)에 의해 표현된 반응들을 송신한다. 대안적인 실시예들에서, 소셜 네트워킹 시스템(102)은 반응 스트림(432) 없이 비디오-그래픽 요소들(418, 428 및 430) 내에서 비디오 클립들을 송신한다.
뷰어들이 라이브 비디오 스트림과 상호작용할 수 있게 하는 데이터를 제공하는 것에 더하여, 일부 실시예들에서, 소셜 네트워킹 시스템(102)은, 브로드캐스터 또는 뷰어가 비디오 클립을 캡처한 뷰어와 상호작용할 수 있게 하는 데이터를 (예를 들어, 소셜 네트워킹 애플리케이션(108) 또는 소셜 네트워킹 애플리케이션(116a)의 일부로서) 브로드캐스터 디바이스 또는 뷰어 디바이스에 (예를 들어, 팔로우 요청, 친구 요청 또는 반응을 비디오 클립을 캡처한 뷰어에게 송신하는 옵션들을 제공함으로써) 제공한다. 도 4f는 소셜 네트워킹 시스템(102)이 비디오-그래픽 요소(430) 내에서 비디오 클립을 캡처한 뷰어와 상호작용하기 위해 뷰어 디바이스 내에서 옵션들을 활성화시키는 실시예를 도시한다.
도 4f에 도시된 바와 같이, 뷰어 디바이스(114a)가 뷰어와 비디오-그래픽 요소(430) 사이의 (비디오-그래픽 요소(430)에 참여 요청을 나타내는 더블 탭 또는 다른 터치 제스처와 같은) 사용자 상호작용을 검출할 때, 뷰어 디바이스(114a)는 소셜 네트워킹 애플리케이션(116a)에 대한 사용자 상호작용의 표시를 전송한다. 사용자 상호작용의 표시를 수신하는 것에 응답하여, 소셜 네트워킹 애플리케이션(116a)은 뷰어 디바이스(114a)가 팔로우-요청 옵션(434)을 제시하게 한다. 팔로우-요청 옵션(434)의 선택의 표시를 수신할 때, 뷰어 디바이스(114a)는 비디오-그래픽 요소(430) 내에서 비디오 클립을 캡처한 뷰어를 팔로우하기 위한 요청(예를 들어, 비디오 클립을 캡처한 뷰어에 의해 게시물들의 또는 게시물들의 통지를 수신함으로써 뷰어를 팔로우하기 위한 요청)을 송신한다.
팔로우-요청 옵션(434)에 추가하여 또는 대안으로, 일부 실시예들에서, 뷰어 디바이스(114a)는 비디오-그래픽 요소(430)와의 사용자 상호작용에 의해 유발되는 친구-요청 옵션(미도시)을 제시한다. 친구-요청 옵션의 선택의 표시를 수신할 때, 뷰어 디바이스(114a)는 비디오-그래픽 요소(430) 내에서 비디오 클립을 캡처한 뷰어와 친구가 되기 위한 요청(예를 들어, 비디오 클립을 캡처한 뷰어에 관한 특정 프로파일 정보에 대한 액세스를 포함하는, 소셜 네트워킹 시스템(102)내에서 "친구" 관계를 설정하기 위한 요청)을 송신한다. 팔로우 요청 또는 친구 요청을 송신할 때, 뷰어 디바이스(114a)는 (소셜 네트워킹 시스템(102)을 통해) 팔로우 요청 또는 친구 요청을, 비디오-그래픽 요소(430) 내에서 비디오 클립을 캡처한 뷰어와 관련된 뷰어 디바이스로 송신한다.
도 4f에 더 도시된 바와 같이, 라이브-비디오-스트림 GUI(406)는 반응 제어(436)를 포함한다. 반응 제어(436)를 이용하여, 뷰어 디바이스(114a)와 관련된 뷰어는 비디오-그래픽 요소(430) 내에서 비디오 클립에 대한 반응들(예컨대, 엄지 척, 하트)을 제출할 수 있다. 예를 들어, 적어도 하나의 실시예에서, (더블 탭 또는 다른 터치 제스처와 같은) 비디오-그래픽 요소(430)와의 사용자 상호작용의 표시를 수신한 것에 응답하여, 소셜 네트워킹 애플리케이션(116a)은 뷰어 디바이스(114a)가 반응 제어(436)를 활성화시키도록 야기한다. 반응 제어(436)와의 사용자 상호작용의 표시를 수신할 때, 뷰어 디바이스(114a)는 뷰어 디바이스(114a)로 하여금 반응 옵션(예를 들어, 박동하는 하트, 엄지 척, 슬픈 얼굴, 웃는 얼굴)을 제시하게 하고, 이로부터 뷰어는 동영상에 대한 반응으로 선택할 수 있다.
이제 도 5로 가면, 이 도면은 브로드캐스터 디바이스의 하나 이상의 실시예들에 따라 라이브 비디오 스트림에 대한 반응의 비디오 클립을 제공하는 방법(500)에서 일련의 동작들의 흐름도를 예시한다. 도 5는 일 실시예에 따른 동작들을 예시하지만, 대안적인 실시예들이 도 5에 도시된 동작들 중 임의의 것을 생략하고, 부가하고, 재정리하며, 및/또는 수정할 수 있다.
도 5에 도시된 바와 같이, 방법(500)은 라이브 비디오 스트림을 송신하는 동작(510)을 포함한다. 특히, 동작(510)은 브로드캐스터 디바이스에 의해, 소셜 네트워킹 시스템으로, 복수의 뷰어들로의 브로드캐스트를 위한 라이브 비디오 스트림을 송신하는 것을 포함할 수 있다.
도 5에 추가로 도시되는 바와 같이, 방법(500)은 라이브-비디오 스트림에 대한 반응의 비디오 클립을 수신하는 동작(520)을 포함한다. 특히, 동작(520)은, 브로드캐스터 디바이스에 의해, 소셜 네트워킹 시스템으로부터 복수의 뷰어들 중 하나의 뷰어에 의한 라이브 비디오 스트림에 대한 반응의 비디오 클립을 수신하는 것을 포함할 수 있으며, 상기 비디오 클립은 뷰어 디바이스가 라이브 비디오 스트림을 제시하는 동안 뷰어 디바이스를 사용하여 뷰어에 의해 캡처된다. 하나 이상의 실시예들에서, 비디오 클립은 최대 지속 기간을 가진다. 부가적으로, 하나 이상의 실시예들에서, 그래픽 사용자 인터페이스 내에서 비디오 클립을 제시하는 것은 브로드캐스터 디바이스가 라이브 비디오 스트림을 캡처하는 동안 그래픽 사용자 인터페이스 내에서 라이브 비디오 스트림 상에 오버레이된 그래픽 요소 내에서의 비디오 클립을 제시하는 것을 포함한다.
도 5에 추가로 도시되는 바와 같이, 방법(500)은 라이브-비디오 스트림을 가진 비디오 클립에 제시하는 동작(530)을 포함한다. 특히, 상기 동작(530)은, 브로드캐스터 디바이스에 의해, 브로드캐스터 디바이스가 라이브 비디오 스트림을 캡처하는 동안 라이브 비디오 스트림과 브로드캐스터 디바이스의 그래픽 사용자 인터페이스 내에서 비디오 클립을 제시하는 것을 포함할 수 있다.
동작(510) 내지 동작(530) 외에, 하나 이상의 실시예들에서, 방법(500)은, 브로드캐스터 디바이스에 의해, 그래픽 요소 내에서 비디오 클립을 제시하는 동안 그래픽 사용자 인터페이스에 걸쳐 그래픽 요소를 계속해서 움직이게 하는 것을 추가로 포함한다.
부가적으로, 몇몇 실시예들에서, 방법(500)은, 브로드캐스터 디바이스에 의해, 그래픽 사용자 인터페이스 내에서 비디오 클립의 프리젠테이션 동안 비디오 클립과의 제 1 사용자 상호작용을 검출하는 것; 및 제 1 사용자 상호작용에 응답하여: 그래픽 사용자 인터페이스 내에서 비디오 클립의 위치를 변경하는 것; 또는 그래픽 사용자 인터페이스에 걸쳐 비디오 클립의 모션을 정지시키는 것을 추가로 포함한다. 반대로, 몇몇 실시예들에서, 방법(500)은 브로드캐스터 디바이스에 의해, 비디오 클립과의 제 1 사용자 상호작용의 종료를 검출하는 것; 및 제 1 사용자 상호작용의 종료에 응답하여, 비디오 클립을 이전 위치로 반환하거나 또는 그래픽 사용자 인터페이스에 걸친 비디오 클립의 계속된 모션을 허용하는 것을 추가로 포함한다. 몇몇 실시예들에서, 제 1 사용자 상호작용은 그래픽 사용자 인터페이스 내에서 비디오 클립의 프리젠테이션 동안 비디오 클립에 대한 터치 제스처를 포함한다.
유사하게, 몇몇 실시예들에서, 방법(500)은, 브로드캐스터 디바이스에 의해, 비디오 클립과의 제 2 사용자 상호작용을 검출하는 것; 및 제 2 사용자 상호작용을 검출하는 것에 응답하여: 브로드캐스터 디바이스로부터의 라이브 비디오 스트림 및 뷰어 디바이스로부터의 부가적인 라이브 비디오 스트림을 포함한 다중-사용자-라이브 스트림에 뷰어를 부가하는 것; 뷰어와의 통신을 개시하는 것; 복수의 뷰어들을 위한 라이브 비디오 스트림에 포함될 비디오 클립에 대한 허가를 승인하는 것; 라이브 비디오 스트림의 브로드캐스터로부터의 추가 라이브 비디오 스트림들에 대한 반응들의 비디오 클립들을 부가하기 위해 뷰어에 대한 허가를 승인하는 것; 또는 복수의 뷰어들을 위한 라이브 비디오 스트림에 포함될 비디오 클립에 대한 허가를 거부하는 것을 추가로 포함한다.
이제 도 6으로 가면, 이 도면은 뷰어 디바이스의 하나 이상의 실시예들에 따라 라이브 비디오 스트림에 대한 반응의 비디오 클립을 송신하는 방법(600)에서의 일련의 동작들의 플로차트를 도시한다. 도 6은 일 실시예에 따른 동작들을 도시하지만, 대안적인 실시예들은 도 6에 도시된 동작들 중 임의의 것을 생략하고, 부가하고, 재정리하며, 및/또는 수정할 수 있다.
도 6에 도시된 바와 같이, 방법(600)은 라이브 비디오 스트림을 수신하는 동작(610)을 포함한다. 특히, 동작(610)은, 뷰어 디바이스에 의해 소셜 네트워킹 시스템으로부터, 브로드캐스터 디바이스에서 비롯되는 라이브 비디오 스트림을 수신하는 것을 포함한다.
도 6에 추가로 도시되는 바와 같이, 방법(600)은 라이브 비디오 스트림을 제시하는 동작(620)을 포함한다. 특히, 동작(620)은, 뷰어 디바이스에 의해, 뷰어 디바이스의 그래픽 사용자 인터페이스 내에서 라이브 비디오 스트림을 제시하는 것을 포함한다.
도 6에 추가로 도시되는 바와 같이, 방법(600)은 반응-비디오 요소를 제공하는 동작(630)을 포함한다. 특히, 동작(630)은 그래픽 사용자 인터페이스 내에서의 뷰어 디바이스에 의해, 라이브 비디오 스트림에 대한 반응들의 비디오 클립들을 기록하기 위해 반응-비디오 요소를 제시하는 것을 포함한다. 하나 이상의 실시예들에서, 라이브 비디오 스트림에 대한 반응들의 비디오 클립들을 기록하기 위해 반응-비디오 요소를 제시하는 것은 반응-비디오 요소를 활성화하는 신호를 소셜 네트워킹 시스템으로부터 수신하는 것에 기초한다.
도 6에 추가로 도시되는 바와 같이, 방법(600)은 라이브 비디오 스트림에 대한 반응의 비디오 클립을 기록하는 동작(640)을 포함한다. 특히, 동작(640)은, 반응-비디오 요소의 선택을 검출하는 것에 응답하여, 뷰어 디바이스에 의해, 뷰어 디바이스가 라이브 비디오 스트림을 제시하는 동안 복수의 뷰어들 중 하나의 뷰어에 의해 라이브 비디오 스트림에 대한 반응의 비디오 클립을 기록하는 것을 포함한다.
도 6에 추가로 도시되는 바와 같이, 방법(600)은 비디오 클립을 송신하는 동작(650)을 포함한다. 특히, 동작(650)은, 뷰어 디바이스에 의해, 뷰어 디바이스가 라이브 비디오 스트림을 제공하는 동안 브로드캐스터 디바이스로의 송신을 위한 비디오 클립을 소셜 네트워킹 시스템으로 송신하는 것을 포함한다.
동작(610) 내지 동작(650) 외에, 하나 이상의 실시예들에서, 방법(600)은, 뷰어 디바이스가 라이브 비디오 스트림을 제시하는 동안 브로드캐스터 디바이스로의 송신을 위한 비디오 클립을 송신하기 전에, 뷰어 디바이스에 의해, 그래픽 사용자 인터페이스 내에서 비디오 클립의 미리보기를 제공하는 것; 및 비디오 클립의 승인에 응답하여, 뷰어 디바이스에 의해, 뷰어 디바이스가 라이브 비디오 스트림을 제시하는 동안 브로드캐스터 디바이스로의 송신을 위한 비디오 클립을 소셜 네트워킹 시스템으로 송신하는 것을 추가로 포함한다.
부가적으로, 몇몇 실시예들에서, 방법(600)은 뷰어 디바이스에 의해, 소셜 네트워킹 시스템으로부터 복수의 뷰어들 중 부가적인 뷰어에 의해 라이브 비디오 스트림에 대한 부가적인 반응의 부가적인 비디오 클립을 수신하는 것으로서, 상기 부가적인 비디오 클립은 부가적인 뷰어 디바이스에서 비롯되는, 상기 부가적인 비디오 클립을 수신하는 것; 및 뷰어 디바이스에 의해, 뷰어 디바이스가 라이브 비디오 스트림을 제시하는 동안 그래픽 사용자 인터페이스 내에서 라이브 비디오 스트림 상에 오버레이된 그래픽 요소 내에서의 부가적인 비디오 클립을 제시하는 것을 추가로 포함한다.
이에 관련하여, 하나 이상의 실시예들에서, 그래픽 요소의 크기는 부가적인 뷰어 디바이스에 대응하는 부가적인 뷰어 계정과 연관된 친구들 또는 팔로어들의 수; 브로드캐스터 디바이스에 대응하는 브로드캐스터 계정에 대한 부가적인 뷰어 디바이스에 대응하는 부가적인 뷰어 계정에 대한 친밀도 계수; 또는 부가적인 비디오 클립에 대한 복수의 뷰어들 중 하나 이상으로부터 수신된 반응들 중 하나 이상에 기초한다.
부가적으로, 하나 이상의 실시예들에서, 방법(600)은 뷰어 디바이스에 의해, 그래픽 요소와의 사용자 상호작용을 검출하는 것; 및 사용자 상호작용을 검출하는 것에 응답하여, 부가적인 뷰어 디바이스에 대응하는 부가적인 뷰어 계정으로 친구 요청을 전송하는 것; 또는 부가적인 뷰어 디바이스에 대응하는 부가적인 뷰어 계정으로 팔로우 요청을 전송하는 것을 추가로 포함한다.
이제 도 7로 가면, 이 도면은 소셜 네트워킹 시스템의 하나 이상의 실시예들에 따라 라이브 비디오 스트림에 대한 반응의 비디오 클립을 송신하는 방법(700)에서의 일련의 동작들의 흐름도를 예시한다. 도 7은 일 실시예에 따른 동작들을 예시하지만, 대안적인 실시예들은 도 7에 도시된 동작들 중 임의의 것을 생략하고, 부가하고, 재정리하며, 및/또는 수정할 수 있다.
도 7에 도시된 바와 같이, 방법(700)은 라이브 스트림 비디오를 수신하는 동작(710)을 포함한다. 특히, 동작(710)은, 브로드캐스터 디바이스로부터, 복수의 뷰어들로의 브로드캐스트를 위한 라이브 비디오 스트림을 수신하는 것을 포함할 수 있다.
도 7에 추가로 도시되는 바와 같이, 방법(700)은 라이브 비디오 스트림을 송신하는 동작(720)을 포함한다. 특히, 동작(720)은 복수의 뷰어들을 위한 복수의 뷰어 디바이스들로, 브로드캐스터 디바이스로부터 수신된 라이브 비디오 스트림을 송신하는 것을 포함할 수 있다.
도 7에 추가로 도시되는 바와 같이, 방법(700)은 라이브 비디오 스트림에 대한 반응의 비디오 클립을 수신하는 동작(730)을 포함한다. 특히, 동작(730)은, 복수의 뷰어 디바이스들 중 하나의 뷰어 디바이스로부터, 복수의 뷰어들 중 하나의 뷰어에 의한 라이브 비디오 스트림에 대한 반응의 비디오 클립을 수신하는 것을 포함할 수 있으며, 상기 비디오 클립은 뷰어 디바이스가 라이브 비디오 스트림을 뷰어에 제공하는 동안 뷰어 디바이스에 의해 캡처된다.
도 7에 추가로 도시되는 바와 같이, 방법(700)은 비디오 클립을 송신하는 동작(740)을 포함한다. 특히, 동작(740)은 시스템이 브로드캐스터 디바이스로부터 라이브 비디오 스트림을 수신하는 동안 브로드캐스터 디바이스에 의한 프리젠테이션을 위해 비디오 클립을 브로드캐스터 디바이스로 송신하는 것을 포함할 수 있다. 하나 이상의 실시예들에서, 시스템이 브로드캐스터 디바이스로부터 라이브 비디오 스트림을 수신하는 동안 브로드캐스터 디바이스에 의한 프리젠테이션을 위해 비디오 클립을 브로드캐스터 디바이스로 송신하는 것은 브로드캐스터 디바이스에 의해, 시스템이 브로드캐스터 디바이스로부터 라이브 비디오 스트림을 수신하는 동안 브로드캐스터 디바이스의 그래픽 사용자 인터페이스 내에서 라이브 비디오 스트림 상에 오버레이된 그래픽 요소 내에서, 프리젠테이션을 위해 비디오 클립을 브로드캐스터 디바이스로 송신하는 것을 포함한다.
동작(710) 내지 동작(740) 외에, 몇몇 실시예들에서, 방법(700)은 시스템이 브로드캐스터 디바이스로부터 라이브 비디오 스트림을 수신하는 동안 그래픽 사용자 인터페이스의 에지를 향해 플로팅 모션으로 계속해서 움직이도록 그래픽 요소에 지시하는 것을 추가로 포함한다.
부가적으로, 몇몇 실시예들에서, 방법(700)은 라이브 비디오 스트림에 대한 반응들의 비디오 클립들을 캡처하기 위해 복수의 뷰어 디바이스들 상에서 반응-비디오 요소를 활성화하는 것을 추가로 포함한다. 유사하게, 몇몇 실시예들에서, 방법(700)은 복수의 뷰어 디바이스들 중 하나 이상에서, 라이브 비디오 스트림에 대한 반응들의 비디오 클립들을 캡처하기 위해 반응-비디오 요소를 선택적으로 활성화하는 것을 추가로 포함한다.
몇몇 이러한 실시예들에서, 복수의 뷰어 디바이스들 중 하나 이상에서, 라이브 비디오 스트림에 대한 반응들의 비디오 클립들을 캡처하기 위해 반응-비디오 요소를 선택적으로 활성화하는 것은: 임계 수 미만의 복수의 뷰어들이 라이브 비디오 스트림을 보고 있다고 결정하는 것; 복수의 뷰어 디바이스들 중 하나 이상이 브로드캐스터 디바이스에 대응하는 브로드캐스터 계정의 친구들 또는 팔로어들의 뷰어 계정들에 대응한다고 결정하는 것; 브로드캐스터 계정이 복수의 뷰어들을 위한 라이브 비디오 스트림에 대한 반응들의 비디오 클립들을 부가하기 위해 복수의 뷰어 디바이스들 중 하나 이상에 대응하는 뷰어 계정들에 대한 허가를 승인하였다고 결정하는 것; 또는 복수의 뷰어 디바이스들 중 하나 이상이 임계치를 초과하는 친밀도 계수들을 가진 뷰어 계정들에 대응한다고 결정하는 것으로서, 상기 친밀도 계수들은 브로드캐스터 디바이스에 대응하는 브로드캐스터 계정에 대한 것인, 상기 친밀도 계수들을 가진 뷰어 계정들에 대응한다고 결정하는 것 중 하나 이상에 기초한다.
도 8은 상기 설명된 프로세스들 중 하나 이상을 수행하도록 구성될 수 있는 대표적인 컴퓨팅 디바이스(800)의 블록도를 예시한다. 컴퓨팅 디바이스(800)와 같은 하나 이상의 컴퓨팅 디바이스들이 소셜 네트워킹 시스템(102)을 구현할 수 있다는 것을 이해할 것이다. 도 8에 의해 도시된 바와 같이, 컴퓨팅 디바이스(800)는 프로세서(802), 메모리(804), 저장 디바이스(906), I/O 인터페이스(808), 및 통신 인터페이스(810)를 포함할 수 있으며, 이것은 통신 기반시설(812)에 의해 통신적으로 결합될 수 있다. 대표적인 컴퓨팅 디바이스(800)가 도 8에 도시되지만, 도 8에 예시된 구성요소들은 제한적이도록 의도되지 않는다. 부가적인 또는 대안적인 구성요소들은 다른 실시예들에서 사용될 수 있다. 더욱이, 특정한 실시예들에서, 컴퓨팅 디바이스(800)는 도 8에 도시된 것들보다 적은 구성요소들을 포함할 수 있다. 도 8에 도시된 컴퓨팅 디바이스(800)의 구성요소들이 이제 더욱 상세하게 설명될 것이다.
하나 이상의 실시예들에서, 프로세서(802)는 컴퓨터 프로그램을 이루는 것들과 같은, 명령들을 실행하기 위한 하드웨어를 포함한다. 제한으로서가 아닌 예로서, 명령들을 실행하기 위해, 프로세서(802)는 내부 레지스터, 내부 캐시, 메모리(804), 또는 저장 디바이스(906)로부터 명령들을 검색하며(또는 인출하며) 그것들을 디코딩하고 실행한다. 하나 이상의 실시예들에서, 프로세서(802)는 데이터, 명령들, 또는 어드레스들을 위해 하나 이상의 내부 캐시들을 포함할 수 있다. 제한으로서가 아닌 예로서, 프로세서(802)는 하나 이상의 명령 캐시들, 하나 이상의 데이터 캐시들, 및 하나 이상의 변환 색인 버퍼들("TLB들")을 포함할 수 있다. 명령 캐시들에서의 명령들은 메모리(804) 또는 저장 디바이스(906)에서의 명령들의 사본들일 수 있다.
메모리(804)는 프로세서(들)에 의한 실행을 위한 데이터, 메타데이터, 및 프로그램들을 저장하기 위해 사용될 수 있다. 메모리(804)는 랜덤 액세스 메모리("RAM"), 판독 전용 메모리("ROM"), 고체 상태 디스크("SSD"), 플래시, 상 변화 메모리("PCM"), 또는 다른 유형들의 데이터 저장 장치와 같은, 휘발성 및 비-휘발성 메모리들 중 하나 이상을 포함할 수 있다. 메모리(804)는 내부 또는 분산형 메모리일 수 있다.
저장 디바이스(906)는 데이터 또는 명령들을 저장하기 위한 저장 장치를 포함한다. 제한으로서가 아닌 예로서, 저장 디바이스(906)는 상기 설명된 비-일시적 저장 매체를 포함할 수 있다. 저장 디바이스(906)는 하드 디스크 드라이브("HDD"), 플래시 메모리, 광학 디스크, 자기-광학 디스크, 자기 테이프, 또는 범용 직렬 버스("USB") 드라이브 또는 이것들 중 둘 이상의 조합을 포함할 수 있다. 저장 디바이스(906)는 적절한 경우, 착탈 가능한 또는 착탈 가능하지 않은(또는 고정된) 미디어를 포함할 수 있다. 저장 디바이스(906)는 컴퓨팅 디바이스(800)의 내부 또는 외부에 있을 수 있다. 하나 이상의 실시예들에서, 저장 디바이스(906)는 비-휘발성, 고체-상태 메모리이다. 다른 실시예들에서, 저장 디바이스(906)는 판독-전용 메모리("ROM")를 포함한다. 적절한 경우, 이러한 ROM은 마스크 프로그램된 ROM, 프로그램 가능한 ROM("PROM"), 삭제 가능한 PROM("EPROM"), 전기적으로 삭제 가능한 PROM("EEPROM"), 전기적으로 변경 가능한 ROM("EAROM"), 또는 플래시 메모리 또는 이들 중 둘 이상의 조합일 수 있다.
I/O 인터페이스(808)는 사용자로 하여금 컴퓨팅 디바이스(800)로 입력을 제공하고, 그로부터 출력을 수신하며, 그 외 그것으로 데이터를 전달하며 그로부터 데이터를 수신하도록 허용한다. I/O 인터페이스(808)는 마우스, 키패드 또는 키보드, 터치스크린, 카메라, 광학 스캐너, 네트워크 인터페이스, 모뎀, 다른 알려진 I/O 디바이스들, 또는 이러한 I/O 인터페이스들의 조합을 포함할 수 있다. I/O 인터페이스(808)는 이에 제한되지 않지만, 그래픽 엔진, 디스플레이(예로서, 디스플레이 스크린), 하나 이상의 출력 드라이버들(예로서, 디스플레이 드라이버들), 하나 이상의 오디오 스피커들, 및 하나 이상의 오디오 드라이버들을 포함하여, 사용자에게 출력을 제공하기 위한 하나 이상의 디바이스들을 포함할 수 있다. 특정한 실시예들에서, I/O 인터페이스(808)는 사용자로의 프리젠테이션을 위해 그래픽 데이터를 디스플레이에 제공하도록 구성된다. 그래픽 데이터는 특정한 구현을 제공할 수 있으므로 하나 이상의 그래픽 사용자 인터페이스들 및/또는 임의의 다른 그래픽 콘텐트를 나타낼 수 있다.
통신 인터페이스(810)는 하드웨어, 소프트웨어, 또는 양쪽 모두를 포함할 수 있다. 어떤 경우에도, 통신 인터페이스(810)는 컴퓨팅 디바이스(800)와 하나 이상의 다른 컴퓨팅 디바이스들 또는 네트워크들 사이에서 통신(예를 들면, 패킷-기반 통신과 같은)을 위한 하나 이상의 인터페이스들을 제공할 수 있다. 제한으로서가 아닌 예로서, 통신 인터페이스(810)는 이더넷 또는 다른 유선-기반 네트워크와 통신하기 위한 네트워크 인터페이스 제어기("NIC") 또는 네트워크 어댑터 또는 WI-FI와 같은, 무선 네트워크와 통신하기 위한 무선 NIC("WNIC") 또는 무선 어댑터를 포함할 수 있다.
부가적으로, 또는 대안적으로, 통신 인터페이스(810)는 애드 혹 네트워크, 개인 영역 네트워크("PAN"), 근거리 네트워크("LAN"), 광역 네트워크("WAN"), 대도시 영역 네트워크("MAN"), 또는 인터넷의 하나 이상의 부분들 또는 이들 중 둘 이상의 조합과의 통신들을 가능하게 할 수 있다. 이들 네트워크들 중 하나 이상의 하나 이상의 부분들은 유선 또는 무선일 수 있다. 예로서, 통신 인터페이스(810)는 무선 PAN("WPAN")(예를 들면, BLUETOOTH WPAN과 같은), WI-FI 네트워크, WI-MAX 네트워크, 휴대 전화 네트워크(예를 들면, 이동 통신을 위한 전역적 시스템("GSM") 네트워크와 같은), 또는 다른 적절한 무선 네트워크 또는 그것의 조합과의 통신들을 가능하게 할 수 있다.
부가적으로, 통신 인터페이스(810)는 다양한 통신 프로토콜들과의 통신들을 가능하게 할 수 있다. 사용될 수 있는 통신 프로토콜들의 예들은, 이에 제한되지 않지만, 데이터 송신 미디어, 통신 디바이스들, 송신 제어 프로토콜("TCP"), 인터넷 프로토콜("IP"), 파일 전송 프로토콜("FTP"), 텔넷, 하이퍼텍스트 전송 프로토콜("HTTP"), 하이퍼텍스트 전송 프로토콜 보안("HTTPS"), 세션 초기화 프로토콜("SIP"), 단순 객체 액세스 프로토콜("SOAP"), 확장 가능한 마크-업 언어("XML") 및 그것의 변형들, 단순 메일 전송 프로토콜("SMTP"), 실시간 수송 프로토콜("RTP"), 사용자 데이터그램 프로토콜("UDP"), 이동 통신들을 위한 전역적 시스템("GSM") 기술들, 코드 분할 다중 액세스("CDMA") 기술들, 시분할 다중 액세스("TDMA") 기술들, 단문 메시지 서비스("SMS"), 멀티미디어 메시지 서비스("MMS"), 라디오 주파수("RF") 시그널링 기술들, 장기 진화("LTE") 기술들, 무선 통신 기술들, 대역-내 및 대역-외 시그널링 기술들, 및 다른 적절한 통신 네트워크들 및 기술들을 포함한다.
통신 기반시설(812)은 서로에 컴퓨팅 디바이스(800)의 구성요소들을 결합하는 하드웨어, 소프트웨어, 또는 양쪽 모두를 포함할 수 있다. 제한으로서가 아닌 예로서, 통신 기반시설(812)은 가속 그래픽 포트("AGP") 또는 다른 그래픽 버스, 강화된 산업 표준 아키텍처("EISA") 버스, 프론트-사이드 버스("FSB"), HYPERTRANSPORT("HT") 상호접속, 산업 표준 아키텍처("ISA") 버스, INFINIBAND 상호접속, 로우-핀-카운트("LPC") 버스, 메모리 버스, 마이크로 채널 아키텍처("MCA") 버스, 주변 구성요소 상호접속("PCI") 버스, PCI-고속("PCIe") 버스, 직렬 고급 기술 결합("SATA") 버스, 비디오 전자 표준 위원회 로컬("VLB") 버스, 또는 또 다른 적절한 버스 또는 그것의 조합을 포함할 수 있다.
소셜-네트워킹 시스템은 그 사용자들(개인들 또는 조직들과 같은)이 시스템과 및 서로 상호 작용할 수 있게 할 수 있다. 소셜-네트워킹 시스템은, 사용자로부터의 입력을 갖고, 사용자와 연관된 사용자 프로필을 생성하고 이를 소셜-네트워킹 시스템에 저장할 수 있다. 사용자 프로필은 인구 통계학적 정보, 통신-채널 정보, 및 사용자의 개인적 관심들에 대한 정보를 포함할 수 있다. 소셜-네트워킹 시스템은 또한, 사용자로부터의 입력을 갖고, 소셜-네트워킹 시스템의 다른 사용자들과 사용자의 관계들의 기록을 생성하고 이를 저장할 뿐만 아니라, 사용자들 사이에서 또는 그 중에서 사회적 상호 작용을 가능하게 하기 위한 서비스들(예로서, 벽 포스트들, 사진-공유, 온-라인 캘린더들 및 이벤트 조직, 메시징, 게임들, 또는 광고들)을 제공할 수 있다. 또한, 소셜-네트워킹 시스템은 사용자들이 사진들 및 다른 멀티미디어 콘텐트 아이템들을 사용자의 프로필 페이지(통상적으로 "벽 포스트들" 또는 "타임라인 포스트들"로서 알려진)에 또는 사진 앨범에 게시하도록 허용할 수 있으며, 양쪽 모두는 사용자의 구성된 프라이버시 설정들에 의존하여 소셜-네트워킹 시스템의 다른 사용자들에게 액세스 가능할 수 있다.
도 9는 소셜-네트워킹 시스템의 예시적인 네트워크 환경(900)을 예시한다. 네트워크 환경(900)은 클라이언트 디바이스(906), 소셜 네트워킹 시스템(902), 및 네트워크(904)에 의해 서로 연결된 제3자 시스템(908)을 포함한다. 도 9는 클라이언트 디바이스(906), 소셜 네트워킹 시스템(902), 제3자 시스템(908), 및 네트워크(904)의 특정한 배열을 예시하지만, 본 개시는 클라이언트 디바이스(906), 소셜 네트워킹 시스템(902), 제3자 시스템(908), 및 네트워크(904)의 임의의 적절한 배열을 고려한다. 제한으로서가 아닌 예로서, 클라이언트 디바이스(906), 소셜 네트워킹 시스템(902), 및 제3자 시스템(908) 중 둘 이상은 서로 직접 연결되어, 네트워크(904)를 바이패스할 수 있다. 또 다른 예로서, 클라이언트 디바이스(906), 소셜 네트워킹 시스템(902), 및 제3자 시스템(908) 중 둘 이상은 전체적으로 또는 부분적으로 서로 물리적으로 또는 논리적으로 같은 장소에 배치될 수 있다. 게다가, 도 9는 특정한 수의 클라이언트 디바이스들(906), 소셜 네트워킹 시스템들(902), 제3자 시스템들(908), 및 네트워크들(904)을 예시하지만, 본 개시는 임의의 적절한 수의 클라이언트 디바이스들(906), 소셜 네트워킹 시스템들(902), 제3자 시스템들(908), 및 네트워크들(904)을 고려한다. 제한으로서가 아닌 예로서, 네트워크 환경(900)은 다수의 클라이언트 디바이스(906), 소셜 네트워킹 시스템들(902), 제3자 시스템들(908), 및 네트워크들(904)을 포함할 수 있다.
본 개시는 임의의 적절한 네트워크(904)를 고려한다. 제한으로서가 아닌 예로서, 네트워크(904)의 하나 이상의 부분들은 애드 혹 네트워크, 인트라넷, 엑스트라넷, 가상 사설 네트워크("VPN"), 근거리 네트워크("LAN"), 무선 LAN("WLAN"), 광역 네트워크("WAN"), 무선 WAN("WWAN"), 대도시 영역 네트워크("MAN"), 인터넷의 일 부분, 공중 스위칭 전화 네트워크("PSTN")의 일 부분, 휴대 전화 네트워크, 또는 이들 중 둘 이상의 조합을 포함할 수 있다. 네트워크(904)는 하나 이상의 네트워크들(904)을 포함할 수 있다.
링크들은 클라이언트 디바이스(906), 소셜 네트워킹 시스템(902), 및 제3자 시스템(908)을 통신 네트워크(904)에 또는 서로에 연결할 수 있다. 본 개시는 임의의 적절한 링크들을 고려한다. 특정한 실시예들에서, 하나 이상의 링크들은 하나 이상의 와이어라인(예를 들면, 디지털 가입자 회선("DSL") 또는 케이블 서비스 인터페이스 규격을 통한 데이터("DOCSIS")와 같은), 무선(예를 들면, Wi-Fi 또는 마이크로파 액세스를 위한 월드와이드 상호 운용성("WiMAX")과 같은), 또는 광학(예를 들면, 동기식 광학 네트워크("SONET") 또는 동기식 디지털 계층("SDH")과 같은) 링크들을 포함한다. 특정한 실시예들에서, 하나 이상의 링크들은 각각 애드 혹 네트워크, 인트라넷, 엑스트라넷, VPN, LAN, WLAN, WAN, WWAN, MAN, 인터넷의 일 부분, PSTN의 일 부분, 셀룰러 기술-기반 네트워크, 위상 통신 기술-기반 네트워크, 또 다른 링크, 또는 둘 이상의 이러한 링크들의 조합을 포함한다. 링크들은 반드시 네트워크 환경(900) 전체에 걸쳐 동일할 필요는 없다. 하나 이상의 제 1 링크들은 하나 이상의 측면들에서 하나 이상의 제 2 링크들과 상이할 수 있다.
특정한 실시예들에서, 클라이언트 디바이스(906)는 하드웨어, 소프트웨어, 또는 내장된 로직 구성요소들 또는 둘 이상의 이러한 구성요소들의 조합을 포함하며 클라이언트 디바이스(906)에 의해 구현되거나 또는 지원된 적절한 기능들을 실행할 수 있는 전자 디바이스일 수 있다. 제한으로서가 아닌 예로서, 클라이언트 디바이스(906)는 도 8에 관하여 상기 논의된 컴퓨팅 디바이스들 중 임의의 것을 포함할 수 있다. 클라이언트 디바이스(906)는 클라이언트 디바이스(906)에서의 네트워크 사용자가 네트워크(904)에 액세스할 수 있게 한다. 클라이언트 디바이스(906)는 그것의 사용자가 다른 클라이언트 디바이스들(906)에서의 다른 사용자들과 통신할 수 있게 할 수 있다.
특정한 실시예들에서, 클라이언트 디바이스(906)는 MICROSOFT INTERNET EXPLORER, GOOGLE CHROME 또는 MOZILLA FIREFOX와 같은, 웹 브라우저를 포함할 수 있으며, TOOLBAR 또는 YAHOO TOOLBAR와 같은, 하나 이상의 애드-온들, 플러그-인들, 또는 다른 확장부들을 가질 수 있다. 클라이언트 디바이스(906)에서의 사용자는 웹 브라우저를 특정한 서버(서버, 또는 제3자 시스템(908)과 연관된 서버와 같은)로 향하게 하는 고유 리소스 로케이터("URL") 또는 다른 어드레스를 입력할 수 있으며, 웹 브라우저는 하이퍼 텍스트 전송 프로토콜("HTTP") 요청을 생성하고 HTTP 요청을 서버로 전달할 수 있다. 서버는 HTTP 요청을 수용하며 HTTP 요청에 응답하여 하나 이상의 하이퍼 텍스트 마크업 언어("HTML") 파일들을 클라이언트 디바이스(906)로 전달할 수 있다. 클라이언트 디바이스(906)는 사용자로의 프리젠테이션을 위해 서버로부터의 HTML 파일들에 기초하여 웹페이지를 렌더링할 수 있다. 본 개시는 임의의 적절한 웹페이지 파일들을 고려한다. 제한으로서가 아닌 예로서, 웹페이지들은 특정한 요구들에 따라, HTML 파일들, 확장 가능한 하이퍼 텍스트 마크업 언어("XHTML") 파일들, 또는 확장 가능한 마크업 언어("XML") 파일들로부터 렌더링할 수 있다. 이러한 페이지들은 또한, 예를 들면 및 제한 없이, JAVASCRIPT, JAVA, MICROSOFT SILVERLIGHT, AJAX(비동기식 JAVASCRIPT 및 XML)과 같은 마크업 언어 및 스트립트들의 조합들 등으로 기록된 것들과 같은 스크립트들을 실행할 수 있다. 여기에서, 웹페이지에 대한 참조는 적절한 경우, 하나 이상의 대응하는 웹페이지 파일들(브라우저는 웹페이지를 렌더링하기 위해 사용할 수 있다)을 포함하며, 그 역 또한 마찬가지이다.
특정한 실시예들에서, 소셜 네트워킹 시스템(902)은 온라인 소셜 네트워크를 호스팅할 수 있는 네트워크-어드레싱 가능한 컴퓨팅 시스템일 수 있다. 소셜 네트워킹 시스템(902)은 예를 들면, 사용자-프로필 데이터, 개념-프로필 데이터, 소셜-그래프 정보, 또는 온라인 소셜 네트워크에 관련된 다른 적절한 데이터와 같은, 소셜-네트워킹 데이터를 생성하고, 저장하고, 수신하며, 전송할 수 있다. 소셜 네트워킹 시스템(902)은 직접 또는 네트워크(904)를 통해 네트워크 환경(900)의 다른 구성요소들에 의해 액세스될 수 있다. 특정한 실시예들에서, 소셜 네트워킹 시스템(902)은 하나 이상의 서버들을 포함할 수 있다. 각각의 서버는 다수의 컴퓨터들 또는 다수의 데이터센터들을 스패닝하는 통합 서버 또는 분산형 서버일 수 있다. 서버들은, 예를 들면 및 제한 없이, 웹 서버, 뉴스 서버, 메일 서버, 메시지 서버, 광고 서버, 파일 서버, 애플리케이션 서버, 교환 서버, 데이터베이스 서버, 프록시 서버, 여기에서 설명된 기능들 또는 프로세스들을 수행하는데 적절한 또 다른 서버, 또는 그것의 임의의 조합과 같은, 다양한 유형들일 수 있다. 특정한 실시예들에서, 각각의 서버는 서버에 의해 구현되거나 또는 지원된 적절한 기능들을 실행하기 위해 하드웨어, 소프트웨어, 또는 내장된 로직 구성요소들 또는 둘 이상의 이러한 구성요소들의 조합을 포함할 수 있다. 특정한 실시예들에서, 소셜 네트워킹 시스템(902)은 하나 이상의 데이터 저장소들을 포함할 수 있다. 데이터 저장소들은 다양한 유형들의 정보를 저장하기 위해 사용될 수 있다. 특정한 실시예들에서, 데이터 저장소들에 저장된 정보는 특정 데이터 구조들에 따라 조직될 수 있다. 특정한 실시예들에서, 각각의 데이터 저장소는 관계형, 원주형, 상관, 또는 다른 적절한 데이터베이스일 수 있다. 본 개시는 특정한 유형들의 데이터베이스들을 설명하거나 또는 예시하지만, 본 개시는 임의의 적절한 유형들의 데이터베이스들을 고려한다. 특정한 실시예들은 클라이언트 디바이스(906), 소셜 네트워킹 시스템(902), 또는 제3자 시스템(908)이 데이터 저장소에 저장된 정보를 관리하고, 검색하고, 수정하고, 부가하거나, 또는 삭제할 수 있게 하는 인터페이스들을 제공할 수 있다.
특정한 실시예들에서, 소셜 네트워킹 시스템(902)은 하나 이상의 데이터 저장소들에 하나 이상의 소셜 그래프들을 저장할 수 있다. 특정한 실시예들에서, 소셜 그래프는 다수의 노드들 - 다수의 사용자 노드들(각각은 특정한 사용자에 대응한다) 또는 다수의 개념 노드들(각각은 특정한 개념에 대응한다)을 포함할 수 있는 - 및 상기 노드들을 연결하는 다수의 에지들을 포함할 수 있다. 소셜 네트워킹 시스템(902)은 다른 사용자들과 통신하고 상호 작용하기 위한 능력을 온라인 소셜 네트워크의 사용자들에게 제공할 수 있다. 특정한 실시예들에서, 사용자들은 소셜 네트워킹 시스템(902)을 통해 온라인 소셜 네트워크에 참여하며 그 후 그들이 연결되기를 원하는 소셜 네트워킹 시스템(902)의 다수의 다른 사용자들에게 연결들(예로서, 관계들)을 부가할 수 있다. 여기에서, 용어 "친구"는 소셜 네트워킹 시스템(902)을 통해 사용자가 연결, 연관, 또는 관계를 형성하고 있는 소셜 네트워킹 시스템(902)의 임의의 다른 사용자를 나타낼 수 있다.
특정한 실시예들에서, 소셜 네트워킹 시스템(902)은 소셜 네트워킹 시스템(902)에 의해 지원된, 다양한 유형들의 아이템들 또는 오브젝트들에 대한 동작들을 취하기 위한 능력을 사용자들에게 제공할 수 있다. 제한으로서가 아닌 예로서, 아이템들 및 오브젝트들은 소셜 네트워킹 시스템(902)의 사용자들이 속하는 그룹들 또는 소셜 네트워크들, 사용자가 관심 있어 할 수 있는 이벤트들 또는 캘린더 엔트리들, 사용자가 사용할 수 있는 컴퓨터-기반 애플리케이션들, 사용자들이 서비스를 통해 아이템들을 구매하거나 또는 팔도록 허용하는 트랜잭션들, 사용자가 수행할 수 있는 광고들과의 상호작용들, 또는 다른 적절한 아이템들 또는 오브젝트들을 포함할 수 있다. 사용자는 소셜 네트워킹 시스템(902)에서 또는 소셜 네트워킹 시스템(902)으로부터 분리되고 네트워크(904)를 통해 소셜 네트워킹 시스템(902)에 결합되는, 제3자 시스템(908)의 외부 시스템에 의해 표현될 수 있는 어떤 것과 상호작용할 수 있다.
특정한 실시예들에서, 소셜 네트워킹 시스템(902)은 다양한 엔티티들을 연결시킬 수 있을 것이다. 제한으로서가 아닌 예로서, 소셜 네트워킹 시스템(902)은 사용자들이 서로 상호작용할 뿐만 아니라 제3자 시스템들(908) 또는 다른 엔티티들로부터 콘텐트를 수신하거나, 또는 사용자들로 하여금 애플리케이션 프로그래밍 인터페이스들("API") 또는 다른 통신 채널들을 통해 이들 엔티티들과 상호작용하도록 허용할 수 있게 할 것이다.
특정한 실시예들에서, 제3자 시스템(909)은 하나 이상의 유형들의 서버들, 하나 이상의 데이터 저장소들, 이에 제한되지 않지만 API들을 포함한, 하나 이상의 인터페이스들, 하나 이상의 웹 서비스들, 하나 이상의 콘텐트 소스들, 하나 이상의 네트워크들, 또는 예로서, 서버들이 통신할 수 있는, 임의의 다른 적절한 구성요소들을 포함할 수 있다. 제3자 시스템(908)은 소셜 네트워킹 시스템(902)을 동작시키는 엔티티와 상이한 엔티티에 의해 동작될 수 있다. 특정한 실시예들에서, 그러나, 소셜 네트워킹 시스템(902) 및 제3자 시스템들(908)은 소셜 네트워킹 시스템(902) 또는 제3자 시스템들(908)의 사용자들에게 소셜-네트워킹 서비스들을 제공하기 위해 서로 함께 동작할 수 있다. 이러한 의미에서, 소셜 네트워킹 시스템(902)은 플랫폼, 또는 백본을 제공할 수 있으며, 이것은 제3자 시스템들(908)과 같은, 다른 시스템들이 인터넷에 걸쳐 소셜-네트워킹 서비스들 및 기능을 제공하기 위해 사용할 수 있다.
특정한 실시예들에서, 제3자 시스템(908)은 제3자 콘텐트 오브젝트 제공자를 포함할 수 있다. 제3자 콘텐트 오브젝트 제공자는 클라이언트 디바이스(906)에 전달될 수 있는, 콘텐트 오브젝트들의 하나 이상의 소스들을 포함할 수 있다. 제한으로서가 아닌 예로서, 콘텐트 오브젝트들은 예를 들면, 영화 상영 시간들, 영화 리뷰들, 식당 리뷰들, 식당 메뉴들, 제품 정보 및 리뷰들, 또는 다른 적절한 정보와 같은, 사용자가 관심 있는 것들 또는 활동들에 관한 정보를 포함할 수 있다. 제한으로서가 아닌 또 다른 예로서, 콘텐트 오브젝트들은 쿠폰들, 할인 티켓들, 상품권들, 또는 다른 적절한 장려 오브젝트들과 같은, 장려 콘텐트 오브젝트들을 포함할 수 있다.
특정한 실시예들에서, 소셜 네트워킹 시스템(902)은 또한 소셜 네트워킹 시스템(902)과 사용자의 상호작용들을 강화할 수 있는, 사용자-생성 콘텐트 오브젝트들을 포함한다. 사용자-생성 콘텐트는 사용자가 소셜 네트워킹 시스템(902)에 부가하고, 업로드하고, 전송하거나, 또는 "게시"할 수 있는 어떤 것을 포함할 수 있다. 제한으로서가 아닌 예로서, 사용자는 클라이언트 디바이스(906)로부터 소셜 네트워킹 시스템(902)으로 포스트들을 전달한다. 포스트들은 상태 업데이트들 또는 다른 텍스트 데이터, 위치 정보, 사진들, 비디오들, 링크들, 음악 또는 다른 유사한 데이터 또는 미디어와 같은 데이터를 포함할 수 있다. 콘텐트는 또한 뉴스피드 또는 스트림과 같은 "통신 채널"을 통해 제3자에 의해 소셜 네트워킹 시스템(902)에 부가될 수 있다.
특정한 실시예들에서, 소셜 네트워킹 시스템(902)은 다양한 서버들, 서브-시스템들, 프로그램들, 모듈들, 로그들, 및 데이터 저장소들을 포함할 수 있다. 특정한 실시예들에서, 소셜 네트워킹 시스템(902)은 다음 중 하나 이상을 포함할 수 있다: 웹 서버, 동작 로거, API-요청 서버, 적합도-및-랭킹 엔진, 콘텐트-오브젝트 분류기, 통지 제어기, 동작 로그, 제3자-콘텐트-오브젝트-노출 로그, 추론 모듈, 권한/프라이버시 서버, 탐색 모듈, 광고-타겟팅 모듈, 사용자-인터페이스 모듈, 사용자-프로필 저장소, 연결 저장소, 제3자 콘텐트 저장소, 또는 위치 저장소. 소셜 네트워킹 시스템(902)은 또한 네트워크 인터페이스들과 같은 적절한 구성요소들, 보안 메커니즘들, 로드 밸런서들, 장애 극복 서버들, 관리-및-네트워크-동작들 콘솔들, 다른 적절한 구성요소들, 또는 그것의 임의의 적절한 조합을 포함할 수 있다. 특정한 실시예들에서, 소셜 네트워킹 시스템(902)은 사용자 프로필들을 저장하기 위한 하나 이상의 사용자-프로필 저장소들을 포함할 수 있다. 사용자 프로필은, 예를 들면, 전기적 정보, 인구 통계학적 정보, 행동적 정보, 사회적 정보, 또는 경력, 교육 이력, 취미들 또는 선호들, 관심들, 친밀도들, 또는 위치와 같은 다른 유형들의 기술적 정보를 포함할 수 있다. 관심 정보는 하나 이상의 카테고리들에 관련된 관심들을 포함할 수 있다. 카테고리들은 일반적이거나 또는 특정적일 수 있다. 제한으로서가 아닌 예로서, 사용자가 신발의 상표에 대한 기사를 "좋아한다"면, 카테고리는 상표, 또는 "신발" 또는 "의류"의 일반적인 카테고리일 수 있다. 연결 저장소는 사용자들에 대한 연결 정보를 저장하기 위해 사용될 수 있다. 연결 정보는 유사하거나 또는 공통 경력, 그룹 멤버들, 취미들, 교육 이력을 갖거나, 또는 임의의 방식으로 관련되거나 또는 공통 속성들을 공유하는 사용자들을 나타낼 수 있다. 연결 정보는 또한 상이한 사용자들 및 콘텐트(내부 및 외부 양쪽 모두) 사이에 사용자-정의 연결들을 포함할 수 있다. 웹 서버는 네트워크(904)를 통해 하나 이상의 클라이언트 디바이스들(906) 또는 하나 이상의 제3자 시스템(908)에 소셜 네트워킹 시스템(902)을 연결하기 위해 사용될 수 있다. 웹 서버는 소셜 네트워킹 시스템(902) 및 하나 이상의 클라이언트 디바이스들(906) 사이에서 메시지들을 수신하고 라우팅하기 위한 메일 서버 또는 다른 메시징 기능을 포함할 수 있다. API-요청 서버는 제3자 시스템(908)으로 하여금 하나 이상의 API들을 호출함으로써 소셜 네트워킹 시스템(902)으로부터의 정보에 액세스하도록 허용할 수 있다. 동작 로거는 소셜 네트워킹 시스템(902)을 온 또는 오프한 사용자의 동작들에 대한 통신들을 웹 서버로부터 수신하기 위해 사용될 수 있다. 동작 로그와 함께, 제3자-콘텐트-오브젝트 로그는 제3자-콘텐트 오브젝트들로의 사용자 노출들에 대해 유지될 수 있다. 통지 제어기는 콘텐트 오브젝트들에 관한 정보를 클라이언트 디바이스(906)로 제공할 수 있다. 정보는 통지들로서 클라이언트 디바이스(906)로 푸시될 수 있거나, 또는 정보는 클라이언트 디바이스(906)로부터 수신된 요청에 응답하여 클라이언트 디바이스(906)로부터 풀링될 수 있다. 권한 서버들은 소셜 네트워킹 시스템(902)의 사용자들의 하나 이상의 프라이버시 설정들을 시행하기 위해 사용될 수 있다. 사용자의 프라이버시 설정은 사용자와 연관된 특정한 정보가 어떻게 공유될 수 있는지를 결정한다. 권한 서버는 사용자들로 하여금, 예를 들면, 적절한 프라이버시 설정들을 설정함으로써와 같은, 소셜 네트워킹 시스템(902)에 의해 로그되거나 또는 다른 시스템들(예로서, 제3자 시스템(908))과 공유된 그것들의 동작들에 참여하거나 또는 그로부터 탈퇴하도록 허용할 수 있다. 제3자-콘텐트-오브젝트 저장소들은 제3자 시스템(908)과 같은, 제3자들로부터 수신된 콘텐트 오브젝트들을 저장하기 위해 사용될 수 있다. 위치 저장소들은 사용자들과 연관된 클라이언트 디바이스들(906)로부터 수신된 위치 정보를 저장하기 위해 사용될 수 있다. 광고-가격 책정 모듈들은 통지들의 형태로, 관련된 광고들을 사용자에게 제공하기 위해, 사회적 정보, 현재 시간, 위치 정보, 또는 다른 적절한 정보를 결합할 수 있다.
도 10은 예시적인 소셜 그래프(1000)를 예시한다. 특정한 실시예들에서, 소셜 네트워킹 시스템(902)은 하나 이상의 데이터 저장소들에 하나 이상의 소셜 그래프들(1000)을 저장할 수 있다. 특정한 실시예들에서, 소셜 그래프(1000)는 다수의 노드들 - 다수의 사용자 노드들(1002) 또는 다수의 개념 노드들(1004)을 포함할 수 있는 - 및 상기 노드들을 연결한 다수의 에지들(1006)을 포함할 수 있다. 도 10에 예시된 예시적인 소셜 그래프(1000)는, 2-차원 시각적 맵 표현으로, 교육적 목적들로, 도시된다. 특정한 실시예들에서, 소셜 네트워킹 시스템(902), 클라이언트 디바이스(906), 또는 제3자 시스템(908)은 소셜 그래프(1000) 및 적절한 애플리케이션들에 대한 관련된 소셜-그래프 정보를 액세스할 수 있다. 소셜 그래프(1000)의 노드들 및 에지들은 데이터 오브젝트들로서, 예를 들면, 데이터 저장소(소셜-그래프 데이터베이스와 같은)에 저장될 수 있다. 이러한 데이터 저장소는 소셜 그래프(1000)의 노드들 또는 에지들의 하나 이상의 탐색 가능한 또는 질의 가능한 인덱스들을 포함할 수 있다.
특정한 실시예들에서, 사용자 노드(1002)는 소셜 네트워킹 시스템(902)의 사용자에 대응할 수 있다. 제한으로서가 아닌 예로서, 사용자는 소셜 네트워킹 시스템(902)과 또는 그것을 통해 상호작용하거나 또는 통신하는 개개인(인간 사용자), 엔티티(예로서, 기업, 사업, 또는 제3자 애플리케이션), 또는 그룹(예로서, 개개인들 또는 엔티티들의)일 수 있다. 특정한 실시예들에서, 사용자가 계정을 위해 소셜 네트워킹 시스템(902)에 등록할 때, 소셜 네트워킹 시스템(902)은 사용자에 대응하는 사용자 노드(1002)를 생성하며, 사용자 노드(1002)를 하나 이상의 데이터 저장소들에 저장할 수 있다. 여기에서 설명된 사용자들 및 사용자 노드들(1002)은, 적절한 경우, 등록된 사용자들 및 등록된 사용자들과 연관된 사용자 노드들(1002)을 나타낸다. 또한, 또는 대안으로서, 여기에서 설명된 사용자들 및 사용자 노드들(1002)은, 적절한 경우, 소셜 네트워킹 시스템(902)에 등록되지 않은 사용자들을 나타낼 수 있다. 특정한 실시예들에서, 사용자 노드(1002)는 사용자에 의해 제공된 정보 또는 소셜 네트워킹 시스템(902)을 포함하여, 다양한 시스템들에 의해 수집된 정보와 연관될 수 있다. 제한으로서가 아닌 예로서, 사용자는 그 또는 그녀의 이름, 프로필 사진, 연락처 정보, 생일, 성별, 결혼 상태, 가족 상태, 직장, 교육 배경, 선호들, 관심들, 또는 다른 인구 통계학적 정보를 제공할 수 있다. 소셜 그래프의 각각의 사용자 노드는 대응하는 웹 페이지(통상적으로 프로필 페이지로서 알려진)를 가질 수 있다. 사용자 이름을 포함한 요청에 응답하여, 소셜-네트워킹 시스템은 사용자 이름에 대응하는 사용자 노드를 액세스하며, 이름, 프로필 사진, 및 사용자와 연관된 다른 정보를 포함한 프로필 페이지를 구성할 수 있다. 제 1 사용자의 프로필 페이지는 제 1 사용자에 의한 하나 이상의 프라이버시 설정들 및 제 1 사용자와 제 2 사용자와의 관계에 기초하여 제 1 사용자의 정보 모두 또는 일 부분을 제 2 사용자에게 디스플레이할 수 있다.
특정한 실시예들에서, 개념 노드(1004)는 개념에 대응할 수 있다. 제한으로서가 아닌 예로서, 개념은 장소(예를 들면, 영화관, 식당, 랜드마크, 또는 도시와 같은); 웹사이트(예를 들면, 소셜 네트워킹 시스템(902)과 연관된 웹사이트 또는 웹-애플리케이션 서버와 연관된 제3자 웹사이트와 같은); 엔티티(예를 들면, 사람, 사업, 그룹, 스포츠 팀, 또는 유명 인사와 같은); 소셜 네트워킹 시스템(902) 내에 또는 웹-애플리케이션 서버와 같은 외부 서버상에 위치될 수 있는 리소스(예를 들면, 오디오 파일, 비디오 파일, 디지털 사진, 텍스트 파일, 구조화된 문서, 또는 애플리케이션과 같은); 물적 또는 지적 재산권(예를 들면, 조각품, 그림, 영화, 게임, 노래, 아이디어, 사진, 또는 논문과 같은); 게임; 활동; 아이디어 또는 이론; 또 다른 적절한 개념; 또는 둘 이상의 이러한 개념들에 대응할 수 있다. 개념 노드(1004)는 사용자에 의해 제공된 개념의 정보 또는 소셜 네트워킹 시스템(902)을 포함한, 다양한 시스템들에 의해 수집된 정보와 연관될 수 있다. 제한으로서가 아닌 예로서, 개념의 정보는 이름 또는 타이틀; 하나 이상의 이미지들(예로서, 책의 커버 페이지의 이미지); 위치(예로서, 어드레스 또는 지리적 위치); 웹사이트(URL과 연관될 수 있는); 연락처 정보(예로서, 전화 번호 또는 이메일 어드레스); 다른 적절한 개념 정보; 또는 이러한 정보의 임의의 적절한 조합을 포함할 수 있다. 특정한 실시예들에서, 개념 노드(1004)는 개념 노드(1004)와 연관된 정보에 대응하는 하나 이상의 데이터 오브젝트들과 연관될 수 있다. 특정한 실시예들에서, 개념 노드(1004)는 하나 이상의 웹페이지들에 대응할 수 있다.
특정한 실시예들에서, 소셜 그래프(1000)에서의 노드는 웹페이지(프로필 페이지"로서 불리울 수 있는)를 표현하거나 또는 그것에 의해 표현될 수 있다. 프로필 페이지들은 소셜 네트워킹 시스템(902)에 의해 호스팅되거나 또는 그것에 액세스 가능할 수 있다. 프로필 페이지들은 또한 제3자 시스템(908)과 연관된 제3자 웹사이트들 상에서 호스팅될 수 있다. 제한으로서가 아닌 예로서, 특정한 외부 웹페이지에 대응하는 프로필 페이지는 특정한 외부 웹페이지일 수 있으며 프로필 페이지는 특정한 개념 노드(1004)에 대응할 수 있다. 프로필 페이지들은 다른 사용자들의 모두 또는 선택된 서브세트에 의해 볼 수 있다. 제한으로서가 아닌 예로서, 사용자 노드(1002)는 대응하는 사용자가 콘텐트를 부가하고, 선언하거나, 또는 그 외 스스로를 표현할 수 있는 대응하는 사용자-프로필 페이지를 가질 수 있다. 제한으로서가 아닌 또 다른 예로서, 개념 노드(1004)는 특히 개념 노드(1004)에 대응하는 개념에 관하여, 하나 이상의 사용자들이 콘텐트를 부가하고, 선언들을 하거나, 또는 스스로를 표현할 수 있는 대응하는 개념-프로필 페이지를 가질 수 있다.
특정한 실시예들에서, 개념 노드(1004)는 제3자 시스템(908)에 의해 호스팅된 제3자 웹페이지 또는 리소스를 나타낼 수 있다. 제3자 웹페이지 또는 리소스는, 다른 요소들 중에서, 동작 또는 활동을 나타내는 콘텐트, 선택 가능한 또는 다른 아이콘, 또는 상호작용할 수 있는 오브젝트(예를 들면, JavaScript, AJAX, 또는 PHP 코드들에 구현될 수 있는)를 포함할 수 있다. 제한으로서가 아닌 예로서, 제3자 웹페이지는 "좋아요", "체크 인", "먹다", "추천하다", 또는 또 다른 적절한 동작 또는 활동과 같은 선택 가능한 아이콘을 포함할 수 있다. 제3자 웹페이지를 보는 사용자는 아이콘들 중 하나(예로서, "먹다")를 선택함으로써 동작을 수행하여, 클라이언트 디바이스(906)로 하여금 사용자의 동작을 나타내는 메시지를 소셜 네트워킹 시스템(902)으로 전송하게 한다. 메시지에 응답하여, 소셜 네트워킹 시스템(902)은 사용자에 대응하는 사용자 노드(1002) 및 제3자 웹페이지 또는 리소스에 대응하는 개념 노드(1004) 사이에 에지(예로서, "먹다" 에지)를 생성하고 에지(1006)를 하나 이상의 데이터 저장소들에 저장할 수 있다.
특정한 실시예들에서, 소셜 그래프(1000)에서 한 쌍의 노드들은 하나 이상의 에지들(1006)에 의해 서로 연결될 수 있다. 한 쌍의 노드들을 연결하는 에지(1006)는 노드들의 쌍 사이에서의 관계를 나타낼 수 있다. 특정한 실시예들에서, 에지(1006)는 한 쌍의 노드들 사이에서의 관계에 대응하는 하나 이상의 데이터 오브젝트들 또는 속성들을 포함하거나 또는 이를 나타낼 수 있다. 제한으로서가 아닌 예로서, 제 1 사용자는 제 2 사용자가 제 1 사용자의 "친구"임을 나타낼 수 있다. 이러한 표시에 응답하여, 소셜 네트워킹 시스템(902)은 "친구 요청"을 제 2 사용자에게 전송할 수 있다. 제 2 사용자가 "친구 요청"을 확인하면, 소셜 네트워킹 시스템(902)은 소셜 그래프(1000)에서 제 2 사용자의 사용자 노드(1002)에 제 1 사용자의 사용자 노드(1002)를 연결하는 에지(1006)를 생성하고 소셜-그래프 정보로서 에지(1006)를 데이터 저장소들 중 하나 이상에 저장할 수 있다. 도 9의 예에서, 소셜 그래프(1000)는 사용자 "A" 및 사용자 "B"의 사용자 노드들(1002) 사이에서의 친구 관계를 나타내는 에지(1006) 및 사용자 "C" 및 사용자 "B"의 사용자 노드들(1002) 사이에서의 친구 관계를 나타내는 에지를 포함한다. 본 개시는 특정한 사용자 노드들(1002)을 연결하는 특정한 속성들을 가진 특정한 에지들(1006)을 설명하거나 또는 예시하지만, 본 개시는 사용자 노드들(1002)을 연결하는 임의의 적절한 속성들을 가진 임의의 적절한 에지들(1006)을 고려한다. 제한으로서가 아닌 예로서, 에지(1006)는 우정, 가족 관계, 사업 또는 직장 관계, 팬 관계, 팔로어 관계, 방문자 관계, 가입자 관계, 상급자/하급자 관계, 상호간 관계, 비-상호간 관계, 또 다른 적절한 유형의 관계, 또는 둘 이상의 이러한 관계들을 나타낼 수 있다. 게다가, 본 개시는 일반적으로 노드들을 연결된 것으로 설명하지만, 본 개시는 또한 사용자들 또는 개념들을 연결된 것으로 설명한다. 여기에서, 연결된 사용자들 또는 개념들에 대한 참조들은, 적절한 경우, 하나 이상의 에지들(1006)에 의해 소셜 그래프(1000)에 연결된 이들 사용자들 또는 개념들에 대응하는 노드들을 나타낸다.
특정한 실시예들에서, 사용자 노드(1002) 및 개념 노드(1004) 사이에서의 에지(1006)는 개념 노드(1004)와 연관된 개념을 향해 사용자 노드(1002)와 연관된 사용자에 의해 수행된 특정한 동작 또는 활동을 나타낼 수 있다. 제한으로서가 아닌 예로서, 도 10에 예시된 바와 같이, 사용자는 개념을 "좋아하고", "참석하고", "재생하고", "청취하고", "요리하고", "근무하거나" 또는 이를 "관람하며", 그 각각은 에지 유형 또는 서브유형에 대응할 수 있다. 개념 노드(1004)에 대응하는 개념-프로필 페이지는, 예를 들면, 선택 가능한 "체크 인" 아이콘(예를 들면, 클릭 가능한 "체크 인" 아이콘과 같은) 또는 선택 가능한 "즐겨찾기에 추가" 아이콘을 포함할 수 있다. 유사하게, 사용자가 이들 아이콘들을 클릭한 후, 소셜 네트워킹 시스템(902)은 각각의 동작에 대응하는 사용자의 동작에 응답하여 "즐겨찾기" 에지 또는 "체크 인" 에지를 생성할 수 있다. 제한으로서가 아닌 또 다른 예로서, 사용자(사용자 "C")는 특정한 애플리케이션(온라인 음악 애플리케이션인, SPOTIFY)을 사용하여 특정한 노래("Ramble On")를 청취할 수 있다. 이 경우에, 소셜 네트워킹 시스템(902)은 사용자가 노래를 청취하며 애플리케이션을 사용하고 있음을 나타내기 위해 사용자에 대응하는 사용자 노드들(1002) 및 노래와 애플리케이션에 대응하는 개념 노드들(1004) 사이에 "청취" 에지(1006) 및 "사용" 에지를 생성할 수 있다(도 10에 예시된 바와 같이). 게다가, 소셜 네트워킹 시스템(902)은 특정한 노래가 특정한 애플리케이션에 의해 재생되었음을 나타내기 위해 노래 및 애플리케이션에 대응하는 개념 노드들(1004) 사이에 "재생" 에지(1006)를 생성할 수 있다(도 10에 예시된 바와 같이). 이 경우에, "재생" 에지(1006)는 외부 오디오 파일(노래 "Imagine") 상에서 외부 애플리케이션(SPOTIFY)에 의해 수행된 동작에 대응한다. 본 개시는 사용자 노드들(1002) 및 개념 노드들(1004)을 연결한 특정한 속성들을 가진 특정한 에지들(1006)을 설명하지만, 본 개시는 사용자 노드들(1002) 및 개념 노드들(1004)을 연결한 임의의 적절한 속성들을 가진 임의의 적절한 에지들(1006)을 고려한다. 게다가, 본 개시는 하나의 관계들을 나타내는 사용자 노드들(1002) 및 개념 노드들(1004) 사이에서의 에지들을 설명하지만, 본 개시는 하나 이상의 관계들을 나타내는 사용자 노드(1002) 및 개념 노드(1004) 사이에서의 에지들을 고려한다. 제한으로서가 아닌 예로서, 에지(1006)는 사용자가 좋아하며 특정한 개념에서 사용하고 있다는 것 모두를 나타낼 수 있다. 대안적으로, 또 다른 에지(1006)는 사용자 노드(1002) 및 개념 노드(1004) 사이에서(도 10에 예시된 바와 같이 사용자 "E"에 대한 사용자 노드(1002) 및 "SPOTIFY"에 대한 개념 노드(1004) 사이에서) 각각의 유형의 관계(또는 다수의 단일 관계)를 나타낼 수 있다.
특정한 실시예들에서, 소셜 네트워킹 시스템(902)은 소셜 그래프(1000)에서 사용자 노드(1002) 및 개념 노드(1004) 사이에 에지(1006)를 생성할 수 있다. 제한으로서가 아닌 예로서, 개념-프로필 페이지를 보고 있는 사용자(예를 들면, 사용자의 클라이언트 디바이스(906)에 의해 호스팅된 웹 브라우저 또는 특수-목적 애플리케이션을 사용함으로써)는 그 또는 그녀가 사용자의 클라이언트 디바이스(906)로 하여금 개념-프로필 페이지와 연관된 개념의 사용자의 좋아함을 나타내는 메시지를 소셜 네트워킹 시스템(902)에 전송하게 할 수 있는, "좋아요" 아이콘을 클릭하거나 또는 선택함으로써 개념 노드(1004)에 의해 표현된 개념을 좋아한다고 나타낼 수 있다. 메시지에 응답하여, 소셜 네트워킹 시스템(902)은 사용자 및 개념 노드(1004) 사이에서 "좋아요" 에지(1006)에 의해 예시된 바와 같이, 사용자와 연관된 사용자 노드(1002) 및 개념 노드(1004) 사이에 에지(1006)를 생성할 수 있다. 특정한 실시예들에서, 소셜 네트워킹 시스템(902)은 하나 이상의 데이터 저장소들에 에지(1006)를 저장할 수 있다. 특정한 실시예들에서, 에지(1006)는 특정한 사용자 동작에 응답하여 소셜 네트워킹 시스템(902)에 의해 자동으로 형성될 수 있다. 제한으로서가 아닌 예로서, 제 1 사용자가 사진을 업로드하고, 영화를 보거나, 또는 노래를 청취하면, 에지(1006)가 제 1 사용자에 대응하는 사용자 노드(1002) 및 이들 개념들에 대응하는 개념 노드들(1004) 사이에 형성될 수 있다. 본 개시는 특정한 방식들로 특정한 에지들(1006)을 형성하는 것을 설명하지만, 본 개시는 임의의 적절한 방식으로 임의의 적절한 에지들(1006)을 형성하는 것을 고려한다.
특정한 실시예들에서, 광고는 텍스트(HTML-링킹될 수 있는), 하나 이상의 이미지들(HTML-링킹될 수 있는), 하나 이상의 비디오들, 오디오, 하나 이상의 ABODE FLASH 파일들, 이것들의 적절한 조합, 또는 하나 이상의 웹페이지들 상에, 하나 이상의 이메일들에, 또는 사용자에 의해 요청된 탐색 결과들과 관련하여 제공된 임의의 적절한 디지털 포맷에서의 임의의 다른 적절한 광고일 수 있다. 또한, 또는 대안으로서, 광고는 하나 이상의 제휴 콘텐츠들(sponsored stories)(예로서, 소셜 네트워킹 시스템(902) 상에서의 뉴스-피드 또는 티커(ticker) 아이템)일 수 있다. 제휴 콘텐츠는 예를 들면, 사회적 동작을, 사용자의 프로필 페이지 또는 다른 페이지의 미리 결정된 영역 내에 제공하고, 광고주와 연관된 부가적인 정보를 제공받고, 다른 사용자들의 뉴스 피드들 또는 티커들 내에 올리거나 또는 그 외 강조하거나, 또는 그 외 장려함으로써, 광고주가 장려하는 사용자에 의한 사회적 동작(페이지를 "좋아함", 페이지 상에서의 포스트를 "좋아하거나" 또는 그것에 주를 달고, 페이지와 연관된 이벤트에 회담하고, 페이지에 게시된 질문에 투표하고, 장소에 체크 인하고, 애플리케이션을 사용하거나 또는 게임을 플레이하거나, 또는 웹사이트를 "좋아하거나" 또는 공유하는 것과 같은)일 수 있다. 광고주는 사회적 동작을 장려하는데 지불을 할 수 있다. 제한으로서가 아닌 예로서, 광고들은 탐색-결과 페이지의 탐색 결과들 중에 포함될 수 있으며, 여기에서 후원된 콘텐트는 후원되지 않은 콘텐트에 비해 장려된다.
특정한 실시예들에서, 광고는 소셜-네트워킹-시스템 웹페이지들, 제3자 웹페이지들, 또는 다른 페이지들 내에서 디스플레이를 위해 요청될 수 있다. 광고는 페이지의 최상부에 있는 배너 영역에서, 페이지의 측면에 있는 컬럼에, 페이지의 GUI에, 팝-업 윈도우에, 드롭-다운 메뉴에, 페이지의 입력 필드에, 페이지의 콘텐트의 최상부에 걸쳐, 또는 페이지에 대하여 다른 곳에서와 같은, 페이지의 전용 부분에서 디스플레이될 수 있다. 또한 또는 대안으로서, 광고는 애플리케이션 내에서 디스플레이될 수 있다. 광고는 전용 페이지들 내에 디스플레이되어, 사용자가 페이지를 액세스하거나 또는 애플리케이션을 이용하기 전에 광고와 상호작용하거나 또는 이를 보도록 사용자에게 요구할 수 있다. 사용자는, 예를 들면, 웹 브라우저를 통해 광고를 볼 수 있다.
사용자는 임의의 적절한 방식으로 광고와 상호작용할 수 있다. 사용자는 광고를 클릭하거나 또는 그 외 선택할 수 있다. 광고를 선택함으로써, 사용자는 광고와 연관된 페이지로 향해질 수 있다(또는 사용자에 의해 사용 중인 브라우저 또는 다른 애플리케이션). 광고와 연관된 페이지에서, 사용자는 광고와 연관된 제품 또는 서비스를 구매하는 것, 광고와 연관된 정보를 수신하는 것, 또는 광고와 연관된 뉴스레터에 가입하는 것과 같은, 부가적인 동작들을 취할 수 있다. 오디오 또는 비디오와 연관된 광고는 광고의 구성요소("재생 버튼"과 같은)를 선택함으로써 재생될 수 있다. 대안적으로, 광고를 선택함으로써, 소셜 네트워킹 시스템(902)은 사용자의 특정한 동작을 실행하거나 또는 수정할 수 있다.
광고는 또한 사용자가 상호작용할 수 있는 소셜-네트워킹-시스템 기능을 포함할 수 있다. 제한으로서가 아닌 예로서, 광고는 지지와 연관된 아이콘 또는 링크를 선택함으로써 사용자가 광고를 "좋아하거나" 또는 그 외 지지할 수 있게 할 것이다. 제한으로서가 아닌 또 다른 예로서, 광고는 사용자가 광고주에 관련된 콘텐트를 탐색할 수 있게 할 것이다(예로서, 질의를 실행함으로써). 유사하게, 사용자는 또 다른 사용자와 광고를 공유하거나(예로서, 소셜 네트워킹 시스템(902)을 통해) 또는 광고와 연관된 이벤트에 회답할 수 있다(예로서, 소셜 네트워킹 시스템(902)을 통해). 또한 또는 대안으로서, 광고는 사용자에게 향해진 소셜-네트워킹-시스템 콘텍스트를 포함할 수 있다. 제한으로서가 아닌 예로서, 광고는 광고의 주제와 연관된 동작을 취한 소셜 네트워킹 시스템(902) 내에서 사용자의 친구에 대한 정보를 디스플레이할 수 있다.
특정한 실시예들에서, 소셜 네트워킹 시스템(902)은 서로에 대한 다양한 소셜-그래프 엔티티들의 소셜-그래프 친밀도(여기에서 "친밀도"로서 불리울 수 있는")를 결정할 수 있다. 친밀도는 사용자들, 개념들, 콘텐트, 동작들, 광고들, 온라인 소셜 네트워크와 연관된 다른 오브젝트들, 또는 그것의 임의의 적절한 조합과 같은, 온라인 소셜 네트워크와 연관된 특정한 오브젝트들 사이에서의 관심 레벨 또는 관계의 강도를 나타낼 수 있다. 친밀도는 또한 제3자 시스템들(908) 또는 다른 적절한 시스템들과 연관된 오브젝트들에 대하여 결정될 수 있다. 각각의 사용자, 주제, 또는 콘텐트의 유형에 대한 소셜-그래프 엔티티에 대한 전체 친밀도가 수립될 수 있다. 전체 친밀도는 소셜-그래프 엔티티와 연관된 동작들 또는 관계들의 계속된 모니터링에 기초하여 변할 수 있다. 본 개시는 특정한 방식으로 특정한 친밀도들을 결정하는 것을 설명하지만, 본 개시는 임의의 적절한 방식으로 임의의 적절한 친밀도를 결정하는 것을 고려한다.
특정한 실시예들에서, 소셜 네트워킹 시스템(902)은 친밀도 계수(여기에서 "계수"로서 불리울 수 있는)를 사용하여 소셜-그래프 친밀도를 측정하거나 또는 수량화할 수 있다. 계수는 온라인 소셜 네트워크와 연관된 특정한 오브젝트들 사이에서의 관계의 강도를 나타내거나 또는 수량화할 수 있다. 계수는 또한 동작에서의 사용자의 관심에 기초하여 사용자가 특정한 동작을 수행할 예측 확률을 측정하는 확률 또는 함수를 나타낼 수 있다. 이러한 방식으로, 사용자의 미래의 동작들은 사용자의 이전 동작들에 기초하여 예측될 수 있으며, 여기에서 계수는 적어도 부분적으로 사용자의 동작들의 이력에 기초하여 산출될 수 있다. 계수들은 온라인 소셜 네트워크 내에 있거나 또는 그 밖에 있을 수 있는 임의의 수의 동작들을 예측하기 위해 사용될 수 있다. 제한으로서가 아닌 예로서, 이들 동작들은 메시지들을 전송하는 것, 콘텐트를 게시하는 것, 또는 콘텐트에 주를 다는 것과 같은 다양한 유형들의 통신들; 프로필 페이지들, 미디어, 또는 다른 적절한 콘텐트를 액세스하거나 또는 보는 것과 같은 다양한 유형들의 관찰 동작들; 동일한 그룹에 있는 것, 동일한 사진에 태그하는 것, 동일한 위치에 체크-인하는 것, 또는 동일한 이벤트에 참여하는 것과 같은, 둘 이상의 소셜-그래프 엔티티들에 대한 다양한 유형들의 일치 정보; 또는 다른 적절한 동작들을 포함할 수 있다. 본 개시는 특정한 방식으로 친밀도를 측정하는 것을 설명하지만, 본 개시는 임의의 적절한 방식으로 친밀도를 측정하는 것을 고려한다.
특정한 실시예들에서, 소셜 네트워킹 시스템(902)은 계수를 산출하기 위해 다양한 인자들을 사용할 수 있다. 이들 인자들은, 예를 들면, 사용자 동작들, 오브젝트들 사이에서의 관계들의 유형들, 위치 정보, 다른 적절한 인자들, 또는 그것의 임의의 조합을 사용할 수 있다. 특정한 실시예들에서, 상이한 인자들은 계수를 산출할 때 상이하게 가중될 수 있다. 각각의 인자에 대한 가중들은 정적일 수 있거나 또는 가중들은 예를 들면, 사용자, 관계의 유형, 동작의 유형, 사용자의 위치 등에 따라 변할 수 있다. 인자들에 대한 순위들은 사용자에 대한 전체 계수를 결정하기 위해 그것들의 가중들에 따라 조합될 수 있다. 제한으로서가 아닌 예로서, 특정한 사용자 동작들은 특정한 사용자 동작과 연관된 관계가 순위 및 상관 가중을 할당받는 동안(예로서, 따라서 가중들은 총 100%) 순위 및 가중 양쪽 모두를 할당받을 수 있다. 특정한 오브젝트를 향한 사용자의 계수를 산출하기 위해, 사용자의 동작들에 할당된 순위는, 예를 들면, 전체 계수의 60%를 포함할 수 있는 반면, 사용자 및 오브젝트 사이에서의 관계는 전체 계수의 40%를 포함할 수 있다. 특정한 실시예들에서, 소셜 네트워킹 시스템(902)은 예를 들면, 정보가 액세스된 이후 시간, 붕괴 인자들, 액세스의 빈도, 정보에 대한 관계 또는 정보가 액세스된 오브젝트에 대한 관계, 오브젝트에 연결된 소셜-그래프 엔티티들에 대한 관계, 사용자 동작들의 단기 또는 장기 평균들, 사용자 피드백, 다른 적절한 변수들, 또는 그것의 임의의 조합과 같은, 계수를 산출하기 위해 사용된 다양한 인자들에 대한 가중들을 결정할 때 다양한 변수들을 고려할 수 있다. 제한으로서가 아닌 예로서, 계수는 특정한 동작들에 의해 제공된 신호의 세기가 시간에 따라 붕괴하게 하는 붕괴 인자를 포함할 수 있으며, 따라서 보다 최근의 동작들이 계수를 산출할 때 더 적절하다. 순위들 및 가중들은 계수가 기초하는 동작들의 계속된 추적에 기초하여 계속해서 업데이트될 수 있다. 임의의 유형의 프로세스 또는 알고리즘은 각각의 인자에 대한 순위들 및 인자들에 할당된 가중들을 할당하고, 조합하고, 평균화하는 등을 위해 이용될 수 있다. 특정한 실시예들에서, 소셜 네트워킹 시스템(902)은 이력적 동작들 및 지난 사용자 응답들, 또는 그것들을 다양한 옵션들에 노출시키고 응답들을 측정함으로써 사용자들로부터 거둔 데이터에 대해 트레이닝된 기계-학습 알고리즘들을 사용하여 계수들을 결정할 수 있다. 본 개시는 특정한 방식으로 계수들을 산출하는 것을 설명하지만, 본 개시는 임의의 적절한 방식으로 계수들을 산출하는 것을 고려한다.
특정한 실시예들에서, 소셜 네트워킹 시스템(902)은 사용자의 동작들에 기초하여 계수를 산출할 수 있다. 소셜 네트워킹 시스템(902)은 온라인 소셜 네트워크 상에서, 제3자 시스템(908) 상에서, 다른 적절한 시스템들, 또는 그것의 임의의 조합 상에서 이러한 동작들을 모니터링할 수 있다. 임의의 적절한 유형의 사용자 동작들은 추적되거나 또는 모니터링될 수 있다. 통상적인 사용자 동작들은 프로필 페이지들을 보는 것, 콘텐트를 생성하거나 또는 게시하는 것, 콘텐트와 상호작용하는 것, 그룹들에 참여하는 것, 이벤트들에서의 참석을 나열하고 확인하는 것, 위치들에 체크-인하는 것, 특정한 페이지들을 좋아하는 것, 페이지들을 생성하는 것, 및 소셜 동작을 가능하게 하는 다른 태스크들을 수행하는 것을 포함한다. 특정한 실시예들에서, 소셜 네트워킹 시스템(902)은 특정한 유형들의 콘텐트를 가진 사용자의 동작들에 기초하여 계수를 산출할 수 있다. 콘텐트는 온라인 소셜 네트워크, 제3자 시스템(908), 또는 또 다른 적절한 시스템과 연관될 수 있다. 콘텐트는 사용자들, 프로필 페이지들, 포스트들, 뉴스 스토리들, 헤드라인들, 즉석 메시지들, 채팅 룸 대화들, 이메일들, 광고들, 그림들, 사진들, 비디오, 음악, 다른 적절한 오브젝트들, 또는 그것의 임의의 조합을 포함할 수 있다. 소셜 네트워킹 시스템(902)은 동작들 중 하나 이상이 주제, 콘텐트, 다른 사용자들 등에 대한 친밀도를 나타내는지를 결정하기 위해 사용자의 동작들을 분석할 수 있다. 제한으로서가 아닌 예로서, 사용자가 "커피" 또는 그것의 변형들에 관련된 콘텐트를 빈번하게 게시한다면, 소셜 네트워킹 시스템(902)은 개념 "커피"에 대하여 사용자가 높은 계수를 갖는다고 결정할 수 있다. 특정한 동작들 또는 동작들의 유형들은 전체 산출된 계수에 영향을 줄 수 있는, 다른 동작들보다 높은 가중 및/또는 순위를 할당받을 수 있다. 제한으로서가 아닌 예로서, 제 1 사용자가 제 2 사용자에게 이메일을 보낸다면, 동작에 대한 가중 또는 순위는 제 1 사용자가 간단히 제 2 사용자에 대한 사용자-프로필 페이지를 보는 경우보다 높을 것이다.
특정한 실시예들에서, 소셜 네트워킹 시스템(902)은 특정한 오브젝트들 사이에서의 관계의 유형에 기초하여 계수를 산출할 수 있다. 소셜 그래프(1000)를 참조하면, 소셜 네트워킹 시스템(902)은 계수를 산출할 때 특정한 사용자 노드들(1002) 및 개념 노드들(1004)을 연결한 에지들(1006)의 수 및/또는 유형을 분석할 수 있다. 제한으로서가 아닌 예로서, 배우자-형 에지에 의해 연결되는 사용자 노드들(1002)(두 사용자들이 결혼함을 나타내는)은 친구-형 에지에 의해 연결되는 사용자 노드들(1002)보다 높은 계수를 할당받을 수 있다. 다시 말해서, 특정한 사용자에 대한 관계들 및 동작들에 할당된 가중들에 의존하여, 전체 친밀도는 사용자의 친구에 대한 콘텐트에 대해서보다 사용자의 배우자에 대한 콘텐트에 대해 더 높다고 결정될 수 있다. 특정한 실시예들에서, 사용자가 또 다른 오브젝트와 맺고 있는 관계들은 상기 오브젝트에 대한 계수를 산출하는 것에 대하여 사용자의 동작들의 가중들 및/또는 순위들에 영향을 줄 수 있다. 제한으로서가 아닌 예로서, 사용자가 제 1 사진에 태그를 하지만, 단지 제 2 사진을 좋아한다면, 소셜 네트워킹 시스템(902)은 콘텐트와 태그가 달린 유형 관계를 갖는 것이 콘텐트와 좋아요-형 관계를 갖는 것보다 높은 가중 및/또는 순위를 할당받을 수 있기 때문에 사용자가 제 2 사진보다 제 1 사진에 대하여 높은 계수를 갖는다고 결정할 수 있다. 특정한 실시예들에서, 소셜 네트워킹 시스템(902)은 하나 이상의 제 2 사용자들이 특정한 오브젝트와 맺은 관계에 기초하여 제 1 사용자에 대한 계수를 산출할 수 있다. 다시 말해서, 다른 사용자들이 오브젝트와 갖는 연결들 및 계수들은 오브젝트에 대한 제 1 사용자의 계수에 영향을 줄 수 있다. 제한으로서가 아닌 예로서, 제 1 사용자가 하나 이상의 제 2 사용자들에 연결되거나 또는 그것에 대한 높은 계수를 가지며, 이들 제 2 사용자들이 특정한 오브젝트에 연결되거나 또는 그것에 대한 높은 계수를 갖는다면, 소셜 네트워킹 시스템(902)은 제 1 사용자가 또한 특정한 오브젝트에 대해 비교적 높은 계수를 가져야 한다고 결정할 수 있다. 특정한 실시예들에서, 계수는 특정한 오브젝트들 사이에서 간격(separation)의 정도에 기초할 수 있다. 임의의 두 개의 노드들 사이에서의 간격의 정도는 하나의 노드에서 다른 것으로 소셜 그래프를 가로지르도록 요구된 홉들의 최소 수로서 정의된다. 두 개의 노드들 사이에서의 간격의 정도는 소셜 그래프에서 두 개의 노드들에 의해 표현된 사용자들 또는 개념들 사이에서의 관련성의 측정치로서 고려될 수 있다. 예를 들면, 에지에 직접 연결되는 사용자 노드들(즉, 제 1 급 노드들)을 가진 두 사용자들은 "연결된 사용자들" 또는 "친구들"로서 설명될 수 있다. 유사하게, 또 다른 사용자 노드를 통해서만 연결되는 사용자 노드들(즉, 제 2 급 노드들)을 가진 두 사용자들은 "친구들의 친구들"로서 설명될 수 있다. 보다 낮은 계수는 제 1 사용자가 소셜 그래프(1000)에서 제 1 사용자에 간접적으로 연결되는 사용자의 콘텐트 오브젝트들에서의 관심을 공유할 감소하는 가능성을 나타낼 수 있다. 제한으로서가 아닌 예로서, 소셜 그래프(1000)에 더 가까운(즉, 보다 적은 정도의 간격) 소셜-그래프 엔티티들은 소셜 그래프(1000)에서 더 멀리 떨어진 엔티티들보다 높은 계수를 가질 수 있다.
특정한 실시예들에서, 소셜 네트워킹 시스템(902)은 위치 정보에 기초하여 계수를 산출할 수 있다. 서로에 지리적으로 더 가까운 오브젝트들은 더 먼 오브젝트들보다 서로에 더 관련되거나, 또는 더 관심이 있다고 고려될 수 있다. 특정한 실시예들에서, 특정한 오브젝트를 향한 사용자의 계수는 사용자와 연관된 현재 위치(또는 사용자의 클라이언트 디바이스(906)의 위치)에 대한 오브젝트의 위치의 근접성에 기초할 수 있다. 제 1 사용자는 제 1 사용자에 더 가까운 다른 사용자들 또는 개념들에 더 관심이 있을 수 있다. 제한으로서가 아닌 예로서, 사용자가 공항에서 1마일이고 주유소로부터 2마일이면, 소셜 네트워킹 시스템(902)은 사용자가 사용자에 대한 공항의 근접성에 기초하여 주유소보다 공항에 대해 더 높은 계수를 갖는다고 결정할 수 있다.
특정한 실시예들에서, 소셜 네트워킹 시스템(902)은 계수 정보에 기초하여 사용자에 대하여 특정한 동작들을 수행할 수 있다. 계수들은 사용자가 동작에서 사용자의 관심에 기초하여 특정한 동작을 수행할지를 예측하기 위해 사용될 수 있다. 계수는 광고들, 탐색 결과들, 뉴스 스토리들, 미디어, 메시지들, 통지들, 또는 다른 적절한 오브젝트들과 같은, 임의의 유형의 오브젝트들을 생성하거나 또는 사용자에게 제공할 때 사용될 수 있다. 계수는 또한 적절하다면, 이러한 오브젝트들의 순위를 매기고 순서화하기 위해 이용될 수 있다. 이러한 방식으로, 소셜 네트워킹 시스템(902)은 사용자의 관심들 및 현재 상황들에 관련 있는 정보를 제공하여, 그들이 이러한 관심 정보를 찾을 가능성을 증가시킨다. 특정한 실시예들에서, 소셜 네트워킹 시스템(902)은 계수 정보에 기초하여 콘텐트를 생성할 수 있다. 콘텐트 오브젝트들은 사용자에게 특정적인 계수들에 기초하여 제공되거나 또는 선택될 수 있다. 제한으로서가 아닌 예로서, 계수는 사용자를 위한 미디어를 생성하기 위해 사용될 수 있으며, 여기에서 사용자는 사용자가 미디어 오브젝트에 대하여 높은 전체 계수를 갖는 미디어를 제공받을 수 있다. 제한으로서가 아닌 또 다른 예로서, 계수는 사용자를 위한 광고들을 생성하기 위해 사용될 수 있으며, 여기에서 사용자는 사용자가 광고된 오브젝트에 대하여 높은 전체 계수를 가진 광고들을 제공받을 수 있다. 특정한 실시예들에서, 소셜 네트워킹 시스템(902)은 계수 정보에 기초하여 탐색 결과들을 생성할 수 있다. 특정한 사용자에 대한 탐색 결과들은 질의 사용자에 대하여 탐색 결과들과 연관된 계수에 기초하여 스코어링되거나 또는 순위가 매겨질 수 있다. 제한으로서가 아닌 예로서, 보다 높은 계수들을 가진 오브젝트들에 대응하는 탐색 결과들은 보다 낮은 계수들을 가진 오브젝트들에 대응하는 결과들보다 탐색-결과 페이지 상에서 더 높게 순위가 매겨질 수 있다.
특정한 실시예들에서, 소셜 네트워킹 시스템(902)은 특정한 시스템 또는 프로세스로부터의 계수에 대한 요청에 응답하여 계수를 산출할 수 있다. 주어진 상황에서 사용자가 취할 수 있는(또는 그것의 대상일 수 있는) 가능성 있는 동작들을 예측하기 위해, 임의의 프로세스는 사용자에 대한 산출된 계수를 요청할 수 있다. 요청은 또한 계수를 산출하기 위해 사용된 다양한 인자들을 사용하기 위해 가중들의 세트를 포함할 수 있다. 이러한 요청은 온라인 소셜 네트워크상에서 실행하는 프로세스로부터, 제3자 시스템(908)으로부터(예로서, API 또는 다른 통신 채널을 통해), 또는 또 다른 적절한 시스템으로부터 올 수 있다. 요청에 응답하여, 소셜 네트워킹 시스템(902)은 계수를 산출할 수 있다(또는 그것이 이전에 산출되고 저장되었다면 계수 정보를 액세스할 수 있다). 특정한 실시예들에서, 소셜 네트워킹 시스템(902)은 특정한 프로세스에 대한 친밀도를 측정할 수 있다. 상이한 프로세스들(온라인 소셜 네트워크의 내부 또는 외부 모두에 있는)은 특정한 오브젝트 또는 오브젝트들의 세트에 대한 계수를 요청할 수 있다. 소셜 네트워킹 시스템(902)은 친밀도의 측정치를 요청한 특정한 프로세스에 관련 있는 친밀도의 측정치를 제공할 수 있다. 이러한 방식으로, 각각의 프로세스는 프로세스가 친밀도의 측정치를 사용할 상이한 콘텍스트에 맞춰진 친밀도의 측정치를 수신한다.
소셜-그래프 친밀도 및 친밀도 계수들과 관련하여, 특정한 실시예들은 2006년 8월 11일에 출원된, 미국 특허 출원 번호 제11/503093호, 2010년 12월 22일에 출원된 미국 특허 출원 번호 제12/978027호, 2010년 12월 23일에 출원된 미국 특허 출원 번호 제12/978265호, 및 2012년 10월 1일에 출원된, 미국 특허 출원 번호 제13/642869호에서 개시된 하나 이상의 시스템들, 구성요소들, 요소들, 기능들, 방법들, 동작들, 또는 작용들을 이용할 수 있으며, 그 각각은 참조로서 통합된다.
특정한 실시예들에서, 온라인 소셜 네트워크의 콘텐트 오브젝트들 중 하나 이상은 프라이버시 설정과 연관될 수 있다. 오브젝트에 대한 프라이버시 설정들(또는 "액세스 설정들")은, 예를 들면, 오브젝트와 관련하여와 같은, 임의의 적절한 방식으로, 권한 서버상에서의 인덱스에, 또 다른 적절한 방식, 또는 그것의 임의의 조합으로 저장될 수 있다. 오브젝트의 프라이버시 설정은 오브젝트(또는 오브젝트와 연관된 특정한 정보)가 온라인 소셜 네트워크를 사용하여 어떻게 액세스될 수 있는지(예로서, 보거나 또는 공유될 수 있는지)를 특정할 수 있다. 오브젝트에 대한 프라이버시 설정들이 특정한 사용자로 하여금 상기 오브젝트를 액세스하도록 허용하는 경우, 오브젝트는 상기 사용자에 대하여 "가시적"인 것으로 설명될 수 있다. 제한으로서가 아닌 예로서, 온라인 소셜 네트워크의 사용자는 사용자-프로필 페이지에 대한 프라이버시 설정들이 사용자-프로필 페이지에 대한 경력 정보를 액세스할 수 있는 사용자들의 세트를 식별한다고 특정할 수 있으며, 따라서 다른 사용자들을 정보를 액세스하는 것에서 제외한다. 특정한 실시예들에서, 프라이버시 설정들은 오브젝트와 연관된 특정한 정보를 액세스하도록 허용되지 않아야 하는 사용자들의 "차단 리스트"를 특정할 수 있다. 다시 말해서, 차단 리스트는 오브젝트가 가시적이지 않은 하나 이상의 사용자들 또는 엔티티들을 특정할 수 있다. 제한으로서가 아닌 예로서, 사용자는 사용자와 연관된 사진 앨범들을 액세스하지 않을 수 있는 사용자들의 세트를 특정할 수 있으며, 따라서 이들 사용자들이 사진 앨범들을 액세스하는 것에서 제외한다(또한 사용자들의 세트 내에 있지 않은 특정한 사용자들이 사진 앨범들을 액세스하는 것을 가능하게는 허용하면서). 특정한 실시예들에서, 프라이버시 설정들은 특정한 소셜-그래프 요소들과 연관될 수 있다. 노드 또는 에지와 같은, 소셜-그래프 요소의 프라이버시 설정들은 소셜-그래프 요소, 소셜-그래프 요소와 연관된 정보, 또는 소셜-그래프 요소와 연관된 콘텐트 오브젝트들이 온라인 소셜 네트워크를 사용하여 어떻게 액세스될 수 있는지를 특정할 수 있다. 제한으로서가 아닌 예로서, 특정한 사진에 대응하는 특정한 개념 노드(1004)는 사진이 단지 사진에 태그된 사용자들 및 그들의 친구들에 의해서만 액세스될 수 있음을 특정한 프라이버시 설정을 가질 수 있다. 특정한 실시예들에서, 프라이버시 설정들은 사용자들이 소셜 네트워킹 시스템(902)에 의해 로깅되거나 또는 다른 시스템들(예로서, 제3자 시스템(908))과 공유된 그들의 동작들에 참여하거나 또는 그것에서 탈퇴하도록 허용할 수 있다. 특정한 실시예들에서, 오브젝트와 연관된 프라이버시 설정들은 허용된 액세스 또는 액세스 거부의 임의의 적절한 입도를 특정할 수 있다. 제한으로서가 아닌 예로서, 액세스 또는 액세스 거부는 특정한 사용자들(예로서, 단지 본인, 나의 룸메이트, 및 나의 상사), 특정한 간격의 정보 내에서의 사용자들(예로서, 친구들, 또는 친구들의 친구들), 사용자 그룹들(예로서, 게임 클럽, 나의 가족), 사용자 네트워크들(예로서, 특정한 고용주들의 고용인들, 특정한 대학의 학생들 또는 졸업생들), 모든 사용자들("공용"), 사용자들 없음("사설"), 제3자 시스템들(908)의 사용자들, 특정한 애플리케이션들(예로서, 제3자 애플리케이션들, 외부 웹사이트들), 다른 적절한 사용자들 또는 엔티티들, 또는 그것의 임의의 조합에 대해 특정될 수 있다. 본 개시는 특정한 방식으로 특정한 프라이버시 설정들을 사용하는 것을 설명하지만, 본 개시는 임의의 적절한 방식으로 임의의 적절한 프라이버시 설정들을 사용하는 것을 고려한다.
특정한 실시예들에서, 하나 이상의 서버들은 프라이버시 설정들을 시행하기 위한 권한/프라이버시 서버들일 수 있다. 데이터 저장소에 저장된 특정한 오브젝트에 대한 사용자(또는 다른 엔티티)로부터의 요청에 응답하여, 소셜 네트워킹 시스템(902)은 요청을 오브젝트에 대한 데이터 저장소로 전송할 수 있다. 요청은 요청과 연관된 사용자를 식별할 수 있으며 권한 서버가 사용자가 오브젝트와 연관된 프라이버시 설정에 기초하여 오브젝트를 액세스하도록 허가된다고 결정하면 단지 사용자(또는 사용자의 클라이언트 디바이스(906))에게만 전송될 수 있다. 요청 사용자가 오브젝트를 액세스하도록 허가되지 않았다면, 권한 서버는 요청된 오브젝트가 데이터 저장소로부터 검색되는 것을 방지할 수 있거나, 또는 요청된 오브젝트가 사용자로 전송되는 것을 방지할 수 있다. 탐색 질의 콘텍스트에서, 오브젝트는 질의 사용자가 오브젝트를 액세스하도록 허가된 경우 단지 탐색 결과로서만 생성될 수 있다. 다시 말해서, 오브젝트는 질의 사용자에게 가시적인 가시성을 가져야 한다. 오브젝트가 사용자에게 가시적이지 않은 가시성을 갖는다면, 오브젝트는 탐색 결과들에서 배제될 수 있다. 본 개시는 특정한 방식으로 프라이버시 설정들을 시행하는 것을 설명하지만, 본 개시는 임의의 적절한 방식으로 프라이버 설정들을 시행하는 것을 고려한다.
앞서 말한 명세서는 그것의 특정 대표적인 실시예들을 참조하여 설명된다. 개시의 다양한 실시예들 및 양상들은 여기에서 논의된 세부사항들을 참조하여 설명되며, 수반된 도면들은 다양한 실시예들을 예시한다. 상기 설명 및 도면들은 예시적이며 제한적인 것으로 해석되지 않을 것이다. 다수의 특정 세부사항들은 다양한 실시예들의 철저한 이해를 제공하기 위해 설명된다.
부가적인 또는 대안적인 실시예들은 그것의 사상 또는 본질적인 특성들에서 벗어나지 않고 다른 특정한 형태들로 구체화될 수 있다. 설명된 실시예들은 모든 면들에서 단지 예시적이며 제한적이지 않은 것으로 고려될 것이다. 본 개시의 범위는, 그러므로 앞서 말한 설명에 의해서보다는 첨부된 청구항들에 의해 표시된다. 청구항들의 등가물의 의미 및 범위 내에 있는 모든 변화들은 그것들의 범위 내에서 포괄될 것이다.
102: 소셜 네트워킹 시스템 800: 컴퓨팅 디바이스
802: 프로세서 804: 메모리
808: I/O 인터페이스 810: 통신 인터페이스
812: 통신 기반시설 900: 네트워크 환경
902: 소셜 네트워킹 시스템 904: 네트워크
906: 클라이언트 디바이스 908: 제3자 시스템
1000: 소셜 그래프 1002: 사용자 노드
1004: 개념 노드 1006: 에지

Claims (20)

  1. 방법에 있어서,
    브로드캐스터 디바이스에 의해, 소셜 네트워킹 시스템으로 복수의 뷰어들로의 브로드캐스트를 위한 라이브 비디오 스트림을 송신하는 단계;
    상기 브로드캐스터 디바이스에 의해, 상기 소셜 네트워킹 시스템으로부터 상기 복수의 뷰어들의 뷰어에 의해 상기 라이브 비디오 스트림에 대한 반응의 비디오 클립을 수신하는 단계로서, 상기 비디오 클립은 뷰어 디바이스가 상기 라이브 비디오 스트림을 제시하는 동안 상기 뷰어 디바이스를 사용하여 상기 뷰어에 의해 캡처되는, 상기 라이브 비디오 스트림에 대한 반응의 비디오 클립을 수신하는 단계; 및
    상기 브로드캐스터 디바이스에 의해, 상기 브로드캐스터 디바이스가 상기 라이브 비디오 스트림을 캡처하는 동안 상기 라이브 비디오 스트림과 상기 브로드캐스터 디바이스의 그래픽 사용자 인터페이스 내에서 상기 비디오 클립에 제시하는 단계를 포함하는, 방법.
  2. 제 1 항에 있어서,
    상기 비디오 클립은 최대 지속 기간을 갖는, 방법.
  3. 제 1 항에 있어서,
    상기 그래픽 사용자 인터페이스 내에서 상기 비디오 클립을 제시하는 단계는 상기 브로드캐스터 디바이스가 상기 라이브 비디오 스트림을 캡처하는 동안 상기 그래픽 사용자 인터페이스 내에서의 상기 라이브 비디오 스트림 상에 오버레이된 그래픽 요소 내에서의 상기 비디오 클립을 제시하는 단계를 포함하는, 방법.
  4. 제 3 항에 있어서,
    상기 브로드캐스터 디바이스에 의해, 상기 그래픽 요소 내에서의 상기 비디오 클립을 제시하는 동안 상기 그래픽 사용자 인터페이스에 걸쳐 상기 그래픽 요소를 계속해서 움직이게 하는 단계를 더 포함하는, 방법.
  5. 제 3 항에 있어서,
    상기 브로드캐스터 디바이스에 의해, 상기 그래픽 사용자 인터페이스 내에서 상기 비디오 클립의 프리젠테이션 동안 상기 비디오 클립과의 제 1 사용자 상호작용을 검출하는 단계; 및
    상기 제 1 사용자 상호작용에 응답하여,
    상기 그래픽 사용자 인터페이스 내에서 상기 비디오 클립의 위치를 변경하는 단계; 또는
    상기 그래픽 사용자 인터페이스에 걸쳐 상기 비디오 클립의 모션을 정지시키는 단계를 더 포함하는, 방법.
  6. 제 5 항에 있어서,
    상기 브로드캐스터 디바이스에 의해, 상기 비디오 클립과의 제 1 사용자 상호작용의 종료를 검출하는 단계; 및
    상기 제 1 사용자 상호작용의 종료에 응답하여, 상기 비디오 클립을 이전 위치로 반환하거나 또는 상기 그래픽 사용자 인터페이스에 걸친 상기 비디오 클립의 계속된 모션을 허용하는 단계를 더 포함하는, 방법.
  7. 제 5 항에 있어서,
    상기 제 1 사용자 상호작용은 상기 그래픽 사용자 인터페이스 내에서 상기 비디오 클립의 프리젠테이션 동안 상기 비디오 클립에 대한 터치 제스처를 포함하는, 방법.
  8. 제 5 항에 있어서,
    상기 브로드캐스터 디바이스에 의해, 상기 비디오 클립과의 제 2 사용자 상호작용을 검출하는 단계; 및
    상기 제 2 사용자 상호작용을 검출하는 것에 응답하여:
    상기 브로드캐스터 디바이스로부터의 상기 라이브 비디오 스트림 및 상기 뷰어 디바이스로부터의 부가적인 라이브 비디오 스트림을 포함한 다중-사용자-라이브 스트림에 상기 뷰어를 부가하는 단계;
    상기 뷰어와의 통신을 개시하는 단계;
    상기 복수의 뷰어들을 위한 상기 라이브 비디오 스트림에 포함될 상기 비디오 클립에 대한 허가를 승인하는 단계;
    상기 라이브 비디오 스트림의 브로드캐스터로부터의 미래의 라이브 비디오 스트림들에 반응들의 비디오 클립들을 부가하기 위해 상기 뷰어에 대한 허가를 승인하는 단계; 또는
    상기 복수의 뷰어들을 위한 상기 라이브 비디오 스트림에 포함될 상기 비디오 클립에 대한 허가를 거부하는 단계를 더 포함하는, 방법.
  9. 방법에 있어서,
    뷰어 디바이스에 의해, 소셜 네트워킹 시스템으로부터 브로드캐스터 디바이스에서 비롯되는 라이브 비디오 스트림을 수신하는 단계;
    상기 뷰어 디바이스에 의해, 상기 뷰어 디바이스의 그래픽 사용자 인터페이스 내에서 상기 라이브 비디오 스트림을 제시하는 단계;
    상기 뷰어 디바이스에 의해, 상기 그래픽 사용자 인터페이스 내에서 상기 라이브 비디오 스트림에 대한 반응들의 비디오 클립들을 기록하기 위해 반응-비디오 요소를 제시하는 단계;
    상기 반응-비디오 요소의 선택을 검출하는 것에 응답하여, 상기 뷰어 디바이스에 의해, 상기 뷰어 디바이스가 상기 라이브 비디오 스트림을 제시하는 동안 복수의 뷰어들의 뷰어에 의해 상기 라이브 비디오 스트림에 대한 반응의 비디오 클립을 캡처하는 단계; 및
    상기 뷰어 디바이스에 의해, 상기 뷰어 디바이스가 상기 라이브 비디오 스트림을 제시하는 동안 상기 브로드캐스터 디바이스로의 송신을 위한 상기 비디오 클립을 상기 소셜 네트워킹 시스템으로 송신하는 단계를 포함하는, 방법.
  10. 제 9 항에 있어서,
    상기 라이브 비디오 스트림에 대한 반응들의 비디오 클립들을 기록하기 위해 상기 반응-비디오 요소를 제시하는 단계는 상기 반응-비디오 요소를 활성화하는 신호를 상기 소셜 네트워킹 시스템으로부터 수신하는 것에 기초하는, 방법.
  11. 제 9 항에 있어서,
    상기 뷰어 디바이스가 상기 라이브 비디오 스트림을 제시하는 동안 상기 브로드캐스터 디바이스로의 송신을 위한 상기 비디오 클립을 송신하기 전에, 상기 방법은:
    상기 뷰어 디바이스에 의해, 상기 그래픽 사용자 인터페이스 내에서 상기 비디오 클립의 미리보기를 제시하는 단계; 및
    상기 비디오 클립의 승인을 검출하는 것에 응답하여, 상기 뷰어 디바이스에 의해, 상기 뷰어 디바이스가 상기 라이브 비디오 스트림을 제시하는 동안 상기 브로드캐스터 디바이스로의 송신을 위한 상기 비디오 클립을 상기 소셜 네트워킹 시스템으로 송신하는 단계를 더 포함하는, 방법.
  12. 제 9 항에 있어서,
    상기 뷰어 디바이스에 의해, 상기 복수의 뷰어들의 부가적인 뷰어에 의해 상기 라이브 비디오 스트림에 대한 부가적인 반응의 부가적인 비디오 클립을 상기 소셜 네트워킹 시스템으로부터 수신하는 단계로서, 상기 부가적인 비디오 클립은 부가적인 뷰어 디바이스에서 비롯되는, 상기 수신 단계; 및
    상기 뷰어 디바이스에 의해, 상기 뷰어 디바이스가 상기 라이브 비디오 스트림을 제시하는 동안 상기 그래픽 사용자 인터페이스 내에서의 상기 라이브 비디오 스트림 상에 오버레이된 그래픽 요소 내에서의 상기 부가적인 비디오 클립을 제시하는 단계를 더 포함하는, 방법.
  13. 제 12 항에 있어서,
    상기 그래픽 요소의 크기는:
    상기 부가적인 뷰어 디바이스에 대응하는 부가적인 뷰어 계정과 연관된 친구들 또는 팔로어들의 수;
    상기 브로드캐스터 디바이스에 대응하는 브로드캐스터 계정에 대한 부가적인 뷰어 디바이스에 대응하는 상기 부가적인 뷰어 계정에 대한 친밀도 계수; 또는
    상기 부가적인 비디오 클립에 대해 상기 복수의 뷰어들 중 하나 이상으로부터 수신된 반응들 중 하나 이상에 기초하는, 방법.
  14. 제 12 항에 있어서,
    상기 뷰어 디바이스에 의해, 상기 그래픽 요소와의 사용자 상호작용을 검출하는 단계; 및
    상기 사용자 상호작용을 검출하는 것에 응답하여:
    상기 부가적인 뷰어 디바이스에 대응하는 부가적인 뷰어 계정으로 친구 요청을 전송하는 단계; 또는
    상기 부가적인 뷰어 디바이스에 대응하는 상기 부가적인 뷰어 계정으로 팔로우 요청을 전송하는 단계를 더 포함하는, 방법.
  15. 시스템에 있어서,
    적어도 하나의 프로세서; 및
    명령들을 저장한 적어도 하나의 비-일시적 컴퓨터-판독 가능한 저장 매체로서, 상기 명령들은, 상기 적어도 하나의 프로세서에 의해 실행될 때, 상기 시스템으로 하여금:
    브로드캐스터 디바이스로부터, 복수의 뷰어들로의 브로드캐스트를 위한 라이브 비디오 스트림을 수신하게 하고;
    상기 복수의 뷰어들을 위한 복수의 뷰어 디바이스들로, 상기 브로드캐스터 디바이스로부터 수신된 상기 라이브 비디오 스트림을 송신하게 하고;
    상기 복수의 뷰어 디바이스들의 뷰어 디바이스로부터, 상기 복수의 뷰어들의 뷰어에 의한 상기 라이브 비디오 스트림에 대한 반응의 비디오 클립을 수신하게 하는 것으로서, 상기 비디오 클립은 상기 뷰어 디바이스가 상기 라이브 비디오 스트림을 상기 뷰어에게 제공하는 동안 상기 뷰어 디바이스에 의해 캡처되는, 상기 라이브 비디오 스트림에 대한 반응의 비디오 클립을 수신하게 하며;
    상기 시스템이 상기 브로드캐스터 디바이스로부터 상기 라이브 비디오 스트림을 수신하는 동안 상기 브로드캐스터 디바이스에 의한 프리젠테이션을 위해 상기 비디오 클립을 상기 브로드캐스터 디바이스로 송신하게 하는, 상기 적어도 하나의 비-일시적 컴퓨터-판독 가능한 저장 매체를 포함하는, 시스템.
  16. 제 15 항에 있어서,
    상기 시스템이 상기 브로드캐스터 디바이스로부터 상기 라이브 비디오 스트림을 수신하는 동안 상기 브로드캐스터 디바이스에 의한 프리젠테이션을 위해 상기 비디오 클립을 상기 브로드캐스터 디바이스로 송신하는 것은 상기 브로드캐스터 디바이스에 의해, 상기 시스템이 상기 브로드캐스터 디바이스로부터 상기 라이브 비디오 스트림을 수신하는 동안 상기 브로드캐스터 디바이스의 그래픽 사용자 인터페이스 내에서의 상기 라이브 비디오 스트림 상에 오버레이된 그래픽 요소 내에서, 프리젠테이션을 위해 상기 비디오 클립을 상기 브로드캐스터 디바이스로 송신하는 것을 포함하는, 시스템.
  17. 제 16 항에 있어서,
    상기 적어도 하나의 프로세서에 의해 실행될 때, 상기 시스템으로 하여금 상기 시스템이 상기 브로드캐스터 디바이스로부터 상기 라이브 비디오 스트림을 수신하는 동안 상기 그래픽 사용자 인터페이스의 에지를 향해 플로팅 모션으로 계속해서 움직이도록 상기 그래픽 요소에 지시하게 하는 명령들을 더 포함하는, 시스템.
  18. 제 15 항에 있어서,
    상기 적어도 하나의 프로세서에 의해 실행될 때, 상기 시스템으로 하여금 상기 라이브 비디오 스트림에 대한 반응들의 비디오 클립들을 캡처하기 위해 상기 복수의 뷰어 디바이스들 상에서 반응-비디오 요소를 활성화하게 하는 명령들을 더 포함하는, 시스템.
  19. 제 15 항에 있어서,
    상기 적어도 하나의 프로세서에 의해 실행될 때, 상기 시스템으로 하여금, 상기 복수의 뷰어 디바이스들 중 하나 이상에서, 상기 라이브 비디오 스트림에 대한 반응들의 비디오 클립들을 캡처하기 위해 반응-비디오 요소를 선택적으로 활성화하게 하는 명령들을 더 포함하는, 시스템.
  20. 제 19 항에 있어서,
    상기 복수의 뷰어 디바이스들 중 하나 이상에서, 상기 라이브 비디오 스트림에 대한 반응들의 비디오 클립들을 캡처하기 위해 상기 반응-비디오 요소를 선택적으로 활성화하는 것은:
    임계 수 미만의 상기 복수의 뷰어들이 상기 라이브 비디오 스트림을 보고 있다고 결정하는 것;
    상기 복수의 뷰어 디바이스들 중 하나 이상이 상기 브로드캐스터 디바이스에 대응하는 브로드캐스터 계정의 친구들 또는 팔로어들의 뷰어 계정들에 대응한다고 결정하는 것;
    상기 브로드캐스터 계정이 상기 복수의 뷰어들을 위한 상기 라이브 비디오 스트림에 대한 반응들의 비디오 클립들을 부가하기 위해 상기 복수의 뷰어 디바이스들 중 하나 이상에 대응하는 뷰어 계정들에 대한 허가를 승인하였다고 결정하는 것; 또는
    상기 복수의 뷰어 디바이스들 중 하나 이상이 임계치를 초과하는 친밀도 계수들을 가진 뷰어 계정들에 대응한다고 결정하는 것으로서, 상기 친밀도 계수는 상기 브로드캐스터 디바이스에 대응하는 브로드캐스터 계정에 대한 것인, 상기 임계치를 초과하는 친밀도 계수들을 가진 뷰어 계정들에 대응한다고 결정하는 것 중 하나 이상에 기초하는, 시스템.
KR1020197026850A 2017-02-16 2017-02-22 라이브 비디오 스트림의 브로드캐스트 동안 뷰어들의 반응의 비디오 클립들의 송신 KR20190109563A (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US15/434,875 US10652618B2 (en) 2017-02-16 2017-02-16 Transmitting video clips of viewers' reactions during a broadcast of a live video stream
US15/434,875 2017-02-16
PCT/US2017/018954 WO2018151741A1 (en) 2017-02-16 2017-02-22 Transmitting video clips of viewers' reactions during a broadcast of a live video stream

Publications (1)

Publication Number Publication Date
KR20190109563A true KR20190109563A (ko) 2019-09-25

Family

ID=63105566

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020197026850A KR20190109563A (ko) 2017-02-16 2017-02-22 라이브 비디오 스트림의 브로드캐스트 동안 뷰어들의 반응의 비디오 클립들의 송신

Country Status (5)

Country Link
US (2) US10652618B2 (ko)
EP (1) EP3583782A4 (ko)
KR (1) KR20190109563A (ko)
CN (2) CN110521209B (ko)
WO (1) WO2018151741A1 (ko)

Families Citing this family (27)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10652618B2 (en) 2017-02-16 2020-05-12 Facebook, Inc. Transmitting video clips of viewers' reactions during a broadcast of a live video stream
KR101996468B1 (ko) * 2017-10-25 2019-07-04 라인 가부시키가이샤 라이브 방송 중 음성 피드백을 위한 방법과 시스템 및 비-일시적인 컴퓨터 판독 가능한 기록 매체
US10999642B1 (en) * 2017-11-03 2021-05-04 Snap Inc. Multi-video capture system
US10924796B2 (en) * 2018-04-10 2021-02-16 Logitech Europe S.A. System and methods for interactive filters in live streaming media
CN108881994B (zh) * 2018-06-29 2020-01-14 北京微播视界科技有限公司 视频访问方法、客户端、装置、终端、服务器和存储介质
JP7280698B2 (ja) * 2019-01-11 2023-05-24 キヤノン株式会社 撮像装置及びその制御方法及びプログラム
US10638206B1 (en) * 2019-01-28 2020-04-28 International Business Machines Corporation Video annotation based on social media trends
US11178085B2 (en) * 2019-02-27 2021-11-16 A Social Company Social media platform for sharing reactions to videos
US11196692B2 (en) * 2019-02-27 2021-12-07 A Social Company Social contract based messaging platform
US10938942B2 (en) * 2019-03-27 2021-03-02 International Business Machines Corporation Dynamically modified delivery of elements in a sports related presentation
CN110636321A (zh) * 2019-09-30 2019-12-31 北京达佳互联信息技术有限公司 数据处理方法、装置、系统、移动终端及存储介质
CN111343510B (zh) * 2020-02-13 2022-03-25 北京达佳互联信息技术有限公司 信息处理方法、装置、电子设备及存储介质
CN115918089A (zh) * 2020-04-17 2023-04-04 15秒誉股份有限公司 用于处理和呈现媒体数据以允许虚拟参与事件的系统和方法
US11277663B2 (en) 2020-05-18 2022-03-15 Mercury Analytics, LLC Systems and methods for providing survey data
JP2021182696A (ja) * 2020-05-19 2021-11-25 憲保 池田 双方向放送方法及びシステム
CN111601150A (zh) * 2020-06-05 2020-08-28 百度在线网络技术(北京)有限公司 视频的处理方法和装置
CN111694631A (zh) * 2020-06-15 2020-09-22 北京达佳互联信息技术有限公司 挂件显示方法和装置
US11165729B1 (en) * 2020-06-15 2021-11-02 Twitter, Inc. Generating and displaying contextual audiovisual content
US20220038510A1 (en) * 2020-08-03 2022-02-03 John Alden Ross System and Method for Providing Remote Attendance to a Live Event
USD960899S1 (en) 2020-08-12 2022-08-16 Meta Platforms, Inc. Display screen with a graphical user interface
US11093120B1 (en) * 2020-08-12 2021-08-17 Facebook, Inc. Systems and methods for generating and broadcasting digital trails of recorded media
US11256402B1 (en) 2020-08-12 2022-02-22 Facebook, Inc. Systems and methods for generating and broadcasting digital trails of visual media
USD960898S1 (en) 2020-08-12 2022-08-16 Meta Platforms, Inc. Display screen with a graphical user interface
US11683538B2 (en) * 2020-09-03 2023-06-20 Meta Platforms, Inc. Live group video streaming
USD1016852S1 (en) * 2020-12-21 2024-03-05 Samsung Electronics Co., Ltd. Display screen or portion thereof with graphical user interface
US20220377413A1 (en) * 2021-05-21 2022-11-24 Rovi Guides, Inc. Methods and systems for personalized content based on captured gestures
CN115529467A (zh) * 2022-07-11 2022-12-27 成都秦川物联网科技股份有限公司 智慧城市公共景观摄像装置管理方法和物联网系统

Family Cites Families (42)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TW463503B (en) * 1998-08-26 2001-11-11 United Video Properties Inc Television chat system
US20040187148A1 (en) * 2003-03-19 2004-09-23 Anthony Cassella Methods and computer program for multimedia interaction
US20050026542A1 (en) * 2003-07-31 2005-02-03 Tezer Battal Detection system for chemical-mechanical planarization tool
US20080111822A1 (en) * 2006-09-22 2008-05-15 Yahoo, Inc.! Method and system for presenting video
US8819719B1 (en) * 2006-12-06 2014-08-26 Google Inc. Real-time video commenting
US7992097B2 (en) * 2006-12-22 2011-08-02 Apple Inc. Select drag and drop operations on video thumbnails across clip boundaries
CN101127880B (zh) * 2007-09-13 2013-05-08 深圳市融创天下科技股份有限公司 一种视频直播节目中的视频信息传送方法
CN101127875B (zh) * 2007-09-13 2012-01-04 深圳市融创天下科技股份有限公司 一种视频流媒体节目播放中的观众互动方法
US8539354B2 (en) * 2008-03-31 2013-09-17 Telefonaktiebolaget Lm Ericsson (Publ) Method and apparatus for interactively sharing video content
US20100095318A1 (en) 2008-10-14 2010-04-15 William Wagner System and Method for Monitoring Audience Response
US9179951B2 (en) 2009-05-15 2015-11-10 Globus Medical, Inc. Orthopedic Plate Blocking Assembly
US8769443B2 (en) * 2010-02-11 2014-07-01 Apple Inc. Touch inputs interacting with user interface items
US8786664B2 (en) * 2010-04-28 2014-07-22 Qualcomm Incorporated System and method for providing integrated video communication applications on a mobile computing device
WO2012012453A2 (en) * 2010-07-19 2012-01-26 Echidna, Inc. Use of social ranks to find providers of relevant user-generated content
WO2012092025A2 (en) * 2010-12-27 2012-07-05 Google Inc. Social network collaboration space
US8806518B2 (en) 2012-06-27 2014-08-12 Intel Corporation Performance analysis for combining remote audience responses
US20140280555A1 (en) * 2013-03-15 2014-09-18 William F. Tapia Social networking for surfers
US8667075B1 (en) 2013-04-15 2014-03-04 Upfront Media Group, Inc. System and method for implementing a subscription-based social media platform
US20150046809A1 (en) * 2013-08-12 2015-02-12 Kobo Incorporated Activity indicator
JP2016538657A (ja) * 2013-09-16 2016-12-08 トムソン ライセンシングThomson Licensing 複数のユーザコメントを検索してコンテンツにオーバーレイすることによるビデオのブラウジング
CN103634681B (zh) * 2013-11-29 2017-10-10 腾讯科技(成都)有限公司 直播互动方法、装置、客户端、服务器及系统
US20160234551A1 (en) * 2013-12-02 2016-08-11 Dumbstruck, Inc. Video reaction processing
US20160007052A1 (en) 2014-07-03 2016-01-07 Anthem Digital Media, Inc. Live streaming broadcast service with artist and fan competitive reward system
US20160057457A1 (en) 2014-08-25 2016-02-25 LiveFromMe Live video broadcasting mobile application for social sharing
US9998510B2 (en) * 2015-03-20 2018-06-12 Walter Partos Video-based social interaction system
US10455291B2 (en) * 2015-03-20 2019-10-22 Twitter, Inc. Live video stream sharing
CN106162221A (zh) * 2015-03-23 2016-11-23 阿里巴巴集团控股有限公司 直播视频的合成方法、装置及系统
WO2016160744A1 (en) 2015-03-27 2016-10-06 Twitter, Inc. Live video streaming services
CN104869468A (zh) * 2015-04-22 2015-08-26 腾讯科技(北京)有限公司 一种显示弹幕信息的方法和装置
US20160349973A1 (en) * 2015-05-29 2016-12-01 Microsoft Technology Licensing, Llc Video Messaging
US9967618B2 (en) * 2015-06-12 2018-05-08 Verizon Patent And Licensing Inc. Capturing a user reaction to media content based on a trigger signal and using the user reaction to determine an interest level associated with a segment of the media content
US20170034237A1 (en) 2015-07-28 2017-02-02 Giga Entertainment Media Inc. Interactive Content Streaming Over Live Media Content
CN105306468B (zh) * 2015-10-30 2019-01-11 广州华多网络科技有限公司 一种合成视频数据实时共享的方法及其主播客户端
US9866902B2 (en) * 2016-01-19 2018-01-09 Verizon Patent And Licensing Inc. Social sharing and unlocking of reactions to content
CN105872612A (zh) * 2016-03-30 2016-08-17 宁波元鼎电子科技有限公司 一种改进型网络主播过程中主播与观众互动方法及系统
CN106060591A (zh) * 2016-05-31 2016-10-26 北京小米移动软件有限公司 视频直播应用中的互动方法及装置
CN106162230A (zh) * 2016-07-28 2016-11-23 北京小米移动软件有限公司 直播信息的处理方法、装置、主播端、服务器及系统
CN106303586A (zh) * 2016-08-18 2017-01-04 北京奇虎科技有限公司 一种网络直播的方法、主播端设备、观众端设备
CN106341695B (zh) * 2016-08-31 2020-08-11 腾讯数码(天津)有限公司 直播间互动方法、装置及系统
CN106454539A (zh) * 2016-11-29 2017-02-22 武汉斗鱼网络科技有限公司 一种视频直播网站的弹幕封禁系统及方法
US20180196876A1 (en) * 2017-01-07 2018-07-12 International Business Machines Corporation Sentiment-driven content management in a social networking environment
US10652618B2 (en) 2017-02-16 2020-05-12 Facebook, Inc. Transmitting video clips of viewers' reactions during a broadcast of a live video stream

Also Published As

Publication number Publication date
CN113949895A (zh) 2022-01-18
US20180234738A1 (en) 2018-08-16
US11706494B2 (en) 2023-07-18
CN110521209B (zh) 2021-11-19
EP3583782A1 (en) 2019-12-25
US20200275159A1 (en) 2020-08-27
WO2018151741A1 (en) 2018-08-23
EP3583782A4 (en) 2019-12-25
CN110521209A (zh) 2019-11-29
US10652618B2 (en) 2020-05-12

Similar Documents

Publication Publication Date Title
US11706494B2 (en) Transmitting video clips of viewers' reactions during a broadcast of a live video stream
US10771513B2 (en) Multi-user content presentation system
US11366630B2 (en) Multi-user media presentation system
US10425663B2 (en) Providing enhanced live video
US10430051B2 (en) Multi-user content presentation system
US10917666B2 (en) Providing a start trigger for a live video broadcast
US11470026B2 (en) Social networking interactions with portions of digital videos
KR101913793B1 (ko) 플랫폼 쇼 페이지
US11601708B2 (en) Synchronizing streams of co-watching digital video content while providing live digital video chat streams across multiple client devices
US10771737B2 (en) Transitioning a telephone network phone call to a video call
US20180146223A1 (en) Enhancing a live video
US20190132650A1 (en) Providing a slide show in a live video broadcast
KR20160046860A (ko) 컨텐츠 소유자 모듈

Legal Events

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