WO2020196167A1 - 情報処理装置 - Google Patents

情報処理装置 Download PDF

Info

Publication number
WO2020196167A1
WO2020196167A1 PCT/JP2020/012016 JP2020012016W WO2020196167A1 WO 2020196167 A1 WO2020196167 A1 WO 2020196167A1 JP 2020012016 W JP2020012016 W JP 2020012016W WO 2020196167 A1 WO2020196167 A1 WO 2020196167A1
Authority
WO
WIPO (PCT)
Prior art keywords
event
game
information
unit
ring buffer
Prior art date
Application number
PCT/JP2020/012016
Other languages
English (en)
French (fr)
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 株式会社ソニー・インタラクティブエンタテインメント
Priority to EP20779342.3A priority Critical patent/EP3952299A4/en
Priority to CN202080022706.1A priority patent/CN113615163A/zh
Priority to US17/436,830 priority patent/US20220176256A1/en
Priority to JP2021509260A priority patent/JP7162730B2/ja
Publication of WO2020196167A1 publication Critical patent/WO2020196167A1/ja

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N9/00Details of colour television systems
    • H04N9/79Processing of colour television signals in connection with recording
    • H04N9/80Transformation of the television signal for recording, e.g. modulation, frequency changing; Inverse transformation for playback
    • H04N9/82Transformation of the television signal for recording, e.g. modulation, frequency changing; Inverse transformation for playback the individual colour picture signal components being recorded simultaneously only
    • H04N9/8205Transformation of the television signal for recording, e.g. modulation, frequency changing; Inverse transformation for playback the individual colour picture signal components being recorded simultaneously only involving the multiplexing of an additional signal and the colour video signal
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/85Providing additional services to players
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/30Interconnection arrangements between game servers and game devices; Interconnection arrangements between game devices; Interconnection arrangements between game servers
    • A63F13/35Details of game servers
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/45Controlling the progress of the video game
    • A63F13/49Saving the game status; Pausing or ending the game
    • A63F13/493Resuming a game, e.g. after pausing, malfunction or power failure
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/45Controlling the progress of the video game
    • A63F13/49Saving the game status; Pausing or ending the game
    • A63F13/497Partially or entirely replaying previous game actions
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/85Providing additional services to players
    • A63F13/86Watching games played by other players
    • 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/442Monitoring of processes or resources, e.g. detecting the failure of a recording device, monitoring the downstream bandwidth, the number of times a movie has been viewed, the storage space available from the internal hard disk
    • H04N21/44213Monitoring of end-user related data
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N5/00Details of television systems
    • H04N5/76Television signal recording

