WO2018047512A1 - Information processing device, control method therefor, and computer program - Google Patents

Information processing device, control method therefor, and computer program Download PDF

Info

Publication number
WO2018047512A1
WO2018047512A1 PCT/JP2017/027452 JP2017027452W WO2018047512A1 WO 2018047512 A1 WO2018047512 A1 WO 2018047512A1 JP 2017027452 W JP2017027452 W JP 2017027452W WO 2018047512 A1 WO2018047512 A1 WO 2018047512A1
Authority
WO
WIPO (PCT)
Prior art keywords
push
transmission
instruction
push transmission
segment
Prior art date
Application number
PCT/JP2017/027452
Other languages
French (fr)
Japanese (ja)
Inventor
誠実 鈴木
智哉 酒井
Original Assignee
キヤノン株式会社
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Priority claimed from JP2017063750A external-priority patent/JP2018045674A/en
Application filed by キヤノン株式会社 filed Critical キヤノン株式会社
Priority to CN201780055212.1A priority Critical patent/CN109690507A/en
Publication of WO2018047512A1 publication Critical patent/WO2018047512A1/en
Priority to US16/292,117 priority patent/US20190199814A1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • 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/239Interfacing the upstream path of the transmission network, e.g. prioritizing client content requests

Definitions

  • the present invention relates to an information processing apparatus, a control method thereof, and a computer program, and more particularly, to a content push technique.
  • a distribution system for distributing content in a streaming format composed of audio data, video data, and the like to users in real time has been provided.
  • the user can enjoy desired content such as live video in real time via his / her terminal device.
  • DASH Dynamic Adaptive Streaming over HTTP.
  • video data is divided into small time unit segments, and a URL (Uniform Resource Locator) for acquiring the segments is described in a file called a playlist.
  • the receiving apparatus first acquires this playlist, and acquires desired video data using information described in the playlist.
  • URLs for a plurality of versions of video data segments in the playlist the receiving apparatus can acquire an optimal version of the video data segments according to its own processing capability and communication environment.
  • These streaming systems have a function of PUSH (push) transmission of a data segment from a transmission device. Since the PUSH transmission can transmit a corresponding response prior to the reception of the request even if there is no request from the receiving apparatus, it is possible to reduce the video reproduction delay.
  • PUSH push
  • Patent Document 1 describes a configuration in which media is switched at high speed by distributing media by PUSH transmission in response to a request for switching media in media distribution using MPEG-DASH.
  • a server device has the following configuration. That is, Receiving means for receiving, from the client device, a push transmission instruction regarding the media segment into which the content data is divided; A transmission unit that push-transmits a media segment corresponding to the push transmission instruction received by the reception unit to the client device; Among the media segments according to the push transmission instruction received by the receiving means, the push cancel instruction including identification information used for the server device to identify a media segment whose push transmission by the transmitting means is canceled Control means for canceling push transmission by the transmission means of the media segment specified based on the identification information when received from the client device.
  • FIG. 1 is a system configuration diagram of a communication system.
  • FIG. 2 is a block diagram illustrating a functional configuration example of the transmission apparatus.
  • FIG. 3 is a block diagram illustrating a functional configuration example of the receiving apparatus.
  • FIG. 4 is a block diagram illustrating a hardware configuration example of the transmission apparatus.
  • FIG. 5 is a block diagram illustrating a hardware configuration example of the receiving apparatus.
  • FIG. 6 is a flowchart showing an operation procedure of the transmission apparatus.
  • FIG. 7 is a flowchart showing an operation procedure of the receiving apparatus.
  • FIG. 8A is a diagram illustrating an example of a cancellation method.
  • FIG. 8B is a diagram illustrating an example of a cancellation method.
  • FIG. 9A is a diagram illustrating an example of a cancellation method.
  • FIG. 9A is a diagram illustrating an example of a cancellation method.
  • FIG. 9B is a diagram illustrating an example of a cancellation method.
  • FIG. 10A is a diagram illustrating an example of a cancellation method.
  • FIG. 10B is a diagram illustrating an example of a cancellation method.
  • FIG. 11A is a diagram illustrating an example of a cancellation method.
  • FIG. 11B is a diagram illustrating an example of a cancellation method.
  • FIG. 11C is a diagram illustrating an example of a cancellation method.
  • FIG. 12A is a diagram illustrating an example of a cancellation method.
  • FIG. 12B is a diagram illustrating an example of a cancellation method.
  • FIG. 12C is a diagram illustrating an example of a cancellation method.
  • FIG. 13A is a diagram illustrating an example of a cancellation method.
  • FIG. 13A is a diagram illustrating an example of a cancellation method.
  • FIG. 13B is a diagram illustrating an example of a cancellation method.
  • FIG. 13C is a diagram illustrating an example of a cancellation method.
  • FIG. 14A is a diagram illustrating an example of a cancellation method.
  • FIG. 14B is a diagram illustrating an example of a cancellation method.
  • FIG. 15A is a diagram illustrating an example of a cancellation method.
  • FIG. 15B is a diagram illustrating an example of a cancellation method.
  • FIG. 15C is a diagram illustrating an example of a cancellation method.
  • FIG. 16 is a diagram illustrating an example of a cancellation method.
  • FIG. 17A is a diagram illustrating an example of a cancellation method.
  • FIG. 17B is a diagram illustrating an example of a cancellation method.
  • FIG. 1 is a diagram showing an overall configuration of a communication system according to an embodiment of the present invention.
  • the transmission apparatus 101 according to the present embodiment is connected to the reception apparatus 102 via the network 103.
  • a plurality of transmission apparatuses 101 and reception apparatuses 102 may exist.
  • the transmission device 101 is, for example, a server device, and the reception device 102 is, for example, a client device.
  • the transmission apparatus 101 has a content transmission function for pushing content data divided into segments to the reception apparatus 102.
  • the segment includes an initial segment (initialization segment) describing parameters used for content reproduction and a media segment describing content data.
  • the transmission apparatus 101 may further have a function of receiving input from the user.
  • Specific examples of the transmission device 101 include information processing devices such as a camera device, a video camera device, a smart phone device, a PC (personal computer) device, and a mobile phone. It is not limited to.
  • the receiving device 102 has a content reproduction / display function and a communication function, and receives a segment of content data push-transmitted from the transmitting device 101.
  • the receiving device 102 may further have a function of receiving input from the user.
  • Specific examples of the receiving device 102 include information processing devices such as a smart phone device, a PC device, a television, and a mobile phone, but are not limited thereto as long as they satisfy the above-described functional configuration.
  • the network 103 is a wired LAN (Local Area Network) or a wireless LAN (Wireless LAN) as a network in the present embodiment.
  • a wired LAN or a wireless LAN is used as the network 103.
  • the present invention is not limited to this, and a WAN (Wide Area Network), a PAN (Personal Area Network), or the like may be used.
  • the network 103 may be one that passes through a public communication network such as the Internet.
  • FIG. 2 is a block diagram illustrating a functional configuration example of the transmission apparatus according to the present embodiment.
  • the transmission apparatus 101 according to the present embodiment includes an imaging unit 201, an encoding unit 202, a segment generation unit 203, a playlist generation unit 204, a segment determination unit 205, an instruction management unit 206, and a communication unit 207.
  • the image capturing unit 201 captures a subject to acquire video data.
  • the encoding unit 202 encodes video data captured by the imaging unit 201.
  • the imaging unit 201 and the encoding unit 202 may be provided outside the transmission apparatus 101, and the encoded video data may be provided to the transmission apparatus 101.
  • the video data is not only a moving image but also data including sound.
  • the content to be transmitted / received is not only such video data but also an image including a still image, text data, or an image including a program code executed in the receiving device 102 such as Javascript (registered trademark). Good.
  • the segment generation unit 203 generates a segment, which is a transmission unit of video data, from the video data encoded by the encoding unit 202.
  • a segment is a unit of video data obtained by dividing video data spatially or temporally.
  • ISOBMFF Basic Media File Format
  • the playlist generation unit 204 generates a playlist that describes a URL that allows access to the segment created by the segment generation unit 203.
  • MPD Media Presentation Description
  • MPEG-DASH Media Presentation Description
  • the present invention is not limited to this, and it may have a function equivalent to this, such as a description method of a playlist in Http Livestreaming.
  • the communication unit 207 transmits the generated playlist and segment to the receiving apparatus 102 via the network 103 in response to a request from the receiving apparatus 102.
  • An instruction management unit (PUSH transmission instruction management unit) 206 holds the PUSH transmission instruction received by the communication unit 207 from the receiving apparatus 102 and transmits the content of the PUSH (push) transmission instruction to the segment determination unit 205.
  • a segment determination unit (transmission segment determination unit) 205 determines a segment to be transmitted when the communication unit 207 receives a segment acquisition request. Further, the segment determination unit 205 determines a segment to perform PUSH transmission based on the content of the PUSH transmission instruction received from the instruction management unit 206.
  • FIG. 3 is a block diagram illustrating a functional configuration of the receiving apparatus according to the present embodiment.
  • the receiving apparatus 102 according to the present embodiment includes a display unit 301, a decoding unit 302, a playlist analysis unit 303, a buffer 304, a user interface unit 305, an instruction management unit 306, a segment determination unit 307, and a communication unit 308.
  • the communication unit 308 receives a segment and a playlist from the transmission apparatus 101 via the network 103, passes the segment to the buffer 304, and passes the playlist to the playlist analysis unit 303.
  • the buffer 304 accumulates the segments passed from the communication unit 308 and temporarily holds them.
  • the decoding unit 302 decodes the video data based on the segments accumulated in the buffer 304.
  • the display unit 301 displays a playback image of video data received from the transmission device 101 via the network 103 and decoded by the decoding unit 302, or outputs audio. Note that the display unit 301 may be external to the receiving device 102 and receive and display video data from the receiving device 102.
  • the playlist analysis unit 303 analyzes the playlist passed from the communication unit 308.
  • the user interface unit 305 inputs an instruction from the user by displaying a screen for the user to operate on the display 508. For example, a list of videos that can be acquired based on a playlist received from the transmission apparatus 101 is displayed, and a selection from the user is accepted, or an instruction to pause or cancel playback is accepted.
  • the segment determination unit (acquisition segment determination unit) 307 determines a segment to be acquired based on the analysis result from the playlist analysis unit 303 based on the input from the user interface unit 305.
  • the present invention is not limited to this, and other methods such as segment determination according to the status of the network 103 may be used.
  • the instruction management unit (PUSH transmission instruction management unit) 306 transmits a PUSH transmission instruction via the communication unit 308 based on the analysis result from the playlist analysis unit 303, and manages the transmitted PUSH transmission instruction.
  • the instruction management unit 306 may transmit the PUSH transmission instruction without referring to the analysis result of the playlist analysis unit 303, or may transmit the PUSH transmission instruction before acquiring the playlist.
  • the instruction management unit 306 transmits a PUSH transmission instruction based on an input from the user interface unit 305.
  • the instruction management unit 306 is not limited to this, and other methods such as performing according to the state of the network 103 may be used.
  • FIG. 4 is a block diagram illustrating a hardware configuration of the transmission apparatus 101 according to the present embodiment.
  • a central processing unit (hereinafter referred to as a CPU) 401 is a device that controls the entire device and calculates and processes data.
  • the CPU 401 loads and executes a computer program stored in a ROM 402 described later on a RAM 403 described later.
  • the CPU 401 controls the entire apparatus based on a computer program, thereby realizing an encoding unit 202, a segment generation unit 203, a playlist generation unit 204, a segment determination unit 205, and an instruction management unit 206.
  • ROM 402 is a read-only memory, and is a storage device for reading information once written. In the present embodiment, the ROM 402 stores a computer program for each functional unit shown in FIG.
  • a RAM 403 is a writable memory and is a storage device for temporarily writing and reading data. The RAM 403 stores temporary values for each program.
  • the internal memory 404 and the external memory 405 are external storage devices that store application contents.
  • the built-in memory 404 is a built-in storage device such as an SSD (solid state drive) or a hard disk.
  • the external memory 405 is a removable memory device such as a flash memory represented by a USB memory, an SD memory, or the like. 2 may be stored not in the ROM 402 but in the RAM 403, the built-in memory 404, or the external memory 405.
  • the input device 406 is a device for inputting an instruction from the user.
  • the input device 406 may include a power button, a volume button, a home button, and the like implemented by mechanical button switches, or may be implemented by a touch panel, a keyboard, a pointing device, or the like.
  • a plurality of input devices 406 can be mounted on the transmission device 101.
  • the network I / F 407 is a device for transmitting and receiving data via the network 103.
  • the network I / F 407 implements the communication unit 207.
  • the power source 408 is a device that supplies / charges power to the transmission device 101, and includes a battery and a charging device.
  • the power source 408 may be realized by an AC adapter.
  • the camera 409 is a device that captures content for transmission, and realizes the imaging unit 201.
  • FIG. 5 is a block diagram illustrating a hardware configuration of the receiving apparatus 102 according to the present embodiment.
  • a central processing unit (hereinafter referred to as a CPU) 501 is a device that controls the entire apparatus to calculate and process data.
  • the CPU 501 develops and executes a computer program stored in a ROM 502 described later on a RAM 503 described later.
  • the CPU 501 controls the entire apparatus based on a computer program, thereby realizing a decryption unit 302, a playlist analysis unit 303, an instruction management unit 306, and a segment determination unit 307.
  • ROM 502 is a read-only memory, and is a storage device for reading information once written. In the present embodiment, the ROM 502 stores a computer program for each functional unit shown in FIG.
  • a RAM 503 is a writable memory and is a storage device for temporarily writing and reading data. The RAM 503 stores temporary values for each program.
  • the internal memory 504 and the external memory 506 are external storage devices that store application contents. These devices implement a buffer 304. Note that the buffer 304 may be realized by the RAM 503. Specific examples of the internal memory 504 and the external memory 506 are the same as the internal memory 404 and the external memory 405 of the transmission apparatus 101 described with reference to FIG.
  • the input device 505 is a device for inputting an instruction from the user.
  • the input device 505 may be a power button, a volume button, a home button, or the like mounted by a mechanical button switch, or may be mounted by a touch panel, a keyboard, a pointing device, or the like.
  • a plurality of input devices 505 can be mounted on the receiving device 102.
  • the input device 505 implements a user interface unit 305.
  • the speaker 507 and the display 508 are devices that reproduce the content received from the transmission device 101, and realize the display unit 301. That is, the speaker 507 outputs audio data included in the received content as audio.
  • the display 508 displays moving image data included in the received content as an image.
  • a network I / F 509 is a device for transmitting and receiving data via a network.
  • a network I / F 509 is a device that implements the communication unit 308.
  • the power source 510 is a device that supplies / charges power to the receiving device 102 and includes a battery and a charging device.
  • the power source 510 may be realized by an AC adapter.
  • FIG. 6 is a flowchart showing a procedure of processing performed by the transmission apparatus 101 according to the present embodiment from when a PUSH transmission instruction is received until PUSH transmission is canceled. Each step in FIG. 6 is executed by the CPU 401 controlling the transmission apparatus 101 based on the computer program.
  • the communication unit 207 receives a PUSH transmission instruction from the receiving device 102.
  • one PUSH transmission instruction may be received, or a plurality of PUSH transmission instructions may be received simultaneously.
  • the instruction management unit 206 allocates an identifier for distinguishing each received PUSH transmission instruction.
  • This identifier may be a number or a character string, or may be in the form of a URL (Uniform Resource Locator).
  • a value representing the type of segment data such as video or audio may be used as an identifier.
  • the instruction management unit 206 may skip S602 and use the identifier allocated by the receiving apparatus 102 as it is. Further, when the segment data type is used as an identifier, S602 may be skipped because there is no need to newly allocate an identifier. Also, S602 may be skipped when the PUSH transmission instruction is distinguished by other than the identifier.
  • the PUSH transmission instruction may be distinguished by the time when the reception apparatus 102 transmits the PUSH transmission instruction, or the time when the transmission apparatus 101 transmits a response to the PUSH transmission instruction in S603 described later.
  • the receiving apparatus 102 may distinguish the acquired resources together with the PUSH transmission instruction. For example, in HTTP / 2, a resource is a segment name obtained when a PUSH transmission instruction is issued. Moreover, you may implement by the method which can distinguish and manage a PUSH transmission instruction
  • the communication unit 207 transmits a response to the PUSH transmission instruction.
  • the response is transmitted including the identifier.
  • the communication unit 207 transmits a response including a value necessary to distinguish the PUSH transmission instruction.
  • the playlist generating unit 204 may notify the receiving apparatus 102 by describing each value in the MPD.
  • the instruction management unit 206 holds the received PUSH transmission instruction.
  • the PUSH transmission instruction and the identifier are associated and held.
  • S604 may be skipped if the data type is known from the segment name.
  • the PUSH transmission instruction is held in association with a value for distinguishing the PUSH transmission instruction.
  • the segment determination unit 205 determines a segment to be PUSH transmitted based on the content of the received PUSH transmission instruction, and notifies the instruction management unit 206 of the determined segment list. Thereafter, the communication unit 207 performs PUSH transmission of the target segment. In the case of live distribution, PUSH transmission is performed from the PUSH target segment that has been generated. Note that S603, S604, and S605 may be performed in an order different from the flowchart.
  • the communication unit 207 receives a PUSH transmission cancel instruction from the receiving device 102.
  • the PUSH transmission cancel instruction received here may be directed to one PUSH transmission instruction, or may be directed to a plurality of PUSH transmission instructions.
  • the PUSH transmission cancel instruction may be a content instructing cancellation of all segments scheduled to be pushed by the PUSH transmission instruction, or may be content instructing cancellation of only a part of the segments to be pushed by the PUSH transmission instruction. .
  • the processes from S607 to S610 are performed in order for each segment to be canceled among the segments to be PUSH transmitted based on the PUSH transmission instruction. Cancellation candidates will be described later in the description of S607. Further, when there are a plurality of PUSH transmission instructions for PUSH cancellation, the processing from S607 to S611 is performed for each PUSH transmission instruction. For example, PUSH transmission instruction A and B are subject to PUSH transmission cancellation instructions, and there are two cancellation candidate segments for PUSH transmission instruction A and three cancellation candidate segments for B. In this case, first, the process from S607 to S611 is executed for A which is one of the target PUSH transmission instructions.
  • S607 to S610 for the number of cancel candidate segments, which are twice, are performed in order.
  • S607 to S611 are executed for the PUSH transmission instruction B that is another cancellation target.
  • S607 to S610 for three times that are the number of cancel candidate segments are sequentially performed. The processing for each segment from S607 to S610 may be performed in parallel for each PUSH transmission instruction to be canceled.
  • the instruction management unit 206 identifies one segment that is a cancel candidate from among the PUSH transmission instructions targeted by the PUSH transmission cancellation instruction, from among the segments to be pushed by one PUSH transmission instruction. For example, it is assumed that PUSH transmission is to be performed for segment1, segment2, and segment3 according to a certain PUSH transmission instruction. Assume that the PUSH transmission cancel instruction asks to cancel all segments. In this case, the cancellation candidate segments are all three segments, segment1, segment2, and segment3, and in step S607, the instruction management unit 206 selects one of them (for example, segment1). On the other hand, when the PUSH transmission cancellation instruction is only the last segment, the cancellation candidate segment is only segment3, and segment3 is inevitably selected.
  • PUSH transmission cancellation targets are segment1 to segment3, segment1 has been transmitted, and segment2 has been cancelled, only segment3 is a candidate for PUSH transmission cancellation.
  • the instruction management unit 206 confirms that the cancel candidate segment specified in S607 is not a PUSH transmission target according to another PUSH transmission instruction.
  • segment1, segment2, and segment3 are to be PUSH-transmitted according to a certain PUSH transmission instruction (hereinafter referred to as “instruction 1”).
  • instruction 1 it is assumed that one of the cancel candidate segments according to the PUSH transmission cancel instruction is segment3.
  • instruction 2 it is assumed that the PUSH transmission scheduled segments based on another PUSH transmission instruction (hereinafter referred to as “instruction 2”) are segment3 and segment4.
  • segment 3 since segment 3 is scheduled to be PUSH transmitted according to instruction 2, the PUSH transmission of segment 3 must not be canceled in the process of instruction 1. If no other PUSH transmission instruction is instructed from the receiving apparatus 102 other than the PUSH transmission instruction to be canceled, S608 may be skipped and the process may proceed to S609.
  • step S609 the instruction management unit 206 instructs the segment determination unit 205 to cancel the PUSH transmission of the cancel candidate segment.
  • the segment determination unit 205 cancels the PUSH transmission of the cancel candidate segment.
  • S610 it is determined whether or not the processing from S608 to S609 has been performed for all cancel candidate segments for one PUSH transmission instruction to be processed. If it is determined that the processing from S608 to S609 has been performed for all cancel candidate segments (YES in S610), the process proceeds to S611. If it is determined in S610 that the processing from S608 to S609 has not been performed for all the cancellation candidate segments (NO in S610), the process proceeds to S607 and the above-described cancellation is performed for the cancellation candidate segment that has not been processed. Process.
  • S607 to S610 The processing from S607 to S610 is performed for each cancel candidate segment among the segments to be PUSH transmitted by one PUSH transmission instruction. Note that in S607, all cancel candidate segments of all PUSH transmission instructions may be specified first, and then S608 to S610 may be performed for each specified cancel candidate segment.
  • S611 it is determined whether or not the processing from S607 to S610 has been performed for all PUSH transmission instructions instructing cancellation of PUSH transmission. If it is determined that the cancellation processing from S607 to S610 has been performed for all PUSH transmission instructions that are to be canceled (YES in S611), the processing proceeds to S612. If it is determined that the cancellation process from S607 to S610 has not been performed for all the PUSH transmission instructions (NO in S611), the process proceeds to S607 and the above-described cancellation process is performed for an unprocessed PUSH transmission instruction.
  • the cancellation method from S607 to S611 is not limited to the method described in this description. For example, regardless of whether a segment is a PUSH transmission target from another PUSH transmission instruction, when a certain PUSH transmission instruction is canceled, another method such as canceling the PUSH transmission of that segment is used. It may be used.
  • the communication unit 207 transmits a response to the PUSH transmission cancel instruction to the receiving apparatus 102.
  • FIG. 7 is a flowchart showing a procedure of processing performed by the receiving apparatus 102 according to the present embodiment until transmission of a PUSH transmission instruction and subsequent cancellation of PUSH transmission. Each step in FIG. 7 is executed by the CPU 501 controlling the receiving apparatus 102 based on the computer program.
  • the instruction management unit 306 allocates an identifier for distinguishing each PUSH transmission instruction to be transmitted.
  • This identifier may be a number, a character string, or the like, or may be in the form of a URL.
  • a value representing the type of segment data such as video or audio may be used as an identifier.
  • S701 may be skipped if the data type is known from the segment name.
  • This identifier can also be allocated by the transmission apparatus 101, and in this case, S701 may be skipped. Further, S701 may be skipped when the PUSH transmission instruction is distinguished by other than the identifier.
  • step S ⁇ b> 702 the communication unit 308 transmits a PUSH transmission instruction to the transmission apparatus 101.
  • One PUSH transmission instruction may be transmitted here, or a plurality of PUSH transmission instructions may be transmitted simultaneously.
  • the identifier is waved in S701, the identifier is included in each PUSH transmission instruction and transmitted.
  • the communication unit 308 receives a response from the transmission apparatus 101 to the PUSH transmission instruction. This response is transmitted from the transmission apparatus 101 in step S603 of FIG.
  • step S704 the instruction management unit 306 holds the PUSH transmission instruction response received from the transmission apparatus 101.
  • step S ⁇ b> 705 the communication unit 308 receives a segment transmitted by PUSH from the transmission apparatus 101.
  • the received segment is stored in the buffer 304, decoded by the decoding unit 302, and displayed / output by the display unit 301.
  • the communication unit 308 transmits a PUSH transmission cancel instruction. This step may be executed before receiving the PUSH transmission segment in S705.
  • the PUSH transmission cancel instruction to be transmitted may be one PUSH transmission instruction or a plurality of PUSH transmission instructions.
  • the PUSH transmission cancel instruction may be a content instructing cancellation of all the segments scheduled to be pushed by the PUSH transmission instruction. Or the content which instruct
  • the transmission trigger of the PUSH transmission cancel instruction in S706 may be an instruction by the user, a state change of a band of a communication path connecting the transmission apparatus 101 and the reception apparatus 102, or the transmission apparatus 101 and / or the reception apparatus. A change in the state of 102 may be used.
  • the PUSH transmission cancel instruction may be included in a header of a message from a web browser executed in the receiving apparatus 102, or may be included in a message from an application different from the web browser. .
  • the PUSH transmission cancel instruction transmitted by the communication unit 308 includes designation of the PUSH transmission instruction. As described in the description of S602, this designation may be realized using an identifier assigned to the PUSH transmission instruction, or may be realized using time information.
  • the time information may be the time at which the receiving apparatus 102 transmits the PUSH transmission instruction, the time at which the transmitting apparatus 101 transmits a response to the PUSH transmission instruction, or information about other times may be used. .
  • the above specification is realized based on information for identifying the type of data (video data, audio data, or other data) to be push-transmitted by the PUSH transmission instruction. May be.
  • a PUSH transmission cancellation instruction that specifies a media segment to be subjected to push transmission may be transmitted by the communication unit 308.
  • a URL may be used for specifying a PUSH transmission instruction and a media segment.
  • the communication unit 308 identifies identification information (for example, an identifier of a PUSH transmission instruction, time information, a data type, or a PUSH transmission for specifying a media segment for which push transmission should be canceled).
  • An instruction or a URL for designating a media segment is included in the PUSH transmission cancel instruction and transmitted.
  • the communication unit 308 receives a response to the PUSH transmission cancel instruction. This response is transmitted from the transmission apparatus 101 in step S612 of FIG.
  • the transmission apparatus 101 when the transmission apparatus 101 receives a push transmission instruction for instructing push transmission of at least one segment from the reception apparatus 102, the transmission apparatus 101 is controlled to push each segment to the reception apparatus 102 accordingly. To do.
  • the transmitting apparatus 101 receives a cancel instruction including the designation of the push transmission instruction for canceling the push transmission of the segment from the receiving apparatus 102, the transmitting apparatus 101 stops the push transmission of the untransmitted segment based on the designated push transmission instruction. To do.
  • the push transmission can be canceled with the minimum number of transactions regardless of the communication protocol used such as HTTP / 2 or WebSocket. Is possible.
  • the designation of the push transmission instruction is performed by, for example, combining the identifier of the push transmission instruction or the content of the push transmission instruction with the resource requested by the receiving apparatus 102 or the time related to transmission / reception of the push transmission instruction. It can be carried out. Further, the transmission apparatus 101 stops the push transmission of all or a part of the untransmitted segments according to the content of the received cancellation instruction, so that the reception apparatus 102 cancels the transmission of the desired segment later. can do.
  • the transmission apparatus 101 when the transmission apparatus 101 receives a plurality of push transmission instructions and pushes a segment and receives a cancel instruction for a certain push transmission instruction, in S608, the transmission apparatus 101 transmits another push transmission instruction.
  • the transmission apparatus 101 transmits another push transmission instruction.
  • FIGS. 8A and 8B are schematic diagrams illustrating examples of requests and response messages exchanged between the transmission apparatus 101 and the reception apparatus 102.
  • FIG. data transmitted from the receiving apparatus 102 to the transmitting apparatus 101 is referred to as a request, and data transmitted from the transmitting apparatus 101 to the receiving apparatus 102 is referred to as a response.
  • the messages are exchanged in order from the upper message in FIG. 8A to the lower message, and then the lower message is exchanged from the upper message in FIG. 8B.
  • FIGS. 9A to 17B have the same configuration.
  • the identifier is assigned by the transmission apparatus 101, and step S701 is skipped.
  • the communication unit 308 of the reception apparatus 102 transmits a request 801 including the PUSH transmission instruction 802 in the accept-push-policy header to the transmission apparatus 101.
  • the request 801 has a content for requesting a segment called segmentA1.
  • the request 801 further instructs the PUSH transmission instruction 802 to PUSH transmit the next five segments segmentA2 to segmentA6 continuous from the segmentA1 in terms of playback time.
  • the number “5” following “urn: sample: push-next” designates the number of segments to be acquired following “/ example / tmp / segmentA1”.
  • the communication unit 207 of the transmission apparatus 101 receives a request 801 including a PUSH transmission instruction 802.
  • the instruction management unit 206 of the transmission device 101 allocates an identifier 805 of “/ example / tmp / push1” to the received PUSH transmission instruction 802.
  • the identifier adopts the URL format.
  • step S ⁇ b> 603 the communication unit 207 of the transmission apparatus 101 transmits, to the reception apparatus 102, a response 803 including a PUSH transmission instruction response 804 having the same content as the PUSH transmission instruction 802 in the push-policy header as a response to the PUSH transmission instruction 802. .
  • the push-policy header of the response 803 includes an identifier 805 in association with the PUSH transmission instruction response 804.
  • a prefix “push-URL” in front of the identifier 805
  • the transmitting apparatus 101 may describe the identifier 805 in the MPD and notify the receiving apparatus 102.
  • the transmission apparatus 101 transmits PUSH_PROMISE 806 and 807 for reserving which stream to transmit for segment A2 and segment A3 scheduled for PUSH transmission in HTTP / 2.
  • the receiving apparatus 102 receives this.
  • PUSH_PROMISE 806 and 807 may be exchanged before the response 803. It is assumed that PUSH_PROMISE corresponding to the segment (segment A4, segment A5, segment A6) after segment A3 is not transmitted.
  • PUSH_PROMISE when the generation of the corresponding segment is not completed, or when the upper limit number that can be reserved for transmission has been reached at the same time, PUSH_PROMISE is not transmitted. Besides this case, PUSH_PROMISE may not be transmitted.
  • the instruction management unit 206 of the transmission apparatus 101 holds the received PUSH transmission instruction 802 and the identifier 805 in association with each other.
  • the communication unit 308 of the reception apparatus 102 receives the response 804 including the PUSH transmission instruction 802 response 804 and the segment A1 binary data.
  • the instruction management unit 306 of the reception apparatus 102 holds the PUSH transmission instruction 802 accepted by the transmission apparatus 101 in association with the identifier 805.
  • the transmission apparatus 101 starts the PUSH transmission, and the communication unit 207 of the transmission apparatus 101 transmits a response 808 to the reception apparatus 102 as the PUSH transmission of the segment A2.
  • the numerical values at the end of the segment names are continuous, it is assumed that they are continuous in terms of playback time. For example, segment A2 and segment A3 have a continuous playback time, and the video at the end of segment A2 is continuous with the video at the beginning of segment A3.
  • the communication unit 308 of the receiving apparatus 102 receives the response 808 including the binary data of segmentA2.
  • the communication unit 308 of the reception apparatus 102 transmits the request 809 including the PUSH transmission cancel instruction 810 in the accept-push-policy header.
  • the PUSH transmission cancel instruction 810 has a content for canceling all segments scheduled to be PUSH transmitted by the PUSH transmission instruction 802.
  • the identifier 805 may be included in the accept-push-policy header together with the prefix “push-URL”. This prefix is not limited to “push-URL”.
  • the communication unit 207 of the transmission apparatus 101 receives the request 809 including the PUSH transmission cancel instruction 810.
  • the instruction management unit 206 of the transmission apparatus 101 identifies segment A ⁇ b> 3 as a cancel candidate segment in the PUSH transmission scheduled segment according to the PUSH transmission instruction 802 to be canceled determined from the identifier 805.
  • the PUSH transmission of segment A2 to segment A6 is requested by the PUSH transmission instruction 802.
  • segment A3 having the smallest serial number among untransmitted segments is identified as a cancel candidate.
  • the instruction management unit 206 of the transmission device 101 instructs the segment determination unit 205 to cancel the PUSH transmission of the segment A3, and the segment determination unit 205 cancels the PUSH transmission of the segment A3.
  • transmission reservation by PUSH_PROMISE 807 since transmission reservation by PUSH_PROMISE 807 has already been completed, transmission of RST_STREAM 813 for canceling transmission reservation and processing of stopping PUSH transmission inside the transmission apparatus 101 are performed.
  • S610 it is determined that cancellation is not performed for all cancel candidate segments in the PUSH transmission instruction 802 according to the PUSH transmission cancellation instruction 810, and it is determined that cancellation processing is not performed (NO in S610), and the process proceeds to S607.
  • the instruction management unit 206 of the transmission apparatus 101 identifies segment A ⁇ b> 4 as a cancel candidate segment in the PUSH transmission scheduled segment according to the PUSH transmission instruction 802 to be canceled determined from the identifier 805.
  • the instruction management unit 206 of the transmission device 101 instructs the segment determination unit 205 to cancel the PUSH transmission of the segment A4, and the segment determination unit 205 cancels the PUSH transmission of the segment A4.
  • the segment determination unit 205 cancels the PUSH transmission of the segment A4.
  • S610 it is determined that cancellation is not performed for all cancel candidate segments in the PUSH transmission instruction 802 according to the PUSH transmission cancellation instruction 810, and it is determined that cancellation processing is not performed (NO in S610), and the process proceeds to S607.
  • the instruction management unit 206 of the transmission apparatus 101 identifies segment A5 as a cancel candidate segment in the PUSH transmission scheduled segment according to the PUSH transmission instruction 802 that is the cancellation target determined from the identifier 805.
  • step S609 the instruction management unit 206 of the transmission apparatus 101 instructs the segment determination unit 205 to cancel the PUSH transmission of the segment A5, and the segment determination unit 205 cancels the PUSH transmission of the segment A5.
  • the instruction management unit 206 of the transmission apparatus 101 instructs the segment determination unit 205 to cancel the PUSH transmission of the segment A5, and the segment determination unit 205 cancels the PUSH transmission of the segment A5.
  • a specific canceling process only the process of stopping the PUSH transmission is performed inside the transmitting apparatus 101. Since the segment A5 is not reserved for transmission, only the stop process inside the transmission apparatus 101 is required.
  • S610 it is determined that cancellation is not performed for all cancel candidate segments in the PUSH transmission instruction 802 by the PUSH transmission cancellation instruction 810, and it is determined that cancellation processing is not performed (NO in S610), and the process proceeds to S607.
  • the instruction management unit 206 of the transmission apparatus 101 identifies segment A6 as a cancel candidate segment in the PUSH transmission scheduled segment according to the PUSH transmission instruction 802 that is the cancellation target determined from the identifier 805.
  • step S609 the instruction management unit 206 of the transmission apparatus 101 instructs the segment determination unit 205 to cancel the PUSH transmission of the segment A6, and the segment determination unit 205 cancels the PUSH transmission of the segment A6.
  • the instruction management unit 206 of the transmission apparatus 101 instructs the segment determination unit 205 to cancel the PUSH transmission of the segment A6, and the segment determination unit 205 cancels the PUSH transmission of the segment A6.
  • the process of stopping the PUSH transmission is performed inside the transmitting apparatus 101. Since the transmission reservation of segment A6 is not performed, only the stop process inside the transmission apparatus 101 is sufficient.
  • S610 it is determined that cancellation is possible for all cancel candidate segments in the PUSH transmission instruction 802 by the PUSH transmission cancellation instruction 810 and cancellation processing is performed (YES in S610), and the process proceeds to S611.
  • the communication unit 207 of the transmission apparatus 101 transmits a response 811 including a response 812 to the PUSH transmission cancel instruction 810 in the push-policy header to the reception apparatus 102.
  • This response has the same content as the PUSH transmission cancel instruction 810.
  • the communication unit 308 of the receiving apparatus 102 receives the response 811 including the PUSH transmission cancel instruction response 812.
  • the transmitting apparatus 101 has already transmitted PUSH_PROMISE 807 to the receiving apparatus 102 for the canceled segment A3.
  • the transmitting apparatus 101 transmits RST_STREAM 813 to cancel this, and the receiving apparatus 102 receives it.
  • This RST_STREAM 813 may be transmitted by the receiving apparatus 102 before S706 or after S707.
  • HTTP2 in order to cancel a part of a plurality of push-policies or a part of a plurality of PUSH-scheduled segments based on the push-policy, it is necessary to cancel all the PUSHs once and then make necessary settings again. There is.
  • the stream ID is notified by PUSH_PROMISE for each PUSH target segment, and PUSH of an arbitrary segment can be canceled by specifying it.
  • PUSH_PROMISE is transmitted with a delay or when the segment name to be canceled by the client is unknown, it is necessary to exchange a plurality of commands, which may cause a delay due to an increase in transactions.
  • the transmission apparatus 101 notifies the reception apparatus 102 of the identifier 805 in the URL format of the PUSH transmission instruction, so that the reception apparatus 102 specifies the cancellation target by the identifier 805 and cancels the cancellation. Can be directed. Therefore, it is possible to cancel the PUSH transmission without requiring an extra transaction for specifying the cancellation target.
  • 901 to 902 are the same as 801 to 802. Also, the processing of S601 in FIG. 6 and S701 to S702 in FIG. 7 is the same as that described with reference to FIGS.
  • step S ⁇ b> 602 the instruction management unit 206 of the transmission apparatus 101 allocates an identifier 905 “push1” to the PUSH transmission instruction 902 received from the reception apparatus 102.
  • 9A and 9B show an example in which a character string format is adopted as an identifier.
  • step S ⁇ b> 603 the communication unit 207 of the transmission apparatus 101 transmits, as a response to the push transmission instruction 902, a response 903 including a push transmission policy response 904 having the same content as the push transmission instruction 902 to the reception apparatus 102. .
  • the response 903 also includes the binary data of segmentA1.
  • the push-policy header of the response 903 includes an identifier 905 in association with the PUSH transmission instruction response 804. Note that a prefix “push-ID” is inserted before the identifier 905 so that the identifier 905 can be identified from where in the push-policy header. This prefix is not limited to “push-ID”. Instead of transmitting the identifier 905 together with the PUSH transmission instruction response 904, when receiving an MPD acquisition request from the receiving apparatus 102, the transmitting apparatus 101 may describe the identifier 905 in the MPD and notify the receiving apparatus 102.
  • 906 to 908 are the same as 806 to 808.
  • the processing in S604 to S605 in FIG. 6 and the processing in S703 to S705 in FIG. 7 is the same as the PUSH transmission processing described with reference to FIGS.
  • the communication unit 308 of the reception apparatus 102 transmits a request 909 including the PUSH transmission cancel instruction 911 in the accept-push-policy header to the transmission apparatus 101.
  • the PUSH transmission cancel instruction 911 is a content for canceling all the segments scheduled to be PUSH transmitted by the PUSH transmission instruction 902.
  • the PUSH transmission instruction 902 to be canceled can be designated.
  • the URL 910 specified in the path of the request 909 specifies what is shared between the transmitting apparatus 101 and the receiving apparatus 102 in advance by describing it in the MPD.
  • 912 to 914 are the same as 811 to 813.
  • the processing from S606 to S612 in FIG. 6 and S707 in FIG. 7 is the same as the content described with reference to FIGS.
  • the transmission apparatus 101 notifies the reception apparatus 102 of the identifier 905 in the character string format of the PUSH transmission instruction, so that the reception apparatus 102 can specify the cancellation target by the identifier 905 and instruct the cancellation. it can. Therefore, it is possible to cancel the PUSH transmission without requiring an extra transaction for specifying the cancellation target.
  • FIGS. 10A and 10B show an example in which all segments scheduled to be pushed by a PUSH transmission instruction are canceled.
  • 10A and 10B are the same as 801 and 802 in FIGS. 8A and 8B. Also, the processing in S601 of FIG. 6 and S701 to S702 of FIG. 7 is the same as the processing described with reference to FIGS.
  • a PUSH transmission cancel instruction is performed by combining the contents of the PUSH transmission instruction and the resources acquired when the PUSH transmission instruction is transmitted. For this reason, S602 in which the transmission apparatus 101 allocates an identifier to the PUSH transmission instruction is skipped.
  • the resource is “segment A1” (resource 1002) that is a GET target in the request 1001.
  • step S ⁇ b> 603 the communication unit 207 of the transmission apparatus 101 returns a response 1004 including a response to the PUSH transmission instruction 1003 to the reception apparatus 102.
  • the response 1004 includes a PUSH transmission instruction response 1005 having the same content as the PUSH transmission instruction 1003 in the push-policy header. Further, the response 1004 includes the binary data of segmentA1. Unlike the operation example described with reference to FIGS. 8A and 8B and FIGS. 9A and 9B, the response 1004 does not include the identifier of the PUSH transmission instruction.
  • 1006 to 1008 are the same as 806 to 808 in FIGS. 8A and 8B. Further, the processing from S604 to S605 in FIG. 6 and the processing from S703 to S705 in FIG. 7 are the same as the PUSH transmission processing described with reference to FIGS.
  • the communication unit 308 of the reception apparatus 102 transmits a request 1009 including the PUSH transmission cancel instruction 1010 in the accept-push-policy header to the transmission apparatus 101.
  • the content of the PUSH transmission cancel instruction 1010 is to cancel all the segments scheduled to be PUSH transmitted by the PUSH transmission instruction 1003.
  • the segment A1 (resource 1002) that has been a GET target in the request 1001 is included in the path header, and the contents of the PUSH transmission instruction 1003 are included in the accept-push-policy header.
  • a PUSH transmission instruction 1003 to be canceled is designated.
  • 1011 to 1013 are the same as 811 to 813 in FIGS. 8A and 8B. Also, the processing from S606 to S612 in FIG. 6 and the processing in S707 in FIG. 7 are the same as the processing described with reference to FIGS.
  • the receiving apparatus 102 designates a PUSH transmission instruction to be canceled based on a combination of resources acquired when the content of the PUSH transmission instruction and the PUSH transmission instruction are transmitted.
  • the cancellation can be instructed by specifying the cancel target by the PUSH transmission instruction 1003 and the resource 1002. Therefore, the receiving apparatus 102 can directly cancel the PUSH transmission by directly specifying the cancellation target without requiring an extra transaction.
  • the communication unit 308 of the reception apparatus 102 transmits a request 1101 including PUSH transmission instructions 1102 and 1103 in an accept-push-policy header to the transmission apparatus 101.
  • the request 1101 has two accept-push-policy headers, and PUSH transmission instructions 1102 and 1103 are included by these two headers.
  • the PUSH transmission instructions 1102 and 1103 may be included in a single accept-push-policy header instead of a separate accept-push-policy header.
  • the number “2” following “urn: sample: push-next” indicates the number of segments to be acquired following “/ example / tmp / segmentA1”.
  • the receiving apparatus 102 requests the PUSH transmission of the segment A2 and the segment A3 by the PUSH transmission instruction 1102.
  • the two numbers in parentheses following “/ example / tmp / segmentB (% 01d)” specify the requested segment by the range of values that “(% 01d)” can take. is doing.
  • a PUSH transmission request for segment B2 and segment B3 is made in accordance with the PUSH transmission instruction 1103.
  • the communication unit 207 of the transmission apparatus 101 receives the request 1101 including the PUSH transmission instructions 1102 and 1103.
  • the instruction management unit 206 of the transmission apparatus 101 allocates an identifier 1106 of “/ example / tmp / push1” to the received PUSH transmission instruction 1102. Furthermore, an identifier 1108 of “/ example / tmp / push2” is allocated to the PUSH transmission instruction 1103. In this example, the identifier adopts the URL format.
  • the communication unit 207 of the transmission apparatus 101 transmits a response 1104 including responses to the PUSH transmission instructions 1102 and 1103 in the push-policy header to the reception apparatus 102.
  • the response 1104 also includes the binary data of segmentA1.
  • responses to the PUSH transmission instructions 1102 and 1103 include PUSH transmission instruction responses 1105 and 1107 having the same contents as the PUSH transmission instructions 1102 and 1103. That is, the response 1104 has two push-policy headers, and includes PUSH transmission instruction responses 1105 and 1107 by these two headers.
  • the PUSH transmission instruction responses 1105 and 1107 may be included in one push-policy header instead of separate push-policy headers.
  • 11A, 11B, and 11C further include an identifier 1106 (“push1”) corresponding to the response 1105 and an identifier 1108 (“push2”) corresponding to the response 1107.
  • push1 an identifier 1106
  • push2 an identifier 1108
  • This prefix is not limited to “push-URL”.
  • the transmission apparatus 101 transmits PUSH_PROMISE 1109 to 1112 for reserving a stream for transmitting the segment for each segment scheduled to be transmitted in HTTP / 2 to the reception apparatus 102.
  • the receiving apparatus 102 receives PUSH_PROMISE 1109 to 1112 from the transmitting apparatus 101.
  • PUSH_PROMISE 1109, 1110, 1111, and 1112 may be transmitted / received before the response 1104.
  • the instruction management unit 206 of the transmission apparatus 101 associates and holds the received PUSH transmission instruction 1102 and the identifier 1106, and the PUSH transmission instruction 1103 and the identifier 1108.
  • the communication unit 308 of the reception apparatus 102 receives a response 1104 including a response 1105 to the PUSH transmission instruction 1102 and a response 1107 to the PUSH transmission instruction 1103.
  • the instruction management unit 306 of the receiving apparatus 102 holds the PUSH transmission instructions 1102 and 1103 received after the response is returned in association with the identifiers 1106 and 1108.
  • the transmission apparatus 101 starts the PUSH transmission, and the communication unit 207 of the transmission apparatus 101 transmits a response 1113 including the binary data of the segment A2 to the reception apparatus 102 as the PUSH transmission of the segment A2.
  • step S ⁇ b> 705 the communication unit 308 of the reception apparatus 102 receives the response 1113.
  • the communication unit 308 of the reception apparatus 102 transmits the request 1114 including the PUSH transmission cancel instruction 1115 in the accept-push-policy header.
  • the PUSH transmission cancel instruction 1115 has a content of canceling all segments scheduled to be PUSH transmitted by the PUSH transmission instruction 1103 identified by the identifier 1108.
  • An identifier 1108 corresponding to the PUSH transmission instruction 1103 to be canceled is specified in the path header of the request 1114.
  • step S ⁇ b> 606 the communication unit 207 of the transmission apparatus 101 receives the request 1114 including the PUSH transmission cancel instruction 1115 from the reception apparatus 102.
  • the instruction management unit 206 of the transmission apparatus 101 specifies a cancel candidate segment for one of the segments scheduled to be pushed by the PUSH transmission instruction 1103 to be canceled determined from the identifier 1108.
  • the PUSH scheduled segments according to the PUSH transmission instruction 1103 are segment B2 and segment B3, one of them, segment B2, is specified as a cancel candidate segment.
  • segment B2 which is a cancel candidate segment, determines that it is not a PUSH transmission target other than the PUSH transmission instruction 1103 according to the PUSH transmission instruction 1102 adopted by the transmission apparatus 101 (NO in S608), and proceeds to S609. .
  • the instruction management unit 206 of the transmission apparatus 101 instructs the segment determination unit 205 to cancel the PUSH transmission of the segment B2, and the segment determination unit 205 cancels the PUSH transmission of the segment B2.
  • transmission reservation by PUSH_PROMISE 1111 since transmission reservation by PUSH_PROMISE 1111 has already been completed, transmission of RST_STREAM 1118 for canceling transmission reservation and processing for stopping PUSH transmission inside the transmission apparatus 101 are performed.
  • the instruction management unit 206 of the transmission apparatus 101 identifies the PUSH transmission instruction 1103 to be canceled determined from the identifier 1108 as a PUSH scheduled segment, and identifies segment B ⁇ b> 3, which is one of them, as a cancel candidate segment.
  • segment B3 which is a cancel candidate segment, is not a PUSH transmission target according to the PUSH transmission instruction 1102 adopted by the transmission apparatus 101 other than the PUSH transmission instruction 1103 (NO in S608), and the process proceeds to S609. .
  • the instruction management unit 206 of the transmission apparatus 101 instructs the segment determination unit 205 to cancel the PUSH transmission of the segment B3, and the segment determination unit 205 cancels the PUSH transmission of the segment B3.
  • transmission reservation by PUSH_PROMISE 1112 since transmission reservation by PUSH_PROMISE 1112 has already been completed, transmission of RST_STREAM 1119 for canceling transmission reservation and processing for stopping PUSH transmission inside the transmission apparatus 101 are performed.
  • S610 it is determined that cancellation is possible for all the cancel candidate segments of the PUSH transmission instruction 1103 according to the PUSH transmission cancellation instruction 1115 and cancellation processing is performed (YES in S610), and the process proceeds to S611.
  • the communication unit 207 of the transmission apparatus 101 transmits a response 1116 including a response 1117 to the PUSH transmission cancel instruction 1115 in the push-policy header to the reception apparatus 102.
  • This response 1117 has the same content as the PUSH transmission cancel instruction 1115.
  • the communication unit 308 of the reception apparatus 102 receives the response 1116 including the response 1117 of the PUSH transmission cancel instruction.
  • the transmitting apparatus 101 transmits PUSH_PROMISE 1111 and 1112 to the receiving apparatus 102 for the canceled segment B2 and segment B3, it is necessary to cancel them. Therefore, the transmission apparatus 101 transmits RST_STREAM 1118 and 1119 to the reception apparatus 102, and the reception apparatus 102 receives them.
  • the reception apparatus 102 may transmit these RST_STREAMs 1118 and 1119 before S706 or after S707.
  • the example in which two PUSH transmission instructions 1102 and 1103 are transmitted and cancellation of all segments is instructed for one PUSH transmission instruction has been described.
  • the identifiers 1106 and 1108 are assigned to the respective PUSH transmission instructions so that the PUSH transmission instruction can be designated, so that it is possible to cancel the PUSH transmission without requiring an extra transaction for specifying the cancellation target. It can be performed.
  • the PUSH transmission instruction 1202 makes a PUSH transmission request for the next four segments continuous from the segment A1 in terms of reproduction time.
  • PUSH_PROMISE 1206 and 1207 PUSH_PROMISE 1208 and 1209 that reserve transmission of segment A4 and segment A5 are transmitted.
  • the reception apparatus 102 transmits the PUSH transmission instruction 1212 to the transmission apparatus 101 as a request 1211 including the accept-push-policy header.
  • the PUSH transmission instruction 1212 is an instruction to cancel two segments from the back among the scheduled transmission segments in response to the PUSH transmission instruction 1202 instructing the PUSH transmission of the next four segments continuous from the segment A1 in terms of the reproduction time. . This point will be described in more detail.
  • the PUSH transmission instruction 1212 is a request for PUSH transmission of two consecutive segments segmentA2 and segmentA3, which are identified by the identifier “push1” (1205) and follow segmentA1.
  • the PUSH transmission instruction 1212 corresponds to a request for canceling the transmission requests of the segment A4 and the segment A5. .
  • the operation is performed according to the request transmitted / received last.
  • the PUSH transmission instruction 1202 to be canceled is specified.
  • the communication unit 207 of the transmission apparatus 101 receives the request 1211 including the PUSH transmission cancel instruction 1212 from the reception apparatus 102.
  • the instruction management unit 206 of the transmission apparatus 101 identifies segment A4, which is one of the PUSH scheduled segments based on the PUSH transmission instruction 1202 to be canceled determined from the identifier 1205, as a cancel candidate segment. Since there is no PUSH transmission instruction other than the PUSH transmission instruction 1202 in the transmission apparatus 101, S608 is skipped and the process proceeds to S609.
  • the instruction management unit 206 of the transmission apparatus 101 instructs the segment determination unit 205 to cancel the PUSH transmission of the segment A4, and the segment determination unit 205 cancels the PUSH transmission of the segment A4.
  • transmission of RST_STREAM 1215 for canceling transmission reservation and processing of stopping PUSH transmission inside the transmission apparatus 101 are performed.
  • the instruction management unit 206 of the transmission apparatus 101 identifies the PUSH transmission instruction 1202 to be canceled determined from the identifier 1205 as a PUSH scheduled segment, and identifies segment A5, which is one of them, as a cancel candidate segment. Since there is no PUSH transmission instruction other than the PUSH transmission instruction 1202 in the transmission apparatus 101, S608 is skipped and the process proceeds to S609.
  • the instruction management unit 206 of the transmission apparatus 101 instructs the segment determination unit 205 to cancel the PUSH transmission of the segment A5, and the segment determination unit 205 cancels the PUSH transmission of the segment A5.
  • transmission reservation by the PUSH_PROMISE 1209 since transmission reservation by the PUSH_PROMISE 1209 has already been completed, transmission of RST_STREAM 1216 for canceling transmission reservation and processing of stopping PUSH transmission inside the transmission apparatus 101 are performed.
  • the communication unit 207 of the transmission apparatus 101 transmits a response 1213 including a response 1214 to the PUSH transmission cancel instruction 1212 in the push-policy header to the reception apparatus 102.
  • This response 1214 has the same content as the PUSH transmission cancel instruction 1212.
  • the communication unit 308 of the reception apparatus 102 receives a response 1213 including a PUSH transmission cancel instruction response 1214.
  • the transmitting apparatus 101 transmits PUSH_PROMISE 1208 and 1209 to the receiving apparatus 102 with respect to the canceled segment A4 and segment A5. Therefore, in order to cancel these, RST_STREAM 1215 and 1216 are transmitted, and the receiving apparatus 102 receives them.
  • the reception apparatus 102 may transmit these RST_STREAMs 1215 and 1216 before S706 or after S707.
  • the receiving apparatus 102 can specify the identifier 1205 and cancel transmission of a part of the transmission target segment without requiring an extra transaction.
  • the identifier 1205 by giving the identifier 1205 to the PUSH transmission instruction, the receiving apparatus 102 can specify the identifier 1205 and cancel transmission of a part of the transmission target segment without requiring an extra transaction.
  • FIGS. 13A, 13B, and 13C Will be described with reference to FIG. 13A, 13B, and 13C show examples in which all PUSH transmission instructions cancel all the segments scheduled to be PUSH transmitted.
  • Reference numerals 1301 to 1313 in FIGS. 13A, 13B, and 13C are the same as reference numerals 1101 to 1113 in FIGS. 11A, 11B, and 11C.
  • the processing from S601 to 605 in FIG. 6 and S701 to 705 in FIG. 7 is the same as the processing described with reference to FIGS. 11A, 11B, 11C, and FIGS.
  • the communication unit 308 of the reception apparatus 102 transmits a request 1314 including the PUSH transmission cancel instruction 1316 in the accept-push-policy header to the transmission apparatus 101.
  • the PUSH transmission cancel instruction 1316 is a cancel instruction for canceling all segments scheduled to be PUSH transmitted by both the PUSH transmission instructions 1302 and 1303.
  • an identifier 1315 (“push") indicating all the PUSH transmission instructions currently used by the transmission apparatus 101 is designated. This identifier 1315 is notified to the receiving apparatus 102 in advance by, for example, the transmitting apparatus 101 describing it in the MPD.
  • an identifier for designating all PUSH transmission instructions may be understood from the format of the identifier assigned to each PUSH transmission instruction. For example, it is assumed that the identifier assigned to each PUSH transmission unit takes the form of “character string + numerical value”. Then, only the character string portion obtained by removing the numerical value part of the identifier assigned to each PUSH transmission instruction may represent an identifier for designating all the PUSH transmission instructions. The transmission apparatus 101 and the reception apparatus 102 share this rule in advance.
  • 13A, 13B, and 13C are “/ example / tmp / push1” and “/ example / tmp / push2”, respectively. It can be seen that the identifier for designating all PUSH transmission instructions is “/ example / tmp / push” excluding numerical values.
  • the communication unit 207 of the transmission apparatus 101 receives the request 1314 including the PUSH transmission cancel instruction 1316.
  • the instruction management unit 206 of the transmission apparatus 101 identifies an untransmitted segment as a cancellation candidate among the PUSH scheduled segments based on the PUSH transmission instruction 1302 that is one of the cancellation targets determined from the identifier 1315.
  • segment A3 which is one of the untransmitted segments, is specified as a cancel candidate segment.
  • segment A3 which is a cancel candidate segment, is not a PUSH transmission target according to the PUSH transmission instruction 1303 adopted by the transmission apparatus 101 other than the PUSH transmission instruction 1302 (NO in S608), and the process proceeds to S609. .
  • the instruction management unit 206 of the transmission apparatus 101 instructs the segment determination unit 205 to cancel the PUSH transmission of the segment A3, and the segment determination unit 205 cancels the PUSH transmission of the segment A3.
  • transmission reservation by the PUSH_PROMISE 1310 since transmission reservation by the PUSH_PROMISE 1310 has already been completed, transmission of RST_STREAM 1319 for canceling transmission reservation and processing for stopping PUSH transmission inside the transmission apparatus 101 are performed.
  • S610 it is determined that cancellation is possible for all cancel candidate segments of the PUSH transmission instruction 1302 by the PUSH transmission cancellation instruction 1316 and cancellation processing is performed (YES in S610), and the process proceeds to S611.
  • S611 since there are 1303 PUSH transmission instructions to be canceled other than 1302 (NO in S611), the process proceeds to S607.
  • step S ⁇ b> 607 the instruction management unit 206 of the transmission apparatus 101 identifies segment B ⁇ b> 2, which is one of the PUSH scheduled segments whose PUSH transmission instruction 1303, which is one of the cancellation targets determined from the identifier 1315, as a cancel candidate segment. To do.
  • segment B2 which is a cancel candidate segment, is not a PUSH transmission target according to the PUSH transmission instruction 1302 adopted by the transmission apparatus 101 other than the PUSH transmission instruction 1303 (NO in S608), and the process proceeds to S609. .
  • the instruction management unit 206 of the transmission apparatus 101 instructs the segment determination unit 205 to cancel the PUSH transmission of the segment B2, and the segment determination unit 205 cancels the PUSH transmission of the segment B2.
  • transmission reservation by the PUSH_PROMISE 1311 since transmission reservation by the PUSH_PROMISE 1311 has already been completed, transmission of RST_STREAM 1320 for canceling transmission reservation and processing for stopping PUSH transmission inside the transmission apparatus 101 are performed.
  • step S ⁇ b> 607 the instruction management unit 206 of the transmission apparatus 101 identifies segment B ⁇ b> 3, which is one of the PUSH transmission instructions 1303, which is one of the cancellation targets determined from the identifier 1315, as a cancel candidate segment. To do.
  • segment B3 which is a cancellation candidate segment, is not a PUSH transmission target according to the PUSH transmission instruction 1302 adopted by the transmission apparatus 101 other than the PUSH transmission instruction 1303 (NO in S608), and the process proceeds to S609. .
  • the instruction management unit 206 of the transmission apparatus 101 instructs the segment determination unit 205 to cancel the PUSH transmission of the segment B3, and the segment determination unit 205 cancels the PUSH transmission of the segment B3.
  • transmission reservation by the PUSH_PROMISE 1312 since transmission reservation by the PUSH_PROMISE 1312 has already been completed, transmission of RST_STREAM 1321 for canceling transmission reservation and processing for stopping PUSH transmission inside the transmission apparatus 101 are performed.
  • S610 it is determined that cancellation is possible for all cancel candidate segments of the PUSH transmission instruction 1303 according to the PUSH transmission cancellation instruction 1316 and cancellation processing is performed (YES in S610), and the process proceeds to S611.
  • the communication unit 207 of the transmission apparatus 101 transmits a response 1317 including a response 1318 to the PUSH transmission cancel instruction 1316 in the push-policy header to the reception apparatus 102.
  • This response 1318 has the same content as the PUSH transmission cancel instruction 1316.
  • step S ⁇ b> 707 the communication unit 308 of the reception apparatus 102 receives a response 1317 including a PUSH transmission cancel instruction response 1318 from the transmission apparatus 101.
  • the transmitting apparatus 101 transmits PUSH_PROMISE 1310 to 1312 to the receiving apparatus 102. Therefore, in order to cancel these, the transmission apparatus 101 transmits RST_STREAM 1319 to 1321, and the reception apparatus 102 receives this.
  • the RST_STREAM 1319 to 1321 may be transmitted by the receiving apparatus 102 before S706 or after S707.
  • FIGS. 14A and 14B 1401 to 1404 are the same as 801 to 804, and 1405 to 1407 are the same as 806 to 808. Moreover, since S601 to 605 in FIG. 6 and S701 to 705 in FIG. 7 are the same as those in FIGS. 8A and 8B, description thereof will be omitted. As can be seen from the fact that the response 1403 in FIGS. 14A and 14B has no description corresponding to 805 in FIGS. 8A and 8B, unlike FIGS. 8A and 8B, no identifier is assigned to the PUSH transmission instruction 1402 in FIGS. 14A and 14B. However, they may be allocated in the same manner as in FIGS. 8A and 8B.
  • the communication unit 308 of the reception apparatus 102 transmits a request 1408 including the PUSH transmission cancel instruction 1410 in the accept-push-policy header to the transmission apparatus 101.
  • the PUSH transmission cancel instruction 1410 has a content for canceling all the segments scheduled to be PUSH transmitted by the target PUSH transmission instruction.
  • the PUSH transmission cancel instruction 1410 includes “/ example / tmp / segmentA1” 1411 which is a URL specified when the PUSH transmission instruction 1402 is instructed in order to specify a PUSH transmission instruction to be canceled.
  • the URL 1411 is included behind the PUSH transmission cancel instruction 1410 together with the prefix “path”. This prefix is not limited to “path”. This prefix may not be necessary.
  • a cancel instruction indicating a list format such as “urn: sample: push-cancel-list” may be specified in 1410.
  • a format such as "" / example / tmp / segmentA3 ";” / example / tmp / segmentA4 ";” / example / tmp / segmentA5 ";” / example / tmp / segmentA6 "" is specified.
  • a cancel instruction indicating a template format such as “urn: sample: push-cancel-template” may be specified in 1410. Then, instead of 1411, a format such as “/ example / tmp / segmentA ⁇ % d ⁇ ; ⁇ 3,4,5,6 ⁇ ” or “/ example / tmp / segmentA ⁇ % d ⁇ ; ⁇ 3-6 ⁇ ” Is specified.
  • the communication unit 308 of the receiving apparatus 102 includes a PUSH transmission instruction 1412 to be newly set in the request 1408 separately from the PUSH transmission cancellation instruction.
  • a PUSH transmission instruction 1412 is included after the PUSH transmission cancellation instructions 1410 and 1411 in the accept-push-policy header.
  • a PUSH transmission instruction 1412 may be included before 1410 and 1411.
  • a URL 1409 that is a base for executing the PUSH transmission instruction 1412 to be newly set is included.
  • the URL specified in the path header is “/ example / tmp / segment B3”, and the PUSH transmission instruction 1423 requests PUSH transmission of four consecutive segments. Therefore, the PUSH transmission instruction 1412 has a content for instructing PUSH transmission of the four segments segmentB4 to segmentB7 that are continuous from the segmentB3 in terms of reproduction time.
  • the communication unit 207 of the transmission apparatus 101 transmits to the reception apparatus 102 a response 1415 that includes a push-policy header in response 1414 to the PUSH transmission cancel instruction 1410 and the PUSH transmission instruction 1412.
  • This response 1414 has the same content as 1410, 1411 and 1412.
  • the communication unit 308 of the receiving apparatus 102 receives the PUSH transmission cancel instruction 1410, the PUSH transmission instruction 1412 response 1414, and the response 1413 including the segment B3 binary data.
  • the transmitting apparatus 101 transmits PUSH_PROMISE 1406 to the receiving apparatus 102 for the canceled segment A3. Therefore, the transmission apparatus 101 transmits RST_STREAM 1415 to cancel this, and the reception apparatus 102 receives this.
  • This RST_STREAM 1415 may be transmitted by the receiving apparatus 102 before S706 or after S707.
  • the transmitting apparatus 101 After S612, the transmitting apparatus 101 newly starts PUSH transmission based on the PUSH transmission instruction 1412. That is, the transmission apparatus 101 starts PUSH transmission of segment B4 to segment B7.
  • the PUSH transmission instruction to be canceled is specified by the identifier, and the example in which another PUSH transmission instruction is performed while canceling all the segments scheduled to be pushed by the PUSH transmission instruction has been described. Also in the operation example 7, by specifying the PUSH transmission instruction by the identifier, it is possible to cancel the PUSH transmission without requiring an extra transaction for specifying the cancellation target.
  • reference numerals 1501 to 1513 are the same as 1101 to 1113 in FIGS. 11A, 11B, and 11C. 6 are the same as the processing described with reference to FIGS. 11A, 11B, 11C, and 8A, 8B, and thus description thereof is omitted.
  • the communication unit 308 of the reception apparatus 102 transmits a request 1514 including the PUSH transmission cancel instruction 1516 in the accept-push-policy header to the transmission apparatus 101.
  • the PUSH transmission cancel instruction 1516 has a content for canceling all the segments scheduled to be PUSH transmitted by the target PUSH transmission instruction.
  • the PUSH transmission cancel instruction 1516 includes “/ example / tmp / segmentA1” 1517 that is a URL specified when the PUSH transmission instructions 1502 and 1503 are instructed in order to specify a PUSH transmission instruction to be canceled. By specifying the URL 1517, all PUSH transmission instructions that specify "/ example / tmp / segmentA1" and make a request are subject to cancellation.
  • the communication unit 308 of the receiving apparatus 102 includes a PUSH transmission instruction 1518 to be newly set in the request 1514 separately from the PUSH transmission cancellation instruction.
  • a PUSH transmission instruction 1518 is included after the PUSH transmission cancellation instructions 1516 and 1517 in the accept-push-policy header.
  • a PUSH transmission instruction 1518 may be arranged before the PUSH transmission cancellation instructions 1516 and 1517.
  • a URL 1515 serving as a base when the PUSH transmission instruction 1518 to be newly set is executed is included. Since the URL specified in the path header is “/ example / tmp / segmentC3”, the PUSH transmission instruction 1518 is an instruction to push the next four segments (C4 to C7) consecutive in playback time from the segment C3. It becomes.
  • step S612 the communication unit 207 of the transmission apparatus 101 transmits a response 1519 including a response 1520 to the PUSH transmission cancellation instruction 1516 and the PUSH transmission instruction 1518 in the push-policy header to the reception apparatus 102.
  • the response 1520 has the same contents as the PUSH transmission cancel instructions 1516 and 1517 and the PUSH transmission instruction 1518.
  • the response 1519 includes segment C3 binary data.
  • the instruction management unit 206 of the transmission apparatus 101 allocates an identifier 1521 of “/ example / tmp / push3” to the received PUSH transmission instruction 1518. Then, the identifier 1521 is included in the push-policy header of the response 1519. By inserting a “push-URL” prefix in front of the identifier 1521, it is possible to distinguish where the identifier 1521 is from the push-policy header. This prefix is not limited to “push-URL”.
  • step S ⁇ b> 707 the communication unit 308 of the reception apparatus 102 receives a response 1519 including a PUSH transmission cancel instruction 1516 and a PUSH transmission instruction 1518 response 1521 from the transmission apparatus 101.
  • the transmitting apparatus 101 transmits PUSH_PROMISE 1510 to 1512 to the receiving apparatus 102 for the canceled segment A3, segment B2, and segment B3. Therefore, in order to cancel these, the transmission apparatus 101 transmits RST_STREAM 1522 to 1524, and the reception apparatus 102 receives this.
  • These RST_STREAMs 1522 to 1524 may be transmitted by the receiving apparatus 102 before S706 or after S707.
  • the transmission apparatus 101 After S612, the transmission apparatus 101 newly starts PUSH transmission based on the PUSH transmission instruction 1518.
  • the identifier is assigned by the transmitting apparatus 101, and the receiving apparatus 102 skips the processing of S701.
  • the communication unit 308 of the reception apparatus 102 transmits a request 1601 including a PUSH transmission instruction 1602 to the transmission apparatus 101.
  • the PUSH transmission instruction includes a character string “urn: sample: push-next; 2” after the prefix “push_directive”. This prefix is not limited to “push_directive”.
  • a request 1601 is a message for requesting segment A1, and the PUSH transmission instruction 1602 instructs the segment A1 to perform PUSH transmission of the next two segments that are continuous in playback time.
  • step S ⁇ b> 601 the communication unit 207 of the transmission apparatus 101 receives a request 1601 including a PUSH transmission instruction 1602 from the reception apparatus 102.
  • the instruction management unit 206 of the transmission apparatus 101 allocates an identifier 1605 of “/ example / tmp / push1” to the received PUSH transmission instruction 1602.
  • the identifier adopts the URL format.
  • the communication unit 207 of the transmission apparatus 101 transmits a response 1603 including a response 1604 to the PUSH transmission instruction 1602 to the reception apparatus 102, including a response 1603 including the binary data of the segment A1.
  • This response 1604 has the same content as the PUSH transmission instruction 1602.
  • the PUSH transmission instruction response 1604 is included after the prefix “push_ack”. This prefix is not limited to “push_ack”.
  • An identifier 1605 is included in correspondence with the PUSH transmission instruction response 1606.
  • the instruction management unit 206 of the transmission apparatus 101 holds the received PUSH transmission instruction 1602 and the identifier 1605 in association with each other.
  • the communication unit 308 of the receiving apparatus 102 receives a response 1603 including a response 1604 of the PUSH transmission instruction 1602.
  • step S ⁇ b> 704 the instruction management unit 306 of the reception apparatus 102 holds the PUSH transmission instruction 1602 received after the response is returned in association with the identifier 1605.
  • the transmission apparatus 101 starts the PUSH transmission, and the communication unit 207 of the transmission apparatus 101 transmits a response 1606 including the binary data of the segment A2 to the reception apparatus 102 as the PUSH transmission of the segment A2.
  • the communication unit 308 of the reception apparatus 102 receives the response 1606.
  • the communication unit 308 of the receiving apparatus 102 transmits, as a request 1607, a PUSH transmission cancel instruction 1608 for all segments scheduled to be PUSH transmitted in accordance with the PUSH transmission instruction 1602.
  • the identifier 1605 By specifying the identifier 1605, the PUSH transmission target to be canceled is specified.
  • the identifier 1605 is placed after the prefix “segment_uri”. This prefix is not limited to “segment_uri”.
  • the communication unit 207 of the transmission apparatus 101 receives the request 1607 including the PUSH transmission cancel instruction 1608 from the reception apparatus 102.
  • the instruction management unit 206 of the transmission apparatus 101 identifies segment A3, which is one of the PUSH scheduled segments based on the PUSH transmission instruction 1602 to be canceled determined from the identifier 1605, as a cancel candidate segment. Since there is no PUSH transmission instruction other than the PUSH transmission instruction 1602 in the transmission apparatus 101, S608 is skipped and the process proceeds to S609.
  • the instruction management unit 206 of the transmission apparatus 101 instructs the segment determination unit 205 to cancel the PUSH transmission of the segment A3, and the segment determination unit 205 cancels the PUSH transmission of the segment A3.
  • S610 it is determined that cancellation is possible for all cancel candidate segments of the PUSH transmission instruction 1602 according to the PUSH transmission cancellation instruction 1608 and cancellation processing is performed (YES in S610), and the process proceeds to S611.
  • the communication unit 207 of the transmission apparatus 101 transmits a response 1609 including a response 1610 to the PUSH transmission cancel instruction 1608 to the reception apparatus 102.
  • the response 1610 has the same content as the PUSH transmission cancel instruction 1608.
  • the PUSH transmission cancel instruction response 1610 is placed behind the prefix “push_ack”. This prefix is not limited to “push_ack”.
  • step S ⁇ b> 707 the communication unit 308 of the reception apparatus 102 receives a response 1609 including a PUSH transmission cancel instruction response 1610 from the transmission apparatus 101.
  • HTTP / 2 and WebSocket have been described, but the present embodiment can be applied to QUIIC and other protocols having a PUSH function.
  • the communication unit 308 of the reception apparatus 102 transmits a request 1701 including PUSH transmission instructions 1702 and 1703 in the accept-push-policy header to the transmission apparatus 101.
  • the PUSH transmission instructions 1702 and 1703 may be included in a single accept-push-policy header instead of separate accept-push-policy headers.
  • the number “2” following “urn: sample: push-next” designates the number of segments to be acquired following “/ example / video / segmentA1”. Therefore, the receiving apparatus 102 requests PUSH transmission of video / segment A2 and video / segment A3 by a PUSH transmission instruction 1702.
  • the two numbers in parentheses following “/ example / audio / segmentA (% 01d)” identify the requested segment by the range of values that “(% 01d)” can take. .
  • “ ⁇ 2, 3 ⁇ ” is specified as the range, and therefore, PUSH transmission requests for audio / segment A2 and audio / segment A3 are made in accordance with the PUSH transmission instruction 1703.
  • the communication unit 207 of the transmission apparatus 101 receives the request 1701 including the PUSH transmission instructions 1702 and 1703.
  • the communication unit 207 of the transmission apparatus 101 transmits a response 1704 including responses to the PUSH transmission instructions 1702 and 1703 in the push-policy header to the reception apparatus 102.
  • the response 1704 also includes binary data of video / segment A1.
  • the response 1704 includes PUSH transmission instruction responses 1705 and 1706 having the same contents as the PUSH transmission instructions 1702 and 1703 as responses to the PUSH transmission instructions 1702 and 1703. That is, the response 1704 has two push-policy headers, and includes PUSH transmission instruction responses 1705 and 1706 by these two headers. Note that the PUSH transmission instruction responses 1705 and 1706 may be included in a single push-policy header instead of separate push-policy headers.
  • the transmission apparatus 101 After transmitting the response 1704, the transmission apparatus 101 transmits PUSH_PROMISE 1707 to 1711 for reserving a stream for transmitting the segment for each segment scheduled to be transmitted in HTTP / 2 to the reception apparatus 102.
  • the receiving apparatus 102 receives PUSH_PROMISE 1707 to 1711 from the transmitting apparatus 101.
  • the PUSH_PROMISE 1707, 1708, 1709, 1710, and 1711 may be transmitted / received before the response 1704.
  • the transmission apparatus 101 since the data type of the segment is used as an identifier, the transmission apparatus 101 skips the process of S604.
  • the communication unit 308 of the reception apparatus 102 receives a response 1704 including a response 1705 to the PUSH transmission instruction 1702 and a response 1706 to the PUSH transmission instruction 1703.
  • the instruction management unit 306 of the receiving apparatus 102 holds the PUSH transmission instructions 1702 and 1703 that have been received after receiving a response.
  • a plurality of PUSH transmission instructions are exchanged by a set of requests and responses.
  • the PUSH transmission canceling process according to the present embodiment is performed even by a method in which a request and a response are exchanged for each PUSH transmission instruction. Is possible.
  • the transmission apparatus 101 starts PUSH transmission, and the communication unit 207 of the transmission apparatus 101 transmits a response 1712 including the binary data of audio / segment A1 to the reception apparatus 102 as PUSH transmission of audio / segment A1.
  • the communication unit 308 of the receiving apparatus 102 receives the response 1712.
  • the communication unit 308 of the reception apparatus 102 transmits a request 1713 including a PUSH transmission cancel instruction 1715 and a PUSH transmission instruction 1714.
  • a push-cancel header is used as the PUSH transmission cancel instruction 1715, but a header having a name different from the push-cancel may be used as the cancel instruction.
  • a segment of video data is set as a PUSH transmission cancel target, and a value of “video” is specified as a value of the push-cancel header 1715 to indicate the PUSH transmission cancel target, but a value different from “video” is specified. It may be used.
  • segments other than video data such as audio data and metadata segments may be subject to PUSH transmission cancellation by specifying values such as “audio” and “metadata”.
  • the data type of the segment may be specified in detail, such as a codec name or audio language. By designating “immediate” or the like, all segments may be subject to PUSH transmission cancellation. Instead of a character string indicating the type of data such as “video”, an ID of AdaptationSet or Resetting may be used as a value for instructing a PUSH cancellation target.
  • the number “1” following “urn: sample: push-next” designates the number of segments to be acquired following “/ example / video / segmentB2”. Therefore, the receiving apparatus 102 requests the PUSH transmission of video / segment B3 by the PUSH transmission instruction 1714.
  • the communication unit 207 of the transmission apparatus 101 receives the request 1713 including the PUSH transmission cancel instruction 1715 and the PUSH transmission instruction 1714 from the reception apparatus 102.
  • the push transmission instruction 1702 to be canceled is specified from the receiving apparatus that has transmitted the request 1713 including the cancellation instruction 1715 and the type of data included in the cancellation instruction 1715 (video in this example).
  • the instruction management unit 206 of the transmission device 101 identifies one of the segments scheduled to be pushed by the PUSH transmission instruction 1702 as a cancel candidate segment from the value of the PUSH transmission cancellation instruction 1715.
  • the PUSH-scheduled segments according to the PUSH transmission instruction 1103 are video / segment A2 and video / segment A3, so that one of them, video / segment A2, is specified as a cancel candidate segment.
  • video / segment A2 which is a cancel candidate segment, is determined not to be a PUSH transmission target according to the PUSH transmission instruction 1703 employed by the transmission apparatus 101 other than the PUSH transmission instruction 1702 (NO in S608), and the process proceeds to S609. Transition.
  • the instruction management unit 206 of the transmission apparatus 101 instructs the segment determination unit 205 to cancel the video / segment A2 PUSH transmission, and the segment determination unit 205 cancels the video / segment A2 PUSH transmission.
  • transmission reservation by the PUSH_PROMISE 1708 since transmission reservation by the PUSH_PROMISE 1708 has already been completed, transmission of RST_STREAM 1719 for canceling transmission reservation and processing of stopping PUSH transmission inside the transmission apparatus 101 are performed.
  • the instruction management unit 206 of the transmission apparatus 101 identifies video / segment A ⁇ b> 3, which is one of the PUSH scheduled segments according to the PUSH transmission instruction 1702, as a cancel candidate segment from the value of the PUSH transmission cancellation instruction 1715.
  • the instruction management unit 206 of the transmission apparatus 101 instructs the segment determination unit 205 to cancel the video / segment A3 PUSH transmission, and the segment determination unit 205 cancels the video / segment A3 PUSH transmission.
  • transmission reservation by the PUSH_PROMISE 1710 since transmission reservation by the PUSH_PROMISE 1710 has already been completed, transmission of RST_STREAM 1721 for canceling transmission reservation and processing for stopping PUSH transmission inside the transmission apparatus 101 are performed.
  • the communication unit 207 of the transmission apparatus 101 transmits a response 1716 including a response 1718 to the PUSH transmission cancel instruction 1715 and a response 1717 to the PUSH transmission instruction 1714 to the reception apparatus 102.
  • a response 1718 to the PUSH transmission cancel instruction 1715 uses the push-cancel header and has the same content as the PUSH transmission cancel instruction 1715. Another header may be used.
  • Response 1717 also includes binary data of video / segment B2.
  • the communication unit 308 of the reception apparatus 102 receives a response 1716 including a response 1718 to the PUSH transmission cancel instruction 1715 and a response 1717 to the PUSH transmission instruction 1714.
  • the transmission apparatus 101 After transmitting the response 1716, the transmission apparatus 101 transmits PUSH_PROMISE 1719 for reserving a stream for transmitting the segment for each segment scheduled to be transmitted in HTTP / 2 to the reception apparatus 102.
  • the receiving apparatus 102 receives PUSH_PROMISE 1719 from the transmitting apparatus 101.
  • the transmitting apparatus 101 transmits PUSH_PROMISE 1708 and 1710 to the receiving apparatus 102 for the canceled video / segment A2 and video / segment A3, it is necessary to cancel them. Therefore, the transmission apparatus 101 transmits RST_STREAM 1720 and 1721 to the reception apparatus 102, and the reception apparatus 102 receives them.
  • the RST_STREAM 1720 and 1721 may be transmitted by the receiving apparatus 102 before S706 or after S707.
  • the example in which the PUSH transmission cancel instruction 1715 and the PUSH transmission instruction 1714 are performed together has been described. Since the PUSH transmission cancellation instruction 1715 and the PUSH transmission instruction 1714 can be transmitted by the same request, the PUSH transmission instruction can be reset without requiring an extra transaction. Also, by making it possible to specify the data type of the segment, it is possible to easily cancel PUSH transmission and reset PUSH transmission only for a specific type of segment. As an example, it is possible to cancel the PUSH transmission of only the video segment without canceling the audio segment and reset the PUSH transmission of the video segment having a different resolution while the video segment and the audio segment are targeted for the push. .
  • PUSH transmission can be canceled with a small number of transactions between the transmission apparatus 101 and the reception apparatus 102. Also, when canceling only a part of PUSH transmission instructions when performing a plurality of PUSH transmission instructions, or when canceling only a part of a segment scheduled for PUSH transmission, the receiving apparatus 102 cancels with one request transmission. It can be carried out. Further, when MPEG-DASH is transmitted / received on HTTP / 2 and the receiving apparatus 102 instructs to cancel PUSH transmission, it is not necessary to individually cancel segments not reserved for transmission by PUSH_PROMISE. Therefore, the bandwidth on the network can be saved.
  • the present invention supplies a program that realizes one or more functions of the above-described embodiments to a system or apparatus via a network or a storage medium, and one or more processors in a computer of the system or apparatus read and execute the program This process can be realized. It can also be realized by a circuit (for example, ASIC) that realizes one or more functions.
  • a circuit for example, ASIC

Abstract

A server device receives, from a client device, a push transmission instruction relating to medium segments acquired by dividing content data, and performs push transmission of the medium segments according to the received push transmission instruction to the client device. In the case where the server device receives, from the client device, a push cancel instruction including identification information for specifying a medium segment for which the push transmission is cancelled out of the medium segments according to the received push transmission instruction, the server device cancels the push transmission of the medium segment specified on the basis of the identification information.

Description

情報処理装置及びその制御方法、コンピュータプログラムInformation processing apparatus, control method therefor, and computer program
 本発明は情報処理装置及びその制御方法、コンピュータプログラムに関し、特に、コンテンツのプッシュ技術に関する。 The present invention relates to an information processing apparatus, a control method thereof, and a computer program, and more particularly, to a content push technique.
 近年、音声データや映像データ等により構成されるストリーミング形式のコンテンツをユーザにリアルタイムに配信する配信システムが提供されている。このような配信システムにより、ユーザは、自身の端末装置を介して、ライブ映像等の所望のコンテンツをリアルタイムで楽しむことができる。 In recent years, a distribution system for distributing content in a streaming format composed of audio data, video data, and the like to users in real time has been provided. With such a distribution system, the user can enjoy desired content such as live video in real time via his / her terminal device.
 スマートフォンやタブレットのような端末の普及により、様々な端末装置でいつでもどこでもストリーミングコンテンツを楽しみたいという需要が高まって来ている。この要求を実現するために、端末装置の能力や端末装置が置かれる通信状況に応じて、動的に取得するストリームを変更する方式(MPEG-DASH、Http Live Streamingなど)が注目されている。DASHはDynamic Adaptive Streaming over HTTPの略称である。 With the widespread use of terminals such as smartphones and tablets, there is an increasing demand to enjoy streaming content anytime and anywhere on various terminal devices. In order to realize this request, attention has been paid to a method (MPEG-DASH, HTTP Live Streaming, etc.) that dynamically changes a stream to be acquired according to the capability of the terminal device and the communication situation in which the terminal device is placed. DASH is an abbreviation for Dynamic Adaptive Streaming over HTTP.
 これらの方式では映像データを細かい時間単位のセグメントに分割し、セグメントを取得するためのURL(Uniform Resource Locator)をプレイリストと呼ばれるファイルに記述する。受信装置は始めにこのプレイリストを取得し、プレイリストに記述されている情報を用いて所望の映像データを取得する。プレイリスト中に複数のバージョンの映像データセグメントに対するURLを記載することで、受信装置は、自身の処理能力や通信環境に応じて、最適なバージョンの映像データセグメントを取得することができる。 In these methods, video data is divided into small time unit segments, and a URL (Uniform Resource Locator) for acquiring the segments is described in a file called a playlist. The receiving apparatus first acquires this playlist, and acquires desired video data using information described in the playlist. By describing URLs for a plurality of versions of video data segments in the playlist, the receiving apparatus can acquire an optimal version of the video data segments according to its own processing capability and communication environment.
 これらストリーミング方式には、送信装置からデータセグメントをPUSH(プッシュ)送信する機能がある。PUSH送信は、受信装置からリクエストがなくても、リクエストの受信に先立って対応するレスポンスを送信することができるため、映像の再生遅延を軽減することができる。 These streaming systems have a function of PUSH (push) transmission of a data segment from a transmission device. Since the PUSH transmission can transmit a corresponding response prior to the reception of the request even if there is no request from the receiving apparatus, it is possible to reduce the video reproduction delay.
 特許文献1には、MPEG-DASHを利用したメディア配信において、メディアの切り替えの要求に応じて、PUSH送信によりメディアを配信することにより、メディアの切り替えを高速に行う構成が記載されている。 Patent Document 1 describes a configuration in which media is switched at high speed by distributing media by PUSH transmission in response to a request for switching media in media distribution using MPEG-DASH.
特開2016-15534号公報JP 2016-15534 A
 しかし、従来の構成においては、セグメントに分割されたコンテンツデータをPUSH送信する一般的なシステムにおいては、未送信のセグメントのPUSH送信を受信側からキャンセルする仕組みが提供されていない。そのため、従来の構成においては、PUSH送信キャンセルのために行う送信装置と受信装置との間のトランザクションが増えてしまうという課題があった。例えば、PUSH送信対象のセグメントのうち一部のセグメントのPUSH送信をキャンセルしたり、複数のPUSH送信指示に基づきPUSH送信が予約されている場合に特定のPUSH予約をキャンセルしたりする様なときにトランザクションが増大していた。 However, in the conventional configuration, in a general system for performing push transmission of content data divided into segments, a mechanism for canceling push transmission of an unsent segment from the reception side is not provided. Therefore, in the conventional configuration, there is a problem that transactions between the transmission device and the reception device for performing PUSH transmission cancellation increase. For example, when PUSH transmission of some segments among PUSH transmission target segments is cancelled, or when a specific PUSH reservation is canceled when PUSH transmission is reserved based on a plurality of PUSH transmission instructions Transactions were growing.
 本発明の一実施形態によれば、プッシュ送信に関する予約を少ないトランザクションでキャンセル可能にする技術が提供される。 According to an embodiment of the present invention, there is provided a technique that enables a reservation related to push transmission to be canceled with few transactions.
 本発明の一態様によるサーバ装置は以下の構成を備える。即ち、
 コンテンツデータが分割されたメディアセグメントに関するプッシュ送信指示をクライアント装置から受信する受信手段と、
 前記受信手段により受信されたプッシュ送信指示に応じたメディアセグメントを前記クライアント装置に対してプッシュ送信する送信手段と、
 前記受信手段により受信されたプッシュ送信指示に応じたメディアセグメントのうち、前記送信手段によるプッシュ送信がキャンセルされるメディアセグメントを前記サーバ装置が特定するために用いられる識別情報を含むプッシュキャンセル指示を前記クライアント装置から受信した場合、前記識別情報に基づいて特定されるメディアセグメントの前記送信手段によるプッシュ送信をキャンセルする制御手段と、を有する。
A server device according to an aspect of the present invention has the following configuration. That is,
Receiving means for receiving, from the client device, a push transmission instruction regarding the media segment into which the content data is divided;
A transmission unit that push-transmits a media segment corresponding to the push transmission instruction received by the reception unit to the client device;
Among the media segments according to the push transmission instruction received by the receiving means, the push cancel instruction including identification information used for the server device to identify a media segment whose push transmission by the transmitting means is canceled Control means for canceling push transmission by the transmission means of the media segment specified based on the identification information when received from the client device.
 本発明によれば、プッシュ送信に関する予約を少ないトランザクションでキャンセルすることが可能になる。 According to the present invention, it is possible to cancel a reservation related to push transmission with few transactions.
 本発明のその他の特徴及び利点は、添付図面を参照とした以下の説明により明らかになるであろう。なお、添付図面においては、同じ若しくは同様の構成には、同じ参照番号を付す。 Other features and advantages of the present invention will become apparent from the following description with reference to the accompanying drawings. In the accompanying drawings, the same or similar components are denoted by the same reference numerals.
図1は、通信システムのシステム構成図である。FIG. 1 is a system configuration diagram of a communication system. 図2は、送信装置の機能構成例を示すブロック図である。FIG. 2 is a block diagram illustrating a functional configuration example of the transmission apparatus. 図3は、受信装置の機能構成例を示すブロック図である。FIG. 3 is a block diagram illustrating a functional configuration example of the receiving apparatus. 図4は、送信装置のハードウェア構成例を示すブロック図である。FIG. 4 is a block diagram illustrating a hardware configuration example of the transmission apparatus. 図5は、受信装置のハードウェア構成例を示すブロック図である。FIG. 5 is a block diagram illustrating a hardware configuration example of the receiving apparatus. 図6は、送信装置の動作手順を示すフローチャートである。FIG. 6 is a flowchart showing an operation procedure of the transmission apparatus. 図7は、受信装置の動作手順を示すフローチャートである。FIG. 7 is a flowchart showing an operation procedure of the receiving apparatus. 図8Aは、キャンセル方式の一例を表す図である。FIG. 8A is a diagram illustrating an example of a cancellation method. 図8Bは、キャンセル方式の一例を表す図である。FIG. 8B is a diagram illustrating an example of a cancellation method. 図9Aは、キャンセル方式の一例を表す図である。FIG. 9A is a diagram illustrating an example of a cancellation method. 図9Bは、キャンセル方式の一例を表す図である。FIG. 9B is a diagram illustrating an example of a cancellation method. 図10Aは、キャンセル方式の一例を表す図である。FIG. 10A is a diagram illustrating an example of a cancellation method. 図10Bは、キャンセル方式の一例を表す図である。FIG. 10B is a diagram illustrating an example of a cancellation method. 図11Aは、キャンセル方式の一例を表す図である。FIG. 11A is a diagram illustrating an example of a cancellation method. 図11Bは、キャンセル方式の一例を表す図である。FIG. 11B is a diagram illustrating an example of a cancellation method. 図11Cは、キャンセル方式の一例を表す図である。FIG. 11C is a diagram illustrating an example of a cancellation method. 図12Aは、キャンセル方式の一例を表す図である。FIG. 12A is a diagram illustrating an example of a cancellation method. 図12Bは、キャンセル方式の一例を表す図である。FIG. 12B is a diagram illustrating an example of a cancellation method. 図12Cは、キャンセル方式の一例を表す図である。FIG. 12C is a diagram illustrating an example of a cancellation method. 図13Aは、キャンセル方式の一例を表す図である。FIG. 13A is a diagram illustrating an example of a cancellation method. 図13Bは、キャンセル方式の一例を表す図である。FIG. 13B is a diagram illustrating an example of a cancellation method. 図13Cは、キャンセル方式の一例を表す図である。FIG. 13C is a diagram illustrating an example of a cancellation method. 図14Aは、キャンセル方式の一例を表す図である。FIG. 14A is a diagram illustrating an example of a cancellation method. 図14Bは、キャンセル方式の一例を表す図である。FIG. 14B is a diagram illustrating an example of a cancellation method. 図15Aは、キャンセル方式の一例を表す図である。FIG. 15A is a diagram illustrating an example of a cancellation method. 図15Bは、キャンセル方式の一例を表す図である。FIG. 15B is a diagram illustrating an example of a cancellation method. 図15Cは、キャンセル方式の一例を表す図である。FIG. 15C is a diagram illustrating an example of a cancellation method. 図16は、キャンセル方式の一例を表す図である。FIG. 16 is a diagram illustrating an example of a cancellation method. 図17Aは、キャンセル方式の一例を表す図である。FIG. 17A is a diagram illustrating an example of a cancellation method. 図17Bは、キャンセル方式の一例を表す図である。FIG. 17B is a diagram illustrating an example of a cancellation method.
 以下に、添付の図面を参照して、本発明の実施形態について詳細に説明する。以下の実施形態において示す構成は一例にすぎず、本発明は以下に示す具体的な構成例に限定されるものではない。 Hereinafter, embodiments of the present invention will be described in detail with reference to the accompanying drawings. The configurations shown in the following embodiments are merely examples, and the present invention is not limited to the specific configuration examples shown below.
 (システム全体の構成)
 図1は、本発明の一実施形態における通信システムの全体構成を示す図である。本実施形態に係る送信装置101は、ネットワーク103を介して、受信装置102と接続される。なお、送信装置101、受信装置102はそれぞれ複数存在してもよい。送信装置101は例えばサーバ装置であり、受信装置102は例えばクライアント装置である。
(System configuration)
FIG. 1 is a diagram showing an overall configuration of a communication system according to an embodiment of the present invention. The transmission apparatus 101 according to the present embodiment is connected to the reception apparatus 102 via the network 103. A plurality of transmission apparatuses 101 and reception apparatuses 102 may exist. The transmission device 101 is, for example, a server device, and the reception device 102 is, for example, a client device.
 送信装置101は、セグメントに分割されたコンテンツデータを受信装置102へプッシュ送信するコンテンツの送信機能を備えている。なお、セグメントには、コンテンツの再生に用いられるパラメータを記述した初期セグメント(イニシャリゼーションセグメント)と、コンテンツデータを記述したメディアセグメントがある。送信装置101は、さらに、ユーザからの入力を受け付ける機能を備えてもよい。送信装置101の具体的な例としては、カメラ装置、ビデオカメラ装置、スマートフォン装置、PC(パーソナルコンピュータ)装置、携帯電話などの情報処理装置が挙げられるが、前述の機能を備えるものであればこれに限定されない。 The transmission apparatus 101 has a content transmission function for pushing content data divided into segments to the reception apparatus 102. The segment includes an initial segment (initialization segment) describing parameters used for content reproduction and a media segment describing content data. The transmission apparatus 101 may further have a function of receiving input from the user. Specific examples of the transmission device 101 include information processing devices such as a camera device, a video camera device, a smart phone device, a PC (personal computer) device, and a mobile phone. It is not limited to.
 受信装置102は、コンテンツの再生/表示機能、通信機能を備え、送信装置101からプッシュ送信されたコンテンツデータのセグメントを受信する。受信装置102は、さらに、ユーザからの入力を受け付ける機能を備えてもよい。受信装置102の具体例は、スマートフォン装置、PC装置、テレビ、携帯電話、などの情報処理装置が挙げられるが、前述の機能構成を満たすものであればこれに限定されない。 The receiving device 102 has a content reproduction / display function and a communication function, and receives a segment of content data push-transmitted from the transmitting device 101. The receiving device 102 may further have a function of receiving input from the user. Specific examples of the receiving device 102 include information processing devices such as a smart phone device, a PC device, a television, and a mobile phone, but are not limited thereto as long as they satisfy the above-described functional configuration.
 ネットワーク103は、本実施形態におけるネットワークとしての有線LAN(Local Area Network)、または無線LAN(Wireless LAN)である。なお、本実施形態ではネットワーク103として有線LAN、または無線LANを利用しているが、これに限らず、WAN(Wide Area Network)、PAN(Personal Area Network)などでもよい。また、ネットワーク103は、インターネット等の公衆通信網を経由するものでもよい。 The network 103 is a wired LAN (Local Area Network) or a wireless LAN (Wireless LAN) as a network in the present embodiment. In this embodiment, a wired LAN or a wireless LAN is used as the network 103. However, the present invention is not limited to this, and a WAN (Wide Area Network), a PAN (Personal Area Network), or the like may be used. Further, the network 103 may be one that passes through a public communication network such as the Internet.
 (送信装置の機能構成)
 図2は、本実施形態における送信装置の機能構成例を示すブロック図である。本実施形態の送信装置101は、撮像部201、符号化部202、セグメント生成部203、プレイリスト生成部204、セグメント決定部205、指示管理部206、及び、通信部207を有する。
(Functional configuration of transmitter)
FIG. 2 is a block diagram illustrating a functional configuration example of the transmission apparatus according to the present embodiment. The transmission apparatus 101 according to the present embodiment includes an imaging unit 201, an encoding unit 202, a segment generation unit 203, a playlist generation unit 204, a segment determination unit 205, an instruction management unit 206, and a communication unit 207.
 撮像部201は、撮影対象を撮影して、映像データを取得する。符号化部202は、撮像部201により撮影した映像データを符号化する。なお、撮像部201及び符号化部202は送信装置101の外部にあって、符号化された映像データが送信装置101に提供される構成にしてもよい。また、本実施形態において、映像データは動画像だけでなく、音声を含むデータである。なお、送受信対象のコンテンツは、このような映像データだけでなく、静止画像や、テキストデータ等を含む画像、あるいは、Javascript(登録商標)等の受信装置102において実行されるプログラムコードを含む画像でもよい。 The image capturing unit 201 captures a subject to acquire video data. The encoding unit 202 encodes video data captured by the imaging unit 201. Note that the imaging unit 201 and the encoding unit 202 may be provided outside the transmission apparatus 101, and the encoded video data may be provided to the transmission apparatus 101. In the present embodiment, the video data is not only a moving image but also data including sound. The content to be transmitted / received is not only such video data but also an image including a still image, text data, or an image including a program code executed in the receiving device 102 such as Javascript (registered trademark). Good.
 セグメント生成部203は、符号化部202で符号化された映像データから映像データの送信単位であるセグメントを生成する。セグメントとは、映像データを空間的又は時間的に分割した映像データの単位をいう。本実施形態におけるセグメントのファイルフォーマットとしてはISOBMFF(Base Media File Format)を利用する例を説明するが、これに限らずMPEG2TSなどでもよい。プレイリスト生成部204は、セグメント生成部203が作成したセグメントへのアクセスを可能とするURLを記載したプレイリストを生成する。プレイリストのフォーマットとしてMPEG-DASHで規定されているMPD(Media Presentation Description)がある。ただし、これに限られるものではなく、Http Livestreamingにおけるプレイリストの記述方法など、これと同等の機能を有するものでもよい。 The segment generation unit 203 generates a segment, which is a transmission unit of video data, from the video data encoded by the encoding unit 202. A segment is a unit of video data obtained by dividing video data spatially or temporally. An example of using ISOBMFF (Base Media File Format) will be described as a file format of a segment in the present embodiment, but is not limited thereto, and may be MPEG2TS or the like. The playlist generation unit 204 generates a playlist that describes a URL that allows access to the segment created by the segment generation unit 203. There is MPD (Media Presentation Description) defined by MPEG-DASH as a playlist format. However, the present invention is not limited to this, and it may have a function equivalent to this, such as a description method of a playlist in Http Livestreaming.
 通信部207は、受信装置102からの要求に応じて、生成されたプレイリスト及びセグメントをネットワーク103を介して受信装置102へ送信する。指示管理部(PUSH送信指示管理部)206は、通信部207が受信装置102から受信したPUSH送信指示を保持し、またPUSH(プッシュ)送信指示の内容をセグメント決定部205へ伝える。セグメント決定部(送信セグメント決定部)205は、通信部207がセグメント取得要求を受けた際に送信するセグメントを決定する。また、セグメント決定部205は、指示管理部206から受けるPUSH送信指示の内容を元にPUSH送信するセグメントを決定する。 The communication unit 207 transmits the generated playlist and segment to the receiving apparatus 102 via the network 103 in response to a request from the receiving apparatus 102. An instruction management unit (PUSH transmission instruction management unit) 206 holds the PUSH transmission instruction received by the communication unit 207 from the receiving apparatus 102 and transmits the content of the PUSH (push) transmission instruction to the segment determination unit 205. A segment determination unit (transmission segment determination unit) 205 determines a segment to be transmitted when the communication unit 207 receives a segment acquisition request. Further, the segment determination unit 205 determines a segment to perform PUSH transmission based on the content of the PUSH transmission instruction received from the instruction management unit 206.
 (受信装置の機能構成)
 図3は、本実施形態における受信装置の機能構成を示すブロック図である。本実施形態の受信装置102は、表示部301、復号化部302、プレイリスト解析部303、バッファ304、ユーザインタフェイス部305、指示管理部306、セグメント決定部307、通信部308を有する。
(Functional configuration of receiving device)
FIG. 3 is a block diagram illustrating a functional configuration of the receiving apparatus according to the present embodiment. The receiving apparatus 102 according to the present embodiment includes a display unit 301, a decoding unit 302, a playlist analysis unit 303, a buffer 304, a user interface unit 305, an instruction management unit 306, a segment determination unit 307, and a communication unit 308.
 通信部308は、ネットワーク103を介して送信装置101からセグメント及びプレイリストを受信し、セグメントをバッファ304に渡し、プレイリストをプレイリスト解析部303へ渡す。バッファ304は、通信部308から渡されたセグメントを蓄積して、一時的に保持する。復号化部302は、バッファ304に蓄積されているセグメントを元に映像データを復号化する。表示部301は、ネットワーク103を介して送信装置101から受信され、復号化部302において復号化された映像データの再生画像を表示したり、音声を出力したりする。なお、表示部301は、受信装置102の外部にあって、受信装置102から映像データを受け取って表示してもよい。 The communication unit 308 receives a segment and a playlist from the transmission apparatus 101 via the network 103, passes the segment to the buffer 304, and passes the playlist to the playlist analysis unit 303. The buffer 304 accumulates the segments passed from the communication unit 308 and temporarily holds them. The decoding unit 302 decodes the video data based on the segments accumulated in the buffer 304. The display unit 301 displays a playback image of video data received from the transmission device 101 via the network 103 and decoded by the decoding unit 302, or outputs audio. Note that the display unit 301 may be external to the receiving device 102 and receive and display video data from the receiving device 102.
 プレイリスト解析部303は、通信部308から渡されたプレイリストを解析する。ユーザインタフェイス部305は、ユーザが操作するための画面をディスプレイ508に表示するなどして、ユーザからの指示を入力する。例えば、送信装置101から受信したプレイリストを基に取得可能な映像の一覧を表示して、ユーザからの選択を受け付けたり、再生の一時停止、キャンセル等の指示を受け付けたりする。 The playlist analysis unit 303 analyzes the playlist passed from the communication unit 308. The user interface unit 305 inputs an instruction from the user by displaying a screen for the user to operate on the display 508. For example, a list of videos that can be acquired based on a playlist received from the transmission apparatus 101 is displayed, and a selection from the user is accepted, or an instruction to pause or cancel playback is accepted.
 セグメント決定部(取得セグメント決定部)307は、ユーザインタフェイス部305からの入力に基づき、プレイリスト解析部303からの解析結果を元に取得するセグメントを決定する。ただし、これに限らずネットワーク103の状況に応じてセグメント決定するなど、他の手法を利用してもよい。 The segment determination unit (acquisition segment determination unit) 307 determines a segment to be acquired based on the analysis result from the playlist analysis unit 303 based on the input from the user interface unit 305. However, the present invention is not limited to this, and other methods such as segment determination according to the status of the network 103 may be used.
 指示管理部(PUSH送信指示管理部)306は、プレイリスト解析部303からの解析結果を元にPUSH送信指示を通信部308を介して送信し、送信したPUSH送信指示を管理する。ただし、指示管理部306はプレイリスト解析部303の解析結果を参照せずにPUSH送信指示を送信してもよいし、プレイリストの取得前にPUSH送信指示を送信してもよい。指示管理部306はユーザインタフェイス部305からの入力に基づきPUSH送信指示を送信するが、これに限らずネットワーク103の状況に応じて行うなど、他の手法を利用してもよい。 The instruction management unit (PUSH transmission instruction management unit) 306 transmits a PUSH transmission instruction via the communication unit 308 based on the analysis result from the playlist analysis unit 303, and manages the transmitted PUSH transmission instruction. However, the instruction management unit 306 may transmit the PUSH transmission instruction without referring to the analysis result of the playlist analysis unit 303, or may transmit the PUSH transmission instruction before acquiring the playlist. The instruction management unit 306 transmits a PUSH transmission instruction based on an input from the user interface unit 305. However, the instruction management unit 306 is not limited to this, and other methods such as performing according to the state of the network 103 may be used.
 (送信装置のハードウェア構成)
 図4は、本実施形態における送信装置101のハードウェア構成を表すブロック図である。中央処理装置(以下、CPUと称す)401は、装置全体を制御しデータの計算、加工を行う装置である。CPU401は、後述するROM402に格納されたコンピュータプログラムを後述するRAM403に展開して実行する。本実施形態では、CPU401がコンピュータプログラムに基づき装置全体を制御することで、符号化部202、セグメント生成部203、プレイリスト生成部204、セグメント決定部205、及び、指示管理部206を実現する。
(Hardware configuration of transmitter)
FIG. 4 is a block diagram illustrating a hardware configuration of the transmission apparatus 101 according to the present embodiment. A central processing unit (hereinafter referred to as a CPU) 401 is a device that controls the entire device and calculates and processes data. The CPU 401 loads and executes a computer program stored in a ROM 402 described later on a RAM 403 described later. In this embodiment, the CPU 401 controls the entire apparatus based on a computer program, thereby realizing an encoding unit 202, a segment generation unit 203, a playlist generation unit 204, a segment determination unit 205, and an instruction management unit 206.
 ROM402は読出し専用メモリであり、一度書き込まれた情報を読み出すための記憶装置である。本実施形態では、ROM402は、図2で示された各機能部のコンピュータプログラムを格納する。RAM403は書込み可能メモリであり、一時的にデータの書き込みと読み出しを行うための記憶装置である。RAM403は、各プログラムの一時的な値の記憶を行う。 ROM 402 is a read-only memory, and is a storage device for reading information once written. In the present embodiment, the ROM 402 stores a computer program for each functional unit shown in FIG. A RAM 403 is a writable memory and is a storage device for temporarily writing and reading data. The RAM 403 stores temporary values for each program.
 内蔵メモリ404及び外部メモリ405は、アプリケーションのコンテンツを記憶しておく外部記憶装置である。内蔵メモリ404は、SSD(ソリッドステートドライブ)やハードディスク等の内蔵されたストレージ装置である。外部メモリ405は、USBメモリ、SDメモリ等に代表されるフラッシュメモリ等の着脱可能なメモリ装置である。なお、図2の各機能を実現するためのコンピュータプログラムは、ROM402ではなく、RAM403、内蔵メモリ404、あるいは、外部メモリ405に記憶されていてもよい。 The internal memory 404 and the external memory 405 are external storage devices that store application contents. The built-in memory 404 is a built-in storage device such as an SSD (solid state drive) or a hard disk. The external memory 405 is a removable memory device such as a flash memory represented by a USB memory, an SD memory, or the like. 2 may be stored not in the ROM 402 but in the RAM 403, the built-in memory 404, or the external memory 405.
 入力装置406はユーザからの指示を入力する装置である。入力装置406は、電源ボタンや音量ボタン、ホームボタンなどを、機械的なボタンスイッチにより実装したものでもよいし、タッチパネル、キーボード、ポインティング装置等により実装したものでもよい。入力装置406は送信装置101に複数実装することができる。 The input device 406 is a device for inputting an instruction from the user. The input device 406 may include a power button, a volume button, a home button, and the like implemented by mechanical button switches, or may be implemented by a touch panel, a keyboard, a pointing device, or the like. A plurality of input devices 406 can be mounted on the transmission device 101.
 ネットワークI/F407は、ネットワーク103を介してデータの送受信をするための装置である。ネットワークI/F407は、通信部207を実現する。電源408は送信装置101に電源を供給/充電する装置であり、電池と充電装置を含む。なお、電源408は、ACアダプタにより実現してもよい。カメラ409は送信用コンテンツを撮影する装置であり、撮像部201を実現する。 The network I / F 407 is a device for transmitting and receiving data via the network 103. The network I / F 407 implements the communication unit 207. The power source 408 is a device that supplies / charges power to the transmission device 101, and includes a battery and a charging device. The power source 408 may be realized by an AC adapter. The camera 409 is a device that captures content for transmission, and realizes the imaging unit 201.
 (受信装置のハードウェア構成)
 図5は、本実施形態における受信装置102のハードウェア構成を表すブロック図である。中央処理装置(以下、CPUと称す)501は、装置全体を制御しデータの計算、加工を行う装置である。CPU501は、後述するROM502に格納されたコンピュータプログラムを後述するRAM503に展開して実行する。本実施形態では、CPU501がコンピュータプログラムに基づき装置全体を制御することで、復号化部302、プレイリスト解析部303、指示管理部306、及び、セグメント決定部307を実現する。
(Hardware configuration of receiving device)
FIG. 5 is a block diagram illustrating a hardware configuration of the receiving apparatus 102 according to the present embodiment. A central processing unit (hereinafter referred to as a CPU) 501 is a device that controls the entire apparatus to calculate and process data. The CPU 501 develops and executes a computer program stored in a ROM 502 described later on a RAM 503 described later. In the present embodiment, the CPU 501 controls the entire apparatus based on a computer program, thereby realizing a decryption unit 302, a playlist analysis unit 303, an instruction management unit 306, and a segment determination unit 307.
 ROM502は読出し専用メモリであり、一度書き込まれた情報を読み出すための記憶装置である。本実施形態では、ROM502は、図3で示された各機能部のコンピュータプログラムを格納する。RAM503は書込み可能メモリであり、一時的にデータの書き込みと読み出すための記憶装置である。RAM503は、各プログラムの一時的な値の記憶を行う。 ROM 502 is a read-only memory, and is a storage device for reading information once written. In the present embodiment, the ROM 502 stores a computer program for each functional unit shown in FIG. A RAM 503 is a writable memory and is a storage device for temporarily writing and reading data. The RAM 503 stores temporary values for each program.
 内蔵メモリ504及び外部メモリ506は、アプリケーションのコンテンツを記憶しておく外部記憶装置である。これらの装置は、バッファ304を実現する。なお、バッファ304はRAM503で実現してもよい。内蔵メモリ504、外部メモリ506の具体的な装置の例は、図4を参照して説明した送信装置101の内蔵メモリ404、外部メモリ405と同様である。 The internal memory 504 and the external memory 506 are external storage devices that store application contents. These devices implement a buffer 304. Note that the buffer 304 may be realized by the RAM 503. Specific examples of the internal memory 504 and the external memory 506 are the same as the internal memory 404 and the external memory 405 of the transmission apparatus 101 described with reference to FIG.
 入力装置505はユーザからの指示を入力する装置である。入力装置505は、電源ボタンや音量ボタン、ホームボタンなどを機械的なボタンスイッチにより実装したものでもよいし、タッチパネル、キーボード、ポインティング装置等により実装したものでもよい。入力装置505は受信装置102に複数実装することができる。入力装置505は、ユーザインタフェイス部305を実現する。 The input device 505 is a device for inputting an instruction from the user. The input device 505 may be a power button, a volume button, a home button, or the like mounted by a mechanical button switch, or may be mounted by a touch panel, a keyboard, a pointing device, or the like. A plurality of input devices 505 can be mounted on the receiving device 102. The input device 505 implements a user interface unit 305.
 スピーカー507及びディスプレイ508は、送信装置101から受信したコンテンツを再生する装置であり、表示部301を実現する。すなわち、スピーカー507は、受信したコンテンツに含まれる音声データを音声として出力する。ディスプレイ508は、受信したコンテンツに含まれる動画像データを画像として表示する。ネットワークI/F509は、ネットワークを介してデータの送受信をするための装置である。ネットワークI/F509は、通信部308を実現した装置である。電源510は受信装置102に電源を供給/充電する装置であり、電池と充電装置を含む。なお、電源510は、ACアダプタにより実現してもよい。 The speaker 507 and the display 508 are devices that reproduce the content received from the transmission device 101, and realize the display unit 301. That is, the speaker 507 outputs audio data included in the received content as audio. The display 508 displays moving image data included in the received content as an image. A network I / F 509 is a device for transmitting and receiving data via a network. A network I / F 509 is a device that implements the communication unit 308. The power source 510 is a device that supplies / charges power to the receiving device 102 and includes a battery and a charging device. The power source 510 may be realized by an AC adapter.
 (送信装置の処理)
 図6を用いて本実施形態における送信装置101の処理について説明する。図6はPUSH送信指示を受信してからPUSH送信のキャンセルを行う迄における、本実施形態に係る送信装置101による処理の手順を示すフローチャートである。図6の各ステップは、CPU401がコンピュータプログラムに基づき送信装置101を制御することにより実行される。
(Transmission device processing)
The process of the transmission apparatus 101 in this embodiment is demonstrated using FIG. FIG. 6 is a flowchart showing a procedure of processing performed by the transmission apparatus 101 according to the present embodiment from when a PUSH transmission instruction is received until PUSH transmission is canceled. Each step in FIG. 6 is executed by the CPU 401 controlling the transmission apparatus 101 based on the computer program.
 S601において、通信部207は、受信装置102からPUSH送信指示を受信する。ここで、受信するPUSH送信指示は一つでもよいし、複数のPUSH送信指示を同時に受信してもよい。 In S <b> 601, the communication unit 207 receives a PUSH transmission instruction from the receiving device 102. Here, one PUSH transmission instruction may be received, or a plurality of PUSH transmission instructions may be received simultaneously.
 S602において、指示管理部206は、受信した各PUSH送信指示に対し、それぞれを区別するための識別子を割り振る。この識別子は数字や文字列などでもよいし、URL(Uniform Resource Locator)の様な形でもよい。あるいは、映像や音声といったセグメントのデータの種類を表す値を識別子として用いても良い。この識別子を受信装置102側で既に割り振っている場合、指示管理部206はS602をスキップして、受信装置102が割り振った識別子をそのまま使用するようにしてもよい。また、セグメントのデータの種類を識別子として使用する場合も新たに識別子を割り振る必要が無いためS602はスキップしてよい。また、PUSH送信指示を識別子以外で区別する場合もS602をスキップしてよい。PUSH送信指示は、識別子以外に、PUSH送信指示を受信装置102が送信した時刻や、後述するS603において送信装置101がPUSH送信指示に対する応答を送信した時刻により区別してもよい。または受信装置102がPUSH送信指示と合わせて、取得を行ったリソースにより区別してもよい。例えば、HTTP/2において、リソースとはPUSH送信指示を出した際にGETしたセグメント名などである。また、これら以外にもPUSH送信指示を区別して管理できる方法で実施してもよい。 In S602, the instruction management unit 206 allocates an identifier for distinguishing each received PUSH transmission instruction. This identifier may be a number or a character string, or may be in the form of a URL (Uniform Resource Locator). Alternatively, a value representing the type of segment data such as video or audio may be used as an identifier. When this identifier has already been allocated on the receiving apparatus 102 side, the instruction management unit 206 may skip S602 and use the identifier allocated by the receiving apparatus 102 as it is. Further, when the segment data type is used as an identifier, S602 may be skipped because there is no need to newly allocate an identifier. Also, S602 may be skipped when the PUSH transmission instruction is distinguished by other than the identifier. In addition to the identifier, the PUSH transmission instruction may be distinguished by the time when the reception apparatus 102 transmits the PUSH transmission instruction, or the time when the transmission apparatus 101 transmits a response to the PUSH transmission instruction in S603 described later. Alternatively, the receiving apparatus 102 may distinguish the acquired resources together with the PUSH transmission instruction. For example, in HTTP / 2, a resource is a segment name obtained when a PUSH transmission instruction is issued. Moreover, you may implement by the method which can distinguish and manage a PUSH transmission instruction | indication other than these.
 S603において、通信部207は、PUSH送信指示に対する応答を送信する。S602を実施している場合や受信装置102がPUSH送信指示に識別子を割り振っている場合、つまり識別子によりPUSH送信指示を区別する場合は応答に識別子を含めて送信する。識別子以外でPUSH送信指示を区別する場合は、通信部207はPUSH送信指示を区別するために必要な値を応答に含めて送信する。各値を応答に含める代わりに、プレイリスト生成部204がMPDに各値を記載することにより受信装置102へ通知してもよい。 In S603, the communication unit 207 transmits a response to the PUSH transmission instruction. When S602 is implemented or when the receiving apparatus 102 allocates an identifier to the PUSH transmission instruction, that is, when the PUSH transmission instruction is distinguished by the identifier, the response is transmitted including the identifier. When differentiating the PUSH transmission instruction other than the identifier, the communication unit 207 transmits a response including a value necessary to distinguish the PUSH transmission instruction. Instead of including each value in the response, the playlist generating unit 204 may notify the receiving apparatus 102 by describing each value in the MPD.
 S604において、指示管理部206は、受信したPUSH送信指示を保持しておく。識別子でPUSH送信指示を区別する場合、PUSH送信指示と識別子を紐づけて保持する。セグメントのデータの種類を識別子として使用する際、セグメント名からデータの種類が分かる場合などでは、S604はスキップしても良い。識別子以外でPUSH送信指示を区別する場合は、PUSH送信指示を区別するための値と紐づけてPUSH送信指示を保持する。 In S604, the instruction management unit 206 holds the received PUSH transmission instruction. When distinguishing the PUSH transmission instruction by the identifier, the PUSH transmission instruction and the identifier are associated and held. When the data type of the segment is used as an identifier, S604 may be skipped if the data type is known from the segment name. When differentiating the PUSH transmission instruction other than the identifier, the PUSH transmission instruction is held in association with a value for distinguishing the PUSH transmission instruction.
 S605において、セグメント決定部205は、受信したPUSH送信指示の内容を元にPUSH送信するセグメントを決定し、決定したセグメントのリストを指示管理部206へ通知する。その後、通信部207は、対象のセグメントをPUSH送信する。ライブ配信時の場合は、PUSH対象のセグメントのうち、生成完了したものからPUSH送信していく。なお、S603、S604及びS605は本フローチャートと異なる順番で実施してもよい。 In S605, the segment determination unit 205 determines a segment to be PUSH transmitted based on the content of the received PUSH transmission instruction, and notifies the instruction management unit 206 of the determined segment list. Thereafter, the communication unit 207 performs PUSH transmission of the target segment. In the case of live distribution, PUSH transmission is performed from the PUSH target segment that has been generated. Note that S603, S604, and S605 may be performed in an order different from the flowchart.
 S606において、通信部207は、PUSH送信キャンセル指示を受信装置102から受信する。ここで受信するPUSH送信キャンセル指示は一つのPUSH送信指示を対象にしたものでもよいし、複数のPUSH送信指示を対象にしたものでもよい。またPUSH送信キャンセル指示は、PUSH送信指示によりPUSHする予定の全てのセグメントのキャンセルを指示する内容でもよいし、PUSH送信指示によりPUSHするセグメントのうち一部のセグメントのみのキャンセルを指示する内容でもよい。 In S606, the communication unit 207 receives a PUSH transmission cancel instruction from the receiving device 102. The PUSH transmission cancel instruction received here may be directed to one PUSH transmission instruction, or may be directed to a plurality of PUSH transmission instructions. The PUSH transmission cancel instruction may be a content instructing cancellation of all segments scheduled to be pushed by the PUSH transmission instruction, or may be content instructing cancellation of only a part of the segments to be pushed by the PUSH transmission instruction. .
 次に、PUSHキャンセル対象であるPUSH送信指示が一つの場合、そのPUSH送信指示に基づきPUSH送信すべきセグメントのうち、キャンセル候補となるセグメント毎にS607からS610の処理を順に行う。キャンセル候補についてはS607の説明にて後述する。またPUSHキャンセル対象のPUSH送信指示が複数の場合、PUSH送信指示毎にS607からS611の処理を行う。例えば、PUSH送信キャンセル指示の対象がPUSH送信指示A及びBであり、PUSH送信指示Aのキャンセル候補セグメントは二つ、Bのキャンセル候補セグメントはと三つとする。この場合、まず対象のPUSH送信指示の一つであるAについてS607からS611の処理を実行する。その際、キャンセル候補セグメントの数である二回分S607からS610を順に行う。その後、もう一つのキャンセル対象であるPUSH送信指示BについてS607からS611を実行する。その際キャンセル候補セグメントの数である三回分S607からS610を順に行う。S607からS610による各セグメントに対する処理は、キャンセル対象のPUSH送信指示毎に並列に行われてもよい。 Next, when there is one PUSH transmission instruction to be PUSH canceled, the processes from S607 to S610 are performed in order for each segment to be canceled among the segments to be PUSH transmitted based on the PUSH transmission instruction. Cancellation candidates will be described later in the description of S607. Further, when there are a plurality of PUSH transmission instructions for PUSH cancellation, the processing from S607 to S611 is performed for each PUSH transmission instruction. For example, PUSH transmission instruction A and B are subject to PUSH transmission cancellation instructions, and there are two cancellation candidate segments for PUSH transmission instruction A and three cancellation candidate segments for B. In this case, first, the process from S607 to S611 is executed for A which is one of the target PUSH transmission instructions. At that time, S607 to S610 for the number of cancel candidate segments, which are twice, are performed in order. After that, S607 to S611 are executed for the PUSH transmission instruction B that is another cancellation target. At that time, S607 to S610 for three times that are the number of cancel candidate segments are sequentially performed. The processing for each segment from S607 to S610 may be performed in parallel for each PUSH transmission instruction to be canceled.
 S607において、指示管理部206は、PUSH送信キャンセル指示が対象としているPUSH送信指示のうち、一つのPUSH送信指示によりPUSHするセグメントの中からキャンセル候補となるセグメントを一つ特定する。例えば、あるPUSH送信指示によりsegment1、segment2、segment3についてPUSH送信することになっているとする。そして、PUSH送信キャンセル指示が全てのセグメントをキャンセルするよう求めてきたとする。この場合、キャンセル候補のセグメントはsegment1、segment2、segment3の三つ全てであり、S607で指示管理部206はその中の一つ(例えば、segment1)を選択する。一方でPUSH送信キャンセル指示が最後一つのセグメントのみの場合、キャンセル候補のセグメントはsegment3のみであり、必然的にsegment3が選択される。なお、複数のセグメントを対象としてPUSH送信キャンセルが指示された場合に、その一部のセグメントが既に送信済みであるか送信キャンセル済みのときは、それらのセグメントを除いたセグメントをキャンセル候補のセグメントとする。例えば、PUSH送信キャンセルの対象がsegment1~segment3の三つの場合で、segment1が送信済みで、segment2が送信キャンセル済みの場合は、segment3のみをPUSH送信キャンセルの候補とする。 In S607, the instruction management unit 206 identifies one segment that is a cancel candidate from among the PUSH transmission instructions targeted by the PUSH transmission cancellation instruction, from among the segments to be pushed by one PUSH transmission instruction. For example, it is assumed that PUSH transmission is to be performed for segment1, segment2, and segment3 according to a certain PUSH transmission instruction. Assume that the PUSH transmission cancel instruction asks to cancel all segments. In this case, the cancellation candidate segments are all three segments, segment1, segment2, and segment3, and in step S607, the instruction management unit 206 selects one of them (for example, segment1). On the other hand, when the PUSH transmission cancellation instruction is only the last segment, the cancellation candidate segment is only segment3, and segment3 is inevitably selected. In addition, when PUSH transmission cancellation is instructed for a plurality of segments, if some of the segments have already been transmitted or have been canceled, the segments excluding those segments are regarded as cancellation candidate segments. To do. For example, when PUSH transmission cancellation targets are segment1 to segment3, segment1 has been transmitted, and segment2 has been cancelled, only segment3 is a candidate for PUSH transmission cancellation.
 S608により、指示管理部206は、S607で特定したキャンセル候補のセグメントが、他のPUSH送信指示によるPUSH送信対象になっていないことを確認する。例えば、あるPUSH送信指示(以下、「指示1」と称する)によりsegment1、segment2、segment3をPUSH送信することになっているとする。また、指示1において、PUSH送信キャンセル指示によるキャンセル候補のセグメントの一つがsegment3であるとする。一方で、別のPUSH送信指示(以下、「指示2」と称する)によるPUSH送信予定セグメントがsegment3、segment4となっているとする。この場合、segment3が指示2によりPUSH送信予定になっているため、指示1の処理においてsegment3のPUSH送信はキャンセルしてはいけないということになる。なお、キャンセル対象のPUSH送信指示以外に別のPUSH送信指示が受信装置102から指示されていない場合、S608はスキップしS609へ遷移してもよい。 In S608, the instruction management unit 206 confirms that the cancel candidate segment specified in S607 is not a PUSH transmission target according to another PUSH transmission instruction. For example, it is assumed that segment1, segment2, and segment3 are to be PUSH-transmitted according to a certain PUSH transmission instruction (hereinafter referred to as “instruction 1”). Also, in instruction 1, it is assumed that one of the cancel candidate segments according to the PUSH transmission cancel instruction is segment3. On the other hand, it is assumed that the PUSH transmission scheduled segments based on another PUSH transmission instruction (hereinafter referred to as “instruction 2”) are segment3 and segment4. In this case, since segment 3 is scheduled to be PUSH transmitted according to instruction 2, the PUSH transmission of segment 3 must not be canceled in the process of instruction 1. If no other PUSH transmission instruction is instructed from the receiving apparatus 102 other than the PUSH transmission instruction to be canceled, S608 may be skipped and the process may proceed to S609.
 S608にて、S607で特定したキャンセル候補のセグメントが、他のPUSH送信指示によるPUSH送信対象になっていないと判定した場合(S608でNO)、S609へ遷移する。S608にて、S607で特定したキャンセル候補のセグメントが、他のPUSH送信指示によるPUSH送信対象になっていると判定した場合(S608でYES)、S610へ遷移する。 In S608, when it is determined that the cancel candidate segment specified in S607 is not a PUSH transmission target according to another PUSH transmission instruction (NO in S608), the process proceeds to S609. In S608, when it is determined that the cancel candidate segment specified in S607 is a PUSH transmission target according to another PUSH transmission instruction (YES in S608), the process proceeds to S610.
 S609において、指示管理部206は、セグメント決定部205へキャンセル候補のセグメントのPUSH送信をキャンセルするよう指示を出す。それに応じて、セグメント決定部205は、キャンセル候補セグメントのPUSH送信をキャンセルする。 In step S609, the instruction management unit 206 instructs the segment determination unit 205 to cancel the PUSH transmission of the cancel candidate segment. In response, the segment determination unit 205 cancels the PUSH transmission of the cancel candidate segment.
 S608からS609のキャンセル可能かのチェック及びキャンセル処理は、一つのPUSH送信指示によりPUSH送信するセグメントの中で、全てのキャンセル候補セグメントに対し行う。そこで、S610にて、処理対象の一つのPUSH送信指示についての全てのキャンセル候補のセグメントについて、S608からS609の処理が行われたか否かを判定する。全てのキャンセル候補セグメントに対しS608からS609の処理が行われたと判定された場合(S610でYES)、S611へ遷移する。S610にて、全てのキャンセル候補セグメントに対しS608からS609の処理を行っていないと判定した場合(S610でNO)、S607へ遷移して、処理を行っていないキャンセル候補セグメントに対して前述のキャンセル処理を行う。 The check whether or not cancellation is possible from S608 to S609 and the cancellation process are performed for all cancel candidate segments among the segments to be PUSH transmitted by one PUSH transmission instruction. Therefore, in S610, it is determined whether or not the processing from S608 to S609 has been performed for all cancel candidate segments for one PUSH transmission instruction to be processed. If it is determined that the processing from S608 to S609 has been performed for all cancel candidate segments (YES in S610), the process proceeds to S611. If it is determined in S610 that the processing from S608 to S609 has not been performed for all the cancellation candidate segments (NO in S610), the process proceeds to S607 and the above-described cancellation is performed for the cancellation candidate segment that has not been processed. Process.
 S607からS610の処理は、一つのPUSH送信指示によりPUSH送信するセグメントのうち、一つのキャンセル候補セグメントごとに実施する。なおS607で最初に全てのPUSH送信指示の全てのキャンセル候補セグメントを特定しておき、その後特定したキャンセル候補セグメント毎にS608からS610を実施するようにしてもよい。 The processing from S607 to S610 is performed for each cancel candidate segment among the segments to be PUSH transmitted by one PUSH transmission instruction. Note that in S607, all cancel candidate segments of all PUSH transmission instructions may be specified first, and then S608 to S610 may be performed for each specified cancel candidate segment.
 S611では、PUSH送信のキャンセルを指示しているすべてのPUSH送信指示についてS607からS610の処理を行ったか否かを判定する。キャンセル対象になっている全てのPUSH送信指示についてS607からS610のキャンセル処理を行ったと判定した場合(S611でYES)、S612へ遷移する。全てのPUSH送信指示についてS607からS610のキャンセル処理を行っていない判定した場合(S611でNO)、S607へ遷移して、未処理のPUSH送信指示について前述のキャンセル処理を行う。 In S611, it is determined whether or not the processing from S607 to S610 has been performed for all PUSH transmission instructions instructing cancellation of PUSH transmission. If it is determined that the cancellation processing from S607 to S610 has been performed for all PUSH transmission instructions that are to be canceled (YES in S611), the processing proceeds to S612. If it is determined that the cancellation process from S607 to S610 has not been performed for all the PUSH transmission instructions (NO in S611), the process proceeds to S607 and the above-described cancellation process is performed for an unprocessed PUSH transmission instruction.
 S607からS611のキャンセル方法は、本説明に記載した方法に限定されない。例えば、セグメントが別のPUSH送信指示からのPUSH送信対象になっているかに関わらず、あるPUSH送信指示のキャンセル候補になった時点で、そのセグメントのPUSH送信をキャンセルをするなど、別の方法を用いてもよい。 The cancellation method from S607 to S611 is not limited to the method described in this description. For example, regardless of whether a segment is a PUSH transmission target from another PUSH transmission instruction, when a certain PUSH transmission instruction is canceled, another method such as canceling the PUSH transmission of that segment is used. It may be used.
 S612にて、通信部207はPUSH送信キャンセル指示に対する応答を受信装置102へ送信する。 In S612, the communication unit 207 transmits a response to the PUSH transmission cancel instruction to the receiving apparatus 102.
 (受信装置の処理)
 図7を用いて本実施形態における受信装置102の処理について説明する。図7はPUSH送信指示の送信を行い、その後PUSH送信のキャンセルを行う迄における、本実施形態に係る受信装置102による処理の手順を示すフローチャートである。図7の各ステップは、CPU501がコンピュータプログラムに基づき受信装置102を制御することにより実行される。
(Receiver processing)
Processing of the receiving apparatus 102 in this embodiment will be described using FIG. FIG. 7 is a flowchart showing a procedure of processing performed by the receiving apparatus 102 according to the present embodiment until transmission of a PUSH transmission instruction and subsequent cancellation of PUSH transmission. Each step in FIG. 7 is executed by the CPU 501 controlling the receiving apparatus 102 based on the computer program.
 S701において、指示管理部306は、送信しようとする各PUSH送信指示に対し、それぞれを区別するための識別子を割り振る。この識別子は数字や文字列などでもよいし、URLの様な形でもよい。あるいは、映像や音声といったセグメントのデータの種類を表す値を識別子として用いても良い。セグメントのデータの種類を識別子として使用する際、セグメント名からデータの種類が分かる場合などでは、S701はスキップしても良い。この識別子は送信装置101が割り振ることもでき、その場合S701はスキップしてよい。またPUSH送信指示を識別子以外で区別する場合もS701をスキップしてよい。 In S701, the instruction management unit 306 allocates an identifier for distinguishing each PUSH transmission instruction to be transmitted. This identifier may be a number, a character string, or the like, or may be in the form of a URL. Alternatively, a value representing the type of segment data such as video or audio may be used as an identifier. When the segment data type is used as an identifier, S701 may be skipped if the data type is known from the segment name. This identifier can also be allocated by the transmission apparatus 101, and in this case, S701 may be skipped. Further, S701 may be skipped when the PUSH transmission instruction is distinguished by other than the identifier.
 S702において、通信部308は、PUSH送信指示を送信装置101へ送信する。ここで送信するPUSH送信指示は一つでもよいし、複数のPUSH送信指示を同時に送信してもよい。S701にて識別子を振っている場合は、各PUSH送信指示に識別子を含めて送信する。 In step S <b> 702, the communication unit 308 transmits a PUSH transmission instruction to the transmission apparatus 101. One PUSH transmission instruction may be transmitted here, or a plurality of PUSH transmission instructions may be transmitted simultaneously. When the identifier is waved in S701, the identifier is included in each PUSH transmission instruction and transmitted.
 S703において、通信部308は、PUSH送信指示に対する送信装置101からの応答を受信する。この応答は、図6のS603のステップにより送信装置101から送信される。 In S703, the communication unit 308 receives a response from the transmission apparatus 101 to the PUSH transmission instruction. This response is transmitted from the transmission apparatus 101 in step S603 of FIG.
 S704にて、指示管理部306は、送信装置101から受信したPUSH送信指示の応答を保持しておく。 In step S704, the instruction management unit 306 holds the PUSH transmission instruction response received from the transmission apparatus 101.
 S705において、通信部308は送信装置101からPUSH送信されるセグメントを受信する。受信したセグメントはバッファ304に蓄積され、復号化部302において復号されて、表示部301により表示/出力される。 In step S <b> 705, the communication unit 308 receives a segment transmitted by PUSH from the transmission apparatus 101. The received segment is stored in the buffer 304, decoded by the decoding unit 302, and displayed / output by the display unit 301.
 S706において、通信部308はPUSH送信キャンセル指示を送信する。S705にてPUSH送信セグメントを受信する前に本ステップを実行してもよい。送信するPUSH送信キャンセル指示の対象は、一つのPUSH送信指示でもよいし、複数のPUSH送信指示を対象にしたものでもよい。また、PUSH送信キャンセル指示は、PUSH送信指示によりPUSHされる予定の全てのセグメントのキャンセルを指示する内容でもよい。あるいは、PUSH送信指示によりPUSHされるセグメントのうち一部のセグメントのみのキャンセルを指示する内容でもよい。 In S706, the communication unit 308 transmits a PUSH transmission cancel instruction. This step may be executed before receiving the PUSH transmission segment in S705. The PUSH transmission cancel instruction to be transmitted may be one PUSH transmission instruction or a plurality of PUSH transmission instructions. Further, the PUSH transmission cancel instruction may be a content instructing cancellation of all the segments scheduled to be pushed by the PUSH transmission instruction. Or the content which instruct | indicates the cancellation of only a part of segment among the segments pushed by PUSH transmission instruction | indication may be sufficient.
 なお、S706におけるPUSH送信キャンセル指示の送信のトリガーは、ユーザによる指示でも良いし、送信装置101と受信装置102を接続する通信路の帯域の状態変化でも良いし、送信装置101及び/又は受信装置102の状態の変化でも良い。また、PUSH送信キャンセル指示は、受信装置102において実行されるウェブブラウザからのメッセージのヘッダに含まれるようにしても良いし、ウェブブラウザとは別のアプリケーションからのメッセージに含まれるようにしても良い。 The transmission trigger of the PUSH transmission cancel instruction in S706 may be an instruction by the user, a state change of a band of a communication path connecting the transmission apparatus 101 and the reception apparatus 102, or the transmission apparatus 101 and / or the reception apparatus. A change in the state of 102 may be used. The PUSH transmission cancel instruction may be included in a header of a message from a web browser executed in the receiving apparatus 102, or may be included in a message from an application different from the web browser. .
 また、通信部308により送信されるPUSH送信キャンセル指示には、PUSH送信指示の指定を含む。この指定は、S602の説明において述べたように、PUSH送信指示に対して割り振られた識別子を用いて実現しても良いし、時刻情報を用いて実現しても良い。時刻情報には、PUSH送信指示を受信装置102が送信した時刻でも良いし、送信装置101がPUSH送信指示に対してレスポンスを送信した時刻でも良いし、それ以外の時刻に関する情報を用いても良い。さらに、上記指定は、PUSH送信指示によってプッシュ送信される対象となるデータの種類(映像データか、音声データか、又はそれ以外か、など)を識別するための情報に基づいて実現されるようにしてもよい。 Also, the PUSH transmission cancel instruction transmitted by the communication unit 308 includes designation of the PUSH transmission instruction. As described in the description of S602, this designation may be realized using an identifier assigned to the PUSH transmission instruction, or may be realized using time information. The time information may be the time at which the receiving apparatus 102 transmits the PUSH transmission instruction, the time at which the transmitting apparatus 101 transmits a response to the PUSH transmission instruction, or information about other times may be used. . Further, the above specification is realized based on information for identifying the type of data (video data, audio data, or other data) to be push-transmitted by the PUSH transmission instruction. May be.
 また、詳細は後述するが、PUSH送信指示を指定する代わりに、プッシュ送信の対象となるメディアセグメントを指定するPUSH送信キャンセル指示が通信部308によって送信されるようにしても良い。また、PUSH送信指示の指定やメディアセグメントの指定のために、URLを用いても良い。このように、通信部308は、プッシュ送信をキャンセルすべきメディアセグメントを送信装置101が特定するための識別情報(例えば、PUSH送信指示の識別子や、時刻情報や、データの種類、または、PUSH送信指示やメディアセグメントを指定するためのURLなど)をPUSH送信キャンセル指示に含めて送信する。 As will be described in detail later, instead of specifying a PUSH transmission instruction, a PUSH transmission cancellation instruction that specifies a media segment to be subjected to push transmission may be transmitted by the communication unit 308. Further, a URL may be used for specifying a PUSH transmission instruction and a media segment. As described above, the communication unit 308 identifies identification information (for example, an identifier of a PUSH transmission instruction, time information, a data type, or a PUSH transmission for specifying a media segment for which push transmission should be canceled). An instruction or a URL for designating a media segment) is included in the PUSH transmission cancel instruction and transmitted.
 S707において、通信部308はPUSH送信キャンセル指示に対する応答を受信する。この応答は、図6のS612のステップにより送信装置101から送信される。 In S707, the communication unit 308 receives a response to the PUSH transmission cancel instruction. This response is transmitted from the transmission apparatus 101 in step S612 of FIG.
 上記のように、送信装置101は、少なくとも1つのセグメントのプッシュ送信を指示するためのプッシュ送信指示を受信装置102から受信すると、それに応じて、各セグメントを受信装置102へプッシュ送信するように制御する。送信装置101は、セグメントのプッシュ送信をキャンセルするための、プッシュ送信指示の指定を含むキャンセル指示を受信装置102から受信した場合、指定されたプッシュ送信指示に基づく未送信のセグメントのプッシュ送信を停止する。このように本実施形態では、プッシュ送信指示を指定してプッシュ送信をキャンセルすることで、HTTP/2やWebSocketなどの利用する通信プロトコルにかかわらず、最小限のトランザクション回数でプッシュ送信をキャンセルすることが可能である。 As described above, when the transmission apparatus 101 receives a push transmission instruction for instructing push transmission of at least one segment from the reception apparatus 102, the transmission apparatus 101 is controlled to push each segment to the reception apparatus 102 accordingly. To do. When the transmitting apparatus 101 receives a cancel instruction including the designation of the push transmission instruction for canceling the push transmission of the segment from the receiving apparatus 102, the transmitting apparatus 101 stops the push transmission of the untransmitted segment based on the designated push transmission instruction. To do. As described above, in this embodiment, by specifying the push transmission instruction and canceling the push transmission, the push transmission can be canceled with the minimum number of transactions regardless of the communication protocol used such as HTTP / 2 or WebSocket. Is possible.
 前述のように、プッシュ送信指示の指定は、例えば、プッシュ送信指示の識別子や、あるいは、プッシュ送信指示の内容と、受信装置102により要求されたリソース又はプッシュ送信指示の送受信に関する時刻との組み合わせにより行うことができる。また、送信装置101が、受信したキャンセル指示の内容に応じて、未送信のセグメントの全て又は一部のプッシュ送信を停止することで、受信装置102は、所望のセグメントの送信を事後的にキャンセルすることができる。 As described above, the designation of the push transmission instruction is performed by, for example, combining the identifier of the push transmission instruction or the content of the push transmission instruction with the resource requested by the receiving apparatus 102 or the time related to transmission / reception of the push transmission instruction. It can be carried out. Further, the transmission apparatus 101 stops the push transmission of all or a part of the untransmitted segments according to the content of the received cancellation instruction, so that the reception apparatus 102 cancels the transmission of the desired segment later. can do.
 また、送信装置101は、複数のプッシュ送信指示を受信してセグメントをプッシュ送信している場合に、あるプッシュ送信指示についてキャンセル指示を受信したときは、S608において、他のプッシュ送信指示の送信対象はキャンセル対象から除外する。すなわち、キャンセル指示に指定されたプッシュ送信指示に基づく未送信のセグメントの全ての送信を停止するのではなく、他のプッシュ送信指示に基づく未送信のセグメントに含まれないセグメントについてのみ送信を停止する。これにより、セグメントのプッシュ配信において、受信装置102のユーザが意図しないキャンセルが発生することを防ぐことができる。 In addition, when the transmission apparatus 101 receives a plurality of push transmission instructions and pushes a segment and receives a cancel instruction for a certain push transmission instruction, in S608, the transmission apparatus 101 transmits another push transmission instruction. Are excluded from cancellation. That is, instead of stopping all transmissions of unsent segments based on the push transmission instruction specified in the cancel instruction, transmission is stopped only for segments not included in the unsent segments based on other push transmission instructions. . Thereby, in the push distribution of the segment, it is possible to prevent a cancel that is not intended by the user of the receiving apparatus 102 from occurring.
 (動作例1)
 HTTP/2上で、URL形式の識別子によりキャンセルすべきPUSH送信指示を指定し、PUSH送信指示によりPUSHする予定全てのセグメントをキャンセルする例について、図8A、図8Bを参照して説明する。図8A、図8Bは送信装置101と受信装置102との間でやり取りされるリクエスト、レスポンスメッセージの例を示す概略図である。ここでは、受信装置102から送信装置101へ送信するデータをリクエスト、送信装置101から受信装置102へ送信するデータをレスポンスと称する。図8Aの上部のメッセージから下部のメッセージへ順にやり取りが行われ、次に図8Bの上部のメッセージから下部のメッセージがやり取りされる。つまり、リクエスト801から、803、806、807、808、809、811、813の順でやり取りされる。以降の図9A~図17Bも同様の構成となる。ここでは、識別子は送信装置101が割り振るものとしてS701はスキップする。
