Detailed Description
In order to make the objects, technical solutions and advantages of the embodiments of the present invention more apparent, the embodiments of the present invention are described in further detail below with reference to the embodiments and the accompanying drawings. The exemplary embodiments and descriptions of the present invention are provided to explain the present invention, but not to limit the present invention.
The first embodiment is as follows:
referring to fig. 2, the audience rating statistical method of the embodiment of the present invention mainly includes the following steps:
201: according to a channel ID, an analysis time interval starting time A, an analysis time interval ending time B, a minimum viewing duration or a minimum viewing duration percentage T and whether continuous viewing is performed or not of preset analysis conditions, determining that viewing conditions A & B & B & gt a and arrival conditions T are more than or equal to T, and sequentially searching each piece of basic data in a viewing information table according to the viewing conditions and the arrival conditions to obtain all basic data meeting the conditions;
202: searching a user information base according to the set top box ID of the retrieved basic data and the user information analysis condition of the preset analysis condition to obtain the user information meeting the condition;
203: and analyzing and calculating the user information meeting the conditions according to analysis indexes in preset analysis conditions and a calculation formula corresponding to the analysis indexes to obtain an analysis index result.
In step 202, the step of searching the user information base according to the preset user information analysis condition of the analysis condition to obtain the user information meeting the condition may be performed before step 201, and the sequence is not limited in the present invention.
According to this embodiment, t is the sum of the effective viewing duration in the analysis period under the continuous viewing condition or the effective viewing duration in the analysis period under the discontinuous viewing condition. The continuous viewing condition means that the user continuously views the program within the specified analysis time period and reaches the minimum viewing time period (the time period for the user to view the program cannot be accumulated as the minimum viewing time period); the discontinuous viewing condition means that a user watches programs for more than a certain time but less than the specified viewing duration in the specified analysis time period, but in the specified analysis time period, the audience watches the programs for multiple times, and the sum of the durations of the multiple watching programs meets the viewing duration specified by the user.
According to other embodiments, T may be a percentage of the minimum viewing duration, and when T is the percentage of the minimum viewing duration, T is an effective viewing duration in the analysis period or a percentage of the sum of the effective viewing durations in the analysis period and the duration of the analysis period.
When T is the minimum watching duration in the preset analysis conditions and T is the effective watching duration of the user under the continuous watching conditions, then Or t is the sum of the effective watching time length of the user under the condition of discontinuous watching
<math>
<mrow>
<mi>t</mi>
<mo>=</mo>
<mfrac>
<mrow>
<munderover>
<mi>Σ</mi>
<mrow>
<mi>i</mi>
<mo>=</mo>
<mn>1</mn>
</mrow>
<mi>n</mi>
</munderover>
<mrow>
<mo>(</mo>
<mo>|</mo>
<mi>A</mi>
<mo>-</mo>
<msub>
<mi>b</mi>
<mi>i</mi>
</msub>
<mo>|</mo>
<mo>+</mo>
<mo>|</mo>
<msub>
<mi>a</mi>
<mi>i</mi>
</msub>
<mo>-</mo>
<mi>B</mi>
<mo>|</mo>
<mo>-</mo>
<mo>|</mo>
<msub>
<mi>a</mi>
<mi>i</mi>
</msub>
<mo>-</mo>
<mi>A</mi>
<mo>|</mo>
<mo>-</mo>
<mo>|</mo>
<msub>
<mi>b</mi>
<mi>i</mi>
</msub>
<mo>-</mo>
<mi>B</mi>
<mo>|</mo>
<mo>)</mo>
</mrow>
</mrow>
<mrow>
<mn>2</mn>
<mo>×</mo>
<mi>n</mi>
</mrow>
</mfrac>
<mo>,</mo>
</mrow>
</math>
Wherein n is the number of times a certain user watches a certain channel program in the analysis time period.
When T is the minimum viewing duration percentage of the preset analysis condition, T is the effective viewing duration of the user or the percentage of the sum of the effective viewing durations of the user and the duration of the analysis time period, and:
when the t is the percentage of the effective viewing time length to the minimum viewing time length in the analysis time period:
<math>
<mrow>
<mi>t</mi>
<mo>=</mo>
<mfrac>
<mrow>
<mo>(</mo>
<mo>|</mo>
<mi>A</mi>
<mo>-</mo>
<mi>b</mi>
<mo>|</mo>
<mo>+</mo>
<mo>|</mo>
<mi>a</mi>
<mo>-</mo>
<mi>B</mi>
<mo>|</mo>
<mo>-</mo>
<mo>|</mo>
<mi>a</mi>
<mo>-</mo>
<mi>A</mi>
<mo>|</mo>
<mo>-</mo>
<mo>|</mo>
<mi>b</mi>
<mo>-</mo>
<mi>B</mi>
<mo>|</mo>
<mo>)</mo>
</mrow>
<mrow>
<mn>2</mn>
<mo>×</mo>
<mrow>
<mo>(</mo>
<mi>B</mi>
<mo>-</mo>
<mi>A</mi>
<mo>)</mo>
</mrow>
</mrow>
</mfrac>
<mo>×</mo>
<mn>100</mn>
<mo>%</mo>
<mo>;</mo>
</mrow>
</math>
when the t is the percentage of the sum of the effective viewing duration and the minimum viewing duration in the analysis time period:
<math>
<mrow>
<mi>t</mi>
<mo>=</mo>
<mfrac>
<mrow>
<munderover>
<mi>Σ</mi>
<mrow>
<mi>i</mi>
<mo>=</mo>
<mn>1</mn>
</mrow>
<mi>n</mi>
</munderover>
<mrow>
<mo>(</mo>
<mo>|</mo>
<mi>A</mi>
<mo>-</mo>
<msub>
<mi>b</mi>
<mi>i</mi>
</msub>
<mo>|</mo>
<mo>+</mo>
<mo>|</mo>
<msub>
<mi>a</mi>
<mi>i</mi>
</msub>
<mo>-</mo>
<mi>B</mi>
<mo>|</mo>
<mo>-</mo>
<mo>|</mo>
<msub>
<mi>a</mi>
<mi>i</mi>
</msub>
<mo>-</mo>
<mi>A</mi>
<mo>|</mo>
<mo>-</mo>
<mo>|</mo>
<msub>
<mi>b</mi>
<mi>i</mi>
</msub>
<mo>-</mo>
<mi>B</mi>
<mo>|</mo>
<mo>)</mo>
</mrow>
</mrow>
<mrow>
<mn>2</mn>
<mo>×</mo>
<mi>n</mi>
<mo>×</mo>
<mrow>
<mo>(</mo>
<mi>B</mi>
<mo>-</mo>
<mi>A</mi>
<mo>)</mo>
</mrow>
</mrow>
</mfrac>
<mo>×</mo>
<mn>100</mn>
<mo>%</mo>
<mo>,</mo>
</mrow>
</math>
wherein n is the number of times a certain user watches a certain channel program in the analysis time period.
According to this embodiment, the basic data may be obtained in any practicable manner, such as manually obtained from the set-top box, automatically transmitted back from the set-top box through a bidirectional network in real time, or automatically transmitted back from the set-top box according to the transmission condition.
Fig. 3 is a flowchart illustrating a method for automatically returning a viewing behavior record according to a return condition by a set-top box, the method comprising the following steps:
301: collecting viewing behaviors and generating viewing behavior records;
302: judging whether the viewing behavior record meets a return condition, if so, sending the viewing behavior record (step 303), and continuing to the next step; if not, storing the viewing behavior record (step 304), and returning;
305: generating basic data according to the viewing behavior record, wherein the basic data comprises: channel ID, set-top box ID, viewing period starting time a and analysis period ending time b;
306: and storing the basic data to a viewing information table.
Wherein, the return condition is the maximum storage data amount required by the return of the viewing behavior record or the longest return time interval required by the return of the viewing behavior record.
Wherein the step of generating the basic data according to the viewing behavior record comprises:
checking and format conversion are carried out on the viewing behavior record;
and converting the converted viewing behavior records into basic data according to the classification of the channel ID, the set-top box ID, the viewing time interval starting time a and the viewing time interval ending time b.
According to this embodiment, it is also necessary to preset analysis conditions so as to filter the basic data and the user information according to the analysis conditions, extract users meeting the requirements, and calculate viewing data and count the viewing rate.
The analysis conditions comprise a channel ID, an analysis period starting time A, an analysis period ending time B, a minimum viewing duration or a minimum viewing duration percentage T, and whether continuous viewing is performed, and the analysis conditions, the viewing conditions and the arrival conditions are used for filtering basic data.
T may be set according to statistical requirements, and may be set to 1 minute, 3 minutes, or 5 minutes, for example.
Fig. 4 is a flowchart illustrating a method for retrieving basic data in a viewing information table according to preset analysis conditions, viewing conditions and arrival conditions, where in this embodiment, T is a minimum viewing duration, and as shown in fig. 4, the method for retrieving basic data in a viewing information table according to an embodiment of the present invention includes the following steps:
401: searching a first piece of basic data according to preset analysis conditions, wherein the analysis conditions at least comprise a channel ID, analysis time interval starting time A, analysis time interval ending time B, minimum watching duration T and whether continuous watching is carried out;
402: judging whether the channel ID in the basic data is equal to the channel ID in the analysis condition, if so, performing the next step, otherwise, searching the next piece of basic data (step 403);
404: judging whether the viewing time interval starting time a and the viewing time interval ending time B in the basic data meet viewing conditions of A & lt B & B & gt a, if so, performing the next step, otherwise, searching the next basic data (step 403);
405: calculating effective viewing time t according to whether continuous viewing is carried out or not;
406: judging whether the effective viewing duration meets the condition that the arrival time T is more than or equal to T, if so, performing the next step, otherwise, searching the next piece of basic data (step 403);
407: extracting the set-top box ID of the basic data and storing the set-top box ID;
408: and judging whether the last basic data is reached, if so, ending, otherwise, searching the next basic data (step 403).
According to the present embodiment, the order of the determination steps 402, 404, and 406 is not limited, and any method may be used as long as the basic data satisfying the analysis condition, the arrival condition, and the viewing condition is retrieved from the viewing information table according to the preset analysis condition.
According to the method for searching the viewing information table, only one viewing condition A < b is used&B > a includes four time distribution situations as shown in FIGS. 1A-1D, so that basic data meeting the viewing condition can be screened out by scanning the viewing information table onceTherefore, the data are further screened and counted conveniently, the counting efficiency is greatly improved, and the system resources are saved. And due to the adoption of formula The effective viewing time is calculated, and the statistical efficiency is improved while the system resources are saved.
In the embodiment shown in fig. 4, the minimum viewing duration T is preset, so when determining whether the reaching condition is satisfied, a calculation formula of the effective viewing duration T is selected according to whether continuous viewing is performed, and the effective viewing duration or the sum of the effective viewing durations is calculated according to the selected formula, so as to perform comparison and determination. According to other embodiments, the minimum viewing duration percentage T may be preset, and at this time, when determining whether the reaching condition is satisfied, the calculation formula is selected according to whether to continuously view, and then the percentage of the effective viewing duration or the sum of the effective viewing durations and the duration of the analysis period is calculated according to the selected formula, so as to perform comparison and determination. The specific calculation formula is already described in the foregoing, and is not described herein again.
In addition, the analysis conditions also include user information analysis conditions such as target people, regions and the like, and the analysis conditions are used for further filtering and screening the user information corresponding to the filtered basic data so as to calculate and count various analysis indexes according to the filtered and screened user information. The method comprises the following steps:
after the basic data meeting the conditions are obtained according to the method, the set top box IDs and the user information corresponding to the user information analysis conditions, including personnel information, target groups, regions and the like, are searched from the personnel information table, the region table and the watching information table (which are collectively called as a user information base) in the database according to the set top box IDs and the user information analysis conditions of the basic data, and then the data meeting the conditions are recorded.
According to this embodiment, searching for the eligible basic data according to the preset analysis condition and searching for the eligible user information according to the user information analysis condition in the preset analysis condition may be performed simultaneously or sequentially, and the present invention is not limited thereto.
Therefore, the user information can be further filtered and screened according to the user information analysis conditions such as target crowds, areas and the like in the preset analysis conditions, and the user information meeting the conditions is obtained.
In addition, in order to further improve the statistical efficiency, the embodiment of the present invention may also calculate the attribute weight in advance according to the attribute of the person attribute table in the database, and store the person attribute weight in the weight value table in the database, so as to be used when performing the index calculation.
At this time, a person attribute weight may be added when the analysis index is calculated according to the user information and a calculation formula corresponding to the analysis index, and the method includes:
searching a weight value table according to the user information extracted in the step to obtain a figure attribute weight value;
and calculating the analysis indexes according to the user information, the figure attribute weight and a calculation formula corresponding to the analysis indexes.
The analysis index is one of the preset analysis conditions, and is preset by a statistical staff according to the statistical requirement so as to select a calculation formula corresponding to the analysis index to calculate and count the index.
Here, it should be noted that the weighting is a core element in the process of viewing data processing. In the audience data processing, the purpose of weighting is to correct the deviation between the sample structure and the overall structure to obtain data that accurately reflects the overall audience situation.
For example, assume a city population of 10 million, with 48% male and 52% female; the number of sampled samples is 1000, the gender structure in the sample deviates from the overall gender structure, and the samples are respectively 420 men and 580 women, so that the male weight (the number of men in the sample represented in the overall) is different from the female weight, that is, the male weight is equal to the total number of men/the number of men in the sample is equal to 48000/420 and equal to 114.3; the female weight is 52000/580 89.6 in the total female population/sample. Assuming that 500 people, male 180 and female 320, watch a program in the sample, then: if the total number of people watching the program is equal to sample number of man watching people multiplied by weight value and sample number of woman watching people multiplied by woman weight value is equal to 180 multiplied by 114.3+320 multiplied by 89.6 is equal to 49246, the program rating is equal to 49264/100000 which is 49.3%, but not 500/300 which is 50%.
In the above example, the weighting variable is only one (gender), and in practice, the age, town and country, etc. may be used as the weighting value.
According to the method and the steps, after the user information meeting the preset analysis condition is extracted, various indexes can be calculated according to the analysis indexes and the calculation formulas corresponding to the analysis indexes.
In the field of digital tv, the analysis index is set and calculated according to the customer requirement or according to the operator requirement, the invention is not limited thereto, and only two examples are given to illustrate the application of the statistical method of the invention, and any analysis index calculation implemented according to the statistical method of the invention should be included in the protection scope of the invention.
In example one, the analysis index is arrival rate:
wherein, the total number of the audience people who continuously meet the reaching condition can be obtained from the database according to the retrieval result, and the total number of the people who continuously watch the program in the appointed analysis time period is met, and the analysis condition is as follows: target population, region, date, analysis time period, channel selected by the user.
The total number of the audience people who do not continuously meet the arrival conditions can also be obtained from the database according to the search results, the total number of the audience people meets the conditions that the programs are watched in the appointed analysis time period, the sum of the program watching time meets the arrival conditions, and the analysis conditions are as follows: target population, region, date, time period, channel selected by the user.
The population is referred to as the population, i.e., the sample population.
Wherein, the category is calculated according to the index selected by the user, and the corresponding weight value can be taken out from the weight table.
Example two, the analysis index is audience rating:
that is to say:
wherein, the total audience watching duration in the specific time interval meets the conditions as follows: target population, region, date, time period, channel selected by the user.
The weight is calculated according to the index selected by the user, and the corresponding weight value is taken out from the weight table.
Wherein, the total duration of the time period refers to the total duration of the specific time period of the general population.
According to the embodiment of the present invention, the statistical method is implemented by the statistical system of the embodiment of the present invention, and during the specific operation, the statistical personnel can operate according to the following steps:
setting analysis conditions and storing;
opening the analysis conditions and starting the analysis;
according to the information input in the analysis condition, the set information of target population, region, date, time period, channel, arrival condition, effective viewing condition, analysis index and the like is taken out from the analysis condition and stored in a temporary variable;
whether discontinuous time data need to be calculated, if so, deleting the arrival conditions in the temporary variables and carrying out the next step, otherwise, directly carrying out the next step;
connecting a database, and searching information meeting the analysis condition of the temporary variable from a region table, a channel information table, a personnel information table, a viewing information table and a weight value table;
storing the searched information in an intermediate variable;
according to the selected analysis index, using a corresponding calculation formula and the searched intermediate variable to start analysis;
and outputting an analysis result.
According to the method provided by the embodiment of the invention, the calculation and statistics of each index can be carried out on the viewing record returned by the set top box, so that the statistical efficiency is improved, the system resource is saved, and the waste and congestion of the system resource are avoided.
Example two:
fig. 5 is a block diagram of a digital television statistical system for implementing the statistical method according to the foregoing embodiment of the present invention, and as shown in fig. 5, the digital television statistical system according to the present invention includes a statistical server, where the statistical server includes:
the basic data importing unit 51 is configured to import basic data into the viewing information table in the database according to the statistical requirement, where the basic data also refers to viewing data of a user, and is generally collected by a set-top box and may be fed back to the digital television statistical system of the present invention through various ways. The statistical requirement may be a requirement of a statistical time period, for example, to count the audience rating of 6 months, the basic data importing unit 51 imports the basic data of the audience rating record of 6 months 1 to 6 months 30 in the data center server. In addition, the basic data may not have the ending time due to various possible reasons, and the basic data without the ending time may be processed according to a predetermined procedure, for example, if a default time is exceeded, the basic data is regarded as invalid processing.
The database 52 is configured to store broadcast data, family information, member information, set-top box information, weight information, advertisement prices, the basic data information, and the like in a table format, where the basic data information is stored in a viewing information table of the database, the weight information is pre-calculated according to the character attribute values and is stored in a weight table of the database, and the broadcast data, the family information, the member information, the set-top box information, the advertisement prices, and the like may be entered through the operation maintenance unit 57.
An analysis condition setting unit 53 for setting an analysis condition according to the statistical requirement. The analysis conditions include a channel ID, an analysis period start time a, an analysis period end time B, a minimum viewing duration or a minimum viewing duration percentage T, whether or not continuous viewing is performed, user information analysis conditions, analysis indexes, and the like.
A retrieving unit 54, configured to retrieve, according to a preset channel ID of an analysis condition, an analysis time period starting time a, an analysis time period ending time B, a minimum viewing duration or a minimum viewing duration percentage T, whether to continuously view, a viewing condition a & B & gta, and an arrival condition T ≧ T, each piece of basic data in the viewing information table in sequence, so as to obtain a set top box ID in all basic data that meet the condition;
the searching unit 55 is configured to search a user information base according to the set top box ID and a user information analysis condition in a preset analysis condition, so as to obtain user information meeting the condition;
the analysis index calculation unit 56 is configured to calculate an analysis index result according to the user information and a calculation formula corresponding to the analysis index;
each piece of basic data comprises a set top box ID, a viewing period starting time a, a viewing period ending time b and a channel ID; when T is the minimum watching duration, T is the sum of the effective watching duration under the continuous watching condition or the effective watching duration under the discontinuous watching condition; and when the T is the minimum viewing duration percentage, the T is the percentage of the sum of the effective viewing durations under the continuous viewing condition or the discontinuous viewing condition and the duration of the analysis time period.
The formula for t is already described above, and is not described herein again.
And the operation maintenance unit 57 is used for performing operations of adding, deleting and modifying data in the database 52.
According to this embodiment, the statistical system further comprises a set-top box and a data center server.
The following describes the composition of the audience rating statistical system of the digital television according to the embodiment of the present invention with reference to fig. 6, as shown in fig. 6, the audience rating statistical system of the digital television according to the present invention mainly includes a set-top box 61, a data center server 62 and a statistical server 63, where:
the statistical server 63 is configured to import the basic data stored in the data center server 62 into the viewing information table in the database as required, filter the basic data according to preset analysis conditions, arrival conditions, effective viewing conditions, and the like, filter the user information according to the preset analysis conditions, obtain the user information meeting the preset analysis conditions, calculate and count various indexes of the screened user information according to the analysis indexes and the calculation formulas corresponding to the analysis indexes, and generate the desired form of audience rating data for output. This part has already been explained in the foregoing and will not be described in detail here.
The set-top box 61 is used for recording and storing the screened effective original viewing data, and automatically initiates a connection request to the data center server 62 through the digital television bidirectional network when a return condition is reached, so as to return the original viewing data to the data center server 62.
According to an embodiment of the present invention, the set-top box 61 includes a viewing behavior collecting unit 71, a storing unit 72, a determining unit 73, and a viewing behavior record returning unit 74, as shown in fig. 7, where:
the viewing behavior collecting unit 71 is configured to collect viewing behavior data of a user, generate a viewing behavior record, and store the viewing behavior record in the storage unit 72, where the viewing behavior record includes: normal viewing record, null record, business mode record, standby record.
The records can be identified by adopting different ONID, TSID and SERVICEID combinations, state change information of the set top box at each moment is contained, and various viewing behaviors of a user are reflected. The change of the state of the set-top box comprises switching in/out of a current broadcast program, starting up/shutting down, entering/exiting data broadcasting, entering/exiting stock information, entering/exiting NVOD, entering/exiting games, entering/exiting e-mails and the like. The statistical server keeps the program list and the service mode number corresponding to the three field combination, if the combination of the three fields in the received data record is not defined in the table, the data is regarded as invalid data, and the calculation of the audience rating index is not carried out.
The normal watching record means that the user watches the same channel program for a certain time length continuously under the condition of watching the television program normally, so as to form a watching behavior once and generate the normal watching record. The time length as a threshold interval parameter may be set by the front end, such as a data center server, and stored in the set-top box.
The empty record means that the dwell time of each channel change in the continuous channel change of the user does not exceed the preset threshold interval, and the time is recorded as the empty record. The ONID of the empty record is 0x0000, the TSID is 0x0000, and the SERVICEID is 0x 0000.
The service mode record refers to a record reflecting viewing behavior generated when a user enters various functional services of the set-top box, wherein the functional services comprise EPG program guide, VOD/NVOD viewing, data broadcasting, games, stocks, e-mails and the like.
The above is only an example, and since the differences between local digital television network operators and set-top box manufacturers are very large, the business model records are not mentioned or need to be negotiated by all parties. Meanwhile, the service mode record can be correspondingly corrected along with the rapid development of the domestic digital television value-added service and the change of the investigation requirement. The scope of the present invention is not limited thereto, and any equivalent changes made in accordance with the spirit of the present invention should be included in the scope of the present invention.
The standby record is generated by the operation of closing the set-top box by remote control of a user, or the last approximate shutdown time is calculated by the information of recording the startup state by the system at intervals.
According to the above embodiment, the present invention subdivides viewing events by type, including, in addition to channel change information for switching in and switching out channels, a power-on/off record, a service mode record, satisfaction information, personnel information, and the like, and different types of events are represented by combinations of different original network IDs, transport stream IDs, and service IDs. The on-off, channel change, service mode and the like reflect the objective working state of the set top box, namely the audience rating condition of a user; and the information of satisfaction, personnel and the like can reflect who looks and how to evaluate. Therefore, the method can receive user feedback besides obtaining objective audience rating indexes, and obtain subjective evaluation of the user to provide extended applications such as personalized services.
The storage unit 72 is configured to store preset parameters and state parameters including the return conditions, and sequentially store each viewing behavior record according to the time sequence generated by the record. The storage unit 72 may be implemented by using a non-volatile memory, and reserve a sufficient storage space, and record a new viewing event, i.e. a viewing behavior record in the memory when the new viewing event is generated.
The preset parameters stored in the storage unit 72 of the set-top box 61 include: threshold interval, feedback condition, interval of updating shutdown time record, IP address and port number of data center server, time delay of reconnection after connection failure, etc., and the preset parameters can be expanded and modified according to requirements. Parameters such as threshold interval, feedback condition, interval for updating the shutdown time record, time delay for reconnection after connection failure and the like can be modified by the data center server or updated by the software of the set-top box; and the IP address and the port number of the data center server are preferably updated through the software upgrade of the set-top box due to the consideration of safety factors.
According to this embodiment, the threshold interval is used to effectively determine the viewing events, for example, a user often browses each channel during watching tv, each channel stays for a short time during browsing, and it should not be determined that the user watches the channels, and such data returned in real time is useless information, which wastes network resources and burdens the server. The set-top box presets the parameters of the threshold interval, and can flexibly define how long a user stays in a channel and record the time as an effective viewing record. By doing this at the set-top box end, useless data can be greatly reduced, storage space can be reduced, and network bandwidth can be saved. The parameters can be updated when the software of the set-top box is upgraded, and can also be updated by the data center server according to the communication protocol in the process of returning.
According to this embodiment, the backhaul conditions include a maximum amount of stored data that meets the backhaul requirement and a maximum backhaul time interval that meets the backhaul requirement. The set-top box according to the embodiment of the invention adopts a mode of firstly storing the viewing behavior record and then returning according to the returning condition because the statistics of the viewing rate does not need to be calculated in real time and the viewing information can be obtained within a certain time period according to the service requirement. The return condition can be flexibly controlled by setting parameters in software, and the return mechanism can be triggered when the recorded data amount is accumulated to a certain degree, or can be triggered when the last return time reaches a certain interval length. The parameters can be updated when the software of the set-top box is upgraded, and can also be updated by the data center server according to the communication protocol in the process of returning. In extreme cases, it is set that the same real-time feedback effect as the patent application in the background art can be achieved by returning every second or every record.
Compared with real-time backhaul, the advantages of the present invention using store-before-backhaul include: (1) the viewing information generated each time is only 16 bytes, the overhead caused by handshake information generated each time of returning, encapsulation of IP packets and the like is much larger than that, and the waste of network resources is caused when the server is continuously in the process of establishing and disconnecting the connection with each set top box under the condition of a large number of clients. Channel switching information generated by a large number of users in a short time under the conditions of starting or ending programs with high audience rating and the like can even cause overload paralysis of a server; under the condition of storing and returning, the time distribution of different users reaching the returning condition is more even, and the bandwidth utilization rate is higher. (2) Although the set-top box provides an IP network interface, the set-top box is still limited by the access mode of the IP network of the user home, real-time return needs to be online at any time, and the expense of the IP access network can be generated according to the local network deployment condition; the non-real-time mode can finish the return transmission with smaller bandwidth cost when the user surfs the internet, and the user does not need to be online at any time. (3) The scheme of the invention distinguishes effective data and invalid data during storage, and only returns the effective data, thus the defect can be improved.
The state parameters of the set-top box include: the number of the set-top box, the number of the intelligent card, the IP address of the set-top box, the amount of data which is not transmitted and the like.
The storage unit 72 of the set-top box 61 also stores the records in sequence according to the time sequence generated by the records, and if the storage area is full, the earliest data is cyclically covered. The system records a current latest written position pointer and a position pointer of last transmission end, and data between the current latest written position pointer and the position pointer of last transmission end is to-be-transmitted data which is transmitted back at this time. If the waiting data occupies the whole storage space, namely the current writing pointer is coincident with the last transmission end pointer, the newly written data still covers the oldest data, at this time, the oldest data record is discarded, and only the updated record is reserved. The last transmission end pointer moves backwards along with the current write pointer, meanwhile, the storage area full mark is set, and the data of the whole storage area is transmitted back next time.
According to other embodiments of the present invention, the set-top box 61 may further comprise a clock synchronization unit (not shown) for synchronizing with a clock in the digital television system to record the viewing event time at the time of the digital television system. According to DVB standard, the digital television transmission stream contains a time table TDT, the set-top box is synchronous with a system clock when working normally, 5 bytes of time information is extracted from the time table according to DVB standard, the time is an accurate time point for users to watch events, and the situation that network delay, congestion, packet loss, server busy and the like possibly caused by adopting the time of receiving the watching data by a statistical server as the watching time are avoided to generate error information and even lose information.
After the set-top box is started, synchronizing the set-top box with a system clock and recording the set-top box as a starting event; recording the channel switching-in time when a user performs channel switching and other operations, judging that the user does not switch out at a threshold interval, judging the channel switching event, recording the switching-in time, an original network ID, a transport stream ID and a service ID, and otherwise, not recording or recording as a null record; the user generates service mode record when using value added services such as NVOD, data broadcast, stock, etc., and different service applications are represented by the combination of the three IDs. When watching, the user can generate evaluation records of personnel and satisfaction degree by operating a set top box menu. The set-top box updates the power-off time value to the current time every a short period of time, so that the set-top box is powered on next time under the condition of sudden power-off such as power failure and the like, and the time is extracted and stored as the last power-off record. When a certain preset condition is reached, the set-top box transmits back all the stored viewing records through the network. And emptying the storage area after the transmission is finished. In the transmission process, the set-top box initiates connection to the server, reports the ID, the storage state and various parameters of the set-top box, and the server responds to the request of the set-top box to transmit data back or update the parameters. And disconnecting after the completion.
The determining unit 73 is configured to determine whether the viewing behavior record reaches the return condition, which has been described above and will not be described herein.
If the result of the judgment is yes, a request for establishing connection is initiated to the data center server 62 through the viewing behavior record returning unit, and the viewing behavior record is automatically returned to the data center server 62.
If the result of the judgment is negative, the set-top box 61 continues to collect the viewing behavior data, generates a viewing behavior record and stores the viewing behavior record in the storage unit 72.
The back transmission unit 74 is configured to send the viewing behavior record to the data center server 62 according to the judgment result of the judgment unit 73. The interaction flow between the set-top box 61 and the data center server 62 will be described in detail below.
Referring to fig. 8 again, the step of the set-top box automatically returning the viewing behavior record according to the returning condition includes:
801: collecting viewing behavior data, generating viewing behavior records and storing the viewing behavior records;
802: judging whether the longest time interval required by the return transmission is reached, if so, performing a step 803, otherwise, performing a step 804;
803: returning the viewing behavior record;
804: and judging whether the maximum storage data amount required by the backhaul is reached, if so, performing step 803, otherwise, performing step 801.
The data center server 62 is configured to receive the original viewing data uploaded by the set-top box 61, that is, the viewing behavior record, perform verification and format conversion, generate basic data, and prepare for storage.
According to the present embodiment, the data center server 62 includes a viewing behavior record receiving unit 91, a data format conversion and verification unit 92, a data center 93, and a set-top box parameter modification unit 94, as shown in fig. 9, where:
the viewing behavior record receiving unit 91 is configured to receive the viewing behavior record returned by the return unit 74 of the set-top box 61.
The data format conversion and verification unit 92 is configured to perform verification and format conversion on the viewing behavior record, generate basic data, and store the basic data in a data center, and specifically includes the following steps:
(1) checking message information including viewing behavior records returned by the set top box 61, and removing abnormal information (including messy codes, errors and the like);
(2) converting the message information into basic data according to keywords such as regions, channels and the like according to the requirements preset by the user;
(3) and storing the converted basic data in a data center in a file form for storage and waiting for warehousing.
The data center 93 is configured to store the basic data, which includes a channel ID, a set-top box ID, a viewing period start time a, and a viewing period end time b.
The set-top box parameter modifying unit 94 is configured to modify parameters of the set-top box, where the modified parameters include a threshold interval, a backhaul condition, an interval for updating a shutdown time record, a time delay for reconnection after a connection failure, and the like.
Referring again to fig. 10, the interaction process between the data center server 62 and the set-top box 61 includes the following steps:
the set-top box 61 automatically initiates a connection to the data center server 62 when the amount of stored data reaches the maximum amount of stored data or the preset maximum return time interval is reached from the last return time interval. When the set-top box 61 is connected to the data center server 62, a connection request instruction is sent (step 1001), where the connection request instruction includes information such as a self-id, an IP address, an operating parameter, and an amount of data that is not transmitted, where the self-id is a number that can uniquely identify the user, and may be an intelligent card number, an MAC address, or a factory number.
The data centre server 62 confirms the identity of the set-top box 61 and sends a corresponding instruction to respond according to the action to be performed.
The set-top box 61 receives the instruction sent by the data center server 62 (step 1002), and determines the type of the instruction (step 1003).
In most cases, the data center server 62 sends a data fetching instruction (2), the set-top box 61 starts sending the data fetching instruction (step 1004) to return after receiving the data fetching instruction, the data center server 62 sends a data receiving confirmation instruction after receiving the data fetching instruction, the set-top box 61 receives the confirmation instruction (step 1005), whether the data sending is successful is judged according to the content of the confirmation instruction (step 1006), if so, the set-top box 61 moves the data fetching pointer backwards by the number of bytes transmitted (step 1007), otherwise, the data is continuously sent to the data center server 62.
When the parameters of the set-top box 61 need to be modified, the data center server 62 sends a parameter setting instruction (4) after the connection is established, and the set-top box 61 receives the instruction, modifies the parameters (step 1008), and sends a setting confirmation instruction to the data center server 62 (step 1009). If the setting is successful, the instruction content is sent to be a successful parameter setting confirmation instruction, and the data center server 62 can send the data instruction after receiving the successful confirmation; if the setting is failed, a parameter setting confirmation instruction with the instruction content failed is returned, and the data center server 62 retransmits the parameter setting instruction after receiving the failure confirmation.
In order to meet the storage requirement of a large amount of data, the data center server in the embodiment of the invention can adopt a server cluster load balancing technology.
The invention defines a whole set of protocols and specifications for conducting audience rating surveys and some extended applications using digital television set-top boxes. At present, a plurality of set top boxes with IP network access functions are available on the market. The scheme of the invention can be completely realized by modifying the set-top box embedded software on the existing hardware platform without changing hardware, the storage capacity of the common set-top box product is reserved with certain margin, and if the storage space built in the set-top box is insufficient, the storage chip can be expanded.
The work flow is briefly described as follows: after the set-top box is started, synchronizing the set-top box with a system clock and recording the set-top box as a starting event; recording the channel switching-in time when a user performs channel switching and other operations, judging that the user does not switch out at a threshold interval, judging the channel switching event, recording the switching-in time, an original network ID, a transport stream ID and a service ID, and otherwise, not recording or recording as a null record; the user generates service mode record when using value added services such as NVOD, data broadcast, stock, etc., and different service applications are represented by the combination of the three IDs. When watching, the user can generate evaluation records of personnel and satisfaction degree by operating a set top box menu. The set-top box updates the power-off time value to the current time every a short period of time, so that the set-top box is powered on next time under the condition of sudden power-off such as power failure and the like, and the time is extracted and stored as the last power-off record. When a certain preset condition is reached, the set-top box transmits back all the stored viewing records through the network. And emptying the storage area after the transmission is finished.
In the transmission process, the set-top box initiates connection to the data center server, reports the ID, the storage state and various parameters of the set-top box, and the data center server responds to the requirement that the set-top box returns data or updates the parameters of the set-top box. And disconnecting after the completion. And the data center server performs checksum format conversion on the received data and prepares for storage. The statistical server imports basic data after verification and format conversion into the data center server according to statistical requirements, and converts the basic data into viewing data for storage according to broadcasting data, family information, member information, set top box information, advertisement price information and the like stored in a database. And the analysis platform of the statistical server performs index analysis on the audience rating data according to analysis conditions including analysis indexes, specific samples, broadcasting time, regions, channels and the like, and outputs an audience rating chart. Thus, the survey and statistics of the audience rating are completed.
The above-mentioned embodiments are intended to illustrate the objects, technical solutions and advantages of the present invention in further detail, and it should be understood that the above-mentioned embodiments are only exemplary embodiments of the present invention, and are not intended to limit the scope of the present invention, and any modifications, equivalent substitutions, improvements and the like made within the spirit and principle of the present invention should be included in the scope of the present invention.