CN116634195A - Server device, transmission method, and program - Google Patents

Server device, transmission method, and program Download PDF

Info

Publication number
CN116634195A
CN116634195A CN202310754324.3A CN202310754324A CN116634195A CN 116634195 A CN116634195 A CN 116634195A CN 202310754324 A CN202310754324 A CN 202310754324A CN 116634195 A CN116634195 A CN 116634195A
Authority
CN
China
Prior art keywords
data
unit
transmission
distribution
receiving
Prior art date
Legal status (The legal status 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 status listed.)
Pending
Application number
CN202310754324.3A
Other languages
Chinese (zh)
Inventor
権藤俊一
黑坂拓巳
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Toshiba Corp
Original Assignee
Toshiba Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Toshiba Corp filed Critical Toshiba Corp
Priority to CN202310754324.3A priority Critical patent/CN116634195A/en
Publication of CN116634195A publication Critical patent/CN116634195A/en
Pending legal-status Critical Current

Links

Classifications

    • 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/234Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
    • H04N21/2343Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/21Server components or server architectures
    • H04N21/226Characteristics of the server or Internal components of the server
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/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
    • H04N21/2393Interfacing the upstream path of the transmission network, e.g. prioritizing client content requests involving handling client requests

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

The present disclosure relates to a server apparatus, a transmission method, and a program, which reduce a line load and a processing load without reducing quality. The transmitting device of the present embodiment includes a dividing unit, a transmitting unit, a storage control unit, and a receiving unit. A dividing section divides a plurality of transmission data as transmission targets into first data and second data. The transmitter transmits the first data to a server device that distributes the transmission data to the reception device. The storage control unit stores the second data in the storage unit. The receiving unit receives a request for transmission of the second data from the receiving device or the server device. The transmitting unit also transmits the second data to the server device according to the transmission request.

Description