(Operation example 1)
An example of designating a PUSH transmission instruction to be canceled by an identifier in the URL format on HTTP / 2 and canceling all segments scheduled to be pushed by the PUSH transmission instruction will be described with reference to FIGS. 8A and 8B. 8A and 8B are schematic diagrams illustrating examples of requests and response messages exchanged between the transmission apparatus 101 and the reception apparatus 102. FIG. Here, data transmitted from the receiving apparatus 102 to the transmitting apparatus 101 is referred to as a request, and data transmitted from the transmitting apparatus 101 to the receiving apparatus 102 is referred to as a response. The messages are exchanged in order from the upper message in FIG. 8A to the lower message, and then the lower message is exchanged from the upper message in FIG. 8B. That is, the requests 801 are exchanged in the order of 803, 806, 807, 808, 809, 811, 813. Subsequent FIGS. 9A to 17B have the same configuration. Here, the identifier is assigned by the transmission apparatus 101, and step S701 is skipped.
 S702において、受信装置102の通信部308は、送信装置101へPUSH送信指示802をaccept-push-policyヘッダーに含むリクエスト801を送信する。リクエスト801はsegmentA1というセグメントをリクエストする内容を有する。リクエスト801はさらに、segmentA1から再生時間的に連続する次の五つのセグメントsegmentA2~segmentA6をPUSH送信するようPUSH送信指示802で指示している。802において、"urn:sample:push-next"に続く数字"5"は、"/example/tmp/segmentA1"に続いて取得するセグメントの個数を指定したものである。S601において、送信装置101の通信部207はPUSH送信指示802を含むリクエスト801を受信する。 In S <b> 702, the communication unit 308 of the reception apparatus 102 transmits a request 801 including the PUSH transmission instruction 802 in the accept-push-policy header to the transmission apparatus 101. The request 801 has a content for requesting a segment called segmentA1. The request 801 further instructs the PUSH transmission instruction 802 to PUSH transmit the next five segments segmentA2 to segmentA6 continuous from the segmentA1 in terms of playback time. In 802, the number “5” following “urn: sample: push-next” designates the number of segments to be acquired following “/ example / tmp / segmentA1”. In step S <b> 601, the communication unit 207 of the transmission apparatus 101 receives a request 801 including a PUSH transmission instruction 802.
 S602において、送信装置101の指示管理部206は、受信したPUSH送信指示802に対し"/example/tmp/push1"という識別子805を割り振る。動作例1では、識別子はURLの形式を採用している。 In S602, the instruction management unit 206 of the transmission device 101 allocates an identifier 805 of “/ example / tmp / push1” to the received PUSH transmission instruction 802. In the operation example 1, the identifier adopts the URL format.
 S603において、送信装置101の通信部207は、PUSH送信指示802に対する応答として、PUSH送信指示802と同内容のPUSH送信指示の応答804をpush-policyヘッダーに含むレスポンス803を受信装置102へ送信する。レスポンス803のpush-policyヘッダーには、PUSH送信指示の応答804と対応させて識別子805も含める。識別子805の前に"push-URL"というプレフィックスを入れることで、push-policyヘッダーのどこからが識別子805なのかを分かるようにしている。このプレフィックスは"push-URL"に限定しない。識別子805をPUSH送信指示の応答804と共に送信する代わりに、送信装置101はMPDに識別子805を記載し受信装置102へ通知してもよい。 In step S <b> 603, the communication unit 207 of the transmission apparatus 101 transmits, to the reception apparatus 102, a response 803 including a PUSH transmission instruction response 804 having the same content as the PUSH transmission instruction 802 in the push-policy header as a response to the PUSH transmission instruction 802. . The push-policy header of the response 803 includes an identifier 805 in association with the PUSH transmission instruction response 804. By inserting a prefix “push-URL” in front of the identifier 805, it is possible to know where the identifier 805 is from the push-policy header. This prefix is not limited to “push-URL”. Instead of transmitting the identifier 805 together with the PUSH transmission instruction response 804, the transmitting apparatus 101 may describe the identifier 805 in the MPD and notify the receiving apparatus 102.
 レスポンス803を送信後、送信装置101はHTTP/2における、PUSH送信予定のsegmentA2とsegmentA3について、それぞれどのstreamで送信するかを予約するためのPUSH_PROMISE806及び807を送信する。これに応じて、受信装置102はこれを受信する。図8A,8Bの例では、segmentA2に対してStream ID=2のstreamが予約され、segmentA3に対してStream ID=4のstreamが予約されている。なお、PUSH_PROMISE806及び807はレスポンス803の前にやり取りしてもよい。segmentA3以降のセグメント(segmentA4、segmentA5、segmentA6)に対応するPUSH_PROMISEは送信しないものとする。HTTP/2の場合、例えば該当のセグメントの生成が完了していない場合や、同時に送信予約できる上限数に達している場合にPUSH_PROMISEを送信しない。このような場合以外にも、PUSH_PROMISEを送信しないようにしてもよい。 After transmitting the response 803, the transmission apparatus 101 transmits PUSH_PROMISE 806 and 807 for reserving which stream to transmit for segment A2 and segment A3 scheduled for PUSH transmission in HTTP / 2. In response to this, the receiving apparatus 102 receives this. In the example of FIGS. 8A and 8B, the stream with stream ID = 2 is reserved for segmentA2, and the stream with stream ID = 4 is reserved for segmentA3. Note that PUSH_PROMISE 806 and 807 may be exchanged before the response 803. It is assumed that PUSH_PROMISE corresponding to the segment (segment A4, segment A5, segment A6) after segment A3 is not transmitted. In the case of HTTP / 2, for example, when the generation of the corresponding segment is not completed, or when the upper limit number that can be reserved for transmission has been reached at the same time, PUSH_PROMISE is not transmitted. Besides this case, PUSH_PROMISE may not be transmitted.
 S604において、送信装置101の指示管理部206は、受信したPUSH送信指示802と識別子805を紐づけて保持する。 In S604, the instruction management unit 206 of the transmission apparatus 101 holds the received PUSH transmission instruction 802 and the identifier 805 in association with each other.
 S703において、受信装置102の通信部308は、PUSH送信指示802の応答804とsegmentA1のバイナリデータを含むレスポンス803を受信する。さらに、S704において、受信装置102の指示管理部306は、送信装置101により受理されたPUSH送信指示802を識別子805と紐づけて保持する。 In S703, the communication unit 308 of the reception apparatus 102 receives the response 804 including the PUSH transmission instruction 802 response 804 and the segment A1 binary data. In step S <b> 704, the instruction management unit 306 of the reception apparatus 102 holds the PUSH transmission instruction 802 accepted by the transmission apparatus 101 in association with the identifier 805.
 S605において、送信装置101は、PUSH送信を開始し、segmentA2のPUSH送信として、送信装置101の通信部207はレスポンス808を受信装置102へ送信する。本実施形態では、セグメントの名称末尾の数値が連続している場合、再生時間的に連続しているものとする。例えば、segmentA2とsegmentA3とは再生時間が連続しており、segmentA2の末尾の映像がsegmentA3の冒頭の映像に連続する関係にある。 In S605, the transmission apparatus 101 starts the PUSH transmission, and the communication unit 207 of the transmission apparatus 101 transmits a response 808 to the reception apparatus 102 as the PUSH transmission of the segment A2. In this embodiment, when the numerical values at the end of the segment names are continuous, it is assumed that they are continuous in terms of playback time. For example, segment A2 and segment A3 have a continuous playback time, and the video at the end of segment A2 is continuous with the video at the beginning of segment A3.
 S705において、受信装置102の通信部308は、segmentA2のバイナリデータを含むレスポンス808を受信する。 In S705, the communication unit 308 of the receiving apparatus 102 receives the response 808 including the binary data of segmentA2.
 S706において、受信装置102の通信部308は、PUSH送信キャンセル指示810をaccept-push-policyヘッダーに含むリクエスト809を送信する。PUSH送信キャンセル指示810は、PUSH送信指示802によりPUSH送信する予定の全てのセグメントをキャンセルする内容を有する。リクエスト809のpathヘッダーに識別子805を指定することでキャンセルしたいPUSH送信指示802を指定する。識別子805は、pathヘッダーに含める代わりに、"push-URL"というプレフィックスと共にaccept-push-policyヘッダーに含めてもよい。このプレフィックスは"push-URL"に限定しない。 In S706, the communication unit 308 of the reception apparatus 102 transmits the request 809 including the PUSH transmission cancel instruction 810 in the accept-push-policy header. The PUSH transmission cancel instruction 810 has a content for canceling all segments scheduled to be PUSH transmitted by the PUSH transmission instruction 802. By specifying the identifier 805 in the path header of the request 809, the PUSH transmission instruction 802 to be canceled is specified. Instead of being included in the path header, the identifier 805 may be included in the accept-push-policy header together with the prefix “push-URL”. This prefix is not limited to “push-URL”.
 S606において、送信装置101の通信部207は、PUSH送信キャンセル指示810を含むリクエスト809を受信する。 In S606, the communication unit 207 of the transmission apparatus 101 receives the request 809 including the PUSH transmission cancel instruction 810.
 S607において、送信装置101の指示管理部206は、識別子805から判定したキャンセル対象であるPUSH送信指示802によるPUSH送信予定のセグメントで、segmentA3をキャンセル候補セグメントと特定する。図8A,8Bの例では、PUSH送信指示802によりsegmentA2~segmentA6のPUSH送信が要求されている。ここでは、segmentA2は送信済みのため(808)、未送信のセグメントのうち最も通し番号が小さいsegmentA3をキャンセル候補として特定している。 In S <b> 607, the instruction management unit 206 of the transmission apparatus 101 identifies segment A <b> 3 as a cancel candidate segment in the PUSH transmission scheduled segment according to the PUSH transmission instruction 802 to be canceled determined from the identifier 805. In the example of FIGS. 8A and 8B, the PUSH transmission of segment A2 to segment A6 is requested by the PUSH transmission instruction 802. Here, since segment A2 has been transmitted (808), segment A3 having the smallest serial number among untransmitted segments is identified as a cancel candidate.
 送信装置101においてPUSH送信指示802以外で指示されているPUSH送信指示はないためS608をスキップし、S609へ遷移する。 Since there is no PUSH transmission instruction other than the PUSH transmission instruction 802 in the transmission apparatus 101, S608 is skipped and the process proceeds to S609.
 S609において、送信装置101の指示管理部206は、セグメント決定部205へsegmentA3のPUSH送信をキャンセルするよう指示を出し、セグメント決定部205はsegmentA3のPUSH送信をキャンセルする。具体的なキャンセル処理として、既にPUSH_PROMISE807による送信予約済みであるため、送信予約をキャンセルするためのRST_STREAM813の送信と、送信装置101内部でPUSH送信を停止する処理を行う。 In S609, the instruction management unit 206 of the transmission device 101 instructs the segment determination unit 205 to cancel the PUSH transmission of the segment A3, and the segment determination unit 205 cancels the PUSH transmission of the segment A3. As specific cancel processing, since transmission reservation by PUSH_PROMISE 807 has already been completed, transmission of RST_STREAM 813 for canceling transmission reservation and processing of stopping PUSH transmission inside the transmission apparatus 101 are performed.
 S610において、PUSH送信キャンセル指示810によるPUSH送信指示802のキャンセル候補セグメント全てに対し、キャンセル可能かの確認及びキャンセル処理を行っていないと判定し(S610でNO)、S607へ遷移する。 In S610, it is determined that cancellation is not performed for all cancel candidate segments in the PUSH transmission instruction 802 according to the PUSH transmission cancellation instruction 810, and it is determined that cancellation processing is not performed (NO in S610), and the process proceeds to S607.
 S607において、送信装置101の指示管理部206は、識別子805から判定したキャンセル対象であるPUSH送信指示802によるPUSH送信予定のセグメントで、segmentA4をキャンセル候補セグメントと特定する。 In S <b> 607, the instruction management unit 206 of the transmission apparatus 101 identifies segment A <b> 4 as a cancel candidate segment in the PUSH transmission scheduled segment according to the PUSH transmission instruction 802 to be canceled determined from the identifier 805.
 送信装置101においてPUSH送信指示802以外で指示されているPUSH送信指示はないためS608をスキップし、S609へ遷移する。 Since there is no PUSH transmission instruction other than the PUSH transmission instruction 802 in the transmission apparatus 101, S608 is skipped and the process proceeds to S609.
 S609において、送信装置101の指示管理部206は、セグメント決定部205へsegmentA4のPUSH送信をキャンセルするよう指示を出し、セグメント決定部205はsegmentA4のPUSH送信をキャンセルする。具体的なキャンセル処理として、送信装置101内部でPUSH送信を停止する処理のみを行う。segmentA4の送信予約は行っていないため、送信装置101内部の停止処理のみでよい。 In S609, the instruction management unit 206 of the transmission device 101 instructs the segment determination unit 205 to cancel the PUSH transmission of the segment A4, and the segment determination unit 205 cancels the PUSH transmission of the segment A4. As a specific canceling process, only the process of stopping the PUSH transmission is performed inside the transmitting apparatus 101. Since the segment A4 is not reserved for transmission, only the stop process inside the transmission apparatus 101 is required.
 S610において、PUSH送信キャンセル指示810によるPUSH送信指示802のキャンセル候補セグメント全てに対し、キャンセル可能かの確認及びキャンセル処理を行っていないと判定し(S610でNO)、S607へ遷移する。 In S610, it is determined that cancellation is not performed for all cancel candidate segments in the PUSH transmission instruction 802 according to the PUSH transmission cancellation instruction 810, and it is determined that cancellation processing is not performed (NO in S610), and the process proceeds to S607.
 S607により、送信装置101の指示管理部206は、識別子805から判定したキャンセル対象であるPUSH送信指示802によるPUSH送信予定のセグメントで、segmentA5をキャンセル候補セグメントと特定する。 In S607, the instruction management unit 206 of the transmission apparatus 101 identifies segment A5 as a cancel candidate segment in the PUSH transmission scheduled segment according to the PUSH transmission instruction 802 that is the cancellation target determined from the identifier 805.
 送信装置101においてPUSH送信指示802以外で指示されているPUSH送信指示はないためS608をスキップし、S609へ遷移する。 Since there is no PUSH transmission instruction other than the PUSH transmission instruction 802 in the transmission apparatus 101, S608 is skipped and the process proceeds to S609.
 S609により、送信装置101の指示管理部206は、セグメント決定部205へsegmentA5のPUSH送信をキャンセルするよう指示を出し、セグメント決定部205はsegmentA5のPUSH送信をキャンセルする。具体的なキャンセル処理として、送信装置101内部でPUSH送信を停止する処理のみを行う。segmentA5の送信予約は行っていないため、送信装置101内部の停止処理のみでよい。 In step S609, the instruction management unit 206 of the transmission apparatus 101 instructs the segment determination unit 205 to cancel the PUSH transmission of the segment A5, and the segment determination unit 205 cancels the PUSH transmission of the segment A5. As a specific canceling process, only the process of stopping the PUSH transmission is performed inside the transmitting apparatus 101. Since the segment A5 is not reserved for transmission, only the stop process inside the transmission apparatus 101 is required.
 S610により、PUSH送信キャンセル指示810によるPUSH送信指示802のキャンセル候補セグメント全てに対し、キャンセル可能かの確認及びキャンセル処理を行っていないと判定し(S610でNO)、S607へ遷移する。 In S610, it is determined that cancellation is not performed for all cancel candidate segments in the PUSH transmission instruction 802 by the PUSH transmission cancellation instruction 810, and it is determined that cancellation processing is not performed (NO in S610), and the process proceeds to S607.
 S607により、送信装置101の指示管理部206は、識別子805から判定したキャンセル対象であるPUSH送信指示802によるPUSH送信予定のセグメントで、segmentA6をキャンセル候補セグメントと特定する。 In S607, the instruction management unit 206 of the transmission apparatus 101 identifies segment A6 as a cancel candidate segment in the PUSH transmission scheduled segment according to the PUSH transmission instruction 802 that is the cancellation target determined from the identifier 805.
 送信装置101においてPUSH送信指示802以外で指示されているPUSH送信指示はないためS608をスキップしS609へ遷移する。 Since there is no PUSH transmission instruction other than the PUSH transmission instruction 802 in the transmission apparatus 101, S608 is skipped and the process proceeds to S609.
 S609により、送信装置101の指示管理部206は、セグメント決定部205へsegmentA6のPUSH送信をキャンセルするよう指示を出し、セグメント決定部205はsegmentA6のPUSH送信をキャンセルする。具体的なキャンセル処理として、送信装置101内部でPUSH送信を停止する処理のみを行う。segmentA6の送信予約は行っていないため、送信装置101内部の停止処理のみでよい。 In step S609, the instruction management unit 206 of the transmission apparatus 101 instructs the segment determination unit 205 to cancel the PUSH transmission of the segment A6, and the segment determination unit 205 cancels the PUSH transmission of the segment A6. As a specific canceling process, only the process of stopping the PUSH transmission is performed inside the transmitting apparatus 101. Since the transmission reservation of segment A6 is not performed, only the stop process inside the transmission apparatus 101 is sufficient.
 S610により、PUSH送信キャンセル指示810によるPUSH送信指示802のキャンセル候補セグメント全てに対し、キャンセル可能かの確認及びキャンセル処理を行ったと判定し(S610でYES)、S611へ遷移する。 In S610, it is determined that cancellation is possible for all cancel candidate segments in the PUSH transmission instruction 802 by the PUSH transmission cancellation instruction 810 and cancellation processing is performed (YES in S610), and the process proceeds to S611.
 S611において、キャンセル対象であるPUSH送信指示は802のみであるため(S611でYES)、S612へ遷移する。 In S611, since the PUSH transmission instruction to be canceled is only 802 (YES in S611), the process proceeds to S612.
 S612において、送信装置101の通信部207は、PUSH送信キャンセル指示810に対する応答812をpush-policyヘッダーに含むレスポンス811を受信装置102へ送信する。この応答は、PUSH送信キャンセル指示810と同じ内容を有する。 In S612, the communication unit 207 of the transmission apparatus 101 transmits a response 811 including a response 812 to the PUSH transmission cancel instruction 810 in the push-policy header to the reception apparatus 102. This response has the same content as the PUSH transmission cancel instruction 810.
 S707において、受信装置102の通信部308は、PUSH送信キャンセル指示の応答812を含むレスポンス811を受信する。 In S707, the communication unit 308 of the receiving apparatus 102 receives the response 811 including the PUSH transmission cancel instruction response 812.
 キャンセルされたsegmentA3に対して送信装置101はすでに受信装置102へPUSH_PROMISE807を送信している。送信装置101はこれをキャンセルするためにRST_STREAM813を送信し受信装置102はこれを受信する。このRST_STREAM813はS706の前かS707の後に受信装置102が送信してもよい。 The transmitting apparatus 101 has already transmitted PUSH_PROMISE 807 to the receiving apparatus 102 for the canceled segment A3. The transmitting apparatus 101 transmits RST_STREAM 813 to cancel this, and the receiving apparatus 102 receives it. This RST_STREAM 813 may be transmitted by the receiving apparatus 102 before S706 or after S707.
 HTTP2では、複数のpush-policyのうちの一部や、push-policyに基づくPUSH予定の複数のセグメントの一部をキャンセルするために、全てのPUSHを一度キャンセルしてから再度必要な設定する必要がある。HTTP2では、PUSH対象のセグメントごとにPUSH_PROMISEによりストリームのIDが通知され、それを指定することで任意のセグメントのPUSHをキャンセルすることができる。しかし、PUSH_PROMISEが遅れて送信される場合や、クライアントがキャンセルすべきセグメント名が分からない場合などに、複数のコマンドをやり取りする必要があるため、トランザクションが増大して遅延が生じる場合があった。 In HTTP2, in order to cancel a part of a plurality of push-policies or a part of a plurality of PUSH-scheduled segments based on the push-policy, it is necessary to cancel all the PUSHs once and then make necessary settings again. There is. In HTTP2, the stream ID is notified by PUSH_PROMISE for each PUSH target segment, and PUSH of an arbitrary segment can be canceled by specifying it. However, when PUSH_PROMISE is transmitted with a delay or when the segment name to be canceled by the client is unknown, it is necessary to exchange a plurality of commands, which may cause a delay due to an increase in transactions.
 これに対して、動作例1では、送信装置101が受信装置102に、PUSH送信指示のURL形式の識別子805を通知することで、受信装置102は、識別子805によりキャンセル対象を特定してキャンセルを指示することができる。したがって、キャンセル対象を特定するために余分なトランザクションを必要とせずに、PUSH送信のキャンセルを行うことが可能である。 On the other hand, in the operation example 1, the transmission apparatus 101 notifies the reception apparatus 102 of the identifier 805 in the URL format of the PUSH transmission instruction, so that the reception apparatus 102 specifies the cancellation target by the identifier 805 and cancels the cancellation. Can be directed. Therefore, it is possible to cancel the PUSH transmission without requiring an extra transaction for specifying the cancellation target.
 (動作例2)
 次に、HTTP/2上で、文字列形式の識別子によりキャンセルすべきPUSH送信指示を指定し、PUSH送信指示によりPUSHする予定全てのセグメントをキャンセルする例について、図9A,9Bを参照して説明する。