Definitions

  • the present invention relates to a technique for recording a game moving image.
  • a user posts video data to a video sharing site
  • metadata such as video titles and comments are added to the video data.
  • the user views a video on a video sharing site, he / she inputs a search keyword and selects a video from the video list searched by the video sharing site.
  • Patent Document 1 includes a recording unit that records video data by a running game software, a metadata acquisition unit that acquires metadata indicating an execution state of the game software, and a game video data recorded in the recording unit.
  • an information processing device including a content generation unit that extracts game video data from a start point to an end point as content data.
  • the content generation unit refers to the time information indicating the timing when the metadata is acquired, and adds the metadata collected during the extraction period from the start point to the end point to the content data.
  • the time information of the metadata is used for the purpose of specifying the metadata collected during the extraction period, and is not added to the game video data (content data). When the content data is uploaded to the distribution server, the added metadata is used to search the content.
  • the user may want to watch a game video related to his or her play scene during game play.
  • the playback time of the game video distributed from the video distribution server is long, it takes time to find the scene to be viewed, so it is preferable to have a mechanism for jumping to a desired scene.
  • An object of the present invention is to provide a technique necessary for realizing the above-mentioned mechanism.
  • the information processing device has a first ring buffer that records a game moving image by running game software together with time information, and when an event occurs in the game. It includes an event information acquisition unit that acquires event information including an event code that identifies an event that has occurred from game software, and a second ring buffer that records the acquired event information together with time information synchronized with the first ring buffer.
  • the user plays the game software (console game) installed in the information processing device.
  • the game software outputs event information including an event code that identifies the event that has occurred to the system software.
  • the event occurs when there is a change in the progress of the game play or a change in the behavior of the player character or the game character.
  • the information processing device outputs the game video from a TV or the like, and at the same time, automatically records it in the background, and the user can upload the recorded game video to the distribution server.
  • the information processing device extracts the game video from the start point to the end point and uploads it to the distribution server.
  • the information processing device transmits the event information acquired between the start point and the end point to the event server together with the time information of the event information.
  • the search server receives a search request from the viewing user, the search server refers to the time-series data that associates the event that occurred between the start point and the end point of the game video with the occurrence time, and the play status of the viewing user. Search for game videos that match.
  • FIG. 1 shows an information processing system 1 according to an embodiment of the present invention.
  • the information processing system 1 includes a plurality of information processing devices 10a, 10b, 10c (hereinafter, referred to as "information processing device 10" unless otherwise specified) and a content server 12, which are the Internet or a LAN (Local Area). It is connected via a network 3 such as Network).
  • the access point (hereinafter referred to as “AP”) 8 has the functions of a wireless access point and a router, and the information processing device 10 connects to the AP 8 via wireless or wired to connect with the content server 12 on the network 3. Connect to be communicable.
  • the content server 12 provides a content sharing service such as a game video, and is shown here as a concept that controls the distribution server 14, the event server 16, and the search server 18.
  • the distribution server 14 accepts the upload of the game video from the distribution user and distributes it to the viewing user.
  • the event server 16 converts the event information transmitted from the information processing device 10 into time-series data suitable for searching.
  • the search server 18 receives the video search request from the viewing user, the search server 18 searches for the game video to be distributed from the distribution server 14 based on the time series data of the event.
  • the distribution server 14, the event server 16, and the search server 18 are configured as separate servers, and each of them may communicate via the network 3, but these servers may be formed as one. Further, the distribution server 14 and the event server 16 may be formed as one, the distribution server 14 and the search server 18 may be formed as one, or the event server 16 and the search server 18 may be formed as one. Good.
  • the information processing device 10 is wirelessly or wiredly connected to the input device 6 operated by the user, and the input device 6 outputs the information operated by the user to the information processing device 10.
  • the information processing device 10 receives the operation information from the input device 6, it reflects it in the processing of the system software or the game software, and outputs the processing result from the output device 4.
  • the information processing device 10 may be a game device (game console) that executes a game
  • the input device 6 may be a device that supplies user operation information to the information processing device 10 such as a game controller.
  • the input device 6 may be an input interface such as a keyboard or a mouse.
  • the auxiliary storage device 2 is a large-capacity storage device such as an HDD (hard disk drive) or a flash memory, and may be an external storage device connected to the information processing device 10 by USB (Universal Serial Bus) or the like, and also has a built-in storage device. It may be a device.
  • the output device 4 may be a television having a display for outputting an image and a speaker for outputting audio, or may be a computer display.
  • the output device 4 may be connected to the information processing device 10 with a wired cable, or may be wirelessly connected.
  • FIG. 1 shows an example in which the camera 7 is attached to the upper part of the output device 4, it may be arranged on the side or the lower part of the output device 4, and in any case, it is located in front of the output device 4. It is placed in a position where the user can be imaged.
  • the camera 7 may be a stereo camera.
  • the distribution server 14 provides a service for sharing the game image uploaded from the information processing device 10.
  • the distribution server 14 has a function of distributing the accumulated game image in response to a request from the viewing user and broadcasting the game image provided by the distribution user in real time.
  • the image distribution service provided by the distribution server 14 may limit the target users to registered members, or may be open to the public.
  • the event server 16 acquires an event information group associated with the uploaded game video from the information processing device 10.
  • the event server 16 converts the event information group into event time series data suitable for searching.
  • the event time series data is a data string in which an event that occurred between the start time and the end time of the game video and the occurrence time are associated with each other.
  • the event server 16 provides the event time series data to the search server 18.
  • the search server 18 When the search server 18 receives the search request for the game video from the information processing device 10 of the viewing user, the search server 18 refers to the event time series data and executes the search process for the game video stored in the content server 12.
  • the search request includes state information indicating the game play status of the viewing user, and the search server 18 searches for a game image to be distributed from the relationship between the state information and the event time series data.
  • FIG. 2 shows the hardware configuration of the information processing device 10.
  • the information processing device 10 includes a main power button 20, a power ON LED 21, a standby LED 22, a system controller 24, a clock 26, a device controller 30, a media drive 32, a USB module 34, a flash memory 36, a wireless communication module 38, and wired communication. It includes a module 40, a subsystem 50, and a main system 60.
  • the main system 60 includes a main CPU (Central Processing Unit), a memory and memory controller which are main storage devices, a GPU (Graphics Processing Unit), and the like.
  • the GPU is mainly used for arithmetic processing of game programs.
  • the main CPU has a function of starting the OS and executing the game program installed in the auxiliary storage device 2 under the environment provided by the OS.
  • the subsystem 50 includes a sub CPU, a memory as a main storage device, a memory controller, and the like, and does not include a GPU.
  • the main CPU has a function of executing a game program installed in the auxiliary storage device 2 or the ROM medium 44, while the sub CPU does not have such a function.
  • the sub CPU has a function of accessing the auxiliary storage device 2 and a function of transmitting and receiving data to and from the server device 5.
  • the sub CPU is configured to have only such a limited processing function, and therefore can operate with a smaller power consumption as compared with the main CPU.
  • the functions of these sub CPUs are executed when the main CPU is in the standby state.
  • the main power button 20 is an input unit for inputting operations from the user, and is provided on the front surface of the housing of the information processing device 10 to turn on or off the power supply to the main system 60 of the information processing device 10. Manipulated for.
  • the power ON LED 21 lights up when the main power button 20 is turned on, and the standby LED 22 lights up when the main power button 20 is turned off.
  • the system controller 24 detects that the user presses the main power button 20.
  • the clock 26 is a real-time clock that generates the current date and time information and supplies it to the system controller 24, the subsystem 50, and the main system 60.
  • the device controller 30 is configured as an LSI (Large-Scale Integrated Circuit) that executes information transfer between devices like a south bridge. As shown in the figure, devices such as a system controller 24, a media drive 32, a USB module 34, a flash memory 36, a wireless communication module 38, a wired communication module 40, a subsystem 50, and a main system 60 are connected to the device controller 30. Ru. The device controller 30 absorbs the difference in electrical characteristics and the difference in data transfer speed of each device, and controls the timing of data transfer.
  • LSI Large-Scale Integrated Circuit
  • the media drive 32 is a drive device that mounts and drives application software such as games and a ROM medium 44 that records license information, and reads programs, data, and the like from the ROM medium 44.
  • the ROM medium 44 is a read-only recording medium such as an optical disk, a magneto-optical disk, or a Blu-ray disc.
  • the USB module 34 is a module that connects to an external device with a USB cable.
  • the USB module 34 may be connected to the auxiliary storage device 2 and the camera 7 with a USB cable.
  • the flash memory 36 is an auxiliary storage device that constitutes an internal storage.
  • the wireless communication module 38 uses a communication protocol such as a Bluetooth (registered trademark) protocol or an IEEE802.11 protocol to wirelessly communicate with an input device 6, for example.
  • the wired communication module 40 communicates with an external device by wire and connects to the network 3 via, for example, AP8.
  • FIG. 3 shows a functional block of the information processing device 10.
  • the information processing device 10 includes a processing unit 100 and a communication unit 102.
  • the processing unit 100 includes the game software 110, the event information acquisition unit 120, the routing unit 122, the state management unit 124, the output processing unit 126, the first recording control unit 128, the second recording control unit 130, the recording unit 140, the memory 146, and the processing unit 100.
  • a shared processing unit 150 is provided.
  • the recording unit 140 has a first ring buffer 142 and a second ring buffer 144.
  • the sharing processing unit 150 includes a reception unit 152, a content extraction unit 154, an event extraction unit 156, a screenshot generation unit 158, a transmission processing unit 160, and an operation screen generation unit 162.
  • the communication unit 102 is represented as a configuration having the functions of the wireless communication module 38 and the wired communication module 40 shown in FIG. 2, the wireless communication module 38 is in charge of communication with the input device 6, and the wired communication module 40 is with the content server 12. In charge of communication.
  • each element described as a functional block that performs various processes can be composed of a circuit block, a memory, and other LSIs in terms of hardware, and is loaded into the memory in terms of software. It is realized by a program or the like. Therefore, it is understood by those skilled in the art that these functional blocks can be realized in various forms by hardware only, software only, or a combination thereof, and is not limited to any of them.
  • the game software 110 includes at least a game program, image data, audio data and a configuration file.
  • the game program receives the operation information of the input device 6 by the user and performs arithmetic processing for moving the player character in the virtual space.
  • the output processing unit 126 generates image data and audio data of the game and outputs them from the output device 4.
  • the output processing unit 126 may include a GPU (Graphics Processing Unit) that executes rendering processing and the like.
  • the game program When a preset event occurs in the progress of the game, the game program generates event information including an event code that identifies the event that has occurred and outputs it to the event information acquisition unit 120.
  • the game developer may put various events into the game as follows.
  • an activity When a task, goal, action, etc. that can be executed by a player in a game is called an "activity", when the player starts the activity, an event indicating that the activity has started occurs, and when the player finishes the activity, the activity is started. An event occurs indicating that it has ended. For example, in a "battle" activity with an enemy character, a battle start event occurs when the player starts a battle, and a battle end event occurs when the player ends the battle.
  • An event code is assigned to each event, and the game program generates event information by adding game data indicating the state of the game at the time of the event to the event code that identifies the event that occurred.
  • the game program may include information such as the place where the event occurs and the opponent in the game data.
  • the game data may include at least information that identifies the scene number in the game and information that indicates the location of the battle.
  • the game data includes information that identifies the scene number in the game, information that indicates the location of the battle, information that indicates whether or not the activity is completed, and the player's experience value that increases due to the end of the battle. And may be included.
  • the activity is completed when the final purpose of the activity (for example, defeating the last boss, annihilating the enemy, etc.) is achieved.
  • an event indicating that the weapon has been obtained occurs.
  • an event indicating that the weapon has been used occurs, and when the player uses the weapon from an enemy character, an event indicating that the player has used the weapon occurs.
  • the game program generates event information in which game data such as the type of weapon and the place where the weapon is obtained or used is added to the event code, and outputs the event information to the event information acquisition unit 120. In this way, the game developer may define various events and incorporate them into the game.
  • the game software 110 configuration file describes a list of event codes required to manage the user's play status.
  • the information required to manage the play status in the embodiment includes the event code related to the activity, but does not include the event code related to the weapon.
  • which type of event is used to manage the user's play status depends on the play status management policy, and events related to weapons and other types of events can be reflected in the user's play status management. It is possible.
  • the list of event codes is provided to the routing unit 122 before the start of gameplay.
  • the event information acquisition unit 120 acquires event information from the game software 110 and passes it to the routing unit 122.
  • all the event information is supplied to the second recording control unit 130, and the event information necessary for managing the user's play status is sent to the state management unit 124 according to the event code list. Supply.
  • the state management unit 124 records the latest state information indicating the user's play status in the memory 146.
  • the state management unit 124 updates the state information based on the event information. For example, the state management unit 124 may manage the play status of the user based on the following state information.
  • the state management unit 124 acquires the conversion table for converting the event code into the activity ID from the configuration file, so that "Activity_A”, “Activity_B”, “Activity_C”, “Activity_D”, and "Activity_E” are activated.
  • ID the conversion table for converting the event code into the activity ID from the configuration file, so that "Activity_A”, “Activity_B”, “Activity_C”, “Activity_D”, and "Activity_E” are activated.
  • ID The state management unit 124 updates the state information when the event information regarding the activity is supplied from the routing unit 122. For example, when a new activity start event is supplied, the state management unit 124 updates "Activity_A” and "Activity_B". In addition, when the activity that has been played so far is completed, the state management unit 124 updates "Activity_C".
  • the output processing unit 126 generates image data and audio data of the game, outputs them from the output device 4, and supplies them to the first recording control unit 128.
  • the image data and the audio data of the game are simply referred to as "game video” or "game video data”.
  • the information processing device 10 has a function of recording a game video output from the output device 4 in the background, and the first recording control unit 128 stores the game video data in the first ring buffer 142 as time information (time stamp). Record with.
  • the first ring buffer 142 is generated by setting the first start address and the first end address of the storage area of the auxiliary storage device 2. This ring buffer area may be preset at the time of shipment of the information processing apparatus 10.
  • the first recording control unit 128 records the game moving image by the running game software generated by the output processing unit 126 in the first ring buffer 142 together with the time stamp.
  • the first recording control unit 128 records image data in the first ring buffer 142 in the order of predetermined addresses from the first start address, and when recording up to the first end address, returns to the first start address and overwrites and records. Repeat it.
  • the first ring buffer 142 is set to record a game video for 20 minutes, and time information (time stamp) is added to the recorded game video.
  • time information time stamp
  • the event information acquisition unit 120 acquires event information including an event code that identifies the event that has occurred from the game software 110 and supplies it to the routing unit 122.
  • the routing unit 122 sends all the supplied event information to the second recording control unit 130, and the second recording control unit 130 records the event information in the second ring buffer 144 together with the time information (time stamp).
  • the second ring buffer 144 is generated by setting the second start address and the second end address of the storage area of the auxiliary storage device 2. Like the first ring buffer 142, this ring buffer area may be preset at the time of shipment of the information processing apparatus 10.
  • the second recording control unit 130 records event information in the second ring buffer 144 in the order of predetermined addresses from the second start address, and when it records up to the second end address, it returns to the second start address and overwrites and records it. repeat.
  • the second ring buffer 144 is set to record event information for the same time (for example, 20 minutes) as the first ring buffer 142, and time information (time stamp) is added to the recorded event information.
  • the time stamp recorded in the second ring buffer 144 is synchronized with the time stamp recorded in the first ring buffer 142. Therefore, when the game image is recorded in the first ring buffer 142 and the event information is recorded in the second ring buffer 144 at the same timing, the same time stamp is given to both.
  • FIG. 4A shows an example of the share menu screen 200 displayed superimposed on the game screen.
  • the reception unit 152 receives the operation information of the Share button, and the operation screen generation unit 162 superimposes and displays the share menu screen 200 on the game screen.
  • the share menu screen 200 -Upload video clips-Upload screenshots-Broadcast gameplay-Start share play and you'll be presented with four options for sharing game images.
  • the first recording control unit 128 and the second recording control unit 130 stop writing to the first ring buffer 142 and the second ring buffer 144.
  • the first ring buffer 142 and the second ring buffer 144 store a record of 20 minutes before the operation of the Share button.
  • the operation information of the input device 6 is used for the operation of the share menu screen 200.
  • User A selects "Upload Video Clip”. Then, the user A selects the distribution server 14 for uploading the game video.
  • the distribution server 14 may exist, in which case the user A needs to select one or more distribution servers 14.
  • the operation screen generation unit 162 generates a screen for editing the game video.
  • FIG. 4B shows the trimming edit screen 202.
  • the game video of a maximum of 20 minutes is recorded in the first ring buffer 142, but depending on the distribution server 14, uploading of a game video shorter than 20 minutes may be permitted. Therefore, the user A cuts out the game video to a length that can be uploaded on the trimming edit screen 202.
  • the user A operates the input device 6 to specify a start point and an end point for cutting out the game moving image.
  • the reception unit 152 receives the designation of the start point and the end point from the user A, the reception unit 152 notifies the content extraction unit 154 and the event extraction unit 156.
  • the content extraction unit 154 extracts the game video from the start point to the end point among the game videos recorded in the first ring buffer 142 together with the time stamp, and the event extraction unit 156 is recorded in the second ring buffer 144.
  • the event information the event information from the same start point to the end point is extracted together with the time stamp.
  • the extracted event information from the start point to the end point is referred to as an "event information group”. Note that the user A may set a start point and an end point and cut out a play scene that he / she likes regardless of the video allowable time of the distribution server 14.
  • FIG. 5 shows the relationship between the extracted game video and the event information. Since the first ring buffer 142 and the second ring buffer 144 share a common time stamp, it is possible to align the timelines of the extracted game moving images and event information.
  • the content extraction unit 154 adds at least the game identification information (game ID) and the content identification information (content ID) as attribute information to the extracted game video. Information that identifies the user A may be added. The content ID needs to be unique in the information processing system 1.
  • the content extraction unit 154 provides the content ID to the event extraction unit 156, and the event extraction unit 156 adds the game ID and the content ID as attribute information to the extracted event information group.
  • the transmission processing unit 160 transmits the game video extracted by the content extraction unit 154 to the distribution server 14.
  • Game videos are uploaded to the distribution server 14 from information processing devices 10 of a plurality of users, and users who wish to distribute the game videos access the distribution server 14 and watch the game videos.
  • the transmission processing unit 160 transmits the event information group extracted by the event extraction unit 156 to the event server 16.
  • the event information group is a set of combinations of event codes and game data, but since the event codes and game data are defined by the game developer, they are different for each game. Therefore, the event server 16 converts the event code and the game data included in the event information group into the event code and the game data commonly used by the content server 12 by using the conversion table provided by the game developer.
  • the activity start event occurs.
  • the event code of the activity start event may be "missionStart”
  • the event code of the activity start event may be "taskStart”
  • the event server 16 sets the event code of the activity start event. Convert to "START”. Therefore, the event server 16 holds a table that converts "missionStart” to "START” for game X, and holds a table that converts "taskStart” to "START” for game Y. In this way, the event server 16 converts the event information of all the games into the event code and the game data commonly used in the content server 12.
  • event time series data When the converted event code and game data are called "event time series data", the scene numbers in the activities included in the game data before conversion are converted into activity IDs by the conversion table.
  • the event server 16 supplies the event time-series data to the search server 18, and the search server 18 can identify the type and time of the event that occurred in the game video by analyzing the event time-series data.
  • the above is the procedure for the user A to send the game video and the event information group to the content server 12.
  • a procedure in which the user B who operates the information processing device 10b accesses the content server 12 and watches the game video will be described.
  • the user B can receive the distribution of the game video that matches the current play situation by performing a predetermined operation during the game play.
  • the state management unit 124 manages the state information indicating the play status of the user B in the memory 146.
  • the state information "Activity_A”, “Activity_B”, “Activity_C”, “Activity_D”, and “Activity_E” are managed by the activity ID.
  • the content server 12 can provide a list of game video candidates that match the current play situation.
  • the information processing device 10b receives the predetermined operation of the user B, the information processing device 10b transmits a search request for the game video to the search server 18. At this time, the information processing device 10b includes the game ID being played and the state information managed by the state management unit 124 in the search request.
  • FIG. 6 shows a functional block of the search server 18.
  • the search server 18 includes a search processing unit 210 and a communication unit 212.
  • the search processing unit 210 includes an event time series data acquisition unit 220, a search request acquisition unit 222, a state information acquisition unit 224, a candidate extraction unit 226, and a recording device 230.
  • each element described as a functional block that performs various processes can be composed of a circuit block, a memory, and other LSIs in terms of hardware, and is loaded into the memory in terms of software. It is realized by a program or the like. Therefore, it is understood by those skilled in the art that these functional blocks can be realized in various forms by hardware only, software only, or a combination thereof, and is not limited to any of them.
  • the event time series data acquisition unit 220 acquires the event time series data of the game video from the event server 16 and stores it in the recording device 230. It is preferable that the event server 16 generates event time series data and provides it to the search server 18 as soon as the event information is transmitted from the information processing device 10. A game ID and a content ID are added to the event time series data.
  • the search request acquisition unit 222 receives a search request for a game video from the information processing device 10b of the user B who is a viewing user.
  • the state information acquisition unit 224 acquires the game ID being played by the user B and the state information managed for the game from the search request.
  • the candidate extraction unit 226 identifies the event time series data to which the game ID being played by the user B is added, and searches for the game video that matches the state information of the user B.
  • the activity ID of "Activity_A” identifies the activity currently being played, so the candidate extraction unit 226 uses event time series data including the end event of the activity indicated by the activity ID of "Activity_A”. May be specified. This makes it possible to identify a game video including a video in which the activity is completed.
  • the activity ID included in "Activity_B” indicates an activity that has been played so far. Therefore, the candidate extraction unit 226 may not select the event time series data including the activity ID not included in "Activity_B” from the viewpoint of preventing spoilers. This prevents the candidate video from including activities that User B has never played.
  • the candidate extraction unit 226 specifies a plurality of event time series data that match the state information of the user B, the candidate extraction unit 226 notifies the distribution server 14 of the content IDs of the plurality of event time series data.
  • the distribution server 14 identifies the game video from the content ID, and transmits a list of thumbnails of the game video to the information processing device 10b. When the user B selects one thumbnail, the distribution server 14 distributes the selected game video. As a result, the user B can watch the game video that matches the current play situation without inputting the search keyword.
  • the game video may be started from the time position of the activity start event code of "Activity_A".
  • the distribution server 14 may specify the spoiler section and prevent the spoiler section from being distributed. In this way, the distribution server 14 can identify scenes to be preferentially distributed and scenes that cannot be distributed from the event time series data and the state information of the user B.
  • user A can upload a screenshot.
  • the screenshot generator 158 acquires the screenshot of the game screen.
  • the screenshot generation unit 158 reads at least a part of the latest state information at the time of acquiring the screenshot from the memory 146 and adds it to the screenshot image as metadata.
  • the screenshot generation unit 158 can manage the screenshot so that another user cannot see the screenshot from the viewpoint of preventing spoilers.
  • the present invention can be used in the technical field of recording game moving images.
  • 1 ... Information processing system 10 ... Information processing device, 12 ... Content server, 14 ... Distribution server, 16 ... Event server, 18 ... Search server, 100 ... Processing unit , 102 ... communication unit, 110 ... game software, 120 ... event information acquisition unit, 122 ... routing unit, 124 ... state management unit, 126 ... output processing unit, 128 ... 1st recording control unit, 130 ... 2nd recording control unit, 140 ... recording unit, 142 ... 1st ring buffer, 144 ... 2nd ring buffer, 146 ... memory, 150.
  • Sharing processing unit 152 ... Reception department, 154 ... Content extraction unit, 156 ... Event extraction unit, 158 ... Screenshot generation unit, 160 ...
  • Transmission processing unit 162 ... Operation screen generation unit, 210 ... Search processing unit, 212 ... Communication unit, 220 ... Event time series data acquisition unit, 222 ... Search request acquisition unit, 224 ... Status information acquisition unit, 226 ... Candidate extraction unit, 230 ... Recording device.

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Social Psychology (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Databases & Information Systems (AREA)
  • Information Transfer Between Computers (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

第1リングバッファ142は、実行中のゲームソフトウェア110によるゲーム動画を、時間情報とともに記録する。イベント情報取得部120は、ゲーム内でイベントが発生した場合に、発生したイベントを識別するイベントコードを含むイベント情報をゲームソフトウェア110から取得する。第2リングバッファ144は、取得したイベント情報を、第1リングバッファ142と同期した時間情報とともに記録する。

Description

情報処理装置
 本発明は、ゲーム動画を記録する技術に関する。
 ユーザが動画データを動画共有サイトに投稿する際、動画タイトルやコメントなどのメタデータを動画データに付加する。またユーザが動画を動画共有サイトで視聴する際、検索キーワードを入力し、動画共有サイトにより探索された動画リストの中から動画を選択する。
 従来の動画共有サービスでユーザは、希望する動画に容易にたどり着けない。これは、動画検索の際に、適切な検索キーワードを入力することが難しいこと、また動画共有サイトに投稿された動画に、適切なメタデータが付加されていないことを理由とする。そのため動画共有サイトは、多くの動画を蓄積していても、ユーザのニーズにマッチした動画を提供できていない。
 特許文献1は、実行中のゲームソフトウェアによる動画データを記録する記録部と、ゲームソフトウェアの実行状態を示すメタデータを取得するメタデータ取得部と、記録部に記録されたゲーム動画データのうち、開始点から終了点までのゲーム動画データを、コンテンツデータとして抽出するコンテンツ生成部とを備えた情報処理装置を開示する。コンテンツ生成部は、メタデータが取得されたタイミングを示す時間情報を参照して、開始点から終了点までの抽出期間に収集されたメタデータをコンテンツデータに付加する。なおメタデータの時間情報は、抽出期間に収集されたメタデータを特定する目的で利用され、ゲーム動画データ(コンテンツデータ)には付加されない。コンテンツデータが配信サーバにアップロードされると、付加されたメタデータはコンテンツの検索に利用される。
特開2015-198404号公報
 ユーザはゲームプレイ中に、自分のプレイシーンに関係するゲーム動画を視聴したいことがある。このとき動画配信サーバから配信されるゲーム動画の再生時間が長いと、視聴したいシーンを探し出すのに時間がかかるため、所望のシーンにジャンプできるような仕組みがあると好ましい。またネタバレ防止の側面から、ゲーム動画内で、ユーザのプレイ状況に対応するネタバレ区間を特定できる仕組みがあると好ましい。
 本発明は、上記した仕組みを実現するために必要となる技術を提供することを目的とする。
 上記課題を解決するために、本発明のある態様の情報処理装置は、実行中のゲームソフトウェアによるゲーム動画を、時間情報とともに記録する第1リングバッファと、ゲーム内でイベントが発生した場合に、発生したイベントを識別するイベントコードを含むイベント情報をゲームソフトウェアから取得するイベント情報取得部と、取得したイベント情報を、第1リングバッファと同期した時間情報とともに記録する第2リングバッファとを備える。
 なお、以上の構成要素の任意の組合せ、本発明の表現を方法、装置、システム、記録媒体、コンピュータプログラムなどの間で変換したものもまた、本発明の態様として有効である。
実施例にかかる情報処理システムを示す図である。 情報処理装置のハードウェア構成を示す図である。 情報処理装置の機能ブロックを示す図である。 出力装置の画面例を示す図である。 ゲーム動画とイベント情報の関係を示す図である。 検索サーバの機能ブロックを示す図である。
 実施例の情報処理システムでは、ユーザが、情報処理装置にインストールされたゲームソフトウェア(コンソールゲーム)をプレイする。ゲームソフトウェアは、ゲーム内でイベントが発生すると、発生したイベントを識別するイベントコードを含むイベント情報をシステムソフトウェア側に出力する。イベントは、ゲームプレイの進行に変化があったり、プレイヤキャラクタやゲームキャラクタの行動に変化があったときに発生する。
 情報処理装置は、ゲーム動画をテレビなどから出力させると同時に、バックグランドで自動的に記録し、ユーザは、録画されたゲーム動画を配信サーバにアップロードできる。ユーザが、録画されたゲーム動画の開始点および終了点を手動で定めると、情報処理装置は、開始点から終了点までのゲーム動画を抽出して、配信サーバにアップロードする。このとき情報処理装置は、開始点から終了点までの間に取得したイベント情報を、イベント情報の時間情報とともにイベントサーバに送信する。検索サーバは、視聴ユーザから検索要求を受け付けると、ゲーム動画の開始点から終了点までの間に発生したイベントとその発生時間とを対応付けた時系列データを参照して、視聴ユーザのプレイ状況にマッチしたゲーム動画を検索する。
 図1は、本発明の実施例にかかる情報処理システム1を示す。情報処理システム1は、複数の情報処理装置10a、10b、10c(以下、特に区別しない場合は「情報処理装置10」と呼ぶ)と、コンテンツサーバ12とを備え、これらはインターネットやLAN(Local Area Network)などのネットワーク3を介して接続している。アクセスポイント(以下、「AP」とよぶ)8は、無線アクセスポイントおよびルータの機能を有し、情報処理装置10は、無線または有線経由でAP8に接続して、ネットワーク3上のコンテンツサーバ12と通信可能に接続する。
 コンテンツサーバ12は、ゲーム動画などのコンテンツ共有サービスを提供し、ここでは配信サーバ14、イベントサーバ16および検索サーバ18を統括した概念として示されている。配信サーバ14は、配信ユーザからゲーム動画のアップロードを受け付け、視聴ユーザに配信する。イベントサーバ16は、情報処理装置10から送信されたイベント情報を、検索に適した時系列データに変換する。検索サーバ18は視聴ユーザから動画検索要求を受け付けると、イベントの時系列データにもとづいて配信サーバ14から配信するゲーム動画を探し出す。
 配信サーバ14、イベントサーバ16および検索サーバ18は、別個のサーバとして構成され、各々がネットワーク3を介して通信してよいが、これらのサーバは一体として形成されてもよい。また配信サーバ14とイベントサーバ16とが一体として形成されてもよく、配信サーバ14と検索サーバ18とが一体として形成されてもよく、イベントサーバ16と検索サーバ18とが一体として形成されてもよい。
 情報処理装置10は、ユーザが操作する入力装置6と無線または有線で接続し、入力装置6はユーザが操作した情報を情報処理装置10に出力する。情報処理装置10は入力装置6から操作情報を受け付けるとシステムソフトウェアやゲームソフトウェアの処理に反映し、出力装置4から処理結果を出力させる。情報処理システム1において情報処理装置10はゲームを実行するゲーム装置(ゲームコンソール)であり、入力装置6はゲームコントローラなど情報処理装置10に対してユーザの操作情報を供給する機器であってよい。なお入力装置6は、キーボードやマウスなどの入力インタフェースであってもよい。
 補助記憶装置2は、HDD(ハードディスクドライブ)やフラッシュメモリなどの大容量記憶装置であり、USB(Universal Serial Bus)などによって情報処理装置10と接続する外部記憶装置であってよく、また内蔵型記憶装置であってもよい。出力装置4は、画像を出力するディスプレイおよび音声を出力するスピーカを有するテレビであってよく、またコンピュータディスプレイであってもよい。出力装置4は、情報処理装置10に有線ケーブルで接続されてよく、また無線接続されてもよい。
 撮像装置であるカメラ7は出力装置4の近傍に設けられ、出力装置4周辺の空間を撮像する。図1ではカメラ7が出力装置4の上部に取り付けられている例を示しているが、出力装置4の側部または下部に配置されてもよく、いずれにしても出力装置4の前方に位置するユーザを撮像できる位置に配置される。カメラ7はステレオカメラであってもよい。
 配信サーバ14は、情報処理装置10からアップロードされるゲーム画像を共有するためのサービスを提供する。配信サーバ14は、蓄積したゲーム画像を視聴ユーザからの要求に応じて配信し、また配信ユーザからリアルタイムで提供されるゲーム画像をブロードキャストする機能を有する。配信サーバ14は複数存在してよい。配信サーバ14により提供される画像配信サービスは、対象とするユーザを登録会員に限定してもよく、また一般に開放してもよい。
 イベントサーバ16は、情報処理装置10から、アップロードされたゲーム動画に関連付けられるイベント情報群を取得する。イベントサーバ16は、イベント情報群を、検索に適したイベント時系列データに変換する。イベント時系列データは、ゲーム動画の開始時間から終了時間までの間に発生したイベントとその発生時間とを対応付けたデータ列である。イベントサーバ16は、イベント時系列データを検索サーバ18に提供する。
 検索サーバ18は、視聴ユーザの情報処理装置10からゲーム動画の検索要求を受け取ると、イベント時系列データを参照して、コンテンツサーバ12に蓄積したゲーム動画の検索処理を実施する。検索要求には、視聴ユーザのゲームのプレイ状況を示す状態情報が含まれ、検索サーバ18は、状態情報とイベント時系列データの関係から、配信対象となるゲーム画像を探索する。
 図2は、情報処理装置10のハードウェア構成を示す。情報処理装置10は、メイン電源ボタン20、電源ON用LED21、スタンバイ用LED22、システムコントローラ24、クロック26、デバイスコントローラ30、メディアドライブ32、USBモジュール34、フラッシュメモリ36、無線通信モジュール38、有線通信モジュール40、サブシステム50およびメインシステム60を有して構成される。
 メインシステム60は、メインCPU(Central Processing Unit)、主記憶装置であるメモリおよびメモリコントローラ、GPU(Graphics Processing Unit)などを備える。GPUはゲームプログラムの演算処理に主として利用される。メインCPUはOSを起動し、OSが提供する環境下において、補助記憶装置2にインストールされたゲームプログラムを実行する機能をもつ。サブシステム50は、サブCPU、主記憶装置であるメモリおよびメモリコントローラなどを備え、GPUを備えない。
 メインCPUは補助記憶装置2やROM媒体44にインストールされているゲームプログラムを実行する機能をもつ一方で、サブCPUはそのような機能をもたない。しかしながらサブCPUは補助記憶装置2にアクセスする機能、サーバ装置5との間でデータを送受信する機能を有している。サブCPUは、このような制限された処理機能のみを有して構成されており、したがってメインCPUと比較して小さい消費電力で動作できる。これらのサブCPUの機能は、メインCPUがスタンバイ状態にある際に実行される。
 メイン電源ボタン20は、ユーザからの操作入力が行われる入力部であって、情報処理装置10の筐体の前面に設けられ、情報処理装置10のメインシステム60への電源供給をオンまたはオフするために操作される。電源ON用LED21は、メイン電源ボタン20がオンされたときに点灯し、スタンバイ用LED22は、メイン電源ボタン20がオフされたときに点灯する。システムコントローラ24は、ユーザによるメイン電源ボタン20の押下を検出する。
 クロック26はリアルタイムクロックであって、現在の日時情報を生成し、システムコントローラ24やサブシステム50およびメインシステム60に供給する。
 デバイスコントローラ30は、サウスブリッジのようにデバイス間の情報の受け渡しを実行するLSI(Large-Scale Integrated Circuit)として構成される。図示のように、デバイスコントローラ30には、システムコントローラ24、メディアドライブ32、USBモジュール34、フラッシュメモリ36、無線通信モジュール38、有線通信モジュール40、サブシステム50およびメインシステム60などのデバイスが接続される。デバイスコントローラ30は、それぞれのデバイスの電気特性の違いやデータ転送速度の差を吸収し、データ転送のタイミングを制御する。
 メディアドライブ32は、ゲームなどのアプリケーションソフトウェア、およびライセンス情報を記録したROM媒体44を装着して駆動し、ROM媒体44からプログラムやデータなどを読み出すドライブ装置である。ROM媒体44は、光ディスクや光磁気ディスク、ブルーレイディスクなどの読出専用の記録メディアである。
 USBモジュール34は、外部機器とUSBケーブルで接続するモジュールである。USBモジュール34は補助記憶装置2およびカメラ7とUSBケーブルで接続してもよい。フラッシュメモリ36は、内部ストレージを構成する補助記憶装置である。無線通信モジュール38は、Bluetooth(登録商標)プロトコルやIEEE802.11プロトコルなどの通信プロトコルで、たとえば入力装置6と無線通信する。有線通信モジュール40は、外部機器と有線通信し、たとえばAP8を介してネットワーク3に接続する。
 図3は、情報処理装置10の機能ブロックを示す。情報処理装置10は、処理部100および通信部102を備える。処理部100は、ゲームソフトウェア110、イベント情報取得部120、ルーティング部122、状態管理部124、出力処理部126、第1記録制御部128、第2記録制御部130、記録部140、メモリ146および共有処理部150を備える。記録部140は、第1リングバッファ142および第2リングバッファ144を有する。共有処理部150は、受付部152、コンテンツ抽出部154、イベント抽出部156、スクリーンショット生成部158、送信処理部160および操作画面生成部162を有する。通信部102は図2に示す無線通信モジュール38および有線通信モジュール40の機能を併せ持つ構成として表現され、無線通信モジュール38は入力装置6との通信を担当し、有線通信モジュール40はコンテンツサーバ12との通信を担当する。
 図3において、さまざまな処理を行う機能ブロックとして記載される各要素は、ハードウェア的には、回路ブロック、メモリ、その他のLSIで構成することができ、ソフトウェア的には、メモリにロードされたプログラムなどによって実現される。したがって、これらの機能ブロックがハードウェアのみ、ソフトウェアのみ、またはそれらの組合せによっていろいろな形で実現できることは当業者には理解されるところであり、いずれかに限定されるものではない。
 ゲームソフトウェア110は、少なくともゲームプログラム、画像データ、音声データおよびコンフィギュレーションファイルを含む。ゲームプログラムは、ユーザによる入力装置6の操作情報を受けて、仮想空間においてプレイヤキャラクタを動かす演算処理を行う。出力処理部126は、ゲームの画像データおよび音声データを生成して、出力装置4から出力させる。出力処理部126は、レンダリング処理などを実行するGPU(Graphics Processing Unit)を含んでよい。
 ゲームプログラムは、ゲームの進行において予め設定したイベントが発生すると、発生したイベントを識別するイベントコードを含むイベント情報を生成して、イベント情報取得部120に出力する。ゲーム開発者は、以下のように様々なイベントをゲームに仕込んでよい。
 ゲーム内でプレイヤが実行できるタスクや目標、行為等を「アクティビティ」と呼ぶと、プレイヤがアクティビティを開始したとき、アクティビティを開始したことを示すイベントが発生し、プレイヤがアクティビティを終了すると、アクティビティを終了したことを示すイベントが発生する。たとえば敵キャラクタとの「戦闘」のアクティビティでは、プレイヤが戦闘を開始すると、戦闘開始イベントが発生し、プレイヤが戦闘を終了すると、戦闘終了イベントが発生する。
 各イベントにはイベントコードが割り当てられ、ゲームプログラムは、発生したイベントを識別するイベントコードに、イベント発生時のゲームの状態を示すゲームデータを付加したイベント情報を生成する。ゲームプログラムは、ゲームデータに、イベントの発生場所や相手の情報などを含ませてよい。たとえば、戦闘開始イベントに関して、ゲームデータは、ゲーム内でのシーン番号を特定する情報と、戦闘の場所を示す情報を少なくとも含んでよい。戦闘終了イベントに関して、ゲームデータは、ゲーム内でのシーン番号を特定する情報と、戦闘の場所を示す情報と、アクティビティが完了したか否かを示す情報と、戦闘終了により上昇するプレイヤの経験値とを含んでよい。なおアクティビティは、当該アクティビティにおける最終目的(たとえばラスボスを倒す、敵を全滅させる等)を達成したときに完了となる。
 またゲームプレイ中、プレイヤが武器を入手すると、武器を入手したことを示すイベントが発生する。プレイヤが武器を使用すると、武器を使用したことを示すイベントが発生し、プレイヤが敵キャラクタから武器を使用されると、プレイヤが武器を使用されたことを示すイベントが発生する。ゲームプログラムは、イベントコードに、武器の種類や、武器を入手または使用した場所等のゲームデータを付加したイベント情報を生成し、イベント情報取得部120に出力する。このようにゲーム開発者は、様々なイベントを定義してゲームに組み込んでよい。
 ゲームソフトウェア110のコンフィギュレーションファイルは、ユーザのプレイ状況を管理するために必要なイベントコードのリストを記述する。実施例でプレイ状況の管理に必要な情報は、アクティビティに関するイベントコードを含むが、武器に関するイベントコードを含まない。なお、どの種類のイベントを利用してユーザのプレイ状況を管理するかは、プレイ状況の管理方針に依存し、武器に関するイベントや他の種類のイベントをユーザのプレイ状況の管理に反映させることも可能である。
 イベントコードのリストは、ゲームプレイの開始前にルーティング部122に提供される。イベント情報取得部120はゲームソフトウェア110からイベント情報を取得し、ルーティング部122に渡す。ルーティング部122はイベント情報を渡されると、全てのイベント情報を第2記録制御部130に供給するとともに、イベントコードリストにしたがって、ユーザのプレイ状況の管理に必要なイベント情報を状態管理部124に供給する。
 状態管理部124は、メモリ146に、ユーザのプレイ状況を示す最新の状態情報を記録する。状態管理部124は、イベント情報にもとづいて、状態情報を更新する。たとえば状態管理部124は、以下の状態情報により、ユーザのプレイ状況を管理してよい。
・Activity_A
 直近に開始したアクティビティを示す
・Activity_B
 これまでプレイしたことのあるアクティビティを示す
・Activity_C
 これまでクリアしたことのあるアクティビティを示す
・Activity_D
 プレイ可能なアクティビティを示す
・Activity_E
 プレイ不可能なアクティビティを示す
 上記の状態情報は、いずれもアクティビティの識別情報(アクティビティID)で管理される。状態管理部124はイベントコードをアクティビティIDに変換するための変換テーブルをコンフィギュレーションファイルから取得しておくことで、"Activity_A"、"Activity_B"、"Activity_C"、"Activity_D"、"Activity_E"をアクティビティIDで管理する。状態管理部124は、アクティビティに関するイベント情報がルーティング部122から供給されると、状態情報を更新する。たとえば、新たなアクティビティの開始イベントが供給されると、状態管理部124は"Activity_A"、"Activity_B"を更新する。また、これまでプレイしてきたアクティビティが完了すると、状態管理部124は"Activity_C"を更新する。
 実施例の情報処理装置10では、出力処理部126が、ゲームの画像データおよび音声データを生成して、出力装置4から出力させるとともに、第1記録制御部128にも供給する。以下、ゲームの画像データおよび音声データを、単に「ゲーム動画」または「ゲーム動画データ」と呼ぶ。情報処理装置10は、出力装置4から出力されるゲーム動画をバックグランドで録画する機能を有し、第1記録制御部128は、ゲーム動画データを第1リングバッファ142に時間情報(タイムスタンプ)とともに記録する。
 第1リングバッファ142は、補助記憶装置2の記憶領域の第1開始アドレスおよび第1終了アドレスを設定されることで生成される。このリングバッファ領域は、情報処理装置10の出荷時に予め設定されていてよい。第1記録制御部128は、出力処理部126で生成された、実行中のゲームソフトウェアによるゲーム動画を、タイムスタンプとともに第1リングバッファ142に記録する。
 第1記録制御部128は、第1リングバッファ142に画像データを第1開始アドレスから予め定められたアドレス順に記録し、第1終了アドレスまで記録すると、第1開始アドレスに戻って上書き記録し、それを繰り返す。たとえば第1リングバッファ142は、20分間のゲーム動画を記録するように設定され、記録されたゲーム動画には、時間情報(タイムスタンプ)が付与される。ゲーム動画を第1リングバッファ142にバックグランド録画しておくことで、ユーザは、20分前までのプレイ動画を切り出して、配信サーバ14にアップロードできる。
 ゲーム内でイベントが発生すると、イベント情報取得部120は、発生したイベントを識別するイベントコードを含むイベント情報をゲームソフトウェア110から取得し、ルーティング部122に供給する。ルーティング部122は、供給された全てのイベント情報を第2記録制御部130に送り、第2記録制御部130は、イベント情報を第2リングバッファ144に時間情報(タイムスタンプ)とともに記録する。
 第2リングバッファ144は、補助記憶装置2の記憶領域の第2開始アドレスおよび第2終了アドレスを設定されることで生成される。このリングバッファ領域は、第1リングバッファ142と同じく、情報処理装置10の出荷時に予め設定されていてよい。第2記録制御部130は第2リングバッファ144にイベント情報を第2開始アドレスから予め定められたアドレス順に記録し、第2終了アドレスまで記録すると、第2開始アドレスに戻って上書き記録し、それを繰り返す。第2リングバッファ144は、第1リングバッファ142と同じ時間(たとえば20分間)のイベント情報を記録するように設定され、記録されたイベント情報には、時間情報(タイムスタンプ)が付与される。第2リングバッファ144に記録されるタイムスタンプは、第1リングバッファ142に記録されるタイムスタンプと同期している。そのため同じタイミングで第1リングバッファ142にゲーム画像が記録され、第2リングバッファ144にイベント情報が記録されると、両者には同じタイムスタンプが付与される。
 以下、ユーザAがゲームプレイ中に、ゲーム動画を配信サーバ14にアップロードする手順について説明する。ユーザAが入力装置6の所定のボタン(Shareボタン)を押すと、ゲーム画像の共有に関する複数の選択肢が出力装置4に表示される。
 図4(a)は、ゲーム画面に重畳して表示されるシェアメニュー画面200の例を示す。ユーザAがゲームプレイ中に入力装置6に設けられたShareボタンを操作すると、受付部152が、Shareボタンの操作情報を受け付け、操作画面生成部162が、ゲーム画面に重畳表示するシェアメニュー画面200を生成する。シェアメニュー画面200には、
・ビデオクリップをアップロードする
・スクリーンショットをアップロードする
・ゲームプレイをブロードキャストする
・シェアプレイを始める
 と、ゲーム画像共有に関する4つの選択肢が示される。このときゲームの進行は一時停止され、同時に、第1記録制御部128および第2記録制御部130は、第1リングバッファ142および第2リングバッファ144への書き込みを停止する。これにより第1リングバッファ142および第2リングバッファ144では、Shareボタンの操作前の20分間の記録が保存される。
 シェアメニュー画面200が表示されると、入力装置6の操作情報は、シェアメニュー画面200の操作に利用される。ゲーム動画をアップロードするために、ユーザAは「ビデオクリップをアップロードする」を選択する。それからユーザAは、ゲーム動画をアップロードする配信サーバ14を選択する。図1には、一つの配信サーバ14のみが示されているが、複数の配信サーバ14が存在してよく、その場合、ユーザAは、1つ以上の配信サーバ14を選択する必要がある。ユーザAが配信サーバ14を選択すると、操作画面生成部162は、ゲーム動画を編集するための画面を生成する。
 図4(b)は、トリミング編集画面202を示す。実施例では、最長で20分間のゲーム動画が第1リングバッファ142に記録されているが、配信サーバ14によっては、20分よりも短いゲーム動画しかアップロードを許可しないこともある。そこでユーザAはトリミング編集画面202において、ゲーム動画を、アップロード可能な長さに切り出す。ユーザAは入力装置6を操作して、ゲーム動画を切り出す開始点と終了点を指定する。受付部152は、ユーザAから開始点と終了点の指定を受け付けると、コンテンツ抽出部154およびイベント抽出部156に通知する。コンテンツ抽出部154は、第1リングバッファ142に記録されたゲーム動画のうち、開始点から終了点までのゲーム動画をタイムスタンプとともに抽出し、イベント抽出部156は、第2リングバッファ144に記録されたイベント情報のうち、同じ開始点から終了点までのイベント情報をタイムスタンプとともに抽出する。以下、抽出された開始点から終了点までのイベント情報を、「イベント情報群」と呼ぶ。なおユーザAは、配信サーバ14の動画許容時間に関係なく、開始点および終了点を定めて自分の気に入ったプレイシーンを切り出してもよい。
 図5は、抽出されたゲーム動画とイベント情報の関係を示す。第1リングバッファ142と第2リングバッファ144がタイムスタンプを共通としていることで、抽出されるゲーム動画およびイベント情報のタイムラインを揃えることができる。コンテンツ抽出部154は、抽出したゲーム動画に、少なくともゲーム識別情報(ゲームID)およびコンテンツ識別情報(コンテンツID)を属性情報として付加する。なおユーザAを特定する情報を付加してもよい。コンテンツIDは、情報処理システム1において唯一のものである必要がある。コンテンツ抽出部154は、コンテンツIDをイベント抽出部156に提供し、イベント抽出部156は、抽出したイベント情報群に、ゲームIDおよびコンテンツIDを属性情報として付加する。
 送信処理部160は、コンテンツ抽出部154により抽出されたゲーム動画を、配信サーバ14に送信する。配信サーバ14には、複数のユーザの情報処理装置10からゲーム動画がアップロードされ、ゲーム動画の配信を希望するユーザは、配信サーバ14にアクセスして、ゲーム動画を視聴する。
 送信処理部160は、イベント抽出部156により抽出されたイベント情報群を、イベントサーバ16に送信する。イベント情報群は、イベントコードおよびゲームデータの組合せの集合であるが、イベントコードおよびゲームデータは、ゲーム開発者により定義されるため、ゲーム毎に異なっている。そこでイベントサーバ16は、イベント情報群に含まれるイベントコードおよびゲームデータを、ゲーム開発者から提供される変換テーブルを用いて、コンテンツサーバ12で共通使用するイベントコードおよびゲームデータに変換する。
 この変換処理について説明する。プレイヤがアクティビティを開始したとき、アクティビティ開始イベントが発生する。たとえばゲームXでは、アクティビティ開始イベントのイベントコードが"missionStart"であり、ゲームYでは、アクティビティ開始イベントのイベントコードが"taskStart"であってよいが、イベントサーバ16は、アクティビティ開始イベントのイベントコードを"START"に変換する。そのためイベントサーバ16は、ゲームXに関して、"missionStart"を"START"に変換するテーブルを保持し、ゲームYに関して、"taskStart"を"START"に変換するテーブルを保持する。このようにしてイベントサーバ16は、全てのゲームのイベント情報を、コンテンツサーバ12で共通に使用されるイベントコードおよびゲームデータに変換する。変換後のイベントコードおよびゲームデータを「イベント時系列データ」と呼ぶと、変換前のゲームデータに含まれていたアクティビティにおけるシーン番号は、変換テーブルによりアクティビティIDに変換される。イベントサーバ16は、イベント時系列データを検索サーバ18に供給し、検索サーバ18は、イベント時系列データを解析することで、ゲーム動画内で発生したイベントの種類および発生時刻を特定できる。
 以上は、ユーザAがゲーム動画およびイベント情報群をコンテンツサーバ12に送信する手順である。以下、情報処理装置10bを操作するユーザBが、コンテンツサーバ12にアクセスして、ゲーム動画を視聴する手順を説明する。情報処理システム1では、ユーザBがゲームプレイ中、所定の操作を行うことで、現在のプレイ状況にマッチしたゲーム動画の配信を受けられる。
 ユーザBの情報処理装置10bにおいても、同様に、状態管理部124が、メモリ146に、ユーザBのプレイ状況を示す状態情報を管理している。状態情報である"Activity_A"、"Activity_B"、"Activity_C"、"Activity_D"、"Activity_E"は、アクティビティIDで管理されている。
 ゲームプレイ中、ユーザBは所定の操作を行うと、コンテンツサーバ12から、現在のプレイ状況にマッチしたゲーム動画の候補一覧の提供を受けられる。情報処理装置10bは、ユーザBの所定の操作を受け付けると、検索サーバ18に対してゲーム動画の検索要求を送信する。このとき情報処理装置10bは、検索要求に、プレイ中のゲームIDと、状態管理部124により管理されている状態情報を含ませる。
 図6は、検索サーバ18の機能ブロックを示す。検索サーバ18は、検索処理部210および通信部212を備える。検索処理部210は、イベント時系列データ取得部220、検索要求取得部222、状態情報取得部224、候補抽出部226および記録装置230を備える。
 図6において、さまざまな処理を行う機能ブロックとして記載される各要素は、ハードウェア的には、回路ブロック、メモリ、その他のLSIで構成することができ、ソフトウェア的には、メモリにロードされたプログラムなどによって実現される。したがって、これらの機能ブロックがハードウェアのみ、ソフトウェアのみ、またはそれらの組合せによっていろいろな形で実現できることは当業者には理解されるところであり、いずれかに限定されるものではない。
 イベント時系列データ取得部220は、イベントサーバ16からゲーム動画のイベント時系列データを取得し、記録装置230に記憶する。イベントサーバ16は、イベント情報が情報処理装置10から送信されると、ただちにイベント時系列データを生成して検索サーバ18に提供することが好ましい。イベント時系列データには、ゲームIDおよびコンテンツIDが付加されている。
 検索要求取得部222は、視聴ユーザであるユーザBの情報処理装置10bから、ゲーム動画の検索要求を受け付ける。状態情報取得部224は、検索要求から、ユーザBがプレイ中のゲームIDと、当該ゲームに関して管理されている状態情報を取得する。
 候補抽出部226は、ユーザBがプレイ中のゲームIDを付加されたイベント時系列データを特定し、ユーザBの状態情報にマッチしたゲーム動画を探索する。状態情報のうち、"Activity_A"のアクティビティIDは、現在プレイ中のアクティビティを特定するため、候補抽出部226は、"Activity_A"のアクティビティIDで示されるアクティビティの終了イベントが含まれるイベント時系列データを特定してよい。これにより当該アクティビティが完了する映像を含むゲーム動画を特定できる。
 "Activity_B"に含まれるアクティビティIDは、これまでプレイしたことのあるアクティビティを示す。そこで候補抽出部226はネタバレ防止の観点から、"Activity_B"に含まれないアクティビティIDを含むイベント時系列データを選択しないようにしてもよい。これによりユーザBがプレイしたことのないアクティビティが候補動画に含まれないようにする。候補抽出部226は、ユーザBの状態情報にマッチしたイベント時系列データを複数特定すると、複数のイベント時系列データのコンテンツIDを配信サーバ14に通知する。配信サーバ14は、コンテンツIDからゲーム動画を特定し、ゲーム動画のサムネイルのリストを情報処理装置10bに送信する。ユーザBが1つのサムネイルを選択すると、配信サーバ14は、選択されたゲーム動画を配信する。これによりユーザBは、検索キーワードを入力することなく、現在のプレイ状況にマッチしたゲーム動画を視聴できるようになる。
 たとえばゲーム動画の再生時間が長い場合、"Activity_A"のアクティビティの開始イベントコードの時間位置からゲーム動画が開始されるようにしてもよい。またゲーム動画にネタバレ映像が含まれている場合、配信サーバ14は、ネタバレ区間を特定して、当該ネタバレ区間を配信しないようにしてもよい。このように配信サーバ14は、イベント時系列データとユーザBの状態情報から、優先的に配信するシーンや、配信不能なシーンを特定できる。
 以上は、アップロードされたゲーム動画に、イベント時系列データを関連づける処理について説明した。
 図4(a)に戻り、ユーザAは、スクリーンショットをアップロードできる。スクリーンショットをアップロードするために、ユーザAが「スクリーンショットをアップロードする」を選択し、スクリーンショットを撮影(または選択)すると、スクリーンショット生成部158が、ゲーム画面のスクリーンショットを取得する。このときスクリーンショット生成部158は、スクリーンショット取得時の最新の状態情報の少なくとも一部をメモリ146から読み出して、メタデータとしてスクリーンショット画像に付加する。スクリーンショット生成部158が、ゲーム画面のスクリーンショットにメタデータを付加することで、ネタバレ防止の観点から、別のユーザがスクリーンショットを見ることができないように管理することが可能となる。
 以上、本発明を実施例をもとに説明した。この実施例は例示であり、それらの各構成要素や各処理プロセスの組合せにいろいろな変形例が可能なこと、またそうした変形例も本発明の範囲にあることは当業者に理解されるところである。
 本発明は、ゲーム動画を記録する技術分野に利用できる。
1・・・情報処理システム、10・・・情報処理装置、12・・・コンテンツサーバ、14・・・配信サーバ、16・・・イベントサーバ、18・・・検索サーバ、100・・・処理部、102・・・通信部、110・・・ゲームソフトウェア、120・・・イベント情報取得部、122・・・ルーティング部、124・・・状態管理部、126・・・出力処理部、128・・・第1記録制御部、130・・・第2記録制御部、140・・・記録部、142・・・第1リングバッファ、144・・・第2リングバッファ、146・・・メモリ、150・・・共有処理部、152・・・受付部、154・・・コンテンツ抽出部、156・・・イベント抽出部、158・・・スクリーンショット生成部、160・・・送信処理部、162・・・操作画面生成部、210・・・検索処理部、212・・・通信部、220・・・イベント時系列データ取得部、222・・・検索要求取得部、224・・・状態情報取得部、226・・・候補抽出部、230・・・記録装置。

Claims (5)

  1.  実行中のゲームソフトウェアによるゲーム動画を、時間情報とともに記録する第1リングバッファと、
     ゲーム内でイベントが発生した場合に、発生したイベントを識別するイベントコードを含むイベント情報をゲームソフトウェアから取得するイベント情報取得部と、
     取得したイベント情報を、第1リングバッファと同期した時間情報とともに記録する第2リングバッファと、
     を備えることを特徴とする情報処理装置。
  2.  前記第1リングバッファに記録されたゲーム動画のうち、開始点から終了点までのゲーム動画を抽出するコンテンツ抽出部と、
     前記第2リングバッファに記録されたイベント情報のうち、前記開始点から前記終了点までのイベント情報を抽出するイベント抽出部と、
     を備えることを特徴とする請求項1に記載の情報処理装置。
  3.  ユーザから前記開始点と前記終了点の指定を受け付ける受付部と、
     をさらに備えることを特徴とする請求項2に記載の情報処理装置。
  4.  抽出したゲーム動画を第1サーバ装置に送信し、抽出したイベント情報を第2サーバ装置に送信する送信処理部をさらに備える、
     ことを特徴とする請求項2または3に記載の情報処理装置。
  5.  取得したイベント情報をもとに、ユーザのプレイ状況を示す状態情報を更新する状態管理部と、
     ゲーム画面のスクリーンショットを取得するスクリーンショット生成部とを備え、
     前記スクリーンショット生成部は、スクリーンショット取得時の最新の状態情報の少なくとも一部をメタデータとして付加する、
     ことを特徴とする請求項1から4のいずれかに記載の情報処理装置。
PCT/JP2020/012016 2019-03-25 2020-03-18 情報処理装置 WO2020196167A1 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
EP20779342.3A EP3952299A4 (en) 2019-03-25 2020-03-18 INFORMATION PROCESSING DEVICE
CN202080022706.1A CN113615163A (zh) 2019-03-25 2020-03-18 信息处理设备
US17/436,830 US20220176256A1 (en) 2019-03-25 2020-03-18 Information processing device
JP2021509260A JP7162730B2 (ja) 2019-03-25 2020-03-18 情報処理装置

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US201962823034P 2019-03-25 2019-03-25
US62/823,034 2019-03-25

Publications (1)

Publication Number Publication Date
WO2020196167A1 true WO2020196167A1 (ja) 2020-10-01

Family

ID=72609794

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2020/012016 WO2020196167A1 (ja) 2019-03-25 2020-03-18 情報処理装置

Country Status (5)

Country Link
US (1) US20220176256A1 (ja)
EP (1) EP3952299A4 (ja)
JP (1) JP7162730B2 (ja)
CN (1) CN113615163A (ja)
WO (1) WO2020196167A1 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7433843B2 (ja) * 2019-11-05 2024-02-20 株式会社ソニー・インタラクティブエンタテインメント 情報処理装置およびファイル生成方法

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2014026501A (ja) * 2012-07-27 2014-02-06 Nintendo Co Ltd 情報処理システム、情報処理装置、プログラムおよび情報処理方法
JP2014092991A (ja) * 2012-11-05 2014-05-19 Sony Computer Entertainment Inc 情報処理装置および入力装置
JP2015058072A (ja) * 2013-09-17 2015-03-30 株式会社バンダイナムコゲームス ゲームシステム、サーバシステム及びプログラム
WO2015129077A1 (ja) * 2014-02-26 2015-09-03 株式会社ソニー・コンピュータエンタテインメント プレイ時間記録装置、プレイ時間記録方法、プログラム及び情報記憶媒体
JP2015198404A (ja) * 2014-04-02 2015-11-09 株式会社ソニー・コンピュータエンタテインメント 情報処理装置、情報処理システム、コンテンツ画像生成方法およびコンテンツデータ生成方法
JP2016116096A (ja) * 2014-12-16 2016-06-23 ヤマハ株式会社 アイソレータ

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8187104B2 (en) * 2007-01-29 2012-05-29 Sony Online Entertainment Llc System and method for creating, editing, and sharing video content relating to video game events
US10525347B2 (en) * 2012-03-13 2020-01-07 Sony Interactive Entertainment America Llc System and method for capturing and sharing console gaming data
JP5982185B2 (ja) * 2012-06-01 2016-08-31 任天堂株式会社 情報処理システム、情報処理装置、情報処理方法およびプログラム
US10258881B2 (en) * 2012-12-26 2019-04-16 Sony Interactive Entertainment America Llc Systems and methods for tagging content of shared cloud executed mini-games and tag sharing controls
US9233305B2 (en) * 2013-02-13 2016-01-12 Unity Technologies Finland Oy System and method for managing game-playing experiences
US10335679B2 (en) * 2014-10-27 2019-07-02 Sony Interactive Entertainment Inc. Video processing device, video processing method, and program
US11351466B2 (en) * 2014-12-05 2022-06-07 Activision Publishing, Ing. System and method for customizing a replay of one or more game events in a video game
JP5770918B1 (ja) * 2014-12-18 2015-08-26 株式会社Cygames 情報処理プログラム、及び情報処理方法
JP6043819B2 (ja) * 2015-01-28 2016-12-14 グリー株式会社 構築方法、プログラム、情報処理システム及び情報処理装置
AU2015396643A1 (en) * 2015-05-22 2017-11-30 Playsight Interactive Ltd. Event based video generation
US10376781B2 (en) * 2015-10-21 2019-08-13 Activision Publishing, Inc. System and method of generating and distributing video game streams
US10016689B2 (en) * 2016-03-21 2018-07-10 Electronic Arts Inc. Synchronized video with in game telemetry
US10226708B2 (en) * 2016-06-30 2019-03-12 Electronic Arts Inc. Interactive gameplay playback system
US11000771B1 (en) * 2017-03-30 2021-05-11 Electronic Arts Inc. Gameplay telemetry and video acquisition system
US11090568B1 (en) * 2018-03-27 2021-08-17 Electronic Arts Inc. Dynamic gameplay session content generation system

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2014026501A (ja) * 2012-07-27 2014-02-06 Nintendo Co Ltd 情報処理システム、情報処理装置、プログラムおよび情報処理方法
JP2014092991A (ja) * 2012-11-05 2014-05-19 Sony Computer Entertainment Inc 情報処理装置および入力装置
JP2015058072A (ja) * 2013-09-17 2015-03-30 株式会社バンダイナムコゲームス ゲームシステム、サーバシステム及びプログラム
WO2015129077A1 (ja) * 2014-02-26 2015-09-03 株式会社ソニー・コンピュータエンタテインメント プレイ時間記録装置、プレイ時間記録方法、プログラム及び情報記憶媒体
JP2015198404A (ja) * 2014-04-02 2015-11-09 株式会社ソニー・コンピュータエンタテインメント 情報処理装置、情報処理システム、コンテンツ画像生成方法およびコンテンツデータ生成方法
JP2016116096A (ja) * 2014-12-16 2016-06-23 ヤマハ株式会社 アイソレータ

Also Published As

Publication number Publication date
EP3952299A1 (en) 2022-02-09
JPWO2020196167A1 (ja) 2020-10-01
US20220176256A1 (en) 2022-06-09
EP3952299A4 (en) 2022-12-07
CN113615163A (zh) 2021-11-05
JP7162730B2 (ja) 2022-10-28

Similar Documents

Publication Publication Date Title
JP6434583B2 (ja) 第2のユーザによる第1のユーザのゲームプレーの遠隔制御
US20180295392A1 (en) Information processing device, information processing system, content image generating method, and content data generating method
US20190281351A1 (en) Identification and instantiation of community driven content
US20090292707A1 (en) Electronic apparatus and content data providing method
WO2020196167A1 (ja) 情報処理装置
WO2020075594A1 (ja) 情報処理装置およびコンテンツファイルの再生方法
US7761614B2 (en) Electronic apparatus and content data providing method
WO2022019269A1 (ja) 情報処理装置、表示要素の表示方法および管理サーバ
US20220362676A1 (en) Information processing device and video editing method
JP7078743B2 (ja) 情報処理システム、情報処理装置およびコンテンツファイルの生成方法
JP7062724B2 (ja) 情報処理装置、ゲーム動画編集方法およびメタデータサーバ
JP7062725B2 (ja) 情報処理装置およびゲーム動画記録方法
JP6592046B2 (ja) 情報処理装置およびコンテンツデータ生成方法
JP7219142B2 (ja) 情報処理装置およびインストール方法
JP6767319B2 (ja) 情報処理装置およびファイルコピー方法
JP2023181652A (ja) サーバ装置、情報処理装置および情報提供方法
JP2020201574A (ja) 情報処理装置およびアプリケーション実行方法
JP2009296540A (ja) 画像音声編集方法、画像音声編集システム及び画像音声編集装置

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 20779342

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2021509260

Country of ref document: JP

Kind code of ref document: A

NENP Non-entry into the national phase

Ref country code: DE

ENP Entry into the national phase

Ref document number: 2020779342

Country of ref document: EP

Effective date: 20211025