Server device, transmission method, and program
The present application is a divisional application, the application date of the main application is 2020, 2, 27, 202010122213.7, and the name of the present application is "transmission device, server device, transmission method, and program".
Technical Field
The embodiment of the application relates to a transmitting device, a server device, a transmitting method and a program.
Background
Adaptive streaming such as HLS (HTTP Live Streaming, HTTP real-time streaming) and MPEG-DASH (Moving Picture Experts Group-Dynamic Adaptive Streaming over HTTP, moving picture experts group-HTTP-based dynamic adaptive streaming) can be applied to, for example, a system (video distribution system, video monitoring system) that distributes and monitors video (moving picture data) captured by a camera.
However, in the conventional technique, the load of a network line for transmitting data (video or the like) and the processing load of a system may increase. For example, as the number of connected cameras increases, the load of a network line for transmitting video from the cameras and the processing load of a server for performing recording, distribution, and the like of the video may increase.
Disclosure of Invention
The transmission device of the embodiment is provided with a dividing unit, a transmission unit, a storage control unit, and a reception unit. A dividing section divides a plurality of transmission data as transmission targets into first data and second data. The transmitter transmits the first data to a server device that distributes the transmission data to the reception device. The storage control unit stores the second data in the storage unit. The receiving unit receives a request for transmission of the second data from the receiving device or the server device. The transmitting unit also transmits the second data to the server device according to the transmission request.
According to the above-described transmitting apparatus, the line load and the processing load can be reduced without reducing the quality.
Drawings
Fig. 1 is a block diagram of an image distribution system according to the present embodiment.
Fig. 2 is a diagram showing an outline of distribution processing performed by the video distribution system according to the present embodiment.
Fig. 3 is a functional block diagram of each device of the video distribution system according to the present embodiment.
Fig. 4 is a diagram showing an example of a data structure of a distribution list.
Fig. 5 is a diagram showing an example of a data structure of the determination information.
Fig. 6 is a flowchart of the transmission process according to the present embodiment.
Fig. 7 is a flowchart of a transmission process of stored data.
Fig. 8 is a flowchart of the list generation processing of the present embodiment.
Fig. 9 is a flowchart of the determination information generation process of the present embodiment.
Fig. 10 is a sequence diagram of the content distribution processing of the present embodiment.
Fig. 11 is a diagram illustrating an example of determining a distribution list using determination information.
Fig. 12 is a diagram showing an example of updated determination information.
Fig. 13 is a diagram illustrating an example of determining a distribution list using determination information.
Fig. 14 is a diagram showing a configuration example of an image distribution system according to a modification.
Fig. 15 is a diagram showing an outline of distribution processing performed by the video distribution system according to the modification.
Fig. 16 is a hardware configuration diagram of the transmitting apparatus according to the present embodiment.
Reference numerals
100: a transmitting device; 101: a photographing section; 111: a coding section; 112: a dividing section; 113: a data transmission unit; 114: a storage control unit; 115: a request receiving unit; 121: a storage unit; 200: a distribution server; 201: a detection unit; 211: a list generation unit; 212: a determination information generation unit; 213: a list transmitting unit; 214: a judgment information transmitting unit; 215: a request transmitting/receiving unit; 216: a distribution unit; 217: a data receiving unit; 218: a storage control unit; 221: a temporary storage unit; 222: a storage unit; 300: a client; 311: a list receiving unit; 312: a judgment information receiving unit; 313: a determination unit; 314: a request transmitting unit; 315: a data receiving unit; 316: a reproduction unit; 321: a storage unit; 401. 402: a network; 510: a control server; 511: a control unit; 520: and a Web server.
Detailed Description
Hereinafter, preferred embodiments of the transmitting apparatus according to the present invention will be described in detail with reference to the accompanying drawings.
In a conventional video distribution system using an adaptive stream, in order to reliably record a high-quality video stream (an example of transmission data) required for distribution of a high-quality live video, a network line having a high transmission rate needs to be prepared.
On the other hand, in a large-scale image distribution system to which a large number of cameras are connected, a large number of camera images are always transmitted. Therefore, in order to reduce line load and cost, it is desirable to use a network line having a low transmission rate between the video camera and the server device that records the video. However, in a line with a low transmission rate, live image quality becomes low, which may interfere with monitoring.
In this way, the present embodiment realizes an image distribution system capable of reducing the line load and the processing load without reducing the quality.
Here, an example in which transmission data according to the present embodiment can be applied will be described. The transmission data includes, for example, time-series data in which the time series of moving image data, sensor data, and the like is determined.
The moving image data is data captured by a capturing device such as a video camera and frame capturing. The moving image data is acquired in real time from, for example, a photographing device, and is used as the content to be distributed. The moving image data temporarily stored in the storage medium after shooting may be used as the content to be distributed.
The sensor data is data indicating a value detected by a sensor (detecting means), and includes, for example, information of a timing at which the data is detected (sampled). The sensor may be any device. For example, a microphone that acquires sound, a GPS (Global Positioning System ) device that acquires position information, and a sensor that periodically or aperiodically detects the surrounding environment that is a detection target, the temperature, speed, pressure, and the like of an electronic device and outputs the detected ambient environment as sensor data can be used.
Hereinafter, an example in which moving image data is used as transmission data will be mainly described.
Fig. 1 is a block diagram showing an example of the configuration of an image distribution system according to the present embodiment. As shown in fig. 1, the video distribution system includes a transmitting apparatus 100 (an example of a transmitting apparatus), a distribution server 200 (an example of a server apparatus), and a client 300 (an example of a receiving apparatus). The transmission apparatus 100 and the distribution server 200 are connected via a network 401. The distribution server 200 is connected to the client 300 via a network 402.
The networks 401 and 402 may be any network such as the internet. For example, networks 401 and 402 may be any of wired networks and wireless networks. The networks 401 and 402 may be configured as 1 integrated network.
The configuration of the communication system shown in fig. 1 is an example, and is not limited thereto. For example, a plurality of transmitting apparatuses 100, distribution servers 200, and clients 300 may be provided. The transmission device 100, the distribution server 200, and the client 300 may each be physically configured of 1 device, or may be physically configured of a plurality of devices. For example, the distribution server 200 may be built on a cloud environment.
Fig. 2 is a diagram showing an outline of distribution processing performed by the video distribution system according to the present embodiment. The transmitting apparatus 100 inputs video and encodes the input video. The transmitting apparatus 100 compression-encodes the video according to a standard such as h.264. The encoded image includes, for example, I-pictures and P-pictures. An I picture is image data encoded by intra prediction, and includes a range of an entire picture that can be reproduced alone. P-pictures are image data encoded by inter prediction based on I-pictures. P pictures cannot be reproduced alone, but can be reproduced in combination with I pictures.
The transmitting apparatus 100 divides (slices) the encoded video for each picture. Then, the transmitting apparatus 100 transmits a part of the divided picture (for example, I picture) to the distribution server 200, and the remaining (for example, P picture) is stored in the storage unit. The transmitting apparatus 100 may store the pictures transmitted to the distribution server 200 in the storage unit for playback (local reproduction), backup, and the like.
The distribution server 200 generally distributes only the I picture transmitted from the transmitting apparatus 100 to the client 300. The client 300 displays the distributed imagery using, for example, a viewer application. The viewer application is an application included in, for example, a browser for enabling display and browsing of an image. Since the I pictures are transmitted at predetermined intervals (for example, 1 second for several sheets or 1 second for several sheets), a video (a frame-by-frame cartoon, a frame-by-frame (intermittent) animation) in which a still image (I picture) is updated at predetermined intervals is displayed in the client 300. The viewer application can be implemented as an application using MSE (Media Source Extensions, media source expansion) as an application programming interface for HTML (Hyper Text Markup Language ) 5, for example. Accordingly, streaming playback using HTTP download can be realized.
When a P picture is requested to be displayed by a user or the like operating the client 300, the transmitting apparatus 100 reads the stored P picture and transmits to the distribution server 200. The distribution server 200 distributes the transmitted P-picture to the client 300. The distribution server 200 may distribute the transmitted P-picture as it is, or may distribute the P-picture subjected to only processing (change of the transmission packet format, etc.) other than conversion processing (recompression, etc.) of the image data. The viewer application of the client 300 synthesizes and displays the I picture that has been received and the P picture that has been received later. Accordingly, a smoother image can be displayed in the client 300. The transferred data (I picture, for example) can be used for combining with a P picture received later, for example, as long as the data is stored in the storage unit in the client 300. That is, it is not necessary to transmit the transferred data again from the transmitting apparatus 100 and the distribution server 200. Therefore, compared with a method of retransmitting all the image data including the P picture, the amount of transmission data can be reduced.
As described above, the distribution server 200 distributes the image data transmitted from the transmitting apparatus 100 to the client 300 as it is or in a transmission packet format only, without applying a conversion process such as recompression or the like to the image data. Since, for example, the distribution server 200 can perform distribution at a low transmission rate, there is no need to perform processing for converting into an image of reduced quality. Therefore, an increase in processing load of the distribution server 200 and degradation of image quality can be avoided. In addition, since only I pictures are generally distributed, traffic can be suppressed. In this way, the line load and the processing load can be reduced without reducing the quality.
The I picture is partial data constituting a video (moving image data) and can be handled as a still image. For example, a browser (viewer application) running on the client 300 is sometimes capable of displaying an I picture contained in moving image data as still image data. Therefore, without performing compression processing of still images such as JPEG (Joint Photographic Experts Group ) or the like, an I picture can be displayed as still image data. The data size of the I picture is smaller (compression efficiency is high) than that of a still image in the JPEG format, and therefore the line load and the processing load can be further reduced. In addition, even when the distributed video is used for image recognition, I picture can be used as input data for image recognition without converting the video into a still image.
Next, details of the configuration of each device of the video distribution system according to the present embodiment will be described. Fig. 3 is a block diagram showing an example of the functional configuration of each device of the video distribution system according to the present embodiment.
As shown in fig. 3, the transmitting apparatus 100 includes an imaging unit 101, a storage unit 121, an encoding unit 111, a dividing unit 112, a data transmitting unit 113, a storage control unit 114, and a request receiving unit 115.
The imaging unit 101 images and outputs video (moving image data). The imaging unit 101 can be realized by an imaging element such as a CCD (Charge Coupled Device ) and a CIS (CMOS image sensor, CMOS image sensor), or frame buffer capture such as a frame memory, a frame capture card, and a screen capture.
The storage unit 121 stores various data used in various processes performed by the transmission apparatus 100. For example, the storage unit 121 stores the image captured by the capturing unit 101.
The encoding unit 111 encodes the video input from the photographing unit 101. The encoding method of the encoding unit 111 may be any method, and an encoding method according to the standard such as h.264 can be applied. The encoding unit 111 performs compression encoding on a video, for example, and outputs a video including I pictures and P pictures. Each picture of the encoded video corresponds to a plurality of transmission data to be transmitted.
The dividing unit 112 divides the encoded video into data (first data) to be transmitted to the distribution server 200 and data (second data) to be stored in the storage unit 121 without being transmitted. For example, the dividing unit 112 divides the encoded video for each picture so that the I picture is the data (clip data) to be transmitted to the distribution server 200 and the P picture is the data (clip data) to be stored in the storage unit 121. The dividing unit 112 may divide the video so that the divided pictures are 1 file (clip file). The dividing unit 112 may divide the data to be stored in the storage unit 121 so that a plurality of pictures are included in 1 file.
The method of dividing the data by the dividing section 112 is not limited thereto, and may be any method. For example, the dividing unit 112 may divide the encoded video into I pictures selected from a plurality of I pictures by a predetermined number of I pictures at each interval and other pictures (I pictures and P pictures remaining). For example, the dividing unit 112 may divide the coded video into an I picture, a P picture selected from a plurality of P pictures by a predetermined number of P pictures at each interval, and other pictures (remaining P pictures). For example, the dividing unit 112 may divide the encoded video into I pictures selected from the plurality of I pictures by a predetermined number of pictures per interval, P pictures selected from the plurality of P pictures by a predetermined number of pictures per interval, and other pictures (remaining I pictures and P pictures).
The data to be transmitted to the distribution server 200 may be represented in a format in which the distribution server 200 can distribute as it is. For example, the dividing section 112 may convert the divided data into a format according to a standard such as Fragmented MP4 (fMP 4, fragmented MP 4).
The data to be transmitted to the distribution server 200 may be represented in a format to which data (metadata) convertible into a format distributed by the distribution server 200 is attached. For example, the dividing section 112 may append metadata including information necessary for conversion to the divided data so as to be able to be converted into a format according to the standard fMP or the like on the distribution server 200 side. The information necessary for conversion includes, for example, information (IP address, port number, and the like) identifying the transmitting apparatus 100, time (date and time of shooting, minute and second, and the like), and position of the image within the time (for example, information showing what number is from the beginning, and the like).
The dividing section 112 may change the size or the code amount of data to be transmitted to the distribution server 200 according to the bandwidth of the network 401. For example, the dividing section 112 may divide data corresponding to a size that can be transmitted without delay or the like within the allocated bandwidth of the network 401 or data of a coded bit rate within the bandwidth of the network 401 into data to be transmitted to the distribution server 200. For example, in the case where the bandwidth of the network 401 is large, the dividing section 112 may divide a part of the I picture and the P picture into data to be transmitted to the distribution server 200, and as the bandwidth becomes smaller, may divide only a part of the I picture and the I picture (I pictures are thinned out by a prescribed number per interval, or the like) into data to be transmitted to the distribution server 200. As an encoding method at the time of partial distribution of P pictures, for example, a method described in japanese patent No. 6239472 or the like can be used.
The dividing section 112 may change the size or the code amount of data to be transmitted to the distribution server 200 by dynamically switching the above-described dividing method according to the bandwidth of the network 401 or according to a request from the client 300 or the distribution server 200.
When simply dividing the data encoded by the encoding section 111, there is a possibility that the sizes of the divided data are not uniform. For example, when the encoding unit 111 has a function of adjusting the code amount of each picture according to the bandwidth of the network 401, the size of each I picture and the size of each P picture may be different from each other. Therefore, when dividing, for example, an I picture among the pictures thus encoded into data to be transmitted to the distribution server 200, the sizes of the divided I pictures may also be different from each other.
Then, the encoding unit 111 may adjust the code amount according to the bandwidth of the network 401 so that the size of the divided data or the encoding bit rate becomes a size or the encoding bit rate that can be transmitted without delay or the like within the allocated bandwidth of the network 401. For example, if the dividing unit 112 divides the video so as to transmit only the I picture to the distribution server 200, the encoding unit 111 may encode the video so that the size of the I picture becomes a predetermined size that can be transmitted within the bandwidth of the network 401 without delay or the like, or so that the size becomes an encoding bit rate within the bandwidth of the network 401.
The data transmitting unit 113 transmits data to an external device such as the distribution server 200. For example, the data transmitting unit 113 transmits data (first data) to be transmitted to the distribution server 200, out of the data divided by the dividing unit 112, to the distribution server 200. When a request receiving unit 115 (described later) receives a request for transmitting data stored in the storage unit 121, the data transmitting unit 113 transmits the requested data to the distribution server 200.
The storage control unit 114 controls the storage process to the storage unit 121. For example, the storage control unit 114 stores data not transmitted to the distribution server 200, out of the data divided by the dividing unit 112, in the storage unit 121. The storage control unit 114 may store data (first data) transmitted to the distribution server 200 in the storage unit 121. At this time, the storage control unit 114 may manage the stored data using metadata indicating that the transmitted data (first data) is transmitted or that the second data is not transmitted. The storage control unit 114 may delete the data stored in the storage unit 121 according to a predetermined condition. For example, the storage control unit 114 may delete data for which a predetermined period has elapsed after storage.
The request receiving unit 115 receives a transmission request of the data stored in the storage unit 121 from the distribution server 200. In the case of a configuration in which a request is transmitted from the client 300 via a control server or the like other than the distribution server 200, the request receiving unit 115 may receive a request for transmission of data stored in the storage unit 121 from such a control server.
The above-described respective units (the encoding unit 111, the dividing unit 112, the data transmitting unit 113, the storage control unit 114, and the request receiving unit 115) are realized by 1 or more processors, for example. For example, each of the above units may be realized by a program, i.e., software, executed by a processor such as a CPU (Central Processing Unit ). The above-described portions may be realized by a processor such as an application specific IC (Integrated Circuit ), that is, hardware. The above-described portions may be implemented by software or hardware. In the case of using a plurality of processors, each processor may realize 1 or two or more of the respective sections.
Further, the functions of the transmitting apparatus 100 may be distributed to a plurality of apparatuses which are physically or logically different. For example, the device may be divided into a device including the imaging unit 101 and the encoding unit 111 (video input and encoder in fig. 2) and a device including the remaining units (fragmentation and storage in fig. 2). In this case, the data encoded by the encoding unit 111 is input to the latter device via a communication line such as a network or a coaxial cable, for example. The latter device may be configured to acquire the encoded data via a communication line.
Next, the structure of the distributing server 200 will be described. The distribution server 200 distributes the distribution list and the determination information to the client 300 via the network 402. The distribution list is a list in which information about distributed data (hereinafter also referred to as content) is recorded. In general, a content distributor records metadata such as a content acquisition party and a bit rate in a distribution list. The content acquirer can determine the acquired content by acquiring and parsing the distribution list.
The content described in the distribution list may include not only content in a transmittable state but also content in a non-transmittable state, content in which transmission is not permitted, and the like. The determination information is information for the receiving apparatus (client 300) to determine whether or not to request distribution of the content included in the transmission list.
As shown in fig. 3, the distribution server 200 includes a detection unit 201, a list generation unit 211, a determination information generation unit 212, a list transmission unit 213, a determination information transmission unit 214, a request transmission/reception unit 215, a distribution unit 216, a data reception unit 217, a storage control unit 218, a temporary storage unit 221, and a storage unit 222.
The detection unit 201 detects that the content is in a transmittable state. For example, when the content is provided from a content providing apparatus (transmitting apparatus 100 or the like), the detecting section 201 determines that the content is capable of being transmitted. The detection unit 201 may monitor a storage area (for example, the temporary storage unit 221) in which the content is stored, and determine that the content is available for transmission when the content is stored.
The list generation unit 211 generates a distribution list. The list generation section 211 generates a distribution list when requested to generate and transmit the distribution list from the client 300, for example. The timing of generating the distribution list is not limited thereto, and may be any timing. For example, the list generation unit 211 may generate a distribution list of contents to be transmitted in the next period every time a predetermined time elapses. The list generation section 211 may also generate the distribution list when the content is provided from the providing apparatus, when instructed to be generated, or the like.
Fig. 4 is a diagram showing an example of a data structure of a distribution list. As shown in fig. 4, the distribution list includes identification information that identifies the content. Fig. 4 shows an example in which URL (Uniform Resource Locator ) of content is used as identification information. The identification information may be information other than URL as long as the content can be identified. The distribution list may include information other than the identification information. In the present embodiment, for example, a distribution list including URLs of each divided data (picture or the like) is created.
Returning to fig. 3, the determination information generation unit 212 generates determination information. For example, the determination information generation unit 212 generates determination information indicating that transmission is possible when the content is possible, and generates determination information indicating that transmission is impossible when the content is not possible. When the status indicating whether or not the content can be transmitted has changed, the determination information generation unit 212 generates determination information updated to correspond to the changed status.
The determination information generation unit 212 generates determination information when, for example, generation and transmission of the determination information are requested from the client 300. When the distribution list is generated by the list generating section 211, the determination information generating section 212 may generate the determination information at this point in time. The timing of generating the determination information is not limited thereto, and may be any timing. For example, the determination information generation unit 212 may detect whether or not the content is available for transmission using, for example, the detection unit 201 every time a predetermined time elapses, and generate updated determination information based on the detection result.
Fig. 5 is a diagram showing an example of a data structure of the determination information. The determination information of fig. 5 is an example of determination information for determining whether or not 4 pieces of content described in the distribution list of fig. 4 can be transmitted. For example, "-o" indicates that content can be transmitted, and "×" indicates that content cannot be transmitted. In the example of fig. 5, 4 pieces of determination information ("o" or "×") corresponding to 4 pieces of content ("contentsa_1", "contentsa_2", "contentsa_3", "contentsa_4") corresponding to 4 URLs of fig. 4 are specified in the corresponding order.
As long as the determination information can be specified for each content, determination information of a data structure other than fig. 5 may be used. For example, the identification information of the content may be associated with the determination information. In order to be able to identify which distribution list corresponds to the determination information, information for identifying the distribution list may be associated with the determination information.
The content transmittable means, for example, a state in which the content as a distribution target is provided to the distribution server 200 and transmittable to the client 300. The content non-transmittable means, for example, a state in which the content as a distribution target has not yet been provided to the distribution server 200 and cannot be transmitted to the client 300. The distribution server 200 may transmit the content according to a request from the client 300 (pull transmission), or may transmit the content without a request from the client 300 (push transmission).
Whether or not the content is provided, the distribution server 200 may specify whether or not the content can be transmitted. For example, in order to reduce the communication load, determination information indicating that transmission is impossible may be generated for some or all of the plurality of contents to be provided, so that the contents cannot be transmitted. In this way, the content that can be transmitted may become unable to be transmitted later.
The number of pieces of determination information may be 1 or a plurality of pieces for each content. For example, 1 or more metadata of the content may be used as the determination information. The metadata is, for example, range information indicating the range of the content, the data length of the content, the kind of the content, and the like. The range information is, for example, information specifying a range of data to be distributed as content in certain data. In the case where the range information is specified, the specified range information is set as the determination information, and in the case where the range information is not specified, predetermined information (non-specified information) indicating that the range information is not specified is set as the determination information. When the range information as the determination information is set to the undetermined information, the client 300 can determine that the corresponding content cannot be transmitted. In this way, when metadata is used as determination information, a data format in which whether or not content can be transmitted can be determined from the metadata may be determined.
Returning to fig. 3, the list transmitting section 213 transmits the distribution list generated by the list generating section 211 to the client 300. For example, the list transmitting unit 213 transmits the distribution list to the client 300 in advance before starting transmission of the content. The determination information transmitting unit 214 transmits the determination information generated by the determination information generating unit 212 to the client 300.
The request transmitting/receiving unit 215 transmits and receives various requests. For example, the request transmitting/receiving unit 215 receives a transmission request of the distribution list, a transmission request of the determination information, and a transmission request of the content from the client 300. The request transmitting/receiving unit 215 transmits a transmission request of the content stored in the storage unit 121 to the transmitting apparatus 100.
The distribution unit 216 transmits the requested content to the client 300 that transmitted the transmission request. In the case of push transmission, the distribution section 216 may transmit the content without a request from the client 300.
The data receiving unit 217 receives data transmitted from the transmitting apparatus 100. For example, the data receiving section 217 receives data divided into data to be transmitted to the distribution server 200. When a transmission request of data stored in the storage unit 121 is transmitted, the data reception unit 217 receives data transmitted by the transmission device 100 in response to the transmission request.
The storage control section 218 controls storage processing with respect to the temporary storage section 221 and the storage section 222. When data transmitted from the transmitting apparatus 100 and data obtained by converting the data transmitted from the transmitting apparatus 100 into a format distributed by the distribution server 200 are stored in the storage unit 222 and then distributed, abnormality such as failure of distribution speed and temporary freezing of writing processing such as writing processing to the storage unit 222 may occur in the process of storing data in the storage unit 222, and normal distribution may not be possible. Then, the storage control unit 218 stores the data transmitted from the transmitting apparatus 100 in the temporary storage unit 221, and the temporary storage unit 221 is a storage medium in which the abnormality of the writing process described above does not occur. When the data is stored in the temporary storage unit 221, the distribution unit 216 reads the data from the temporary storage unit 221 and distributes the data to the client 300. At this time, the data transmitted from the transmitting apparatus 100 is finally stored in the storage unit 222. Thus, the distribution section 216 can function as if it were distributed from the storage section 222 for a request from the client 300. That is, the data stored in the temporary storage unit 221 may be returned to the request for the data stored in the storage unit 222. Such a function can be realized by recording the association (database, file, symbol link, etc.) of these files on the distribution server 200 and referring to them at the time of distribution.
Then, the storage control unit 218 performs a process (writing process) of writing the data stored in the temporary storage unit 221 into the storage unit 222. In the writing process, the storage control unit 218 may combine the plurality of data stored in the temporary storage unit 221 into 1 data and store the 1 data in the storage unit 222. For example, the storage control unit 218 may combine a plurality of pieces of data captured within a predetermined period of time into 1 file, and write the combined file (combined file) to the storage unit 222. Accordingly, it is possible to avoid a failure or the like in which the number of files to be stored in the storage unit 222 exceeds, for example, the allowable amount of the operating system, and data cannot be stored.
When a transmission request of data included in the combined data is received from the client 300 after the plurality of data are combined into 1 data and stored in the storage unit 222, a function of specifying the corresponding data from the combined data is required. Then, for example, the list generation section 211 may update the distribution list to include determination information for determining the corresponding data. The list generation unit 211 creates a distribution list in which, for example, identification information (URL or the like) of data and identification information (byte offset or the like from the beginning) of the data are associated with each other, and transmits the distribution list to the client 300.
When the client 300 requests transmission of data with reference to the updated distribution list, the client specifies the corresponding specification information together with the identification information of the data to be requested. For example, the client 300 requests data according to information to which identification information is attached to a URL representing identification information of the data. The client 300 may request data according to a transmission request including the identification information in a header (an extension header of HTTP or the like).
The file name to be requested at this time may also be set to the original pre-division file name. Accordingly, it is easy to determine whether or not the client 300 has already received the data and cached the data, and re-acquisition of the acquired data can be suppressed. In this case, the distribution server 200 needs to determine data (combined file) combined from the original divided files (clip files). For this purpose, the following methods exist: (1) The information of the combined file for the clip file is previously transmitted as determination information previously transmitted to the client 300, and is recorded in the HTTP extension header when requested by the client 300, (2) the distribution server 200 determines the combined file by itself according to the requested clip file name when responding to the request. Regarding (2), consider: (2-1) at the time of producing the joined file, the association (database, file, symbolic link, etc.) with the clip file is recorded, and (2-2) self-resolution is achieved in accordance with the naming rule (for example, if the joined file names of contentsa_1 to contentsa_4 are set to ContentsA, etc. in the example of fig. 4).
The distribution server 200 uses the determination information transmitted from the client 300 to determine corresponding data from the combined data, and distributes the determined data to the client 300 of the requester.
The storage control unit 218 may delete the data stored in the storage unit 222 according to a predetermined condition. For example, the storage control unit 218 may delete data for which a predetermined period has elapsed after storage. The storage control unit 218 may delete data in stages every time a predetermined time elapses. For example, when a predetermined period (for example, 1 day) has elapsed, the storage control unit 218 deletes all or part of the P picture from the storage unit 222, and thereafter deletes the P picture or I picture from the storage unit 222 in a stepwise thinning manner every predetermined period (which may be the same as or different from the first period) has elapsed. By such processing, when it is desired to reduce the storage capacity for long-term recording, it is possible to obtain intermittently (intermittent) increased images with the passage of time without performing processing of converting to images of reduced quality, for example. For example, the coding method described in japanese patent No. 6239472 can be used for the staged deletion of P pictures.
For example, the storage control unit 218 may delete the transmitted data with priority. At this time, the storage control unit 218 determines whether or not the data has been transmitted using metadata indicating whether or not the data has been transmitted. Further, the storage control section 218 may be prepared in advance with other metadata for reference in the deletion process. The metadata is, for example, data that can determine which data corresponds to which picture. More specifically, the metadata includes, for example, a time (a time of day, a minute, etc. of photographing), a position of an image within the time (for example, information indicating what number is from the beginning), a file name, a byte offset from the beginning of the file, and the like.
The temporary storage 221 temporarily stores the received data. For example, the temporary storage unit 221 may be constituted by a volatile memory such as a DRAM (Dynamic Random Access Memory ).
The storage unit 222 stores various data used by the distribution server 200. For example, the storage unit 222 stores the content to be distributed, the generated distribution list, and the generated determination information. The storage unit 222 can be configured by all storage media commonly used, such as a memory card, a RAM (Random Access Memory), an HDD (Hard Disk Drive), and an optical Disk.
In addition, if no abnormality occurs in the writing process as described above, the temporary storage unit 221 may be omitted.
The above-described respective units (the detection unit 201, the list generation unit 211, the determination information generation unit 212, the list transmission unit 213, the determination information transmission unit 214, the request transmission/reception unit 215, the distribution unit 216, the data reception unit 217, and the storage control unit 218) are realized by 1 or more processors, for example. For example, each of the above units may be realized by a processor such as a CPU executing a program, i.e., software. The above-described portions may be realized by a processor such as an application specific IC, that is, hardware. The above-described portions may be implemented by software or hardware. In the case of using a plurality of processors, each processor may realize 1 or two or more of the respective sections.
Further, the functions of the distribution server 200 may be distributed to a plurality of devices that are physically or logically different. For example, it is possible to divide into a server apparatus that transmits a distribution list and a server apparatus that transmits content. For example, the present invention may be divided into a server device that receives data from the transmitting device 100 and stores the data in the temporary storage unit 221 and the storage unit 222, and a server device that reads and distributes the data from the temporary storage unit 221 and the storage unit 222.
The function of the client 300 will be described next. As shown in fig. 3, the client 300 includes a list receiving unit 311, a determination information receiving unit 312, a determination unit 313, a request transmitting unit 314, a data receiving unit 315, a playback unit 316, and a storage unit 321.
The list receiving section 311 receives a distribution list from the distribution server 200. The determination information receiving unit 312 receives the determination information from the distribution server 200.
The determination unit 313 determines the content to be requested for transmission based on the distribution list and the determination information. For example, the determination unit 313 determines that the content in which "o" is set as the determination information as shown in fig. 5 among the contents in which URLs are described in the distribution list shown in fig. 4 is the content to be requested for transmission. In the case of using the above-described range information as the determination information, the determination unit 313 determines that, for example, the content for which the undetermined information is not set in the range information is the content to be requested for transmission. In the case where a plurality of pieces of determination information are used, the determination section 313 may determine the content to be requested to be transmitted based on a combination of the plurality of pieces of determination information. For example, when all the pieces of determination information indicate that the content can be transmitted, the determination unit 313 determines that the corresponding content is the content to be requested for transmission.
The request transmitting unit 314 transmits a transmission request of the content determined to be requested to be transmitted to the distribution server 200. The data receiving unit 315 receives the content transmitted in response to the transmission request transmitted by the request transmitting unit 314 from the distribution server 200. The reproduction section 316 reproduces the received content.
The storage 321 stores various data used by the client 300. For example, the storage unit 321 stores the transmitted distribution list, the transmitted determination information, and the distributed content.
Each of the above-described units (the list receiving unit 311, the determination information receiving unit 312, the determining unit 313, the request transmitting unit 314, the data receiving unit 315, and the reproducing unit 316) is implemented by, for example, 1 or more processors. For example, each of the above units can be realized by causing a processor such as a CPU to execute a program, i.e., software. The above-described portions may be realized by a processor such as an application specific IC, that is, hardware. The above-described portions may be implemented by software or hardware. In the case of using a plurality of processors, each processor may realize 1 or two or more of the respective sections.
By using the distribution list and the determination information as described above, the distribution server 200 does not need to create and transmit the distribution list at each update, for example. Further, the client 300 can more easily analyze the update portion by referring to the determination information. That is, the information equivalent to the latest distribution list can be efficiently acquired and analyzed without re-acquiring and re-analyzing the distribution list.
Further, the determination information may be not used, and for example, a distribution list transmission may be created and transmitted each time data is updated. In this case, the function (the determination information generation section 212, the determination information transmission section 214, the determination information reception section 312, etc.) regarding the determination information may not be provided. In addition, if, for example, push transmission is employed, the distribution server 200 may distribute the video to the client 300 without using a distribution list.
Next, a transmission process of data by the transmission device 100 according to the present embodiment will be described. Fig. 6 is a flowchart showing an example of the transmission processing according to the present embodiment.
The imaging unit 101 images an image to be distributed (step S101). The encoding unit 111 encodes the video input from the photographing unit 101 (step S102). The dividing section 112 divides data to be transmitted to the distribution server 200 and data to be stored in the storage section 121. For example, the dividing section 112 divides an input video into a slice of an I picture and a slice of a P picture (step S103). The data transmitting unit 113 transmits the clip of the I picture to the distribution server 200 (step S104). The storage control unit 114 stores the clip of the P picture in the storage unit 121 (step S105).
Next, a transmission process of the data stored in the storage unit 121 will be described. Fig. 7 is a flowchart showing an example of the transmission processing of the data stored in the storage unit 121.
The request receiving unit 115 receives a transmission request of the data stored in the storage unit 121 from the distribution server 200 (or the control server) (step S201). When the P-picture is stored in the storage unit 121, the request receiving unit 115 receives a transmission request of any P-picture out of the stored P-pictures. The data transmitting unit 113 reads the requested P picture from the storage unit 121, and transmits the P picture to the distribution server 200 (step S202).
Next, a list generation process performed by the distribution server 200 according to the present embodiment configured as described above will be described. The list generation process is a process of generating a distribution list for the distribution server 200. Fig. 8 is a flowchart showing an example of the list generation processing according to the present embodiment.
The list generation unit 211 of the distribution server 200 generates a distribution list in response to a request from the client 300, for example (step S301). The list generation unit 211 stores the generated distribution list in, for example, the storage unit 222 (step S302).
As an example, it is assumed that contents, contenta_1, contenta_2, contenta_3, and contenta_4, which are temporally continuous contents, exist as contents to be distributed as a schedule, and contenta_1 and contenta_3 are set as distributable contents. In this case, the list generation unit 211 generates a distribution list for distributing contenta_1, contenta_2, contenta_3, and contenta_4. Fig. 4 shows an example of the distribution list generated at this time.
Next, the judgment information generation processing performed by the distribution server 200 of the present embodiment will be described. The determination information generation process is a process of generating determination information for the distribution server 200. The determination information generation process is performed, for example, in the case where there is a transmission request of the determination information from the client 300. Fig. 9 is a flowchart showing an example of the judgment information generation processing according to the embodiment.
The determination information generation unit 212 of the distribution server 200 determines whether or not the determination information is generated for the content to be distributed (step S401). When the determination information is not generated (no in step S401), the determination information generation unit 212 generates determination information for the content (step S402). Fig. 5 shows an example of the determination information generated for the example described in fig. 8 (the example in which contenta_1 and contenta_3 can be distributed).
When the determination information is generated and the generated determination information is completed (yes in step S401), the determination information generating unit 212 determines whether or not to update the generated determination information (step S403). For example, the determination information generation unit 212 determines to update the determination information when receiving a detection result indicating that the content is in a state that can be transmitted from the detection unit 201.
When it is determined that the determination information is updated (yes in step S403), the determination information generation unit 212 updates the determination information (step S404). After updating the determination information and when it is determined that the determination information is not updated (step S403: no), the determination information generation process ends.
The distribution server 200 sets the generated distribution list and the determination information to a state that can be distributed via the network 402. The client 300 can access the distribution server 200 to acquire a distribution list and determination information.
Next, a content distribution process performed by the communication system of the present embodiment will be described. Fig. 10 is a sequence diagram showing an example of the content distribution processing according to the present embodiment.
The list generation unit 211 of the distribution server 200 generates a distribution list (step S501). This process corresponds to the list generation process described above, for example. The list transmitting unit 213 of the distribution server 200 transmits the distribution list to the client 300 in response to, for example, a request from the client 300 (step S502).
The determination information generation unit 212 of the distribution server 200 generates determination information (step S503). This process corresponds to, for example, the above-described determination information generation process. The determination information transmitting unit 214 of the distribution server 200 transmits the determination information to the client 300 in response to a request from the client 300, for example (step S504).
The list receiving unit 311 of the client 300 receives the distribution list, and the determination information receiving unit 312 receives the determination information. Then, the determination unit 313 of the client 300 determines the content to be requested for transmission using the received distribution list and the determination information (step S505). Upon receiving the distribution list shown in fig. 4, for example, the determination unit 313 analyzes the received distribution list to obtain URLs for acquiring the contenta_1 to contenta_4, respectively. The determination unit 313 analyzes the received determination information and determines the transmittable content among the contents recorded in the distribution list.
Fig. 11 is a diagram illustrating an example of determining the distribution list shown in fig. 4 using the determination information shown in fig. 5. As shown in fig. 11, the URL for acquiring the contenta_1 described in the distribution list is combined with the determination information corresponding to the contenta_1, and the determination unit 313 can determine that the contenta_1 is transmittable (accessible). Similarly, the determination unit 313 can determine that contenta_2 is not transmittable (not accessible).
Returning to fig. 10, the request transmitting unit 314 transmits a transmission request for the content determined to be requested to be transmitted to the distribution server 200 (step S506). The distribution section 216 of the distribution server 200 transmits the requested content to the client 300 (step S507). The data receiving unit 315 of the client 300 receives the content, and the playback unit 316 plays back the received content (step S508).
In addition, in the case where the content, which is transmitted from the transmitting apparatus 100 in a format that can be distributed as it is by the distribution server 200, is displayed, the distribution unit 216 does not convert the content transmitted from the transmitting apparatus 100 and transmits it as it is to the client 300. When the content is transmitted in a format to which metadata that can be converted into a format that can be distributed by the distribution server 200 is added, the distribution unit 216 converts the transmitted content into a format that can be distributed based on the metadata, and transmits the converted content to the client 300.
Thereafter, the contenta_2 is set to be in a distributable state. At this time, the detection unit 201 of the distribution server 200 detects that the contenta_2 is in a state where it can be distributed. The determination information generation unit 212 generates updated determination information based on the detection result (step S509).
Fig. 12 is a diagram showing an example of updated determination information. As shown in fig. 12, the determination information generation unit 212 updates the determination information corresponding to contenta_2 from "x" to "o". The updated determination information is in a state that can be distributed via the network 402.
Returning to fig. 10, the determination information transmitting unit 214 of the distribution server 200 transmits the updated determination information to the client 300 in response to, for example, a request from the client 300 (step S510). Steps S511 to S514 thereafter are the same as steps S505 to S508.
Fig. 13 is a diagram illustrating an example of determining the distribution list shown in fig. 4 using the determination information shown in fig. 12. As shown in fig. 13, the determination unit 313 can determine that contenta_2 is in a transmittable (accessible) state.
In this way, when contenta_2 becomes a distributable state, the client 300 can obtain the latest state of each content by applying updated determination information only to the distribution list that has been received without acquiring the distribution list any more.
The present embodiment can be applied to a system for monitoring an image captured by a drive recorder, for example. The applicable system is not limited thereto. For example, the present invention can be applied to a system for distributing and monitoring sensor data obtained by a sensor and a system for distributing and monitoring moving image data obtained by a camera or the like mounted on a moving body. Examples of the mobile object include a person, a robot, a vehicle (automobile, motorcycle, electric train, etc.), a flatbed, an object capable of flying (a piloted plane, an unmanned plane (for example, UAV (Unmanned Aerial Vehicle, unmanned plane), unmanned aerial vehicle), and a personal mobile object (Personal mobility)), and examples of the mobile object include a mobile object that travels through a steering operation by a person and a mobile object that can travel automatically (autopilot) without a steering operation by a person.
The present embodiment can be applied to a monitoring system that monitors, for example, the operation history of a screen (HMI: human Machine Interface, man-machine interface) of a monitoring control system of a device. The operation history of the screen can be obtained by, for example, capturing and recording the function of the screen displayed by the display device. The image data thus obtained can be used instead of the video captured by the transmitting apparatus 100.
Since a large number of monitor screens are generally used in a monitor control system of a device, it is sometimes necessary to monitor images of a large number of monitor screens side by side in a monitor system of an operation history of the screens. In general, the processing of displaying a large number of videos in parallel as described above increases the processing load, but in the present embodiment, only divided data (I-picture, for example) can be displayed, and therefore an increase in the processing load can be suppressed.
Modification 1
The network 401 may be configured by a plurality of communication lines, and a part of the data (for example, I picture) divided by the dividing unit 112 may be transmitted to the distribution server 200 by any communication line (for example, communication line 401A) among the plurality of communication lines, and the remaining data (for example, P picture) may be transmitted to the distribution server 200 by another communication line (for example, communication line 401B) among the plurality of communication lines. Fig. 14 is a diagram showing a configuration example of the image distribution system of modification 1 configured as described above. For example, the data transmission unit 113 may distribute the I picture in real time via the communication line 401A, and transmit the P picture at an arbitrary timing via the communication line 401.
Modification 2
The divided data may be stored separately in the storage unit 121 in the transmitting apparatus 100 without being transmitted to the distribution server 200. Accordingly, for example, only a necessary picture (for example, I picture) can be read from the storage unit 121 and displayed. The method of displaying only the I picture can reduce the processing load compared to the method of displaying all pictures including the P picture as well. Therefore, even for example, even for the client 300 with limited processing capability, only the I picture can be read from the storage unit 121 of the plurality of transmission apparatuses 100 and displayed in parallel. Further, the remaining P pictures and the like can be read in stages as needed to realize motion display.
In this case, the storage control unit 114 may delete the data stored for a predetermined period of time, or may delete the data in stages every predetermined time period, as in the storage control unit 218 of the distribution server 200. For example, when the storage capacity becomes insufficient, all data including I pictures and P pictures can be deleted not in chronological order, but only P pictures can be deleted, and I pictures can be left as data that can be intermittently displayed, whereby both long-term storage of data and capacity reduction can be achieved.
Modification 3
When dividing and distributing an image per picture, the size of the distribution list may increase. Then, the list generation section 211 may create the distribution list using a plurality of files having a hierarchical structure. For example, the list generation unit 211 may constitute the distribution list hierarchically in units of year, month, day, time, and the like. For example, the lowermost distribution list includes identification information of each of the fragment data divided into a certain range of times. The next higher distribution list includes information identifying 1 or more distribution lists corresponding to times included in a day. The next higher distribution list includes information identifying 1 or more distribution lists corresponding to days included in a month. The next higher distribution list includes information identifying 1 or more distribution lists corresponding to months included in a certain year.
Modification 4
Fig. 15 is a diagram showing an outline of distribution processing performed by the video distribution system according to modification 4. The video distribution system according to the present modification also includes a control server 510 and a Web server 520. In the present modification, the distribution server 200 is configured as a Web server that distributes video (video).
The control server 510 includes a control unit 511. The control unit 511 controls the transmitting apparatus 100 in response to a request transmitted from the client 300. For example, the client 300 transmits a transmission request indicating whether to divide pictures and transmit only a part (for example, only I pictures) or transmit all pictures to the control server 510. The control unit 511 of the control server 510 outputs a control signal indicating whether to divide only a part of the pictures and transmit (upload) the pictures to the distribution server 200 or to transmit all the pictures to the distribution server 200 to the transmitting apparatus 100 according to the transmission request.
The transmitting apparatus 100 operates by switching between transmitting only the divided partial pictures to the distribution server 200 or transmitting all the pictures to the distribution server 200 according to the control signal transmitted from the control server 510 as in the above-described embodiment.
The acquisition stream transmission (upload transmission) means that data divided into data (first data) to be transmitted to the distribution server 200 is transmitted to the distribution server 200. The captured file save (file output) means storing data divided into data (second data) to be stored in the storage section 121 without being transmitted to the distribution server 200. As shown in fig. 15, the stored data may be copied to the distribution server 200 offline.
The distribution server 200 converts (stream-converts) the data received by the data receiving section 217 into a format that can be distributed as necessary, and stores the data in the storage section 222. The offline copied data may be centrally converted (batch converted) and stored in the storage unit 222.
The storage unit 222 stores each picture (clip file) in a distributable format, a distribution list, and the like. The distribution server 200 functions as a video server that distributes the pictures stored in the storage unit 222. As described above, the data received by the data receiving unit 217 may be stored in the temporary storage unit 221, and the data stored in the temporary storage unit 221 may be distributed by the distribution unit 216.
The client 300 is provided with a Web browser having a viewer. The Web browser is provided with a video player that reproduces video. The video player is for example implemented as an HTML5 compliant application.
The Web server 520 is a server device having functions other than the functions of the video server. For example, the Web server 520 is a server device for providing a User Interface (UI) for an external system different from the video distribution system.
As described above, the video distribution system according to the above embodiment can be implemented as a Web system used on the internet, for example.
As described above, in the video distribution system according to the present embodiment, the line load and the processing load can be reduced without reducing the quality.
Next, a hardware configuration of the transmitting apparatus according to the present embodiment will be described with reference to fig. 16. Fig. 16 is an explanatory diagram showing an example of a hardware configuration of the transmitting apparatus according to the present embodiment.
The transmission device of the present embodiment includes a control device such as a CPU 51, a storage device such as a ROM (Read Only Memory) 52 and a RAM 53, a communication interface 54 connected to a network and communicating with the network, and a bus 61 connecting the respective units.
The program executed by the transmitting apparatus according to the present embodiment is provided by being previously programmed in the ROM 52 or the like.
The program executed by the transmitting apparatus of the present embodiment may be configured to be recorded in a computer-readable recording medium such as a CD-ROM (Compact Disk Read Only Memory, optical disk read only memory), a Flexible Disk (FD), a CD-R (Compact Disk Recordable, recordable optical disk), a DVD (Digital Versatile Disk ) or the like in a file in an installable format or an executable format, and provided as a computer program product.
The program executed by the transmitting apparatus according to the present embodiment may be stored in a computer connected to a network such as the internet and may be downloaded via the network. The program executed by the transmitting apparatus according to the present embodiment may be provided or distributed via a network such as the internet.
The program executed by the transmitting apparatus according to the present embodiment can cause a computer to function as each part of the transmitting apparatus. The CPU 51 of the computer is capable of reading a program from a computer-readable storage medium onto a main storage device and executing the program.
While several embodiments of the present invention have been described, these embodiments are presented by way of example and are not intended to limit the scope of the invention. These novel embodiments can be implemented in other various forms, and various omissions, substitutions, and changes can be made without departing from the scope of the invention. These embodiments and modifications thereof are included in the scope and gist of the invention, and are included in the invention described in the patent claims and the equivalent scope thereof.
The above embodiments can be summarized as follows.
Technical solution 1
A transmitting device is provided with:
a dividing unit that divides a plurality of transmission data to be transmitted into first data and second data;
a transmitting unit configured to transmit the first data to a server device that distributes the transmission data to a receiving device;
a storage control unit that stores the second data in a storage unit; and
A receiving unit configured to receive a transmission request of the second data from the receiving device or the server device,
wherein the transmitting section further transmits the second data to the server apparatus according to the transmission request.
Technical solution 2
The transmission apparatus according to claim 1, wherein,
the transmission data is moving image data,
the first data includes image data encoded by intra prediction.
Technical solution 3
The transmitting apparatus according to claim 2, wherein,
the second data includes image data encoded by inter prediction based on the first data.
Technical solution 4
The transmitting apparatus according to claim 2, wherein,
the first data comprises a portion of image data encoded by intra prediction,
the second data includes image data other than the image data included in the first data among the image data encoded by intra prediction, and image data encoded by inter prediction based on the first data.
Technical solution 5
The transmitting apparatus according to claim 2, wherein,
the first data comprises a portion of image data encoded by intra prediction,
The dividing unit changes, according to a bandwidth of a network transmitting the transmission data, image data to be included in the first data among image data encoded by intra-frame prediction.
Technical solution 6
The transmitting apparatus according to claim 2, wherein,
the first data comprises a portion of image data encoded by intra prediction,
the dividing unit changes, in response to a request from the receiving device or the server device, image data to be included in the first data among image data encoded by intra prediction.
Technical solution 7
The transmitting apparatus according to claim 2, wherein,
the apparatus further includes an encoding unit that encodes the first data so that a code amount differs according to a bandwidth of a network that transmits the transmission data.
Technical solution 8
The transmission apparatus according to claim 1, wherein,
the dividing unit changes the size of the first data according to the bandwidth of the network that transmits the transmission data.
Technical solution 9
The transmission apparatus according to claim 1, wherein,
the storage control unit deletes the second data stored in the storage unit according to a predetermined condition.
Technical solution 10
The transmission apparatus according to claim 1, wherein,
the dividing section converts the first data and the second data into a data format distributed by the server apparatus.
Technical solution 11
The transmission apparatus according to claim 1, wherein,
the dividing section appends metadata for conversion into a data format distributed by the server apparatus to the first data and the second data.
Technical solution 12
A server device is provided with:
a data receiving unit that receives first data, which is a part of the plurality of transmission data, from the transmitting device; and
a distribution unit that distributes the first data to a reception device,
wherein the data receiving unit further receives second data transmitted from the transmitting device in response to a request for transmission of the second data other than the first data among the plurality of transmission data,
the distribution section distributes the second data to the reception apparatus.
Technical solution 13
The server device according to claim 12, wherein,
the transmission data is moving image data,
the first data includes image data encoded by intra prediction.
Technical solution 14
The server device according to claim 13, wherein,
the second data includes image data encoded by inter prediction based on the first data.
Technical solution 15
The server device according to claim 12 further comprises:
a storage unit;
a temporary storage unit that temporarily stores the received first data and second data; and
a storage control unit configured to store the first data and the second data stored in the temporary storage unit in the storage unit,
wherein the distribution section distributes the first data stored in the temporary storage section to the reception apparatus.
Technical solution 16
The server device according to claim 15, wherein,
the storage control unit stores, in the storage unit, combination data obtained by combining at least a part of the first data and the second data stored in the temporary storage unit.
Technical solution 17
The server device according to claim 16, wherein,
further provided with a request receiving unit that receives a request for transmission of the first data or the second data from the receiving device, wherein the request for transmission of the first data or the second data includes determination information for determining a position of the first data or the second data within the combined data,
Wherein the distribution section distributes the first data or the second data read from the storage section based on the determination information to the reception apparatus.
Technical solution 18
The server device according to claim 12 further comprises:
a storage unit configured to store the first data and the second data transmitted from the transmitting device; and
and a storage control unit configured to delete at least one of the first data and the second data stored in the storage unit according to a predetermined condition.
Technical solution 19
A transmission method, comprising:
a dividing step of dividing a plurality of transmission data as transmission targets into first data and second data;
a first transmission step of transmitting the first data to a server apparatus that distributes the transmission data to a reception apparatus;
a storage control step of storing the second data in a storage unit;
a reception step of receiving a transmission request of the second data from the reception device or the server device; and
and a second transmission step of transmitting the second data to the server device according to the transmission request.
Technical solution 20
A program for causing a computer to function as:
A dividing unit that divides a plurality of transmission data to be transmitted into first data and second data;
a transmitting unit configured to transmit the first data to a server device that distributes the transmission data to a receiving device;
a storage control unit that stores the second data in a storage unit; and
a receiving unit configured to receive a transmission request of the second data from the receiving device or the server device,
wherein the transmitting section further transmits the second data to the server apparatus according to the transmission request.