(Operation example 2)
Next, an example in which a PUSH transmission instruction to be canceled is designated by an identifier in a character string format on HTTP / 2, and all segments scheduled to be pushed by the PUSH transmission instruction are canceled will be described with reference to FIGS. 9A and 9B. To do.
 901から902は801から802と同じである。また、図6のS601及び図7のS701からS702の処理は、図8A,8Bを参照して説明した内容と同様であるため説明は省略する。 901 to 902 are the same as 801 to 802. Also, the processing of S601 in FIG. 6 and S701 to S702 in FIG. 7 is the same as that described with reference to FIGS.
 S602において、送信装置101の指示管理部206は、受信装置102から受信したPUSH送信指示902に対し"push1"という識別子905を割り振る。図9A、9Bでは、識別子として文字列の形式を採用している例を示している。 In step S <b> 602, the instruction management unit 206 of the transmission apparatus 101 allocates an identifier 905 “push1” to the PUSH transmission instruction 902 received from the reception apparatus 102. 9A and 9B show an example in which a character string format is adopted as an identifier.
 S603において、送信装置101の通信部207は、PUSH送信指示902に対する応答として、PUSH送信指示902と同内容のPUSH送信指示の応答904をpush-policyヘッダーに含むレスポンス903を受信装置102へ送信する。レスポンス903はまたsegmentA1のバイナリデータを含む。レスポンス903のpush-policyヘッダーには、PUSH送信指示の応答804と対応させて識別子905も含める。なお、識別子905の前に"push-ID"というプレフィックスを入れることで、push-policyヘッダーのどこからが識別子905なのかを区別できるようにしている。このプレフィックスは"push-ID"に限定しない。識別子905をPUSH送信指示の応答904と共に送信する代わりに、受信装置102からMPDの取得要求を受けた際に送信装置101はMPDに識別子905を記載し受信装置102へ通知してもよい。 In step S <b> 603, the communication unit 207 of the transmission apparatus 101 transmits, as a response to the push transmission instruction 902, a response 903 including a push transmission policy response 904 having the same content as the push transmission instruction 902 to the reception apparatus 102. . The response 903 also includes the binary data of segmentA1. The push-policy header of the response 903 includes an identifier 905 in association with the PUSH transmission instruction response 804. Note that a prefix “push-ID” is inserted before the identifier 905 so that the identifier 905 can be identified from where in the push-policy header. This prefix is not limited to “push-ID”. Instead of transmitting the identifier 905 together with the PUSH transmission instruction response 904, when receiving an MPD acquisition request from the receiving apparatus 102, the transmitting apparatus 101 may describe the identifier 905 in the MPD and notify the receiving apparatus 102.
 906から908は806から808と同様である。また図6のS604からS605及び図7のS703からS705における処理は、図8A,8Bを参照して説明したPUSH送信の処理と内容が同様であるため説明は省略する。 906 to 908 are the same as 806 to 808. The processing in S604 to S605 in FIG. 6 and the processing in S703 to S705 in FIG. 7 is the same as the PUSH transmission processing described with reference to FIGS.
 S706において、受信装置102の通信部308は、PUSH送信キャンセル指示911をaccept-push-policyヘッダーに含むリクエスト909を送信装置101へ送信する。PUSH送信キャンセル指示911は、PUSH送信指示902によりPUSH送信する予定の全てのセグメントをキャンセルする内容である。リクエスト909のaccept-push-policyヘッダーに識別子905("push1")を合わせて含めることでキャンセルしたいPUSH送信指示902を指定することができる。リクエスト909のpathに指定するURL910は、MPDに記載するなどして事前に送信装置101-受信装置102間で共有したものを指定する。912から914は811から813と同様である。また、図6のS606からS612及び図7のS707の処理は、図8A,8Bを参照して説明した内容と同様であるため説明は省略する。 In S706, the communication unit 308 of the reception apparatus 102 transmits a request 909 including the PUSH transmission cancel instruction 911 in the accept-push-policy header to the transmission apparatus 101. The PUSH transmission cancel instruction 911 is a content for canceling all the segments scheduled to be PUSH transmitted by the PUSH transmission instruction 902. By including the identifier 905 ("push1") in the request-push-policy header of the request 909, the PUSH transmission instruction 902 to be canceled can be designated. The URL 910 specified in the path of the request 909 specifies what is shared between the transmitting apparatus 101 and the receiving apparatus 102 in advance by describing it in the MPD. 912 to 914 are the same as 811 to 813. Also, the processing from S606 to S612 in FIG. 6 and S707 in FIG. 7 is the same as the content described with reference to FIGS.
 動作例2では、送信装置101が受信装置102に、PUSH送信指示の文字列形式の識別子905を通知することで、受信装置102は、識別子905によりキャンセル対象を特定してキャンセルを指示することができる。したがって、キャンセル対象を特定するために余分なトランザクションを必要とせずに、PUSH送信のキャンセルを行うことが可能である。 In the operation example 2, the transmission apparatus 101 notifies the reception apparatus 102 of the identifier 905 in the character string format of the PUSH transmission instruction, so that the reception apparatus 102 can specify the cancellation target by the identifier 905 and instruct the cancellation. it can. Therefore, it is possible to cancel the PUSH transmission without requiring an extra transaction for specifying the cancellation target.
 (動作例3)
 次に、HTTP/2上で、PUSH送信指示の内容とPUSH送信指示を送信した際に合わせて取得したリソースの組み合わせによりキャンセルすべきPUSH送信指示を指定する例について、図10A,10Bを参照して説明する。図10A,10Bは、PUSH送信指示によりPUSHする予定の全てのセグメントをキャンセルする例を示している。
(Operation example 3)
Next, referring to FIGS. 10A and 10B, an example of specifying a PUSH transmission instruction to be canceled by a combination of resources acquired when transmitting the contents of the PUSH transmission instruction and the PUSH transmission instruction on HTTP / 2 will be described. I will explain. 10A and 10B show an example in which all segments scheduled to be pushed by a PUSH transmission instruction are canceled.
 図10A,10Bの1001及び1003は、図8A,8Bの801及び802と同様である。また、図6のS601及び図7のS701からS702における処理は、図8A,8Bを参照して説明した処理の内容と同様あるため説明は省略する。 10A and 10B are the same as 801 and 802 in FIGS. 8A and 8B. Also, the processing in S601 of FIG. 6 and S701 to S702 of FIG. 7 is the same as the processing described with reference to FIGS.
 図10A,10Bの例では、PUSH送信指示の内容とPUSH送信指示を送信した際に取得したリソースの組み合わせによりPUSH送信キャンセル指示を行う。このため、送信装置101がPUSH送信指示に識別子を割り振るS602はスキップする。図10A,10Bの場合、リソースとは、リクエスト1001でGET対象となっている"segmentA1"(リソース1002)である。 In the example of FIGS. 10A and 10B, a PUSH transmission cancel instruction is performed by combining the contents of the PUSH transmission instruction and the resources acquired when the PUSH transmission instruction is transmitted. For this reason, S602 in which the transmission apparatus 101 allocates an identifier to the PUSH transmission instruction is skipped. 10A and 10B, the resource is “segment A1” (resource 1002) that is a GET target in the request 1001.
 S603において、送信装置101の通信部207は、PUSH送信指示1003に対する応答を含むレスポンス1004を受信装置102へ返す。図10A,10Bの例では、レスポンス1004は、PUSH送信指示1003と同じ内容であるPUSH送信指示の応答1005をpush-policyヘッダーに含んでいる。また、レスポンス1004は、segmentA1のバイナリデータを含んでいる。レスポンス1004は、図8A,8B、図9A,9Bを参照して説明した動作例とは異なり、PUSH送信指示の識別子は含まない。 In step S <b> 603, the communication unit 207 of the transmission apparatus 101 returns a response 1004 including a response to the PUSH transmission instruction 1003 to the reception apparatus 102. In the example of FIGS. 10A and 10B, the response 1004 includes a PUSH transmission instruction response 1005 having the same content as the PUSH transmission instruction 1003 in the push-policy header. Further, the response 1004 includes the binary data of segmentA1. Unlike the operation example described with reference to FIGS. 8A and 8B and FIGS. 9A and 9B, the response 1004 does not include the identifier of the PUSH transmission instruction.
 1006から1008は、図8A,8Bの806から808と同様である。また、図6のS604からS605及び図7のS703からS705の処理は、図8A,8Bを参照して説明したPUSH送信の処理と内容が同様であるため説明は省略する。 1006 to 1008 are the same as 806 to 808 in FIGS. 8A and 8B. Further, the processing from S604 to S605 in FIG. 6 and the processing from S703 to S705 in FIG. 7 are the same as the PUSH transmission processing described with reference to FIGS.
 S706において、受信装置102の通信部308は、PUSH送信キャンセル指示1010をaccept-push-policyヘッダーに含むリクエスト1009を送信装置101へ送信する。PUSH送信キャンセル指示1010の内容は、PUSH送信指示1003によりPUSH送信する予定の全てのセグメントをキャンセルするというものである。リクエスト1001でGET対象となっていたsegmentA1(リソース1002)をpathヘッダーに含み、さらにPUSH送信指示1003の内容をaccept-push-policyヘッダーに含める。これによりキャンセルしたいPUSH送信指示1003を指定する。プッシュ送信指示内容とリソースを組み合わせることで、同じPUSH送信指示内容が複数のリソースに対して使われていても、キャンセル対象を指定することができる。 In S706, the communication unit 308 of the reception apparatus 102 transmits a request 1009 including the PUSH transmission cancel instruction 1010 in the accept-push-policy header to the transmission apparatus 101. The content of the PUSH transmission cancel instruction 1010 is to cancel all the segments scheduled to be PUSH transmitted by the PUSH transmission instruction 1003. The segment A1 (resource 1002) that has been a GET target in the request 1001 is included in the path header, and the contents of the PUSH transmission instruction 1003 are included in the accept-push-policy header. As a result, a PUSH transmission instruction 1003 to be canceled is designated. By combining the push transmission instruction content and the resource, the cancellation target can be specified even if the same PUSH transmission instruction content is used for a plurality of resources.
 1011から1013は図8A,8Bの811から813と同様である。また図6のS606からS612及び図7のS707の処理は、図8A,8Bを参照して説明した処理の内容と同様であるため説明は省略する。 1011 to 1013 are the same as 811 to 813 in FIGS. 8A and 8B. Also, the processing from S606 to S612 in FIG. 6 and the processing in S707 in FIG. 7 are the same as the processing described with reference to FIGS.
 動作例3では、受信装置102は、PUSH送信指示の内容とPUSH送信指示を送信した際に合わせて取得したリソースの組み合わせによりキャンセルすべきPUSH送信指示を指定する。PUSH送信指示1003とリソース1002によりキャンセル対象を特定してキャンセルを指示することができる。したがって、受信装置102は、余分なトランザクションを必要とせずに、キャンセル対象を直接特定してPUSH送信のキャンセルを行うことが可能である。 In Operation Example 3, the receiving apparatus 102 designates a PUSH transmission instruction to be canceled based on a combination of resources acquired when the content of the PUSH transmission instruction and the PUSH transmission instruction are transmitted. The cancellation can be instructed by specifying the cancel target by the PUSH transmission instruction 1003 and the resource 1002. Therefore, the receiving apparatus 102 can directly cancel the PUSH transmission by directly specifying the cancellation target without requiring an extra transaction.
 (動作例4)
 次に、HTTP/2上で、複数のPUSH送信指示を要求した後で、URL形式の識別子によりキャンセルするPUSH送信指示を一つ指定し、PUSH送信指示によりPUSH予定の全てのセグメントをキャンセルする例について、図11A,11B,11Cを参照して説明する。この例では、識別子は送信装置101が割り振るとして、受信装置102がPUSH送信指示に識別子を割り振るS701はスキップする。
(Operation example 4)
Next, after requesting a plurality of PUSH transmission instructions on HTTP / 2, one PUSH transmission instruction to be canceled is specified by an identifier in the URL format, and all segments scheduled for PUSH are canceled by the PUSH transmission instruction Will be described with reference to FIGS. 11A, 11B, and 11C. In this example, assuming that the identifier is allocated by the transmission apparatus 101, S701 in which the reception apparatus 102 allocates an identifier to the PUSH transmission instruction is skipped.
 S702において、受信装置102の通信部308は、PUSH送信指示1102と1103をaccept-push-policyヘッダーに含むリクエスト1101を送信装置101へ送信する。リクエスト1101は二つのaccept-push-policyヘッダーを持ち、これら二つのヘッダーによりPUSH送信指示1102と1103を含む。別々のaccept-push-policyヘッダーではなく、一つのaccept-push-policyヘッダーに、PUSH送信指示1102と1103を含めてもよい。PUSH送信指示1102において、図8A,8Bの802と同様に、"urn:sample:push-next"に続く数字"2"は、"/example/tmp/segmentA1"に続いて取得するセグメントの個数を指定している。したがって、受信装置102は、PUSH送信指示1102によってsegmentA2及びsegmentA3のPUSH送信を要求している。また、PUSH送信指示1103において、"/example/tmp/segmentB(%01d)"に続く括弧内の二つの数字は、"(%01d)"が採りうる値の範囲により、要求対象のセグメントを特定している。1103の例では、"{2,3}"が範囲として指定されているから、PUSH送信指示1103によって、segmentB2及びsegmentB3のPUSH送信要求が行われている。 In S <b> 702, the communication unit 308 of the reception apparatus 102 transmits a request 1101 including PUSH transmission instructions 1102 and 1103 in an accept-push-policy header to the transmission apparatus 101. The request 1101 has two accept-push-policy headers, and PUSH transmission instructions 1102 and 1103 are included by these two headers. The PUSH transmission instructions 1102 and 1103 may be included in a single accept-push-policy header instead of a separate accept-push-policy header. In the PUSH transmission instruction 1102, similarly to 802 in FIGS. 8A and 8B, the number “2” following “urn: sample: push-next” indicates the number of segments to be acquired following “/ example / tmp / segmentA1”. It is specified. Accordingly, the receiving apparatus 102 requests the PUSH transmission of the segment A2 and the segment A3 by the PUSH transmission instruction 1102. Also, in the PUSH transmission instruction 1103, the two numbers in parentheses following “/ example / tmp / segmentB (% 01d)” specify the requested segment by the range of values that “(% 01d)” can take. is doing. In the example of 1103, since “{2, 3}” is specified as a range, a PUSH transmission request for segment B2 and segment B3 is made in accordance with the PUSH transmission instruction 1103.
 S601において、送信装置101の通信部207は、PUSH送信指示1102と1103を含むリクエスト1101を受信する。 In S601, the communication unit 207 of the transmission apparatus 101 receives the request 1101 including the PUSH transmission instructions 1102 and 1103.
 S602において、送信装置101の指示管理部206は、受信したPUSH送信指示1102に"/example/tmp/push1"という識別子1106を割り振る。さらに、PUSH送信指示1103に対し、"/example/tmp/push2"という識別子1108をそれぞれ割り振る。この例では、識別子はURLの形式を採用している。 In S602, the instruction management unit 206 of the transmission apparatus 101 allocates an identifier 1106 of “/ example / tmp / push1” to the received PUSH transmission instruction 1102. Furthermore, an identifier 1108 of “/ example / tmp / push2” is allocated to the PUSH transmission instruction 1103. In this example, the identifier adopts the URL format.
 S603において、送信装置101の通信部207はPUSH送信指示1102と1103に対する応答をpush-policyヘッダーに含むレスポンス1104を受信装置102へ送信する。レスポンス1104はまたsegmentA1のバイナリデータを含んでいる。図11A,11B,11Cの例では、PUSH送信指示1102と1103に対する応答として、PUSH送信指示1102及び1103と同じ内容であるPUSH送信指示の応答1105と1107を含んでいる。すなわち、レスポンス1104は二つのpush-policyヘッダーを持ち、これら二つのヘッダーによりPUSH送信指示の応答1105と1107を含んでいる。なお、別々のpush-policyヘッダーではなく、一つのpush-policyヘッダーにPUSH送信指示の応答1105と1107を含めてもよい。図11A,11B,11Cの例では、さらに、応答1105に対応させて識別子1106("push1")を、応答1107に対応させて識別子1108("push2")を含めている。識別子1106、1108の前に"push-URL"というプレフィックスを入れることで、push-policyヘッダーのどこからが識別子1106、1108なのかを区別できるようにしている。このプレフィックスは"push-URL"に限定しない。 In S603, the communication unit 207 of the transmission apparatus 101 transmits a response 1104 including responses to the PUSH transmission instructions 1102 and 1103 in the push-policy header to the reception apparatus 102. The response 1104 also includes the binary data of segmentA1. In the example of FIGS. 11A, 11B, and 11C, responses to the PUSH transmission instructions 1102 and 1103 include PUSH transmission instruction responses 1105 and 1107 having the same contents as the PUSH transmission instructions 1102 and 1103. That is, the response 1104 has two push-policy headers, and includes PUSH transmission instruction responses 1105 and 1107 by these two headers. It should be noted that the PUSH transmission instruction responses 1105 and 1107 may be included in one push-policy header instead of separate push-policy headers. 11A, 11B, and 11C further include an identifier 1106 (“push1”) corresponding to the response 1105 and an identifier 1108 (“push2”) corresponding to the response 1107. By inserting a prefix “push-URL” before the identifiers 1106 and 1108, it is possible to distinguish where the identifiers 1106 and 1108 are from in the push-policy header. This prefix is not limited to “push-URL”.
 レスポンス1104送信後、送信装置101は、HTTP/2における、PUSH送信予定のセグメント毎に、そのセグメントを送信するためのstreamを予約するPUSH_PROMISE1109~1112を受信装置102へ送信する。受信装置102は、PUSH_PROMISE1109~1112を送信装置101から受信する。PUSH_PROMISE1109、1110、1111及び1112は、レスポンス1104の前に送受信してもよい。 After transmitting the response 1104, the transmission apparatus 101 transmits PUSH_PROMISE 1109 to 1112 for reserving a stream for transmitting the segment for each segment scheduled to be transmitted in HTTP / 2 to the reception apparatus 102. The receiving apparatus 102 receives PUSH_PROMISE 1109 to 1112 from the transmitting apparatus 101. PUSH_PROMISE 1109, 1110, 1111, and 1112 may be transmitted / received before the response 1104.
 S604において、送信装置101の指示管理部206は、受信したPUSH送信指示1102と識別子1106、及び、PUSH送信指示1103と識別子1108を紐づけて保持する。 In S604, the instruction management unit 206 of the transmission apparatus 101 associates and holds the received PUSH transmission instruction 1102 and the identifier 1106, and the PUSH transmission instruction 1103 and the identifier 1108.
 S703において、受信装置102の通信部308は、PUSH送信指示1102に対する応答1105、及び、PUSH送信指示1103に対する応答1107を含むレスポンス1104を受信する。 In S703, the communication unit 308 of the reception apparatus 102 receives a response 1104 including a response 1105 to the PUSH transmission instruction 1102 and a response 1107 to the PUSH transmission instruction 1103.
 S704において、受信装置102の指示管理部306は、応答が返ってきて受理されたPUSH送信指示1102及び1103を、識別子1106及び1108と紐づけて保持する。 In S704, the instruction management unit 306 of the receiving apparatus 102 holds the PUSH transmission instructions 1102 and 1103 received after the response is returned in association with the identifiers 1106 and 1108.
 S605において、送信装置101はPUSH送信を開始し、segmentA2のPUSH送信として、送信装置101の通信部207は、segmentA2のバイナリデータを含むレスポンス1113を受信装置102へ送信する。 In S605, the transmission apparatus 101 starts the PUSH transmission, and the communication unit 207 of the transmission apparatus 101 transmits a response 1113 including the binary data of the segment A2 to the reception apparatus 102 as the PUSH transmission of the segment A2.
 S705において、受信装置102の通信部308はレスポンス1113を受信する。 In step S <b> 705, the communication unit 308 of the reception apparatus 102 receives the response 1113.
 S706において、受信装置102の通信部308はPUSH送信キャンセル指示1115をaccept-push-policyヘッダーに含むリクエスト1114を送信する。本例では、PUSH送信キャンセル指示1115は、識別子1108により識別されるPUSH送信指示1103によりPUSH送信する予定の全てのセグメントをキャンセルするという内容である。リクエスト1114のpathヘッダーにキャンセルしたいPUSH送信指示1103に対応する識別子1108を指定する。 In S706, the communication unit 308 of the reception apparatus 102 transmits the request 1114 including the PUSH transmission cancel instruction 1115 in the accept-push-policy header. In this example, the PUSH transmission cancel instruction 1115 has a content of canceling all segments scheduled to be PUSH transmitted by the PUSH transmission instruction 1103 identified by the identifier 1108. An identifier 1108 corresponding to the PUSH transmission instruction 1103 to be canceled is specified in the path header of the request 1114.
 S606において、送信装置101の通信部207は、PUSH送信キャンセル指示1115を含むリクエスト1114を受信装置102から受信する。 In step S <b> 606, the communication unit 207 of the transmission apparatus 101 receives the request 1114 including the PUSH transmission cancel instruction 1115 from the reception apparatus 102.
 S607において、送信装置101の指示管理部206は識別子1108から判定したキャンセル対象であるPUSH送信指示1103によるPUSH予定のセグメントで、その中の一つのセグメントをキャンセル候補セグメント特定する。この例では、PUSH送信指示1103によるPUSH予定のセグメントはsegmentB2、segmentB3であるから、その中の一つであるsegmentB2をキャンセル候補セグメントと特定する。 In S <b> 607, the instruction management unit 206 of the transmission apparatus 101 specifies a cancel candidate segment for one of the segments scheduled to be pushed by the PUSH transmission instruction 1103 to be canceled determined from the identifier 1108. In this example, since the PUSH scheduled segments according to the PUSH transmission instruction 1103 are segment B2 and segment B3, one of them, segment B2, is specified as a cancel candidate segment.
 S608において、キャンセル候補セグメントであるsegmentB2は、PUSH送信指示1103以外で送信装置101が採用しているPUSH送信指示1102によるPUSH送信対象になっていないと判定し(S608でNO)、S609へ遷移する。 In S608, segment B2, which is a cancel candidate segment, determines that it is not a PUSH transmission target other than the PUSH transmission instruction 1103 according to the PUSH transmission instruction 1102 adopted by the transmission apparatus 101 (NO in S608), and proceeds to S609. .
 S609において、送信装置101の指示管理部206は、セグメント決定部205へsegmentB2のPUSH送信をキャンセルするよう指示を出し、セグメント決定部205はsegmentB2のPUSH送信をキャンセルする。具体的なキャンセル処理として、既にPUSH_PROMISE1111による送信予約済みであるため、送信予約をキャンセルするためのRST_STREAM1118の送信と、送信装置101内部でPUSH送信を停止する処理を行う。 In S609, the instruction management unit 206 of the transmission apparatus 101 instructs the segment determination unit 205 to cancel the PUSH transmission of the segment B2, and the segment determination unit 205 cancels the PUSH transmission of the segment B2. As specific cancellation processing, since transmission reservation by PUSH_PROMISE 1111 has already been completed, transmission of RST_STREAM 1118 for canceling transmission reservation and processing for stopping PUSH transmission inside the transmission apparatus 101 are performed.
 S610において、PUSH送信キャンセル指示1115によるPUSH送信指示1103のキャンセル候補セグメント全てに対し、キャンセル可能かの確認及びキャンセル処理を行っていないと判定する(S610でNO)。PUSH予定のセグメントの中で、segmentB3について処理を行っていないためである。そこで、S607へ遷移する。 In S610, it is determined that the cancellation is not performed for all the cancel candidate segments of the PUSH transmission instruction 1103 according to the PUSH transmission cancellation instruction 1115 and the cancel process is not performed (NO in S610). This is because the segment B3 is not processed in the PUSH scheduled segment. Therefore, the process proceeds to S607.
 S607において、送信装置101の指示管理部206は識別子1108から判定したキャンセル対象であるPUSH送信指示1103がPUSH予定のセグメントで、その中の一つであるsegmentB3をキャンセル候補セグメントと特定する。 In S <b> 607, the instruction management unit 206 of the transmission apparatus 101 identifies the PUSH transmission instruction 1103 to be canceled determined from the identifier 1108 as a PUSH scheduled segment, and identifies segment B <b> 3, which is one of them, as a cancel candidate segment.
 S608において、キャンセル候補セグメントであるsegmentB3が、PUSH送信指示1103以外で送信装置101が採用しているPUSH送信指示1102によるPUSH送信対象になっていないと判定し(S608でNO)、S609へ遷移する。 In S608, it is determined that segment B3, which is a cancel candidate segment, is not a PUSH transmission target according to the PUSH transmission instruction 1102 adopted by the transmission apparatus 101 other than the PUSH transmission instruction 1103 (NO in S608), and the process proceeds to S609. .
 S609において、送信装置101の指示管理部206はセグメント決定部205へsegmentB3のPUSH送信をキャンセルするよう指示を出し、セグメント決定部205はsegmentB3のPUSH送信をキャンセルする。具体的なキャンセル処理として、既にPUSH_PROMISE1112による送信予約済みであるため、送信予約をキャンセルするためのRST_STREAM1119の送信と、送信装置101内部でPUSH送信を停止する処理を行う。 In S609, the instruction management unit 206 of the transmission apparatus 101 instructs the segment determination unit 205 to cancel the PUSH transmission of the segment B3, and the segment determination unit 205 cancels the PUSH transmission of the segment B3. As specific cancellation processing, since transmission reservation by PUSH_PROMISE 1112 has already been completed, transmission of RST_STREAM 1119 for canceling transmission reservation and processing for stopping PUSH transmission inside the transmission apparatus 101 are performed.
 S610において、PUSH送信キャンセル指示1115によるPUSH送信指示1103のキャンセル候補セグメント全てに対し、キャンセル可能かの確認及びキャンセル処理を行ったと判定し(S610でYES)、S611へ遷移する。 In S610, it is determined that cancellation is possible for all the cancel candidate segments of the PUSH transmission instruction 1103 according to the PUSH transmission cancellation instruction 1115 and cancellation processing is performed (YES in S610), and the process proceeds to S611.
 S611において、キャンセル対象であるPUSH送信指示は1103のみであるため(S611でYES)、S612へ遷移する。 In S611, since the PUSH transmission instruction to be canceled is only 1103 (YES in S611), the process proceeds to S612.
 S612において、送信装置101の通信部207は、PUSH送信キャンセル指示1115に対する応答1117をpush-policyヘッダーに含むレスポンス1116を受信装置102へ送信する。この応答1117は、PUSH送信キャンセル指示1115と同じ内容を有する。 In S612, the communication unit 207 of the transmission apparatus 101 transmits a response 1116 including a response 1117 to the PUSH transmission cancel instruction 1115 in the push-policy header to the reception apparatus 102. This response 1117 has the same content as the PUSH transmission cancel instruction 1115.
 S707において、受信装置102の通信部308はPUSH送信キャンセル指示の応答1117を含むレスポンス1116を受信する。 In S707, the communication unit 308 of the reception apparatus 102 receives the response 1116 including the response 1117 of the PUSH transmission cancel instruction.
 キャンセルされたsegmentB2及びsegmentB3に対して、送信装置101は受信装置102へPUSH_PROMISE1111及び1112を送信しているため、これらをキャンセルする必要がある。そこで、送信装置101は受信装置102へRST_STREAM1118及び1119を送信し、受信装置102はこれを受信する。このRST_STREAM1118及び1119はS706の前かS707の後に受信装置102が送信してもよい。 Since the transmitting apparatus 101 transmits PUSH_PROMISE 1111 and 1112 to the receiving apparatus 102 for the canceled segment B2 and segment B3, it is necessary to cancel them. Therefore, the transmission apparatus 101 transmits RST_STREAM 1118 and 1119 to the reception apparatus 102, and the reception apparatus 102 receives them. The reception apparatus 102 may transmit these RST_STREAMs 1118 and 1119 before S706 or after S707.
 動作例4では、2つのPUSH送信指示1102、1103が送信され、一方のPUSH送信指示について、全てのセグメントのキャンセルが指示された場合の例を説明した。動作例4では、各PUSH送信指示に識別子1106、1108を付与して、PUSH送信指示を指定可能としたことで、キャンセル対象を特定するために余分なトランザクションを必要とせずに、PUSH送信のキャンセルを行うことができる。 In the operation example 4, the example in which two PUSH transmission instructions 1102 and 1103 are transmitted and cancellation of all segments is instructed for one PUSH transmission instruction has been described. In the operation example 4, the identifiers 1106 and 1108 are assigned to the respective PUSH transmission instructions so that the PUSH transmission instruction can be designated, so that it is possible to cancel the PUSH transmission without requiring an extra transaction for specifying the cancellation target. It can be performed.
 (動作例5)
 次に、HTTP/2上で、URL形式の識別子によりキャンセルすべきPUSH送信指示を指定し、PUSH送信指示によりPUSHする予定のセグメントのうち一部のセグメントをキャンセルする例について、図12A,12B,12Cを参照して説明する。
(Operation example 5)
Next, an example of designating a PUSH transmission instruction to be canceled by an identifier in the URL format on HTTP / 2 and canceling some of the segments scheduled to be pushed by the PUSH transmission instruction will be described with reference to FIGS. This will be described with reference to 12C.
 1201から1207及び1210は、801から808と同様である。また図6のS601からS605及び図7のS701からS705の処理は、図8A,8Bを参照して説明した処理の内容同様であるため説明は省略する。ただし、図12A,12B,12Cの例では、PUSH送信指示1202はsegmentA1から再生時間的に連続する次の四つのセグメントのPUSH送信要求をするものとなっている。また、PUSH_PROMISE1206と1207と共に、segmentA4及びsegmentA5の送信を予約するPUSH_PROMISE1208及び1209を送信している。 1201 to 1207 and 1210 are the same as 801 to 808. Also, the processing from S601 to S605 in FIG. 6 and the processing from S701 to S705 in FIG. However, in the examples of FIGS. 12A, 12B, and 12C, the PUSH transmission instruction 1202 makes a PUSH transmission request for the next four segments continuous from the segment A1 in terms of reproduction time. In addition to PUSH_PROMISE 1206 and 1207, PUSH_PROMISE 1208 and 1209 that reserve transmission of segment A4 and segment A5 are transmitted.
 S706において、受信装置102は、PUSH送信指示1212をaccept-push-policyヘッダーに含むリクエスト1211として送信装置101へ送信する。PUSH送信指示1212は、segmentA1から再生時間的に連続する次の四つのセグメントのPUSH送信を指示しているPUSH送信指示1202に対し、送信予定セグメントのうち後ろから二つのセグメントをキャンセルする指示となる。この点についてより詳しく説明すると、PUSH送信指示1212は、識別子"push1"(1205)により識別される、segmentA1に後続する連続する二つのセグメントsegmentA2、segmentA3のPUSH送信を要求するものである。リクエスト1201では、segmentA1に後続する連続する四つのセグメントのPUSH送信を要求していた(PUSH送信指示1202)のであるから、PUSH送信指示1212は、segmentA4、segmentA5の送信要求をキャンセルする要求に相当する。このように、図12A,12B,12Cの例では、同一の識別子により識別されるPUSH送信要求について、内容の異なるPUSH送信要求が送受信されたときは、最後に送受信された要求に従い動作する。リクエスト1211のpathヘッダーに識別子1205を指定することでキャンセルしたいPUSH送信指示1202を指定する。 In S706, the reception apparatus 102 transmits the PUSH transmission instruction 1212 to the transmission apparatus 101 as a request 1211 including the accept-push-policy header. The PUSH transmission instruction 1212 is an instruction to cancel two segments from the back among the scheduled transmission segments in response to the PUSH transmission instruction 1202 instructing the PUSH transmission of the next four segments continuous from the segment A1 in terms of the reproduction time. . This point will be described in more detail. The PUSH transmission instruction 1212 is a request for PUSH transmission of two consecutive segments segmentA2 and segmentA3, which are identified by the identifier “push1” (1205) and follow segmentA1. Since the request 1201 requests the PUSH transmission of four consecutive segments following the segment A1 (PUSH transmission instruction 1202), the PUSH transmission instruction 1212 corresponds to a request for canceling the transmission requests of the segment A4 and the segment A5. . As described above, in the example of FIGS. 12A, 12B, and 12C, when a PUSH transmission request having a different content is transmitted / received with respect to a PUSH transmission request identified by the same identifier, the operation is performed according to the request transmitted / received last. By specifying the identifier 1205 in the path header of the request 1211, the PUSH transmission instruction 1202 to be canceled is specified.
 S606において、送信装置101の通信部207は、PUSH送信キャンセル指示1212を含むリクエスト1211を受信装置102から受信する。 In S606, the communication unit 207 of the transmission apparatus 101 receives the request 1211 including the PUSH transmission cancel instruction 1212 from the reception apparatus 102.
 S607において、送信装置101の指示管理部206は識別子1205から判定したキャンセル対象であるPUSH送信指示1202によるPUSH予定のセグメントで、その中の一つであるsegmentA4をキャンセル候補セグメントと特定する。送信装置101においてPUSH送信指示1202以外で指示されているPUSH送信指示はないためS608をスキップしS609へ遷移する。 In S607, the instruction management unit 206 of the transmission apparatus 101 identifies segment A4, which is one of the PUSH scheduled segments based on the PUSH transmission instruction 1202 to be canceled determined from the identifier 1205, as a cancel candidate segment. Since there is no PUSH transmission instruction other than the PUSH transmission instruction 1202 in the transmission apparatus 101, S608 is skipped and the process proceeds to S609.
 S609において、送信装置101の指示管理部206は、セグメント決定部205へsegmentA4のPUSH送信をキャンセルするよう指示を出し、セグメント決定部205は、segmentA4のPUSH送信をキャンセルする。具体的なキャンセル処理として、既にPUSH_PROMISE1208による送信予約済みであるため、送信予約をキャンセルするためのRST_STREAM1215の送信と、送信装置101内部でPUSH送信を停止する処理を行う。 In S609, the instruction management unit 206 of the transmission apparatus 101 instructs the segment determination unit 205 to cancel the PUSH transmission of the segment A4, and the segment determination unit 205 cancels the PUSH transmission of the segment A4. As specific cancellation processing, since transmission reservation by PUSH_PROMISE 1208 has already been completed, transmission of RST_STREAM 1215 for canceling transmission reservation and processing of stopping PUSH transmission inside the transmission apparatus 101 are performed.
 S610において、PUSH送信キャンセル指示1212によるPUSH送信指示1202のキャンセル候補セグメント全てに対し、キャンセル可能かの確認及びキャンセル処理を行っていないと判定する(S610でNO)。segmentA5について処理を行っていないためである。そこで、S607へ遷移する。 In S610, it is determined that the cancellation is not performed for all the cancel candidate segments of the PUSH transmission instruction 1202 by the PUSH transmission cancellation instruction 1212 and the cancel process is not performed (NO in S610). This is because segment A5 is not processed. Therefore, the process proceeds to S607.
 S607において、送信装置101の指示管理部206は識別子1205から判定したキャンセル対象であるPUSH送信指示1202がPUSH予定のセグメントで、その中の一つであるsegmentA5をキャンセル候補セグメントと特定する。送信装置101においてPUSH送信指示1202以外で指示されているPUSH送信指示はないためS608をスキップしS609へ遷移する。 In S607, the instruction management unit 206 of the transmission apparatus 101 identifies the PUSH transmission instruction 1202 to be canceled determined from the identifier 1205 as a PUSH scheduled segment, and identifies segment A5, which is one of them, as a cancel candidate segment. Since there is no PUSH transmission instruction other than the PUSH transmission instruction 1202 in the transmission apparatus 101, S608 is skipped and the process proceeds to S609.
 S609において、送信装置101の指示管理部206は、セグメント決定部205へsegmentA5のPUSH送信をキャンセルするよう指示を出し、セグメント決定部205は、segmentA5のPUSH送信をキャンセルする。具体的なキャンセル処理として、既にPUSH_PROMISE1209による送信予約済みであるため、送信予約をキャンセルするためのRST_STREAM1216の送信と、送信装置101内部でPUSH送信を停止する処理を行う。 In S609, the instruction management unit 206 of the transmission apparatus 101 instructs the segment determination unit 205 to cancel the PUSH transmission of the segment A5, and the segment determination unit 205 cancels the PUSH transmission of the segment A5. As specific cancellation processing, since transmission reservation by the PUSH_PROMISE 1209 has already been completed, transmission of RST_STREAM 1216 for canceling transmission reservation and processing of stopping PUSH transmission inside the transmission apparatus 101 are performed.
 S610において、PUSH送信キャンセル指示1212によるPUSH送信指示1202のキャンセル候補セグメント全てに対し、キャンセル可能かの確認及びキャンセル処理を行ったと判定し(S610でYES)、S611へ遷移する。 In S610, it is determined that cancellation is possible for all cancel candidate segments in the PUSH transmission instruction 1202 by the PUSH transmission cancellation instruction 1212 and cancellation processing has been performed (YES in S610), and the process proceeds to S611.
 S611において、キャンセル対象であるPUSH送信指示は1202のみであるため(S611でYES)、S612へ遷移する。 In S611, since the PUSH transmission instruction to be canceled is only 1202 (YES in S611), the process proceeds to S612.
 S612において、送信装置101の通信部207は、PUSH送信キャンセル指示1212に対する応答1214をpush-policyヘッダーに含むレスポンス1213を受信装置102へ送信する。この応答1214は、PUSH送信キャンセル指示1212と同様の内容を有する。 In S612, the communication unit 207 of the transmission apparatus 101 transmits a response 1213 including a response 1214 to the PUSH transmission cancel instruction 1212 in the push-policy header to the reception apparatus 102. This response 1214 has the same content as the PUSH transmission cancel instruction 1212.
 S707において、受信装置102の通信部308は、PUSH送信キャンセル指示の応答1214を含むレスポンス1213を受信する。 In S707, the communication unit 308 of the reception apparatus 102 receives a response 1213 including a PUSH transmission cancel instruction response 1214.
 キャンセルされたsegmentA4及びsegmentA5に対して送信装置101は受信装置102へPUSH_PROMISE1208及び1209を送信している。そのため、これらをキャンセルするためにRST_STREAM1215及び1216を送信し受信装置102はこれを受信する。このRST_STREAM1215及び1216はS706の前かS707の後に受信装置102が送信してもよい。 The transmitting apparatus 101 transmits PUSH_PROMISE 1208 and 1209 to the receiving apparatus 102 with respect to the canceled segment A4 and segment A5. Therefore, in order to cancel these, RST_STREAM 1215 and 1216 are transmitted, and the receiving apparatus 102 receives them. The reception apparatus 102 may transmit these RST_STREAMs 1215 and 1216 before S706 or after S707.
 動作例5では、PUSH送信指示に識別子1205を付与することで、受信装置102は、余分なトランザクションを要さずに、識別子1205を指定して送信対象のセグメントの一部の送信をキャンセルすることが可能な例を説明した。 In the operation example 5, by giving the identifier 1205 to the PUSH transmission instruction, the receiving apparatus 102 can specify the identifier 1205 and cancel transmission of a part of the transmission target segment without requiring an extra transaction. Explained possible examples.
 (動作例6)
 次に、HTTP/2上で、複数のPUSH送信指示を要求し採用された後で、URL形式の識別子によりキャンセル対象として全てのPUSH送信指示を指定する場合の例について、図13A,13B,13Cを参照して説明する。図13A,13B,13Cでは、各PUSH送信指示がPUSH送信する予定全てのセグメントをキャンセルする例を示している。図13A,13B,13Cの1301から1313は図11A,11B,11Cの1101から1113と同様である。また図6のS601から605及び図7のS701から705の処理は、図11A,11B,11C、図8A,8Bを参照して説明した処理の内容と同様であるため説明は省略する。
(Operation example 6)
Next, with respect to an example in which all PUSH transmission instructions are designated as cancellation targets by identifiers in the URL format after a plurality of PUSH transmission instructions are requested and adopted on HTTP / 2, FIGS. 13A, 13B, and 13C Will be described with reference to FIG. 13A, 13B, and 13C show examples in which all PUSH transmission instructions cancel all the segments scheduled to be PUSH transmitted. Reference numerals 1301 to 1313 in FIGS. 13A, 13B, and 13C are the same as reference numerals 1101 to 1113 in FIGS. 11A, 11B, and 11C. Further, the processing from S601 to 605 in FIG. 6 and S701 to 705 in FIG. 7 is the same as the processing described with reference to FIGS. 11A, 11B, 11C, and FIGS.
 S706において、受信装置102の通信部308は、PUSH送信キャンセル指示1316をaccept-push-policyヘッダーに含むリクエスト1314を送信装置101へ送信する。PUSH送信キャンセル指示1316は、PUSH送信指示1302及び1303の両方によりPUSH送信する予定の全てのセグメントをキャンセルする内容のキャンセル指示である。リクエスト1314のpathヘッダーに、現在送信装置101が採用している全てのPUSH送信指示を指す識別子1315("push")を指定する。この識別子1315は、事前に送信装置101がMPDに記載することなどにより、受信装置102へ事前に通知する。この方式以外に、全てのPUSH送信指示を指定する識別子を各PUSH送信指示に割り振る識別子の形式から分かるようにしてもよい。例えば、各PUSH送信部に割り振る識別子は"文字列+数値"の形式を取るものとする。そして、各PUSH送信指示に割り振る識別子の数値部を取り除いた文字列部分のみのものが全てのPUSH送信指示を指定するための識別子を表すようにしてもよい。送信装置101と受信装置102とは、このルールを予め共有しておく。図13A,13B,13CでPUSH送信指示1302と1303に割り振った各識別子1306と1308はそれぞれ"/example/tmp/push1"と"/example/tmp/push2"である。受信装置102は全てのPUSH送信指示を指定するための識別子は数値を除いた"/example/tmp/push"ということが分かる。 In S706, the communication unit 308 of the reception apparatus 102 transmits a request 1314 including the PUSH transmission cancel instruction 1316 in the accept-push-policy header to the transmission apparatus 101. The PUSH transmission cancel instruction 1316 is a cancel instruction for canceling all segments scheduled to be PUSH transmitted by both the PUSH transmission instructions 1302 and 1303. In the path header of the request 1314, an identifier 1315 ("push") indicating all the PUSH transmission instructions currently used by the transmission apparatus 101 is designated. This identifier 1315 is notified to the receiving apparatus 102 in advance by, for example, the transmitting apparatus 101 describing it in the MPD. In addition to this method, an identifier for designating all PUSH transmission instructions may be understood from the format of the identifier assigned to each PUSH transmission instruction. For example, it is assumed that the identifier assigned to each PUSH transmission unit takes the form of “character string + numerical value”. Then, only the character string portion obtained by removing the numerical value part of the identifier assigned to each PUSH transmission instruction may represent an identifier for designating all the PUSH transmission instructions. The transmission apparatus 101 and the reception apparatus 102 share this rule in advance. The identifiers 1306 and 1308 assigned to the PUSH transmission instructions 1302 and 1303 in FIGS. 13A, 13B, and 13C are “/ example / tmp / push1” and “/ example / tmp / push2”, respectively. It can be seen that the identifier for designating all PUSH transmission instructions is “/ example / tmp / push” excluding numerical values.
 S606において、送信装置101の通信部207はPUSH送信キャンセル指示1316を含むリクエスト1314を受信する。 In S606, the communication unit 207 of the transmission apparatus 101 receives the request 1314 including the PUSH transmission cancel instruction 1316.
 S607において、送信装置101の指示管理部206は識別子1315から判定したキャンセル対象の一つであるPUSH送信指示1302によるPUSH予定のセグメントのうち、未送信のセグメントをキャンセル候補と特定する。この例では、未送信のセグメントの一つであるsegmentA3をキャンセル候補セグメントと特定している。 In S <b> 607, the instruction management unit 206 of the transmission apparatus 101 identifies an untransmitted segment as a cancellation candidate among the PUSH scheduled segments based on the PUSH transmission instruction 1302 that is one of the cancellation targets determined from the identifier 1315. In this example, segment A3, which is one of the untransmitted segments, is specified as a cancel candidate segment.
 S608において、キャンセル候補セグメントであるsegmentA3が、PUSH送信指示1302以外で送信装置101が採用しているPUSH送信指示1303によるPUSH送信対象になっていないと判定し(S608でNO)、S609へ遷移する。 In S608, it is determined that segment A3, which is a cancel candidate segment, is not a PUSH transmission target according to the PUSH transmission instruction 1303 adopted by the transmission apparatus 101 other than the PUSH transmission instruction 1302 (NO in S608), and the process proceeds to S609. .
 S609において、送信装置101の指示管理部206はセグメント決定部205へsegmentA3のPUSH送信をキャンセルするよう指示を出し、セグメント決定部205はsegmentA3のPUSH送信をキャンセルする。具体的なキャンセル処理として、既にPUSH_PROMISE1310による送信予約済みであるため、送信予約をキャンセルするためのRST_STREAM1319の送信と、送信装置101内部でPUSH送信を停止する処理を行う。 In S609, the instruction management unit 206 of the transmission apparatus 101 instructs the segment determination unit 205 to cancel the PUSH transmission of the segment A3, and the segment determination unit 205 cancels the PUSH transmission of the segment A3. As specific cancellation processing, since transmission reservation by the PUSH_PROMISE 1310 has already been completed, transmission of RST_STREAM 1319 for canceling transmission reservation and processing for stopping PUSH transmission inside the transmission apparatus 101 are performed.
 S610において、PUSH送信キャンセル指示1316によるPUSH送信指示1302のキャンセル候補セグメント全てに対し、キャンセル可能かの確認及びキャンセル処理を行ったと判定し(S610でYES)、S611へ遷移する。
S611において、キャンセル対象であるPUSH送信指示は1302以外に1303があるため(S611でNO)、S607へ遷移する。
In S610, it is determined that cancellation is possible for all cancel candidate segments of the PUSH transmission instruction 1302 by the PUSH transmission cancellation instruction 1316 and cancellation processing is performed (YES in S610), and the process proceeds to S611.
In S611, since there are 1303 PUSH transmission instructions to be canceled other than 1302 (NO in S611), the process proceeds to S607.
 S607において、送信装置101の指示管理部206は識別子1315から判定したキャンセル対象の一つであるPUSH送信指示1303がPUSH予定のセグメントのうち、その中の一つであるsegmentB2をキャンセル候補セグメントと特定する。 In step S <b> 607, the instruction management unit 206 of the transmission apparatus 101 identifies segment B <b> 2, which is one of the PUSH scheduled segments whose PUSH transmission instruction 1303, which is one of the cancellation targets determined from the identifier 1315, as a cancel candidate segment. To do.
 S608において、キャンセル候補セグメントであるsegmentB2が、PUSH送信指示1303以外で送信装置101が採用しているPUSH送信指示1302によるPUSH送信対象になっていないと判定し(S608でNO)、S609へ遷移する。 In S608, it is determined that segment B2, which is a cancel candidate segment, is not a PUSH transmission target according to the PUSH transmission instruction 1302 adopted by the transmission apparatus 101 other than the PUSH transmission instruction 1303 (NO in S608), and the process proceeds to S609. .
 S609において、送信装置101の指示管理部206は、セグメント決定部205へsegmentB2のPUSH送信をキャンセルするよう指示を出し、セグメント決定部205は、segmentB2のPUSH送信をキャンセルする。具体的なキャンセル処理として、既にPUSH_PROMISE1311による送信予約済みであるため、送信予約をキャンセルするためのRST_STREAM1320の送信と、送信装置101内部でPUSH送信を停止する処理を行う。 In S609, the instruction management unit 206 of the transmission apparatus 101 instructs the segment determination unit 205 to cancel the PUSH transmission of the segment B2, and the segment determination unit 205 cancels the PUSH transmission of the segment B2. As specific cancellation processing, since transmission reservation by the PUSH_PROMISE 1311 has already been completed, transmission of RST_STREAM 1320 for canceling transmission reservation and processing for stopping PUSH transmission inside the transmission apparatus 101 are performed.
 S610において、PUSH送信キャンセル指示1316によるPUSH送信指示1303のキャンセル候補セグメント全てに対し、キャンセル可能かの確認及びキャンセル処理を行っていないと判定し(S610でNO)、S607へ遷移する。 In S610, it is determined that cancellation is not performed for all cancel candidate segments of the PUSH transmission instruction 1303 according to the PUSH transmission cancellation instruction 1316 and cancellation processing is not performed (NO in S610), and the process proceeds to S607.
 S607において、送信装置101の指示管理部206は識別子1315から判定したキャンセル対象の一つであるPUSH送信指示1303がPUSH予定のセグメントのうち、その中の一つであるsegmentB3をキャンセル候補セグメントと特定する。 In step S <b> 607, the instruction management unit 206 of the transmission apparatus 101 identifies segment B <b> 3, which is one of the PUSH transmission instructions 1303, which is one of the cancellation targets determined from the identifier 1315, as a cancel candidate segment. To do.
 S608において、キャンセル候補セグメントであるsegmentB3が、PUSH送信指示1303以外で送信装置101が採用しているPUSH送信指示1302によるPUSH送信対象になっていないと判定し(S608でNO)、S609へ遷移する。 In S608, it is determined that segment B3, which is a cancellation candidate segment, is not a PUSH transmission target according to the PUSH transmission instruction 1302 adopted by the transmission apparatus 101 other than the PUSH transmission instruction 1303 (NO in S608), and the process proceeds to S609. .
 S609において、送信装置101の指示管理部206はセグメント決定部205へsegmentB3のPUSH送信をキャンセルするよう指示を出し、セグメント決定部205はsegmentB3のPUSH送信をキャンセルする。具体的なキャンセル処理として、既にPUSH_PROMISE1312による送信予約済みであるため、送信予約をキャンセルするためのRST_STREAM1321の送信と、送信装置101内部でPUSH送信を停止する処理を行う。 In S609, the instruction management unit 206 of the transmission apparatus 101 instructs the segment determination unit 205 to cancel the PUSH transmission of the segment B3, and the segment determination unit 205 cancels the PUSH transmission of the segment B3. As specific cancellation processing, since transmission reservation by the PUSH_PROMISE 1312 has already been completed, transmission of RST_STREAM 1321 for canceling transmission reservation and processing for stopping PUSH transmission inside the transmission apparatus 101 are performed.
 S610において、PUSH送信キャンセル指示1316によるPUSH送信指示1303のキャンセル候補セグメント全てに対し、キャンセル可能かの確認及びキャンセル処理を行ったと判定し(S610でYES)、S611へ遷移する。 In S610, it is determined that cancellation is possible for all cancel candidate segments of the PUSH transmission instruction 1303 according to the PUSH transmission cancellation instruction 1316 and cancellation processing is performed (YES in S610), and the process proceeds to S611.
 S611において、PUSH送信キャンセル指示1316が対象とする全てのPUSH送信指示に対してキャンセルを行ったと判定し(S611でYES)、S612へ遷移する。 In S611, it is determined that the PUSH transmission cancel instruction 1316 has canceled all the PUSH transmission instructions (YES in S611), and the process proceeds to S612.
 S612において、送信装置101の通信部207はPUSH送信キャンセル指示1316に対する応答1318をpush-policyヘッダーに含むレスポンス1317を受信装置102へ送信する。この応答1318は、PUSH送信キャンセル指示1316と同様の内容を有する。 In S612, the communication unit 207 of the transmission apparatus 101 transmits a response 1317 including a response 1318 to the PUSH transmission cancel instruction 1316 in the push-policy header to the reception apparatus 102. This response 1318 has the same content as the PUSH transmission cancel instruction 1316.
 S707において、受信装置102の通信部308は、PUSH送信キャンセル指示の応答1318を含むレスポンス1317を送信装置101から受信する。 In step S <b> 707, the communication unit 308 of the reception apparatus 102 receives a response 1317 including a PUSH transmission cancel instruction response 1318 from the transmission apparatus 101.
 キャンセルされたsegmentA3、segmentB2及びsegmentB3に対して、送信装置101は受信装置102へPUSH_PROMISE1310から1312を送信している。そのため、これらをキャンセルするために、送信装置101はRST_STREAM1319から1321を送信し、受信装置102はこれを受信する。このRST_STREAM1319から1321はS706の前かS707の後に受信装置102が送信してもよい。 For the canceled segment A3, segment B2, and segment B3, the transmitting apparatus 101 transmits PUSH_PROMISE 1310 to 1312 to the receiving apparatus 102. Therefore, in order to cancel these, the transmission apparatus 101 transmits RST_STREAM 1319 to 1321, and the reception apparatus 102 receives this. The RST_STREAM 1319 to 1321 may be transmitted by the receiving apparatus 102 before S706 or after S707.
 動作例6では、複数のPUSH送信指示が要求された場合に、各PUSH送信指示のPUSH送信をキャンセルするために、PUSH送信指示に共通の識別子を使用することで、余分なトランザクションを不要とする例を説明した。 In the operation example 6, when a plurality of PUSH transmission instructions are requested, in order to cancel the PUSH transmission of each PUSH transmission instruction, an extra transaction is unnecessary by using a common identifier for the PUSH transmission instruction. An example was explained.
 (動作例7)
 次に、HTTP/2上で、URL形式の識別子によりキャンセルすべきPUSH送信指示を指定し、PUSH送信指示によりPUSHする予定全てのセグメントをキャンセルしつつ、別のPUSH送信指示を行う例について、図14A,14Bを参照して説明する。
(Operation example 7)
Next, an example of designating another PUSH transmission instruction while designating a PUSH transmission instruction to be canceled by an identifier in the URL format on HTTP / 2, canceling all the segments scheduled to be pushed by the PUSH transmission instruction, is shown in FIG. A description will be given with reference to 14A and 14B.
 図14A,14Bの1401から1404は801から804と同様であり、1405から1407は806から808と同様である。また、図6のS601から605及び図7のS701から705は図8A,8Bと内容が同じであるため説明は省略する。図14A,14Bのレスポンス1403には図8A,8Bの805に相当する記載がないことからわかるように、図8A,8Bとは異なり図14A,14BではPUSH送信指示1402に対し識別子を割り振っていないが、図8A,8Bと同様に割り振ってもよい。 In FIGS. 14A and 14B, 1401 to 1404 are the same as 801 to 804, and 1405 to 1407 are the same as 806 to 808. Moreover, since S601 to 605 in FIG. 6 and S701 to 705 in FIG. 7 are the same as those in FIGS. 8A and 8B, description thereof will be omitted. As can be seen from the fact that the response 1403 in FIGS. 14A and 14B has no description corresponding to 805 in FIGS. 8A and 8B, unlike FIGS. 8A and 8B, no identifier is assigned to the PUSH transmission instruction 1402 in FIGS. 14A and 14B. However, they may be allocated in the same manner as in FIGS. 8A and 8B.
 S706において、受信装置102の通信部308は、PUSH送信キャンセル指示1410をaccept-push-policyヘッダーに含むリクエスト1408を送信装置101へ送信する。PUSH送信キャンセル指示1410は、対象とするPUSH送信指示によりPUSH送信する予定の全てのセグメントをキャンセルする内容を有する。PUSH送信キャンセル指示1410は、キャンセル対象とするPUSH送信指示を指定するために、PUSH送信指示1402を指示した際に指定したURLである"/example/tmp/segmentA1"1411を含む。図14A,14Bの例では、PUSH送信キャンセル指示1410の後ろに"path"というプレフィックスと共にURL1411を含んでいる。このプレフィックスは"path"に限定しない。またこのプレフィックスはなくてもよい。 In step S706, the communication unit 308 of the reception apparatus 102 transmits a request 1408 including the PUSH transmission cancel instruction 1410 in the accept-push-policy header to the transmission apparatus 101. The PUSH transmission cancel instruction 1410 has a content for canceling all the segments scheduled to be PUSH transmitted by the target PUSH transmission instruction. The PUSH transmission cancel instruction 1410 includes “/ example / tmp / segmentA1” 1411 which is a URL specified when the PUSH transmission instruction 1402 is instructed in order to specify a PUSH transmission instruction to be canceled. In the example of FIGS. 14A and 14B, the URL 1411 is included behind the PUSH transmission cancel instruction 1410 together with the prefix “path”. This prefix is not limited to “path”. This prefix may not be necessary.
 URLの代わりにPUSH送信指示を区別できる他の値を含めてもよい。キャンセル対象のPUSH送信指示をURL1411により指定する代わりに、リスト形式やテンプレート形式により、キャンセルしたいセグメントを直接指定してもよい。キャンセル対象をリスト形式で指定する場合、1410に"urn:sample:push-cancel-list"の様なリスト形式を示すキャンセル指示を指定してもよい。そして1411の代わりに「"/example/tmp/segmentA3";"/example/tmp/segmentA4";"/example/tmp/segmentA5";"/example/tmp/segmentA6"」の様な形式を指定する。 Other values that can distinguish the PUSH transmission instruction may be included instead of the URL. Instead of specifying the PUSH transmission instruction to be canceled by the URL 1411, the segment to be canceled may be directly specified by a list format or a template format. When specifying the cancellation target in a list format, a cancel instruction indicating a list format such as “urn: sample: push-cancel-list” may be specified in 1410. Instead of 1411, a format such as "" / example / tmp / segmentA3 ";" / example / tmp / segmentA4 ";" / example / tmp / segmentA5 ";" / example / tmp / segmentA6 "" is specified.
 キャンセル対象をテンプレート形式で指定する場合、1410に"urn:sample:push-cancel-templete"の様なテンプレート形式を示すキャンセル指示を指定してもよい。そして1411の代わりに「/example/tmp/segmentA{%d};{3,4,5,6}」や「/example/tmp/segmentA{%d};{3ー6}」の様な形式を指定する。 When the cancellation target is specified in the template format, a cancel instruction indicating a template format such as “urn: sample: push-cancel-template” may be specified in 1410. Then, instead of 1411, a format such as “/ example / tmp / segmentA {% d}; {3,4,5,6}” or “/ example / tmp / segmentA {% d}; {3-6}” Is specified.
 受信装置102の通信部308は、PUSH送信キャンセル指示とは別に、新しく設定するPUSH送信指示1412をリクエスト1408に含んでいる。accept-push-policyヘッダーのPUSH送信キャンセル指示1410及び1411の後ろにPUSH送信指示1412を含む。1410及び1411の前にPUSH送信指示1412を含めてもよい。pathヘッダーに、新しく設定するPUSH送信指示1412実行時のベースとなるURL1409を含める。図14A,14Bの例では、pathヘッダーに指定しているURLが"/example/tmp/segmentB3"であり、PUSH送信指示1423は、連続する四つのセグメントのPUSH送信を要求するものである。したがって、PUSH送信指示1412は、segmentB3から再生時間的に連続する四つのセグメントsegmentB4~segmentB7をPUSH送信するよう指示する内容を有する。 The communication unit 308 of the receiving apparatus 102 includes a PUSH transmission instruction 1412 to be newly set in the request 1408 separately from the PUSH transmission cancellation instruction. A PUSH transmission instruction 1412 is included after the PUSH transmission cancellation instructions 1410 and 1411 in the accept-push-policy header. A PUSH transmission instruction 1412 may be included before 1410 and 1411. In the path header, a URL 1409 that is a base for executing the PUSH transmission instruction 1412 to be newly set is included. In the example of FIGS. 14A and 14B, the URL specified in the path header is “/ example / tmp / segment B3”, and the PUSH transmission instruction 1423 requests PUSH transmission of four consecutive segments. Therefore, the PUSH transmission instruction 1412 has a content for instructing PUSH transmission of the four segments segmentB4 to segmentB7 that are continuous from the segmentB3 in terms of reproduction time.
 図6のS606からS611の処理は、図8A,8Bを参照して説明した処理の内容が同様であるため説明は省略する。 6 is the same as the processing described with reference to FIGS. 8A and 8B, and thus the description thereof is omitted.
 S612において、送信装置101の通信部207はPUSH送信キャンセル指示1410及びPUSH送信指示1412に対する応答1414をpush-policyヘッダーに含むレスポンス1415を受信装置102へ送信する。この応答1414は、1410、1411及び1412と同じ内容を有する。 In S612, the communication unit 207 of the transmission apparatus 101 transmits to the reception apparatus 102 a response 1415 that includes a push-policy header in response 1414 to the PUSH transmission cancel instruction 1410 and the PUSH transmission instruction 1412. This response 1414 has the same content as 1410, 1411 and 1412.
 S707において、受信装置102の通信部308は、PUSH送信キャンセル指示1410とPUSH送信指示1412の応答1414と、segmentB3のバイナリデータを含むレスポンス1413を受信する。 In S707, the communication unit 308 of the receiving apparatus 102 receives the PUSH transmission cancel instruction 1410, the PUSH transmission instruction 1412 response 1414, and the response 1413 including the segment B3 binary data.
 キャンセルされたsegmentA3に対して、送信装置101は、受信装置102へPUSH_PROMISE1406を送信している。そのため、送信装置101は、これをキャンセルするためにRST_STREAM1415を送信し、受信装置102はこれを受信する。このRST_STREAM1415はS706の前かS707の後に受信装置102が送信してもよい。 The transmitting apparatus 101 transmits PUSH_PROMISE 1406 to the receiving apparatus 102 for the canceled segment A3. Therefore, the transmission apparatus 101 transmits RST_STREAM 1415 to cancel this, and the reception apparatus 102 receives this. This RST_STREAM 1415 may be transmitted by the receiving apparatus 102 before S706 or after S707.
 S612以降、送信装置101はPUSH送信指示1412を元に新たにPUSH送信を開始する。すなわち、送信装置101は、segmentB4~segmentB7のPUSH送信を開始する。 After S612, the transmitting apparatus 101 newly starts PUSH transmission based on the PUSH transmission instruction 1412. That is, the transmission apparatus 101 starts PUSH transmission of segment B4 to segment B7.
 動作例7では、識別子によりキャンセルすべきPUSH送信指示を指定し、PUSH送信指示によりPUSHする予定全てのセグメントをキャンセルしつつ、別のPUSH送信指示を行う例を説明した。動作例7においても、識別子によりPUSH送信指示を指定することで、キャンセル対象を特定するために余分なトランザクションを必要とせずに、PUSH送信のキャンセルを行うことが可能である。 In the operation example 7, the PUSH transmission instruction to be canceled is specified by the identifier, and the example in which another PUSH transmission instruction is performed while canceling all the segments scheduled to be pushed by the PUSH transmission instruction has been described. Also in the operation example 7, by specifying the PUSH transmission instruction by the identifier, it is possible to cancel the PUSH transmission without requiring an extra transaction for specifying the cancellation target.
 (動作例8)
 次に、HTTP/2上で、複数のPUSH送信指示を要求し採用された後で、URL形式の識別子によりキャンセル対象として全てのPUSH送信指示を指定し、各PUSH送信指示がPUSH送信する予定の全てのセグメントをキャンセルする例を説明する。このキャンセルと合わせて新しいPUSH送信指示を行う例について、図15A,15B,15Cを参照して説明する。
(Operation example 8)
Next, after requesting and adopting a plurality of PUSH transmission instructions on HTTP / 2, all PUSH transmission instructions are designated as cancellation targets by identifiers in the URL format, and each PUSH transmission instruction is scheduled to be PUSH transmitted. An example of canceling all segments will be described. An example in which a new PUSH transmission instruction is issued together with this cancellation will be described with reference to FIGS. 15A, 15B, and 15C.
 図15A,15B,15Cにおいて、1501から1513は図11A,11B,11Cの1101から1113と同様である。また図6のS601からS605及び図7のS701からS705処理は、図11A,11B,11C、図8A,8Bを参照して説明した処理の内容と同様であるため説明は省略する。 15A, 15B, and 15C, reference numerals 1501 to 1513 are the same as 1101 to 1113 in FIGS. 11A, 11B, and 11C. 6 are the same as the processing described with reference to FIGS. 11A, 11B, 11C, and 8A, 8B, and thus description thereof is omitted.
 S706において、受信装置102の通信部308は、PUSH送信キャンセル指示1516をaccept-push-policyヘッダーに含むリクエスト1514を送信装置101へ送信する。PUSH送信キャンセル指示1516は、対象とするPUSH送信指示によりPUSH送信する予定の全てのセグメントをキャンセルする内容を有する。PUSH送信キャンセル指示1516は、キャンセル対象とするPUSH送信指示を指定するために、PUSH送信指示1502、1503を指示した際に指定したURLである"/example/tmp/segmentA1"1517を含む。URL1517を指定することにより、"/example/tmp/segmentA1"を指定して要求を出したPUSH送信指示を全てキャンセル対象とする。図15A,15B,15Cでは、segmentA2、segmentA3だけでなく、segmentB2、segmentB3も":path=/example/tmp/segmentA1"のパス名に基づき要求されている。すなわち、PUSH送信指示1502、1503は、いずれも同一のリソース"segmentA1"を利用している。そのため、PUSH送信キャンセル指示1516において、PUSH送信指示1502と1503の両方がキャンセル対象となる。 In S706, the communication unit 308 of the reception apparatus 102 transmits a request 1514 including the PUSH transmission cancel instruction 1516 in the accept-push-policy header to the transmission apparatus 101. The PUSH transmission cancel instruction 1516 has a content for canceling all the segments scheduled to be PUSH transmitted by the target PUSH transmission instruction. The PUSH transmission cancel instruction 1516 includes “/ example / tmp / segmentA1” 1517 that is a URL specified when the PUSH transmission instructions 1502 and 1503 are instructed in order to specify a PUSH transmission instruction to be canceled. By specifying the URL 1517, all PUSH transmission instructions that specify "/ example / tmp / segmentA1" and make a request are subject to cancellation. 15A, 15B, and 15C, not only segment A2 and segment A3, but also segment B2 and segment B3 are requested based on the path name of “: path = / example / tmp / segmentA1”. In other words, the PUSH transmission instructions 1502 and 1503 both use the same resource “segmentA1”. Therefore, in the PUSH transmission cancel instruction 1516, both the PUSH transmission instructions 1502 and 1503 are to be canceled.
 PUSH送信キャンセル指示1516の後ろに"path"というプレフィックスと共にURL1517を含める。このプレフィックスは"path"に限定しない。またこのプレフィックスはなくてもよい。URLの代わりにPUSH送信指示を区別できる他の値を含めてもよい。キャンセル対象のPUSH送信指示をURL1517により指定する代わりに、リスト形式やテンプレート形式により、キャンセルしたいセグメントを直接指定してもよい。受信装置102の通信部308は、PUSH送信キャンセル指示とは別に、新しく設定するPUSH送信指示1518をリクエスト1514に含める。図15A,15B,15Cの例では、accept-push-policyヘッダーのPUSH送信キャンセル指示1516及び1517の後ろにPUSH送信指示1518を含んでいる。PUSH送信キャンセル指示1516及び1517の前にPUSH送信指示1518が配置されてもよい。pathヘッダーに、新しく設定するPUSH送信指示1518実行時のベースとなるURL1515を含める。pathヘッダーに指定しているURLが"/example/tmp/segmentC3"なので、PUSH送信指示1518はsegmentC3から再生時間的に連続する次の四つのセグメント(C4~C7)をPUSH送信するよう指示する内容となる。 Include URL 1517 with the prefix “path” behind the PUSH transmission cancel instruction 1516. This prefix is not limited to “path”. This prefix may not be necessary. Other values that can distinguish the PUSH transmission instruction may be included instead of the URL. Instead of specifying the PUSH transmission instruction to be canceled by the URL 1517, the segment to be canceled may be directly specified by a list format or a template format. The communication unit 308 of the receiving apparatus 102 includes a PUSH transmission instruction 1518 to be newly set in the request 1514 separately from the PUSH transmission cancellation instruction. In the example of FIGS. 15A, 15B, and 15C, a PUSH transmission instruction 1518 is included after the PUSH transmission cancellation instructions 1516 and 1517 in the accept-push-policy header. A PUSH transmission instruction 1518 may be arranged before the PUSH transmission cancellation instructions 1516 and 1517. In the path header, a URL 1515 serving as a base when the PUSH transmission instruction 1518 to be newly set is executed is included. Since the URL specified in the path header is “/ example / tmp / segmentC3”, the PUSH transmission instruction 1518 is an instruction to push the next four segments (C4 to C7) consecutive in playback time from the segment C3. It becomes.
 図6のS606からS611の処理は、図8A,8Bを参照して説明した処理と内容が同様であるため説明は省略する。 The processing from S606 to S611 in FIG. 6 is the same as the processing described with reference to FIGS.
 S612において、送信装置101の通信部207は、PUSH送信キャンセル指示1516及びPUSH送信指示1518に対する応答1520をpush-policyヘッダーに含むレスポンス1519を受信装置102へ送信する。応答1520は、PUSH送信キャンセル指示1516、1517及びPUSH送信指示1518と同様の内容を有する。レスポンス1519はsegmentC3のバイナリデータを含む。また送信装置101の指示管理部206は、受信したPUSH送信指示1518に対し"/example/tmp/push3"という識別子1521を割り振る。そしてレスポンス1519のpush-policyヘッダーに、識別子1521を含める。識別子1521の前に"push-URL"というプレフィックスを入れることで、push-policyヘッダーのどこからが識別子1521なのかを区別できるようにしている。このプレフィックスは"push-URL"に限定しない。 In step S612, the communication unit 207 of the transmission apparatus 101 transmits a response 1519 including a response 1520 to the PUSH transmission cancellation instruction 1516 and the PUSH transmission instruction 1518 in the push-policy header to the reception apparatus 102. The response 1520 has the same contents as the PUSH transmission cancel instructions 1516 and 1517 and the PUSH transmission instruction 1518. The response 1519 includes segment C3 binary data. Further, the instruction management unit 206 of the transmission apparatus 101 allocates an identifier 1521 of “/ example / tmp / push3” to the received PUSH transmission instruction 1518. Then, the identifier 1521 is included in the push-policy header of the response 1519. By inserting a “push-URL” prefix in front of the identifier 1521, it is possible to distinguish where the identifier 1521 is from the push-policy header. This prefix is not limited to “push-URL”.
 S707において、受信装置102の通信部308は、PUSH送信キャンセル指示1516とPUSH送信指示1518の応答1521を含むレスポンス1519を送信装置101から受信する。キャンセルされたsegmentA3、segmentB2及びsegmentB3に対して送信装置101は、PUSH_PROMISE1510から1512を受信装置102へ送信している。そのため、これらをキャンセルするために、送信装置101はRST_STREAM1522から1524を送信し、受信装置102はこれを受信する。このRST_STREAM1522から1524はS706の前かS707の後に受信装置102が送信してもよい。 In step S <b> 707, the communication unit 308 of the reception apparatus 102 receives a response 1519 including a PUSH transmission cancel instruction 1516 and a PUSH transmission instruction 1518 response 1521 from the transmission apparatus 101. The transmitting apparatus 101 transmits PUSH_PROMISE 1510 to 1512 to the receiving apparatus 102 for the canceled segment A3, segment B2, and segment B3. Therefore, in order to cancel these, the transmission apparatus 101 transmits RST_STREAM 1522 to 1524, and the reception apparatus 102 receives this. These RST_STREAMs 1522 to 1524 may be transmitted by the receiving apparatus 102 before S706 or after S707.
 S612以降、送信装置101はPUSH送信指示1518を元に新たにPUSH送信を開始する。 After S612, the transmission apparatus 101 newly starts PUSH transmission based on the PUSH transmission instruction 1518.
 動作例8では、複数のPUSH送信指示を要求し採用された後で、識別子によりキャンセル対象として全てのPUSH送信指示を指定する例を説明した。動作例8においても、キャンセル対象を特定するために余分なトランザクションを必要とせずに、PUSH送信のキャンセルを行うことが可能である。 In the operation example 8, after requesting and adopting a plurality of PUSH transmission instructions, an example in which all the PUSH transmission instructions are designated as cancellation targets by an identifier has been described. Also in the operation example 8, it is possible to cancel the PUSH transmission without requiring an extra transaction for specifying the cancel target.
 (動作例9)
 次に、WebSocket上で、URL形式の識別子によりキャンセルすべきPUSH送信指示を指定し、PUSH送信指示によりPUSHする予定全てのセグメントをキャンセルする例について、図16を参照して説明する。
(Operation example 9)
Next, an example in which a PUSH transmission instruction to be canceled is specified by an identifier in the URL format on the WebSocket, and all the segments scheduled to be pushed by the PUSH transmission instruction are canceled will be described with reference to FIG.
 識別子は送信装置101が割り振るものとして、受信装置102はS701の処理をスキップする。 The identifier is assigned by the transmitting apparatus 101, and the receiving apparatus 102 skips the processing of S701.
 S702において、受信装置102の通信部308は、送信装置101へPUSH送信指示1602を含むリクエスト1601を送信する。PUSH送信指示は"urn:sample:push-next;2"という文字列を、"push_directive"というプレフィックスの後ろに含めている。このプレフィックスは"push_directive"に限定しない。リクエスト1601はsegmentA1をリクエストするメッセージであり、segmentA1から再生時間的に連続する次の二つのセグメントをPUSH送信するようPUSH送信指示1602で指示している。 In S <b> 702, the communication unit 308 of the reception apparatus 102 transmits a request 1601 including a PUSH transmission instruction 1602 to the transmission apparatus 101. The PUSH transmission instruction includes a character string “urn: sample: push-next; 2” after the prefix “push_directive”. This prefix is not limited to “push_directive”. A request 1601 is a message for requesting segment A1, and the PUSH transmission instruction 1602 instructs the segment A1 to perform PUSH transmission of the next two segments that are continuous in playback time.
 S601において、送信装置101の通信部207は、PUSH送信指示1602を含むリクエスト1601を受信装置102から受信する。 In step S <b> 601, the communication unit 207 of the transmission apparatus 101 receives a request 1601 including a PUSH transmission instruction 1602 from the reception apparatus 102.
 S602において、送信装置101の指示管理部206は、受信したPUSH送信指示1602に対し"/example/tmp/push1"という識別子1605を割り振る。図16の例では、識別子はURLの形式を採用している。 In S602, the instruction management unit 206 of the transmission apparatus 101 allocates an identifier 1605 of “/ example / tmp / push1” to the received PUSH transmission instruction 1602. In the example of FIG. 16, the identifier adopts the URL format.
 S603において、送信装置101の通信部207は、PUSH送信指示1602に対する応答1604と、を含むレスポンスをsegmentA1のバイナリデータを含むレスポンス1603を受信装置102へ送信する。この応答1604は、PUSH送信指示1602と同様の内容を有する。PUSH送信指示の応答1604は、"push_ack"というプレフィックスの後ろに含めている。このプレフィックスは"push_ack"に限定しない。PUSH送信指示の応答1606と対応させて識別子1605を含める。識別子1605は"push_url="というプレフィックスの後ろに含めている。このプレフィックスは"push_url="に限定しない。 In S603, the communication unit 207 of the transmission apparatus 101 transmits a response 1603 including a response 1604 to the PUSH transmission instruction 1602 to the reception apparatus 102, including a response 1603 including the binary data of the segment A1. This response 1604 has the same content as the PUSH transmission instruction 1602. The PUSH transmission instruction response 1604 is included after the prefix “push_ack”. This prefix is not limited to “push_ack”. An identifier 1605 is included in correspondence with the PUSH transmission instruction response 1606. The identifier 1605 is included after the prefix “push_url =”. This prefix is not limited to “push_url =”.
 S604において、送信装置101の指示管理部206は、受信したPUSH送信指示1602と識別子1605を紐づけて保持する。 In S604, the instruction management unit 206 of the transmission apparatus 101 holds the received PUSH transmission instruction 1602 and the identifier 1605 in association with each other.
 S703において、受信装置102の通信部308は、PUSH送信指示1602の応答1604を含むレスポンス1603を受信する。 In S703, the communication unit 308 of the receiving apparatus 102 receives a response 1603 including a response 1604 of the PUSH transmission instruction 1602.
 S704において、受信装置102の指示管理部306は、応答が返ってきて受理されたPUSH送信指示1602を識別子1605と紐づけて保持する。 In step S <b> 704, the instruction management unit 306 of the reception apparatus 102 holds the PUSH transmission instruction 1602 received after the response is returned in association with the identifier 1605.
 S605において、送信装置101はPUSH送信を開始し、segmentA2のPUSH送信として、送信装置101の通信部207は、segmentA2のバイナリデータを含むレスポンス1606を受信装置102へ送信する。 In S605, the transmission apparatus 101 starts the PUSH transmission, and the communication unit 207 of the transmission apparatus 101 transmits a response 1606 including the binary data of the segment A2 to the reception apparatus 102 as the PUSH transmission of the segment A2.
 S705において、受信装置102の通信部308は、レスポンス1606を受信する。 In S705, the communication unit 308 of the reception apparatus 102 receives the response 1606.
 S706において、受信装置102の通信部308はPUSH送信指示1602によりPUSH送信する予定の全てのセグメントに対するPUSH送信キャンセル指示1608をリクエスト1607として送信する。識別子1605を指定することでキャンセルしたいPUSH送信対象を指定する。識別子1605は"segment_uri"というプレフィックスの後ろに置かれている。このプレフィックスは"segment_uri"に限定されない。 In S <b> 706, the communication unit 308 of the receiving apparatus 102 transmits, as a request 1607, a PUSH transmission cancel instruction 1608 for all segments scheduled to be PUSH transmitted in accordance with the PUSH transmission instruction 1602. By specifying the identifier 1605, the PUSH transmission target to be canceled is specified. The identifier 1605 is placed after the prefix “segment_uri”. This prefix is not limited to “segment_uri”.
 S606において、送信装置101の通信部207は、PUSH送信キャンセル指示1608を含むリクエスト1607を受信装置102から受信する。 In S606, the communication unit 207 of the transmission apparatus 101 receives the request 1607 including the PUSH transmission cancel instruction 1608 from the reception apparatus 102.
 S607において、送信装置101の指示管理部206は、識別子1605から判定したキャンセル対象であるPUSH送信指示1602によるPUSH予定のセグメントで、その中の一つであるsegmentA3をキャンセル候補セグメントと特定する。送信装置101においてPUSH送信指示1602以外で指示されているPUSH送信指示はないため、S608をスキップしS609へ遷移する。 In S607, the instruction management unit 206 of the transmission apparatus 101 identifies segment A3, which is one of the PUSH scheduled segments based on the PUSH transmission instruction 1602 to be canceled determined from the identifier 1605, as a cancel candidate segment. Since there is no PUSH transmission instruction other than the PUSH transmission instruction 1602 in the transmission apparatus 101, S608 is skipped and the process proceeds to S609.
 S609において、送信装置101の指示管理部206はセグメント決定部205へsegmentA3のPUSH送信をキャンセルするよう指示を出し、セグメント決定部205はsegmentA3のPUSH送信をキャンセルする。 In S609, the instruction management unit 206 of the transmission apparatus 101 instructs the segment determination unit 205 to cancel the PUSH transmission of the segment A3, and the segment determination unit 205 cancels the PUSH transmission of the segment A3.
 S610において、PUSH送信キャンセル指示1608によるPUSH送信指示1602のキャンセル候補セグメント全てに対し、キャンセル可能かの確認及びキャンセル処理を行ったと判定し(S610でYES)、S611へ遷移する。 In S610, it is determined that cancellation is possible for all cancel candidate segments of the PUSH transmission instruction 1602 according to the PUSH transmission cancellation instruction 1608 and cancellation processing is performed (YES in S610), and the process proceeds to S611.
 S611において、キャンセル対象であるPUSH送信指示は1602のみであるため(S611でYES)、S612へ遷移する。 In S611, since the PUSH transmission instruction to be canceled is only 1602 (YES in S611), the process proceeds to S612.
 S612において、送信装置101の通信部207は、PUSH送信キャンセル指示1608に対する応答1610を含むレスポンス1609を受信装置102へ送信する。応答1610は、PUSH送信キャンセル指示1608と同じ内容を有する。PUSH送信キャンセル指示の応答1610は"push_ack"というプレフィックスの後ろに置かれている。このプレフィックスは"push_ack"に限定しない。 In S612, the communication unit 207 of the transmission apparatus 101 transmits a response 1609 including a response 1610 to the PUSH transmission cancel instruction 1608 to the reception apparatus 102. The response 1610 has the same content as the PUSH transmission cancel instruction 1608. The PUSH transmission cancel instruction response 1610 is placed behind the prefix “push_ack”. This prefix is not limited to “push_ack”.
 S707において、受信装置102の通信部308は、PUSH送信キャンセル指示の応答1610を含むレスポンス1609を送信装置101から受信する。 In step S <b> 707, the communication unit 308 of the reception apparatus 102 receives a response 1609 including a PUSH transmission cancel instruction response 1610 from the transmission apparatus 101.
 動作例9ではHTTP/2とWebSocketにおける説明をしたが、QUICやその他PUSH機能を有するプロトコルに対しても本実施形態は適用可能である。 In the operation example 9, HTTP / 2 and WebSocket have been described, but the present embodiment can be applied to QUIIC and other protocols having a PUSH function.
 (動作例10)
 HTTP/2上で、PUSH送信指示を要求した後で、PUSH送信キャンセルと新たなPUSH送信指示を合わせて行う例について、図17A、図17Bを参照して説明する。この例では、セグメントのデータの種類を識別子として使用するため、受信装置102がPUSH送信指示に識別子を割り振るS701はスキップする。また、この例では"/example/video/"+セグメント名で映像データセグメントを、"/example/audio/"+セグメント名で音声データのセグメントを表すものとする。
(Operation example 10)
An example of performing a PUSH transmission cancellation and a new PUSH transmission instruction together after requesting a PUSH transmission instruction on HTTP / 2 will be described with reference to FIGS. 17A and 17B. In this example, since the data type of the segment is used as an identifier, S701 in which the receiving apparatus 102 allocates an identifier to the PUSH transmission instruction is skipped. In this example, it is assumed that a video data segment is represented by “/ example / video /” + segment name, and a segment of audio data is represented by “/ example / audio /” + segment name.
 S702において、受信装置102の通信部308は、PUSH送信指示1702と1703をaccept-push-policyヘッダーに含むリクエスト1701を送信装置101へ送信する。別々のaccept-push-policyヘッダーではなく、一つのaccept-push-policyヘッダーに、PUSH送信指示1702と1703を含めてもよい。1702において、"urn:sample:push-next"に続く数字"2"は、"/example/video/segmentA1"に続いて取得するセグメントの個数を指定している。したがって、受信装置102は、PUSH送信指示1702によってvideo/segmentA2及びvideo/segmentA3のPUSH送信を要求している。また、1703において、"/example/audio/segmentA(%01d)"に続く括弧内の二つの数字は、"(%01d)"が採りうる値の範囲により、要求対象のセグメントを特定している。1703の例では、"{2,3}"が範囲として指定されているから、PUSH送信指示1703によって、audio/segmentA2及びaudio/segmentA3のPUSH送信要求が行われている。 In S702, the communication unit 308 of the reception apparatus 102 transmits a request 1701 including PUSH transmission instructions 1702 and 1703 in the accept-push-policy header to the transmission apparatus 101. The PUSH transmission instructions 1702 and 1703 may be included in a single accept-push-policy header instead of separate accept-push-policy headers. In 1702, the number “2” following “urn: sample: push-next” designates the number of segments to be acquired following “/ example / video / segmentA1”. Therefore, the receiving apparatus 102 requests PUSH transmission of video / segment A2 and video / segment A3 by a PUSH transmission instruction 1702. Further, in 1703, the two numbers in parentheses following “/ example / audio / segmentA (% 01d)” identify the requested segment by the range of values that “(% 01d)” can take. . In the example of 1703, “{2, 3}” is specified as the range, and therefore, PUSH transmission requests for audio / segment A2 and audio / segment A3 are made in accordance with the PUSH transmission instruction 1703.
 S601において、送信装置101の通信部207は、PUSH送信指示1702と1703を含むリクエスト1701を受信する。 In S601, the communication unit 207 of the transmission apparatus 101 receives the request 1701 including the PUSH transmission instructions 1702 and 1703.
 動作例10ではセグメントのデータの種類を識別子として使用するため、送信装置101はS602の処理をスキップする。 In operation example 10, since the type of segment data is used as an identifier, the transmission apparatus 101 skips the processing of S602.
 S603において、送信装置101の通信部207はPUSH送信指示1702と1703に対する応答をpush-policyヘッダーに含むレスポンス1704を受信装置102へ送信する。レスポンス1704はまたvideo/segmentA1のバイナリデータを含んでいる。動作例10では、レスポンス1704は、PUSH送信指示1702と1703に対する応答として、PUSH送信指示1702及び1703と同じ内容であるPUSH送信指示の応答1705と1706を含んでいる。すなわち、レスポンス1704は二つのpush-policyヘッダーを持ち、これら二つのヘッダーによりPUSH送信指示の応答1705と1706を含んでいる。なお、別々のpush-policyヘッダーではなく、一つのpush-policyヘッダーにPUSH送信指示の応答1705と1706を含めてもよい。 In S603, the communication unit 207 of the transmission apparatus 101 transmits a response 1704 including responses to the PUSH transmission instructions 1702 and 1703 in the push-policy header to the reception apparatus 102. The response 1704 also includes binary data of video / segment A1. In the operation example 10, the response 1704 includes PUSH transmission instruction responses 1705 and 1706 having the same contents as the PUSH transmission instructions 1702 and 1703 as responses to the PUSH transmission instructions 1702 and 1703. That is, the response 1704 has two push-policy headers, and includes PUSH transmission instruction responses 1705 and 1706 by these two headers. Note that the PUSH transmission instruction responses 1705 and 1706 may be included in a single push-policy header instead of separate push-policy headers.
 レスポンス1704送信後、送信装置101は、HTTP/2における、PUSH送信予定のセグメント毎に、そのセグメントを送信するためのstreamを予約するPUSH_PROMISE1707~1711を受信装置102へ送信する。受信装置102は、PUSH_PROMISE1707~1711を送信装置101から受信する。PUSH_PROMISE1707、1708、1709、1710及び1711は、レスポンス1704の前に送受信してもよい。 After transmitting the response 1704, the transmission apparatus 101 transmits PUSH_PROMISE 1707 to 1711 for reserving a stream for transmitting the segment for each segment scheduled to be transmitted in HTTP / 2 to the reception apparatus 102. The receiving apparatus 102 receives PUSH_PROMISE 1707 to 1711 from the transmitting apparatus 101. The PUSH_PROMISE 1707, 1708, 1709, 1710, and 1711 may be transmitted / received before the response 1704.
 動作例10ではセグメントのデータの種類を識別子として使用するため、送信装置101はS604の処理をスキップする。 In the operation example 10, since the data type of the segment is used as an identifier, the transmission apparatus 101 skips the process of S604.
 S703において、受信装置102の通信部308は、PUSH送信指示1702に対する応答1705、及び、PUSH送信指示1703に対する応答1706を含むレスポンス1704を受信する。 In S703, the communication unit 308 of the reception apparatus 102 receives a response 1704 including a response 1705 to the PUSH transmission instruction 1702 and a response 1706 to the PUSH transmission instruction 1703.
 S704において、受信装置102の指示管理部306は、応答が返ってきて受理されたPUSH送信指示1702及び1703を保持する。なお、動作例10では一組のリクエストとレスポンスで複数のPUSH送信指示のやり取りをしているが、一つのPUSH送信指示毎にリクエストとレスポンスを交わす方法でも本実施形態のPUSH送信キャンセル処理は実施可能である。 In S704, the instruction management unit 306 of the receiving apparatus 102 holds the PUSH transmission instructions 1702 and 1703 that have been received after receiving a response. In the operation example 10, a plurality of PUSH transmission instructions are exchanged by a set of requests and responses. However, the PUSH transmission canceling process according to the present embodiment is performed even by a method in which a request and a response are exchanged for each PUSH transmission instruction. Is possible.
 S605において、送信装置101はPUSH送信を開始し、audio/segmentA1のPUSH送信として、送信装置101の通信部207は、audio/segmentA1のバイナリデータを含むレスポンス1712を受信装置102へ送信する。 In S605, the transmission apparatus 101 starts PUSH transmission, and the communication unit 207 of the transmission apparatus 101 transmits a response 1712 including the binary data of audio / segment A1 to the reception apparatus 102 as PUSH transmission of audio / segment A1.
 S705において、受信装置102の通信部308はレスポンス1712を受信する。 In S705, the communication unit 308 of the receiving apparatus 102 receives the response 1712.
 S706において、受信装置102の通信部308はPUSH送信キャンセル指示1715とPUSH送信指示1714を含むリクエスト1713を送信する。本実施形態ではPUSH送信キャンセル指示1715としてpush-cancelヘッダーが用いられるが、push-cancelとは異なる名前のヘッダーをキャンセル指示として用いても良い。動作例10では、映像データのセグメントをPUSH送信キャンセル対象とし、PUSH送信キャンセル対象を指示するためpush-cancelヘッダー1715の値に"video"という値を指定するが、"video"とは異なる値を用いても良い。また、"audio"や"metadata"という値を指定することで音声データやメタデータのセグメントなど映像データ以外のセグメントをPUSH送信キャンセル対象としてもよい。コーデック名や音声の言語などというようにセグメントのデータの種類を詳細に指定しても良い。"immediate"などを指定することですべてのセグメントをPUSH送信キャンセル対象としてもよい。PUSHキャンセル対象を指示するための値として"video"などデータの種類を表す文字列の代わりに、AdaptationSetやRepresetationのIDを用いても良い。PUSH送信指示1714において、"urn:sample:push-next"に続く数字"1"は、"/example/video/segmentB2"に続いて取得するセグメントの個数を指定している。したがって、受信装置102は、PUSH送信指示1714によってvideo/segmentB3のPUSH送信を要求している。 In S706, the communication unit 308 of the reception apparatus 102 transmits a request 1713 including a PUSH transmission cancel instruction 1715 and a PUSH transmission instruction 1714. In this embodiment, a push-cancel header is used as the PUSH transmission cancel instruction 1715, but a header having a name different from the push-cancel may be used as the cancel instruction. In the operation example 10, a segment of video data is set as a PUSH transmission cancel target, and a value of “video” is specified as a value of the push-cancel header 1715 to indicate the PUSH transmission cancel target, but a value different from “video” is specified. It may be used. Also, segments other than video data such as audio data and metadata segments may be subject to PUSH transmission cancellation by specifying values such as “audio” and “metadata”. The data type of the segment may be specified in detail, such as a codec name or audio language. By designating “immediate” or the like, all segments may be subject to PUSH transmission cancellation. Instead of a character string indicating the type of data such as “video”, an ID of AdaptationSet or Resetting may be used as a value for instructing a PUSH cancellation target. In the PUSH transmission instruction 1714, the number “1” following “urn: sample: push-next” designates the number of segments to be acquired following “/ example / video / segmentB2”. Therefore, the receiving apparatus 102 requests the PUSH transmission of video / segment B3 by the PUSH transmission instruction 1714.
 S606において、送信装置101の通信部207は、PUSH送信キャンセル指示1715とPUSH送信指示1714を含むリクエスト1713を受信装置102から受信する。キャンセル指示1715を含むリクエスト1713を送信した受信装置と、キャンセル指示1715に含まれているデータの種類(本例では、video)からキャンセル対象のプッシュ送信指示1702が特定される。 In S606, the communication unit 207 of the transmission apparatus 101 receives the request 1713 including the PUSH transmission cancel instruction 1715 and the PUSH transmission instruction 1714 from the reception apparatus 102. The push transmission instruction 1702 to be canceled is specified from the receiving apparatus that has transmitted the request 1713 including the cancellation instruction 1715 and the type of data included in the cancellation instruction 1715 (video in this example).
 S607において、送信装置101の指示管理部206はPUSH送信キャンセル指示1715の値から、PUSH送信指示1702によるPUSH予定のセグメントで、その中の一つのセグメントをキャンセル候補セグメントとして特定する。この例では、PUSH送信指示1103によるPUSH予定のセグメントはvideo/segmentA2、video/segmentA3であるから、その中の一つであるvideo/segmentA2がキャンセル候補セグメントとして特定される。 In S607, the instruction management unit 206 of the transmission device 101 identifies one of the segments scheduled to be pushed by the PUSH transmission instruction 1702 as a cancel candidate segment from the value of the PUSH transmission cancellation instruction 1715. In this example, the PUSH-scheduled segments according to the PUSH transmission instruction 1103 are video / segment A2 and video / segment A3, so that one of them, video / segment A2, is specified as a cancel candidate segment.
 S608において、キャンセル候補セグメントであるvideo/segmentA2は、PUSH送信指示1702以外で送信装置101が採用しているPUSH送信指示1703によるPUSH送信対象になっていないと判定し(S608でNO)、S609へ遷移する。 In S608, video / segment A2, which is a cancel candidate segment, is determined not to be a PUSH transmission target according to the PUSH transmission instruction 1703 employed by the transmission apparatus 101 other than the PUSH transmission instruction 1702 (NO in S608), and the process proceeds to S609. Transition.
 S609において、送信装置101の指示管理部206は、セグメント決定部205へvideo/segmentA2のPUSH送信をキャンセルするよう指示を出し、セグメント決定部205はvideo/segmentA2のPUSH送信をキャンセルする。具体的なキャンセル処理として、既にPUSH_PROMISE1708による送信予約済みであるため、送信予約をキャンセルするためのRST_STREAM1719の送信と、送信装置101内部でPUSH送信を停止する処理を行う。 In S609, the instruction management unit 206 of the transmission apparatus 101 instructs the segment determination unit 205 to cancel the video / segment A2 PUSH transmission, and the segment determination unit 205 cancels the video / segment A2 PUSH transmission. As specific cancellation processing, since transmission reservation by the PUSH_PROMISE 1708 has already been completed, transmission of RST_STREAM 1719 for canceling transmission reservation and processing of stopping PUSH transmission inside the transmission apparatus 101 are performed.
 S610において、PUSH送信キャンセル指示1715によるPUSH送信指示1702のキャンセル候補セグメント全てに対し、キャンセル可能かの確認及びキャンセル処理を行っていないと判定する(S610でNO)。PUSH予定のセグメントの中で、video/segmentA3について処理を行っていないためである。そこで、S607へ遷移する。 In S610, it is determined that the cancellation is not confirmed and the cancel process is not performed for all the cancel candidate segments of the PUSH transmission instruction 1702 by the PUSH transmission cancellation instruction 1715 (NO in S610). This is because the video / segment A3 is not processed in the PUSH scheduled segment. Therefore, the process proceeds to S607.
 S607において、送信装置101の指示管理部206はPUSH送信キャンセル指示1715の値から、PUSH送信指示1702によるPUSH予定のセグメントで、その中の一つであるvideo/segmentA3をキャンセル候補セグメントと特定する。 In S <b> 607, the instruction management unit 206 of the transmission apparatus 101 identifies video / segment A <b> 3, which is one of the PUSH scheduled segments according to the PUSH transmission instruction 1702, as a cancel candidate segment from the value of the PUSH transmission cancellation instruction 1715.
 S608において、キャンセル候補セグメントであるvideo/segmentA3が、PUSH送信指示1702以外で送信装置101が採用しているPUSH送信指示1703によるPUSH送信対象になっていないと判定し(S608でNO)、S609へ遷移する。 In S608, it is determined that video / segment A3, which is a cancel candidate segment, is not a PUSH transmission target according to the PUSH transmission instruction 1703 adopted by the transmission apparatus 101 other than the PUSH transmission instruction 1702 (NO in S608), and proceeds to S609. Transition.
 S609において、送信装置101の指示管理部206はセグメント決定部205へvideo/segmentA3のPUSH送信をキャンセルするよう指示を出し、セグメント決定部205はvideo/segmentA3のPUSH送信をキャンセルする。具体的なキャンセル処理として、既にPUSH_PROMISE1710による送信予約済みであるため、送信予約をキャンセルするためのRST_STREAM1721の送信と、送信装置101内部でPUSH送信を停止する処理を行う。 In S609, the instruction management unit 206 of the transmission apparatus 101 instructs the segment determination unit 205 to cancel the video / segment A3 PUSH transmission, and the segment determination unit 205 cancels the video / segment A3 PUSH transmission. As specific cancellation processing, since transmission reservation by the PUSH_PROMISE 1710 has already been completed, transmission of RST_STREAM 1721 for canceling transmission reservation and processing for stopping PUSH transmission inside the transmission apparatus 101 are performed.
 S610において、PUSH送信キャンセル指示1715によるPUSH送信指示1702のキャンセル候補セグメント全てに対し、キャンセル可能かの確認及びキャンセル処理を行ったと判定し(S610でYES)、S611へ遷移する。 In S610, it is determined that cancellation is possible for all the cancel candidate segments of the PUSH transmission instruction 1702 by the PUSH transmission cancellation instruction 1715 and cancellation processing is performed (YES in S610), and the process proceeds to S611.
 S611において、キャンセル対象であるPUSH送信指示は1702のみであるため(S611でYES)、S612へ遷移する。 In S611, since the PUSH transmission instruction to be canceled is only 1702 (YES in S611), the process proceeds to S612.
 S612において、送信装置101の通信部207は、PUSH送信キャンセル指示1715に対する応答1718とPUSH送信指示1714に対する応答1717を含むレスポンス1716を受信装置102へ送信する。PUSH送信キャンセル指示1715に対する応答1718はpush-cancelヘッダーを用い、PUSH送信キャンセル指示1715と同じ内容を有する。なお、別のヘッダーが用いられても良い。レスポンス1717はまたvideo/segmentB2のバイナリデータを含んでいる。 In S612, the communication unit 207 of the transmission apparatus 101 transmits a response 1716 including a response 1718 to the PUSH transmission cancel instruction 1715 and a response 1717 to the PUSH transmission instruction 1714 to the reception apparatus 102. A response 1718 to the PUSH transmission cancel instruction 1715 uses the push-cancel header and has the same content as the PUSH transmission cancel instruction 1715. Another header may be used. Response 1717 also includes binary data of video / segment B2.
 S707において、受信装置102の通信部308はPUSH送信キャンセル指示1715に対する応答1718とPUSH送信指示1714に対する応答1717を含むレスポンス1716を受信する。 In S707, the communication unit 308 of the reception apparatus 102 receives a response 1716 including a response 1718 to the PUSH transmission cancel instruction 1715 and a response 1717 to the PUSH transmission instruction 1714.
 レスポンス1716の送信後、送信装置101は、HTTP/2における、PUSH送信予定のセグメント毎に、そのセグメントを送信するためのstreamを予約するPUSH_PROMISE1719を受信装置102へ送信する。受信装置102は、PUSH_PROMISE1719を送信装置101から受信する。 After transmitting the response 1716, the transmission apparatus 101 transmits PUSH_PROMISE 1719 for reserving a stream for transmitting the segment for each segment scheduled to be transmitted in HTTP / 2 to the reception apparatus 102. The receiving apparatus 102 receives PUSH_PROMISE 1719 from the transmitting apparatus 101.
 キャンセルされたvideo/segmentA2及びvideo/segmentA3に対して、送信装置101は受信装置102へPUSH_PROMISE1708及び1710を送信しているため、これらをキャンセルする必要がある。そこで、送信装置101は受信装置102へRST_STREAM1720及び1721を送信し、受信装置102はこれを受信する。このRST_STREAM1720及び1721はS706の前かS707の後に受信装置102が送信してもよい。 Since the transmitting apparatus 101 transmits PUSH_PROMISE 1708 and 1710 to the receiving apparatus 102 for the canceled video / segment A2 and video / segment A3, it is necessary to cancel them. Therefore, the transmission apparatus 101 transmits RST_STREAM 1720 and 1721 to the reception apparatus 102, and the reception apparatus 102 receives them. The RST_STREAM 1720 and 1721 may be transmitted by the receiving apparatus 102 before S706 or after S707.
 動作例10では、PUSH送信キャンセル指示1715とPUSH送信指示1714を合わせて行う場合の例を説明した。PUSH送信キャンセル指示1715とPUSH送信指示1714を同じリクエストで送信可能としたことで、PUSH送信指示の再設定を余分なトランザクションを必要とせずに行うことが出来る。またセグメントのデータの種類を指定可能としたことで、特定の種類のセグメントのみのPUSH送信キャンセルおよびPUSH送信再設定を容易に行うことが出来る。例として、映像セグメントと音声セグメントをPUSH対象としている中で、音声セグメントをキャンセルせずに映像セグメントのみをPUSH送信キャンセルし、異なる解像度の映像セグメントのPUSH送信再設定をすることなどが可能となる。 In the operation example 10, the example in which the PUSH transmission cancel instruction 1715 and the PUSH transmission instruction 1714 are performed together has been described. Since the PUSH transmission cancellation instruction 1715 and the PUSH transmission instruction 1714 can be transmitted by the same request, the PUSH transmission instruction can be reset without requiring an extra transaction. Also, by making it possible to specify the data type of the segment, it is possible to easily cancel PUSH transmission and reset PUSH transmission only for a specific type of segment. As an example, it is possible to cancel the PUSH transmission of only the video segment without canceling the audio segment and reset the PUSH transmission of the video segment having a different resolution while the video segment and the audio segment are targeted for the push. .
 以上のように、本実施形態によれば、送信装置101と受信装置102の間において、少ないトランザクション回数でPUSH送信のキャンセルを行うことができる。また複数のPUSH送信指示を行った際に一部のPUSH送信指示のみのキャンセルを行う場合や、PUSH送信予定のセグメントの一部のみをキャンセルする場合、受信装置102は一つのリクエスト送信でキャンセルを行うことができる。また、HTTP/2上でMPEG-DASHの送受信を行い受信装置102がPUSH送信のキャンセルを指示する際、PUSH_PROMISEにより送信予約をしていないセグメントを個別にキャンセルする必要がない。したがって、ネットワーク上の帯域を節約することができる。 As described above, according to the present embodiment, PUSH transmission can be canceled with a small number of transactions between the transmission apparatus 101 and the reception apparatus 102. Also, when canceling only a part of PUSH transmission instructions when performing a plurality of PUSH transmission instructions, or when canceling only a part of a segment scheduled for PUSH transmission, the receiving apparatus 102 cancels with one request transmission. It can be carried out. Further, when MPEG-DASH is transmitted / received on HTTP / 2 and the receiving apparatus 102 instructs to cancel PUSH transmission, it is not necessary to individually cancel segments not reserved for transmission by PUSH_PROMISE. Therefore, the bandwidth on the network can be saved.
 <その他の実施形態>
 本発明は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。
<Other embodiments>
The present invention supplies a program that realizes one or more functions of the above-described embodiments to a system or apparatus via a network or a storage medium, and one or more processors in a computer of the system or apparatus read and execute the program This process can be realized. It can also be realized by a circuit (for example, ASIC) that realizes one or more functions.
 本発明は上記実施の形態に制限されるものではなく、本発明の精神及び範囲から離脱することなく、様々な変更及び変形が可能である。従って、本発明の範囲を公にするために、以下の請求項を添付する。 The present invention is not limited to the above embodiment, and various changes and modifications can be made without departing from the spirit and scope of the present invention. Therefore, in order to make the scope of the present invention public, the following claims are attached.
 本願は、2016年9月7日提出の日本国特許出願特願2016-174967および2017年3月28日提出の日本国特許出願特願2017-063750を基礎として優先権を主張するものであり、その記載内容の全てを、ここに援用する。 This application claims priority based on Japanese Patent Application No. 2016-174967 filed on September 7, 2016 and Japanese Patent Application No. 2017-063750 filed on March 28, 2017. The entire contents of the description are incorporated herein.

Claims (19)

  1.  サーバ装置であって、
     コンテンツデータが分割されたメディアセグメントに関するプッシュ送信指示をクライアント装置から受信する受信手段と、
     前記受信手段により受信されたプッシュ送信指示に応じたメディアセグメントを前記クライアント装置に対してプッシュ送信する送信手段と、
     前記受信手段により受信されたプッシュ送信指示に応じたメディアセグメントのうち、前記送信手段によるプッシュ送信がキャンセルされるメディアセグメントを前記サーバ装置が特定するために用いられる識別情報を含むプッシュキャンセル指示を前記クライアント装置から受信した場合、前記識別情報に基づいて特定されるメディアセグメントの前記送信手段によるプッシュ送信をキャンセルする制御手段と、を有するサーバ装置。
    A server device,
    Receiving means for receiving, from the client device, a push transmission instruction regarding the media segment into which the content data is divided;
    A transmission unit that push-transmits a media segment corresponding to the push transmission instruction received by the reception unit to the client device;
    Among the media segments according to the push transmission instruction received by the receiving means, the push cancel instruction including identification information used for the server device to identify a media segment whose push transmission by the transmitting means is canceled And a control unit that cancels push transmission by the transmission unit of the media segment specified based on the identification information when received from the client device.
  2.  前記識別情報にはURLが含まれ、
     前記制御手段は、前記URLに基づいて特定されるメディアセグメントの前記送信手段によるプッシュ送信をキャンセルする請求項1に記載のサーバ装置。
    The identification information includes a URL,
    The server device according to claim 1, wherein the control unit cancels push transmission by the transmission unit of the media segment specified based on the URL.
  3.  前記受信手段が受信する前記プッシュキャンセル指示は、前記クライアント装置において実行されるウェブブラウザからのメッセージのヘッダに含まれる請求項1または2に記載のサーバ装置。 3. The server device according to claim 1, wherein the push cancel instruction received by the receiving unit is included in a header of a message from a web browser executed in the client device.
  4.  前記識別情報には、前記プッシュ送信指示を識別するための識別子が含まれ、
     前記制御手段は、前記識別子に基づいて特定されるメディアセグメントの前記送信手段によるプッシュ送信をキャンセルする請求項1乃至3のいずれか1項に記載のサーバ装置。
    The identification information includes an identifier for identifying the push transmission instruction,
    The server device according to any one of claims 1 to 3, wherein the control unit cancels push transmission of the media segment specified based on the identifier by the transmission unit.
  5.  前記識別子は、前記クライアント装置により割り当てられ、前記受信手段が受信するプッシュ送信指示に記述される請求項4に記載のサーバ装置。 The server device according to claim 4, wherein the identifier is assigned by the client device and described in a push transmission instruction received by the receiving unit.
  6.  前記受信手段によるプッシュ送信指示の受信に応じて、当該プッシュ送信指示に対して識別子を割り当てる割当手段を有し、
     前記送信手段は、前記割当手段により割り当てられた識別子を前記クライアント装置に対して通知する請求項4に記載のサーバ装置。
    Allocating means for assigning an identifier to the push transmission instruction in response to reception of the push transmission instruction by the receiving means;
    The server device according to claim 4, wherein the transmission unit notifies the client device of the identifier allocated by the allocation unit.
  7.  前記識別情報には、前記プッシュ送信指示に関する時刻情報が含まれ、
     前記制御手段は、前記時刻情報に基づいて特定されるメディアセグメントの前記送信手段によるプッシュ送信をキャンセルする請求項1に記載のサーバ装置。
    The identification information includes time information related to the push transmission instruction,
    The server apparatus according to claim 1, wherein the control unit cancels push transmission by the transmission unit of a media segment specified based on the time information.
  8.  前記時刻情報は、前記クライアント装置による前記プッシュ送信指示の送信時刻に関する時刻情報である請求項7に記載のサーバ装置。 The server device according to claim 7, wherein the time information is time information related to a transmission time of the push transmission instruction by the client device.
  9.  前記時刻情報は、前記クライアント装置からの前記プッシュ送信指示に対するレスポンスの送信時刻に関する時刻情報である請求項7に記載のサーバ装置。 The server device according to claim 7, wherein the time information is time information related to a transmission time of a response to the push transmission instruction from the client device.
  10.  前記識別情報には、メディアデータのタイプ情報が含まれ、
     前記制御手段は、前記タイプ情報に基づいて特定されるメディアセグメントの前記送信手段によるプッシュ送信をキャンセルする請求項1に記載のサーバ装置。
    The identification information includes media data type information,
    The server apparatus according to claim 1, wherein the control unit cancels push transmission by the transmission unit of a media segment specified based on the type information.
  11.  前記タイプ情報は、映像データであるかオーディオデータであるかその他のデータであるかを少なくとも判別するための情報である請求項10に記載のサーバ装置。 The server device according to claim 10, wherein the type information is information for determining at least whether the data is video data, audio data, or other data.
  12.  すべてのプッシュ送信をキャンセルすることを指定する情報が含まれるプッシュキャンセル指示を前記クライアント装置から受信した場合、前記制御手段は、前記送信手段によるメディアセグメントに関するすべてのプッシュ送信をキャンセルする請求項1に記載のサーバ装置。 The control unit cancels all push transmissions related to a media segment by the transmission unit when receiving a push cancel instruction including information designating cancellation of all push transmissions from the client device. The server apparatus of description.
  13.  前記制御手段は、
     前記プッシュキャンセル指示により指定されるプッシュ送信指示に対応する1又は複数のメディアセグメントのうち、前記受信手段により受信された他のプッシュ送信指示に対応するメディアセグメントのプッシュ送信をキャンセルせず、
     前記プッシュキャンセル指示により指定されるプッシュ送信指示に対応する前記1又は複数のメディアセグメントのうち、前記他のプッシュ送信指示に対応しないメディアセグメントのプッシュ送信をキャンセルする請求項1に記載のサーバ装置。
    The control means includes
    Of one or more media segments corresponding to the push transmission instruction specified by the push cancel instruction, without canceling the push transmission of the media segment corresponding to the other push transmission instruction received by the receiving means,
    The server apparatus according to claim 1, wherein among the one or more media segments corresponding to the push transmission instruction specified by the push cancel instruction, push transmission of a media segment not corresponding to the other push transmission instruction is canceled.
  14.  複数のプッシュ送信指示を指定するプッシュキャンセル指示を前記クライアント装置から受信した場合、前記制御手段は、前記複数のプッシュ送信指示に応じた複数のメディアセグメントの前記送信手段によるプッシュ送信をキャンセルする請求項1に記載のサーバ装置。 The control unit cancels push transmission by the transmission unit of a plurality of media segments according to the plurality of push transmission instructions when receiving a push cancel instruction designating a plurality of push transmission instructions from the client device. The server device according to 1.
  15.  前記識別情報は、MPD(Media Presentation Description)に記述されることを特徴とする請求項1に記載のサーバ装置。 2. The server apparatus according to claim 1, wherein the identification information is described in MPD (Media Presentation Description).
  16.  クライアント装置であって、
     コンテンツデータが分割されたメディアセグメントに関するプッシュ送信指示をサーバ装置へ送信する送信手段と、
     前記送信手段により送信されたプッシュ送信指示に応じて前記サーバ装置からプッシュ送信されたメディアセグメントを受信する受信手段と、
     前記送信手段により前記サーバ装置へ送信されたプッシュ送信指示に応じたメディアセグメントのうち、前記サーバ装置によるプッシュ送信がキャンセルされるメディアセグメントを前記サーバ装置が特定するために用いられる識別情報を含むプッシュキャンセル指示を前記サーバ装置へ送信することで、前記識別情報に応じたメディアセグメントの前記サーバ装置によるプッシュ送信をキャンセルする制御手段と、を有するクライアント装置。
    A client device,
    Transmitting means for transmitting to the server device a push transmission instruction related to the media segment into which the content data is divided;
    Receiving means for receiving a media segment pushed from the server device in response to a push transmission instruction sent by the sending means;
    A push including identification information used for the server device to identify a media segment in which push transmission by the server device is canceled among media segments according to the push transmission instruction transmitted to the server device by the transmitting unit. And a control unit that cancels push transmission of the media segment according to the identification information by the server device by transmitting a cancel instruction to the server device.
  17.  サーバ装置の制御方法であって、
     コンテンツデータが分割されたメディアセグメントに関するプッシュ送信指示をクライアント装置から受信し、
     前記クライアント装置から受信したプッシュ送信指示に応じたメディアセグメントのうち、プッシュ送信がキャンセルされるメディアセグメントを前記サーバ装置が特定するために用いられる識別情報を含むプッシュキャンセル指示を前記クライアント装置から受信しない場合、前記クライアント装置から受信したプッシュ送信指示に応じたメディアセグメントを前記クライアント装置に対してプッシュ送信し、
     前記クライアント装置から受信したプッシュ送信指示に応じたメディアセグメントのうち、プッシュ送信がキャンセルされるメディアセグメントを前記サーバ装置が特定するための識別情報を含むプッシュキャンセル指示を前記クライアント装置から受信した場合、前記識別情報に基づいて特定される未送信のメディアセグメントをプッシュ送信しない制御方法。
    A server device control method comprising:
    A push transmission instruction regarding the media segment into which the content data is divided is received from the client device,
    Of the media segments according to the push transmission instruction received from the client apparatus, the server apparatus does not receive a push cancel instruction including identification information used for specifying a media segment for which push transmission is canceled. A media segment corresponding to the push transmission instruction received from the client device is pushed to the client device,
    Of the media segments according to the push transmission instruction received from the client device, when receiving a push cancel instruction including identification information for the server device to identify a media segment for which push transmission is canceled, from the client device, A control method that does not push-transmit an unsent media segment specified based on the identification information.
  18.  クライアント装置の制御方法であって、
     コンテンツデータが分割されたメディアセグメントに関するプッシュ送信指示をサーバ装置へ送信し、
     前記サーバ装置へ送信されたプッシュ送信指示に応じたメディアセグメントのうち、前記サーバ装置によるプッシュ送信がキャンセルされるメディアセグメントを前記サーバ装置が特定するために用いられる識別情報を含むプッシュキャンセル指示を前記サーバ装置へ送信することで、前記識別情報に応じたメディアセグメントの前記サーバ装置によるプッシュ送信をキャンセルする制御方法。
    A method for controlling a client device, comprising:
    A push transmission instruction regarding the media segment into which the content data is divided is transmitted to the server device,
    Among the media segments according to the push transmission instruction transmitted to the server device, the push cancel instruction including identification information used for the server device to identify a media segment for which push transmission by the server device is cancelled. A control method for canceling push transmission by the server device of a media segment according to the identification information by transmitting to the server device.
  19.  コンピュータを請求項1乃至15のうち何れか1項に記載のサーバ装置の各手段として動作させるためのプログラム。 A program for causing a computer to operate as each unit of the server device according to any one of claims 1 to 15.
PCT/JP2017/027452 2016-09-07 2017-07-28 Information processing device, control method therefor, and computer program WO2018047512A1 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN201780055212.1A CN109690507A (en) 2016-09-07 2017-07-28 Information processing unit, its control method and computer program
US16/292,117 US20190199814A1 (en) 2016-09-07 2019-03-04 Server apparatus, client apparatus, method of controlling the same, and storage medium

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
JP2016-174967 2016-09-07
JP2016174967 2016-09-07
JP2017063750A JP2018045674A (en) 2016-09-07 2017-03-28 Information processing device, its control method and computer program
JP2017-063750 2017-03-28

Related Child Applications (1)

Application Number Title Priority Date Filing Date
US16/292,117 Continuation US20190199814A1 (en) 2016-09-07 2019-03-04 Server apparatus, client apparatus, method of controlling the same, and storage medium

Publications (1)

Publication Number Publication Date
WO2018047512A1 true WO2018047512A1 (en) 2018-03-15

Family

ID=61562574

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2017/027452 WO2018047512A1 (en) 2016-09-07 2017-07-28 Information processing device, control method therefor, and computer program

Country Status (1)

Country Link
WO (1) WO2018047512A1 (en)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2015004276A2 (en) * 2013-07-12 2015-01-15 Canon Kabushiki Kaisha Adaptive data streaming method with push messages control
WO2015121342A1 (en) * 2014-02-13 2015-08-20 Koninklijke Kpn N.V. Requesting multiple chunks from a network node on the basis of a single request message
JP2016015534A (en) * 2014-06-30 2016-01-28 ソニー株式会社 Information processor and method

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2015004276A2 (en) * 2013-07-12 2015-01-15 Canon Kabushiki Kaisha Adaptive data streaming method with push messages control
WO2015121342A1 (en) * 2014-02-13 2015-08-20 Koninklijke Kpn N.V. Requesting multiple chunks from a network node on the basis of a single request message
JP2016015534A (en) * 2014-06-30 2016-01-28 ソニー株式会社 Information processor and method

Similar Documents

Publication Publication Date Title
JP7085816B2 (en) Information processing equipment, information providing equipment, control methods, and programs
JP6541309B2 (en) Transmission apparatus, transmission method, and program
JP6861484B2 (en) Information processing equipment and its control method, computer program
KR102030983B1 (en) Operating Method for Live Streaming Service based on Tiled Encoding image and electronic device supporting the same
US9445142B2 (en) Information processing apparatus and control method thereof
US20170353753A1 (en) Communication apparatus, communication control method, and communication system
US20160117340A1 (en) Information processing system, information processing apparatus, and information processing method
US10277652B2 (en) Transmission apparatus, transmission method, and program
JP2016178356A (en) Communication device, communication system, reception control method and program
JP2018045674A (en) Information processing device, its control method and computer program
US20090198740A1 (en) Data sharing
JP2014116805A (en) Imaging device, information processing device, control method therefor, and video processing system
JP2017022529A (en) Communication system, communication device, communication method, and program
WO2018047512A1 (en) Information processing device, control method therefor, and computer program
JP6433151B2 (en) Video supply device, video acquisition device, control method thereof, and video supply system
US9277261B2 (en) Information processing apparatus and control method thereof
JP6752080B2 (en) Information processing equipment and its control method, computer program
JP5521675B2 (en) Process allocation apparatus, process allocation method, and computer program
JP6400163B2 (en) Reception device, reception method, transmission device, transmission method, and program
JP6669402B2 (en) Communication device, system, information processing method and program
US9525901B2 (en) Distribution management apparatus for distributing data content to communication devices, distribution system, and distribution management method
JP2011165101A (en) Device control system, device control method, and control terminal
JP2018113568A (en) Transmission device, transmission method, and program
KR102128611B1 (en) Apparatus and method for distributed transcoding
JP6996156B2 (en) Information processing equipment, information processing system and information processing program

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: 17848457

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 17848457

Country of ref document: EP

Kind code of ref document: A1