Claims (10)

1. A server device is provided with:
a data receiving unit that receives first data, which is a part of the plurality of transmission data, from the transmitting device; and
a distribution unit that distributes the first data to a reception device,
wherein the data receiving unit further receives second data transmitted from the transmitting device in response to a request for transmission of the second data other than the first data among the plurality of transmission data,
the distribution section distributes the second data to the receiving device,
the server device further includes a storage control unit configured to delete all or a part of object data, which is at least one of the first data and the second data, stored in the storage unit that stores the first data and the second data transmitted from the transmitting device, according to a predetermined condition.
2. The server device according to claim 1, wherein,
the storage control unit deletes all or a part of the object data for which a predetermined period has elapsed after storage.
3. The server device according to claim 1, wherein,
the storage control unit deletes all or a part of the target data every time a predetermined time elapses.
4. The server device according to claim 1, wherein,
the storage control unit preferentially deletes the object data distributed to the receiving device from the storage unit.
5. The server device according to claim 4, wherein,
the storage control unit determines whether or not the distribution of the object data to the receiving device is completed, using metadata indicating whether or not the distribution is completed.
6. The server device according to claim 1, wherein,
the storage control unit deletes all or a part of the object data using metadata for reference in the deletion process.
7. The server device according to claim 6, wherein,
the metadata includes a time, information indicating a position with reference to the beginning of a file containing the object data, and a file name of the file.
8. The server device according to claim 1, wherein,
the server device further includes the storage unit.
9. A transmission method performed in a server apparatus, the transmission method comprising:
a first data receiving step of receiving, from a transmitting apparatus, first data that is a part of a plurality of transmission data;
a first distribution step of distributing the first data to a receiving apparatus;
a second data receiving step of receiving second data transmitted from the transmitting device in accordance with a transmission request of the second data other than the first data among the plurality of transmission data;
a second distributing step of distributing the second data to the receiving device; and
and a storage control step of deleting all or a part of object data, which is at least one of the first data and the second data, stored in a storage unit that stores the first data and the second data transmitted from the transmitting device, in accordance with a predetermined condition.
10. A program for causing a computer to execute the steps of:
a first data receiving step of receiving, from a transmitting apparatus, first data that is a part of a plurality of transmission data;
A first distribution step of distributing the first data to a receiving apparatus;
a second data receiving step of receiving second data transmitted from the transmitting device in accordance with a transmission request of the second data other than the first data among the plurality of transmission data;
a second distributing step of distributing the second data to the receiving device; and
and a storage control step of deleting all or a part of object data, which is at least one of the first data and the second data, stored in a storage unit that stores the first data and the second data transmitted from the transmitting device, in accordance with a predetermined condition.
CN202310754324.3A 2020-02-27 2020-02-27 Server device, transmission method, and program Pending CN116634195A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202310754324.3A CN116634195A (en) 2020-02-27 2020-02-27 Server device, transmission method, and program

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN202010122213.7A CN113315997B (en) 2020-02-27 2020-02-27 Transmission device, server device, transmission method, and program
CN202310754324.3A CN116634195A (en) 2020-02-27 2020-02-27 Server device, transmission method, and program

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
CN202010122213.7A Division CN113315997B (en) 2020-02-27 2020-02-27 Transmission device, server device, transmission method, and program

Publications (1)

Publication Number Publication Date
CN116634195A true CN116634195A (en) 2023-08-22

Family

ID=77370743

Family Applications (2)

Application Number Title Priority Date Filing Date
CN202310754324.3A Pending CN116634195A (en) 2020-02-27 2020-02-27 Server device, transmission method, and program
CN202010122213.7A Active CN113315997B (en) 2020-02-27 2020-02-27 Transmission device, server device, transmission method, and program

Family Applications After (1)

Application Number Title Priority Date Filing Date
CN202010122213.7A Active CN113315997B (en) 2020-02-27 2020-02-27 Transmission device, server device, transmission method, and program

Country Status (1)

Country Link
CN (2) CN116634195A (en)

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1553777A1 (en) * 1997-01-30 2005-07-13 Microsoft Corporation VCR-like functions rendering video on demand
CN101714909A (en) * 2004-01-28 2010-05-26 日本电气株式会社 Content distribution method, encoding method, reception/reproduction method and device
JP6686541B2 (en) * 2016-03-04 2020-04-22 日本電気株式会社 Information processing system

Also Published As

Publication number Publication date
CN113315997A (en) 2021-08-27
CN113315997B (en) 2023-07-14

Similar Documents

Publication Publication Date Title
US11647217B2 (en) Transmission device, communication system, transmission method, and computer program product
US9832492B2 (en) Distribution of adaptive bit rate video streaming via hyper-text transfer protocol
US20170093939A1 (en) Real-time video streaming to client video element
US20140215541A1 (en) Distribution of adaptive bit rate live streaming video via hyper-text transfer protocol
US12088859B2 (en) System and method for converting adaptive stream to downloadable media
US20110037864A1 (en) Method and apparatus for live capture image
JP2018182447A (en) Video distribution apparatus, video distribution method, and program
US11463651B2 (en) Video frame-based media stream bandwidth reduction
TWI731579B (en) Transmission device, communication system, transmission method, and computer program product
CN113315997B (en) Transmission device, server device, transmission method, and program
CN113542342B (en) Server device, information processing method, and storage medium
KR102291293B1 (en) Transmission device, comunication system, transmission method, and non-transitory computer readable recording medium
CN113542747B (en) Server device, communication system, and storage medium
JP7302076B2 (en) Transmission device, server device, transmission method and program
KR20230013461A (en) Video storing apparatus, video monitoring apparatus and method performed in the same
JP2020150321A (en) Moving image distribution device and moving image distribution method and program

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination