Driving scene playback method, device and system and storage medium

By splitting the duration of the driving scene playback request into multiple time periods, and synchronizing and slicing data for each time period, the problem of mismatch in data timelines during playback is solved, and the accurate data issuance and the correctness of the timeline is achieved.

CN119893222APending Publication Date: 2025-04-25TUS CLOUD CONTROL (BEIJING) TECH LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202411959010.8
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-12-27
Publication Date
2025-04-25

AI Technical Summary

Technical Problem

In the prior art, when replaying driving scenarios, the issuance delays of multiple data types are inconsistent, resulting in the problem of timeline mismatch.

Method used

By splitting the duration of the playback request into multiple time periods, obtaining multiple preset types of playback data for each time period, and synchronizing and storing them in segments according to the timestamp, ensuring that the data is distributed in time period order during the playback process.

Benefits of technology

In this way, all types of data are sorted by the same timestamp by pre-divided data segments, avoiding the problem of timeline confusion.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119893222A_ABST
    Figure CN119893222A_ABST
Patent Text Reader

Abstract

The invention discloses a driving scene playback method, device and system and a storage medium, which are used for avoiding the problem of time axis mismatching during driving scene playback. The method comprises the following steps: when a target vehicle driving scene playback request is received, splitting a playback duration corresponding to the playback request into a plurality of time periods according to a preset time step length; acquiring multiple preset types of playback data in each time period; a list containing the playback data of the multiple preset types is generated, and each time period corresponds to one list; performing time synchronization on the playback data in each list according to a timestamp; and performing segmented storage on the multiple preset types of playback data after time synchronization according to the time sequence of the time period to which the playback data belongs, and in the playback process, issuing the segmented stored playback data to a sender of the playback request in a segmented manner according to the time sequence of the time period. By adopting the scheme, the problem of time axis mismatching during the playback of the driving scene is avoided.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present application relates to the field of data playback technology, and in particular to a driving scene playback method, device, system and storage medium. Background Art

[0002] Pre-playback data refers to the processing of raw data before video playback. Existing pre-playback data requires multiple data such as vehicle location, movement status, vehicle surrounding perception data, traffic lights, cloud decision control, etc., which are usually requested by the http protocol and played in combination by the browser. Alternatively, various data are sent by the websocket protocol and played in combination by the browser. However, when the websocket protocol is used to request multiple data types to send data, the server has inconsistent delays in sending data after receiving the request, resulting in mismatched playback timelines for various data.

[0003] Therefore, how to provide a driving scene playback method to avoid the time axis mismatch problem during driving scene playback has become a technical problem that needs to be solved urgently. Summary of the invention

[0004] The present application provides a driving scene playback method, device, system and storage medium to avoid timeline mismatch problems during driving scene playback.

[0005] The present application provides a driving scene playback method, comprising:

[0006] When receiving a playback request for a target vehicle driving scene, splitting the playback duration corresponding to the playback request into multiple time periods according to a preset time step;

[0007] Get playback data of multiple preset types in each time period;

[0008] Generate a list containing the playback data of the plurality of preset types, wherein each time period corresponds to a list;

[0009] Synchronize the playback data in each list according to the timestamp;

[0010] The playback data of multiple preset types after time synchronization are stored in segments according to the chronological order of the time periods to which they belong, and during the playback process, the segmented playback data are sent to the sender of the playback request in segments according to the chronological order of the time periods.

[0011] The beneficial effect of the present application is that when a playback request for a target vehicle driving scene is received, the playback duration corresponding to the playback request is divided into multiple time periods according to a preset time step, and then multiple preset types of playback data in each time period are obtained, and a list containing the multiple preset types of playback data is generated, wherein each time period corresponds to a list. The playback data in each list is then synchronized according to the timestamp, and the playback data of the multiple preset types after time synchronization are stored in segments according to the chronological order of the time periods to which they belong, and during the playback process, the segmented storage playback data is sent to the sender of the playback request in segments according to the chronological order of the time periods. Through this solution, since all types of data are sorted according to the same timestamp according to the pre-divided data segments, there will be no problem of confusion in the time axis.

[0012] In one embodiment, the method further comprises:

[0013] Determine the playback duration according to the start time and end time in the playback request;

[0014] When the playback duration is greater than the preset time period step, the playback duration is divided into multiple time periods according to the preset time period step.

[0015] In one embodiment, multiple preset types of playback data are obtained in each time period, including:

[0016] The playback data of each time period is obtained through multiple threads, wherein each thread is responsible for obtaining a specific type of data.

[0017] The beneficial effect of this embodiment is that after the time period is split, multiple threads are used to query the playback data of multiple preset types within the time period, which shortens the query time and improves the efficiency of data search.

[0018] In one embodiment, generating a list of playback data including the plurality of preset types includes:

[0019] Multiple threads merge their acquired data into the main thread;

[0020] A plurality of lists containing a plurality of preset types of data are generated through the main thread, wherein each time period corresponds to a list.

[0021] In one embodiment, the step of synchronizing the playback data in each list according to the timestamp includes:

[0022] Set up cursors for each type of data in each list, and generate an empty list for each list as the timeline list, start a loop, and each cursor loops over one type of data;

[0023] When the cursor cycles to the data with the smallest timestamp, the data with the smallest timestamp is added to the corresponding time axis list, and the cursor is moved to find the next data with the smallest timestamp;

[0024] When all data are added to the corresponding timeline list, the loop ends.

[0025] In one embodiment, the time-synchronized playback data of multiple preset types are stored in segments according to the time sequence of the time periods to which they belong, including:

[0026] The vehicle code is combined with the start and end time of the time period as a unique hash value of the playback data of the time period;

[0027] Using the unique hash value as an identifier, the data in the timeline list is stored in segments according to chronological order.

[0028] In one embodiment, the method further comprises:

[0029] During playback, the time-synchronized playback data of multiple preset types are sent down in segments, and the playback process is detected;

[0030] When it is detected that the playback progress of the playback data corresponding to the current time period reaches the preset progress, the playback data corresponding to the next time period is sent to the sender of the playback request.

[0031] The present application also provides a driving scene playback device, comprising:

[0032] A splitting module, for, when receiving a playback request for a target vehicle driving scene, splitting the playback duration corresponding to the playback request into multiple time periods according to a preset time step;

[0033] An acquisition module is used to acquire playback data of multiple preset types in each time period;

[0034] A generating module, configured to generate a list containing the playback data of the plurality of preset types, wherein each time period corresponds to a list;

[0035] The time synchronization module is used to synchronize the playback data in each list according to the timestamp;

[0036] The storage module is used to store the playback data of multiple preset types after time synchronization in segments according to the chronological order of the time periods to which they belong, and during the playback process, send the segmented playback data in segments according to the chronological order of the time periods to the sender of the playback request.

[0037] In one embodiment, the apparatus further comprises:

[0038] A determination module, used to determine the playback duration according to the start time and end time in the playback request;

[0039] The splitting module is used to split the playback duration into multiple time periods according to the preset time period step when the playback duration is greater than the preset time period step.

[0040] In one embodiment, the acquisition module is further used to:

[0041] The playback data of each time period is obtained through multiple threads, wherein each thread is responsible for obtaining a specific type of data.

[0042] In one embodiment, the generating module comprises:

[0043] The merging submodule is used for multiple threads to merge their acquired data into the main thread;

[0044] The first generating submodule is used to generate a plurality of lists containing a plurality of preset types of data through the main thread, wherein each time period corresponds to a list.

[0045] In one embodiment, the time synchronization module includes:

[0046] The second generation submodule is used to set up cursors for each type of data in each list, and generate an empty list for each list as a timeline list, start a loop, and each cursor corresponds to a type of data in the loop;

[0047] Add a submodule, which is used to add the data with the smallest timestamp to the corresponding time axis list when the cursor loops to the data with the smallest timestamp, and move the cursor to find the next data with the smallest timestamp;

[0048] The end submodule is used to end the loop when all data are added to the corresponding timeline list.

[0049] In one embodiment, the storage module comprises:

[0050] A combination submodule, used for combining the vehicle code with the start and end time of the time period as a unique hash value of the playback data of the time period;

[0051] The storage submodule is used to store the data in the timeline list in segmented order according to the chronological order using the unique hash value as an identifier.

[0052] In one embodiment, the apparatus further comprises:

[0053] A sending module, used for sending the playback data of multiple preset types after time synchronization in segments during playback, and detecting the playback process;

[0054] The sending module is also used to send the playback data corresponding to the next time period to the sender of the playback request when it is detected that the playback progress of the playback data corresponding to the current time period reaches a preset progress.

[0055] The present application also provides a driving scene playback system, including:

[0056] at least one processor; and,

[0057] a memory communicatively connected to the at least one processor; wherein,

[0058] The memory stores instructions that can be executed by the at least one processor, and the instructions are executed by the at least one processor to implement the driving scene playback method recorded in any of the above embodiments.

[0059] The present application also provides a computer-readable storage medium. When the instructions in the storage medium are executed by a processor corresponding to the driving scene playback system, the driving scene playback system can implement the driving scene playback method recorded in any of the above embodiments.

[0060] Other features and advantages of the present application will be described in the following description, and partly become apparent from the description, or be understood by practicing the present application. The purpose and other advantages of the present application can be realized and obtained by the structures specifically pointed out in the written description, claims, and drawings.

[0061] The technical solution of the present application is further described in detail below through the accompanying drawings and embodiments. BRIEF DESCRIPTION OF THE DRAWINGS

[0062] The accompanying drawings are used to provide a further understanding of the present application and constitute a part of the specification. Together with the embodiments of the present application, they are used to explain the present application and do not constitute a limitation of the present application. In the accompanying drawings:

[0063] Figure 1 This is a flowchart of a driving scene playback method in one embodiment of the present application;

[0064] Figure 2 A schematic diagram of a process of replaying data search in an embodiment of the present application;

[0065] Figure 3 This is a schematic diagram of sorting various types of data in a certain time period by timestamp in an embodiment of the present application;

[0066] Figure 4 This is a flowchart of requesting playback data in an embodiment of the present application;

[0067] Figure 5This is a schematic diagram of accurate data delivery in an embodiment of the present application;

[0068] Figure 6 This is a structural schematic diagram of a driving scene playback device in one embodiment of the present application;

[0069] Figure 7 This is a schematic diagram of the hardware structure of a driving scene playback system in one embodiment of the present application. DETAILED DESCRIPTION

[0070] The preferred embodiments of the present application are described below in conjunction with the accompanying drawings. It should be understood that the preferred embodiments described herein are only used to illustrate and explain the present application and are not used to limit the present application.

[0071] Figure 1 Flow chart of a driving scene playback method in one embodiment of the present application. Figure 1 As shown, the method can be implemented as the following steps S101-S105:

[0072] In step S101, when a playback request of a target vehicle driving scene is received, the playback duration corresponding to the playback request is divided into multiple time periods according to a preset time step;

[0073] In step S102, multiple preset types of playback data in each time period are obtained;

[0074] In step S103, a list containing the playback data of the plurality of preset types is generated, wherein each time period corresponds to a list;

[0075] In step S104, the playback data in each list is time synchronized according to the timestamp;

[0076] In step S105, the time-synchronized playback data of various preset types are stored in segments according to the chronological order of the time periods to which they belong, and during the playback process, the segmented playback data are sent to the sender of the playback request in segments according to the chronological order of the time periods.

[0077] In the present application, first, when a playback request for a target vehicle driving scene is received, the playback duration corresponding to the playback request is split into multiple time periods according to a preset time step. Figure 2 The flowchart of playback data search in one embodiment of the present application is shown below. When initiating a playback request, the parameters need to carry information such as vehicle code, start time, and end time. Therefore, the playback duration can be determined based on the start time and end time in the playback request. When the playback duration is greater than the preset time step, the playback duration is divided into multiple time periods based on the preset time step. The preset time step can be pre-configured according to the needs. Figure 2 As shown, the playback data of a certain vehicle from 10 to 11 o'clock is needed, and the playback time is 1 hour, which is greater than the preset time step of 5 minutes, so the playback time is divided into 12 time periods of 5 minutes. Of course, when the playback time is less than or equal to the preset time step, the playback time is used as an independent time period.

[0078] Secondly, after splitting into multiple time periods, multiple preset types of playback data are obtained in each time period. Since the playback data includes vehicle trajectory data, traffic light data, roadside radar perception data, etc., the playback data of each time period is obtained through multiple threads, where each thread is responsible for obtaining a specific type of data. Through the above two steps, after receiving the playback request, the overall playback duration of the request is split into multiple natural time periods, and then multiple threads concurrently search for data, which optimizes the limitations of traditional single long time period query data and improves the efficiency of data query and the overall response speed.

[0079] Thirdly, based on the different data found by multiple threads in each time period, a list containing the playback data of the plurality of preset types can be generated, wherein each time period corresponds to a list. Each thread is responsible for processing the minimum time period of a certain type of playback data. After the query is completed, the multiple threads merge the data obtained by each thread into the main thread; multiple lists containing the data of the plurality of preset types are generated by the main thread, wherein each time period corresponds to a list. Figure 2 As shown, different types of data are obtained for each time period through multiple threads, and then the main thread obtains ordered data lists of various types for several time periods after querying each thread, forming a multi-type data table for 10:00-10:05, ..., a multi-type data table for 10:55-11:00. Specifically, in order to better control system resources, tools such as thread pools can be used, or the number of threads can be controlled by oneself.

[0080] Then, the playback data in each list is time synchronized according to the timestamp. Figure 3 This is a schematic diagram of sorting various types of data in a certain time period by timestamp in an embodiment of the present application, such as Figure 3 As shown, a cursor is set up for each type of data in each list, and an empty list is generated for each list as a timeline list, and a loop is started, with each cursor corresponding to a type of data in the loop; when the cursor loops to the data with the smallest timestamp, the data with the smallest timestamp is added to the corresponding timeline list, and the cursor is moved to find the next data with the smallest timestamp; when all data are added to the corresponding timeline list, the loop ends.

[0081] Finally, the playback data of various preset types after time synchronization are segmented and stored in the chronological order of the time periods to which they belong. In the present application, the arranged time period data is stored in a hash table format. Specifically, the vehicle code and the start and end time of the time period are combined together as the unique hash value of the playback data of the time period; using the unique hash value as an identifier, the data in the timeline list is segmented and stored in the chronological order. Figure 4 FIG. 1 is a flowchart of requesting playback data in an embodiment of the present application. Figure 4 As shown, a request is made to play the driving situation of vehicle A at 10:08. When calculating the hash value, 10:08 is within the time period of 10:05-10:10, so the encoded hash value is A_1005_1010. During the playback process, the playback data stored in segments are sent to the sender of the playback request in the chronological order of the time periods. It is understandable that during the playback process, the playback data of multiple preset types after the time synchronization are sent in segments, and the playback process is detected; when it is detected that the playback progress of the playback data corresponding to the current time period reaches the preset progress, the playback data corresponding to the next time period is sent to the sender of the playback request.

[0082] It should be noted that, in this application, the arranged time period data will also be sent according to the actual time intervals to ensure the accurate sending of the data. Figure 5 Schematic diagram of accurate data delivery in one embodiment of the present application, such as Figure 5 As shown in the figure, the first time of sending after receiving the playback request needs to be recorded as the start time of sending; the timestamp of the first sent data after receiving the playback request needs to be recorded as the historical start time; traverse the timeline list, the time difference between the timestamp of each sent data and the historical start time is the actual time interval. The time difference between the current time and the start time of sending is the sending time interval. When the sending time interval is less than the actual time interval, wait for the corresponding time until the intervals between the two are consistent before sending.

[0083] The beneficial effect of the present application is that when a playback request for a target vehicle driving scene is received, the playback duration corresponding to the playback request is divided into multiple time periods according to a preset time step, and then multiple preset types of playback data in each time period are obtained, and a list containing the multiple preset types of playback data is generated, wherein each time period corresponds to a list. The playback data in each list is then synchronized according to the timestamp, and the playback data of the multiple preset types after time synchronization are stored in segments according to the chronological order of the time periods to which they belong, and during the playback process, the segmented storage playback data is sent to the sender of the playback request in segments according to the chronological order of the time periods. Through this solution, since all types of data are sorted according to the same timestamp according to the pre-divided data segments, there will be no problem of confusion in the time axis.

[0084] In one embodiment, the method can also be implemented as the following steps A1-A2:

[0085] In step A1, the playback duration is determined according to the start time and end time in the playback request;

[0086] In step A2, when the playback duration is greater than the preset time period step, the playback duration is divided into multiple time periods according to the preset time period step.

[0087] In one embodiment, the above step S102 may be implemented as follows:

[0088] The playback data of each time period is obtained through multiple threads, wherein each thread is responsible for obtaining a specific type of data.

[0089] In one embodiment, the above step S103 may be implemented as the following steps B1-B2:

[0090] In step B1, multiple threads merge their acquired data into the main thread;

[0091] In step B2, a plurality of lists containing a plurality of preset types of data are generated by the main thread, wherein each time period corresponds to a list.

[0092] In one embodiment, the above step S104 may be implemented as the following steps C1-C3:

[0093] In step C1, a cursor is set for each type of data in each list, and an empty list is generated for each list as a time axis list, and a loop is started, and each cursor loops correspondingly for one type of data;

[0094] In step C2, when the cursor loops to the data with the smallest timestamp, the data with the smallest timestamp is added to the corresponding time axis list, and the cursor is moved to find the next data with the smallest timestamp;

[0095] In step C3, when all data are added to the corresponding time axis list, the loop ends.

[0096] In one embodiment, the above step S105 can be implemented as the following steps D1-D2:

[0097] In step D1, the vehicle code and the start and end time of the time period are combined as a unique hash value of the playback data of the time period;

[0098] In step D2, the data in the timeline list is stored in segments according to chronological order using the unique hash value as an identifier.

[0099] In this embodiment, the vehicle code is combined with the start and end time of the time period as the unique hash value of the playback data of the time period. Figure 4 As shown, when storing the playback data of vehicle A, the playback data is divided into three time periods: 10:00-10:05, 10:05-10:10, and 10:10-10:15, and the playback data of different time periods are encoded according to hash values, where the hash value of each time period is obtained by combining the vehicle code and the start time of the time period, and the hash values ​​corresponding to the above three time periods are A_1000_1005, A_1005_1010, and A_1010_1015, respectively.

[0100] Then, the data in the timeline list is stored in segments according to chronological order using the unique hash value as an identifier.

[0101] It can be seen that in this application, since the playback data is stored in segments, when a request for playback of a driving scene of a target vehicle at a specific time is received, a hash value corresponding to the playback request is calculated based on the target vehicle code and the specific time, and then the playback data of the corresponding vehicle and the corresponding time period is located based on the hash value. Figure 4 As shown, when requesting to play the playback data of vehicle A at 10:08, since 10:08 is within the time period of 10:05-10:10, the hash value of the corresponding playback request is A_1005_1010, so the hash value of the corresponding time period can be calculated based on the specific time, so as to directly locate the playback data of the corresponding time period, and therefore, the playback data of the corresponding time period can be directly extracted from the cache according to the calculated hash value. Therefore, there is no need to load the entire playback data, which improves the data response efficiency and shortens the time delay.

[0102] In one embodiment, the method can also be implemented as the following steps E1-E2:

[0103] In step E1, during the playback process, the time-synchronized playback data of multiple preset types are sent down in segments, and the playback process is detected;

[0104] In step E2, when it is detected that the playback progress of the playback data corresponding to the current time period reaches the preset progress, the playback data corresponding to the next time period is sent to the sender of the playback request.

[0105] In one embodiment, the method can also be implemented as the following steps F1-F5:

[0106] In step F1, the first time of sending after receiving the playback request is recorded as the start time of sending;

[0107] In step F2, the timestamp of the first data sent after receiving the playback request is recorded as the historical start time;

[0108] In step F3, the time axis list is traversed, and the time difference between the timestamp of each sent data and the historical start time is the actual time interval;

[0109] In step F4, the time difference between the current time and the start time of sending is the sending time interval;

[0110] In step F5, when the sending time interval is smaller than the actual time interval, the corresponding time is waited until the two intervals are consistent, and then the sending of data begins.

[0111] Figure 6 Schematic diagram of the structure of a driving scene playback device in one embodiment of the present application. Figure 6 As shown, the device comprises:

[0112] A splitting module 601 is used for, when receiving a playback request for a target vehicle driving scene, splitting the playback duration corresponding to the playback request into multiple time periods according to a preset time step;

[0113] An acquisition module 602 is used to acquire playback data of multiple preset types in each time period;

[0114] A generating module 603 is used to generate a list containing the playback data of the plurality of preset types, wherein each time period corresponds to a list;

[0115] A synchronization module 604, used to synchronize the playback data in each list according to the timestamp;

[0116] The storage module 605 is used to store the playback data of multiple preset types after time synchronization in segments according to the chronological order of the time periods to which they belong, and during the playback process, send the segmented playback data in segments according to the chronological order of the time periods to the sender of the playback request.

[0117] In one embodiment, the apparatus further comprises:

[0118] A determination module, used to determine the playback duration according to the start time and end time in the playback request;

[0119] The splitting module is used to split the playback duration into multiple time periods according to the preset time period step when the playback duration is greater than the preset time period step.

[0120] In one embodiment, the acquisition module is further used to:

[0121] The playback data of each time period is obtained through multiple threads, wherein each thread is responsible for obtaining a specific type of data.

[0122] In one embodiment, the generating module comprises:

[0123] The merging submodule is used for multiple threads to merge their acquired data into the main thread;

[0124] The first generating submodule is used to generate a plurality of lists containing a plurality of preset types of data through the main thread, wherein each time period corresponds to a list.

[0125] In one embodiment, the synchronization module includes:

[0126] The second generation submodule is used to set up cursors for each type of data in each list, and generate an empty list for each list as a timeline list, start a loop, and each cursor corresponds to a type of data in the loop;

[0127] Add a submodule, which is used to add the data with the smallest timestamp to the corresponding time axis list when the cursor loops to the data with the smallest timestamp, and move the cursor to find the next data with the smallest timestamp;

[0128] The end submodule is used to end the loop when all data are added to the corresponding timeline list.

[0129] In one embodiment, the storage module comprises:

[0130] A combination submodule, used for combining the vehicle code with the start and end time of the time period as a unique hash value of the playback data of the time period;

[0131] The storage submodule is used to store the data in the timeline list in segmented order according to the chronological order using the unique hash value as an identifier.

[0132] In one embodiment, the apparatus further comprises:

[0133] A sending module, used for sending the playback data of multiple preset types after time synchronization in segments during playback, and detecting the playback process;

[0134] The sending module is also used to send the playback data corresponding to the next time period to the sender of the playback request when it is detected that the playback progress of the playback data corresponding to the current time period reaches a preset progress.

[0135] Figure 7 FIG. 1 is a schematic diagram of the hardware structure of a driving scene playback system in one embodiment of the present application. Figure 7 As shown, the driving scene playback system includes:

[0136] at least one processor 720; and,

[0137] A memory 704 in communication with the at least one processor 720; wherein,

[0138] The memory 704 stores instructions that can be executed by the at least one processor 720, and the instructions are executed by the at least one processor 720 to implement the driving scene playback method recorded in any of the above embodiments.

[0139] Reference Figure 7 The driving scene playback system 700 may include one or more of the following components: a processing component 702 , a memory 704 , a power component 706 , a multimedia component 708 , an audio component 710 , an input / output (I / O) interface 712 , a sensor component 714 , and a communication component 716 .

[0140] The processing component 702 generally controls the overall operation of the driving scene playback system 700. The processing component 702 may include one or more processors 720 to execute instructions to complete all or part of the steps of the above method. In addition, the processing component 702 may include one or more modules to facilitate the interaction between the processing component 702 and other components. For example, the processing component 702 may include a multimedia module to facilitate the interaction between the multimedia component 708 and the processing component 702.

[0141] The memory 704 is configured to store various types of data to support the operation of the driving scene playback system 700. Examples of such data include instructions for any application or method operating on the driving scene playback system 700, such as text, pictures, videos, etc. The memory 704 can be implemented by any type of volatile or non-volatile storage device or a combination thereof, such as static random access memory (SRAM), electrically erasable programmable read-only memory (EEPROM), erasable programmable read-only memory (EPROM), programmable read-only memory (PROM), read-only memory (ROM), magnetic memory, flash memory, magnetic disk or optical disk.

[0142] The power supply component 706 provides power to various components of the driving scene playback system 700. The power supply component 706 may include a power management system, one or more power supplies, and other components associated with generating, managing, and distributing power to the driving scene playback system 700.

[0143] The multimedia component 708 includes a screen that provides an output interface between the driving scene playback system 700 and the user. In some embodiments, the screen may include a liquid crystal display (LCD) and a touch panel (TP). If the screen includes a touch panel, the screen may be implemented as a touch screen to receive input signals from the user. The touch panel includes one or more touch sensors to sense touch, slide, and gestures on the touch panel. The touch sensor may not only sense the boundaries of the touch or slide action, but also detect the duration and pressure associated with the touch or slide operation. In some embodiments, the multimedia component 708 may also include a front camera and / or a rear camera. When the driving scene playback system 700 is in an operating mode, such as a shooting mode or a video mode, the front camera and / or the rear camera may receive external multimedia data. Each front camera and rear camera may be a fixed optical lens system or have a focal length and optical zoom capability.

[0144] The audio component 710 is configured to output and / or input audio signals. For example, the audio component 710 includes a microphone (MIC), and when the driving scene playback system 700 is in an operating mode, such as an alarm mode, a recording mode, a voice recognition mode, and a voice output mode, the microphone is configured to receive an external audio signal. The received audio signal can be further stored in the memory 704 or sent via the communication component 716. In some embodiments, the audio component 710 also includes a speaker for outputting audio signals.

[0145] I / O interface 712 provides an interface between processing component 702 and peripheral interface modules, such as keyboards, click wheels, buttons, etc. These buttons may include but are not limited to: a home button, a volume button, a start button, and a lock button.

[0146] The sensor assembly 714 includes one or more sensors for providing various aspects of status evaluation for the driving scene playback system 700. For example, the sensor assembly 714 may include a sound sensor. In addition, the sensor assembly 714 may detect the on / off state of the driving scene playback system 700, the relative positioning of the components, such as the display and keypad of the driving scene playback system 700, and the sensor assembly 714 may also detect the operating state of the driving scene playback system 700 or a component of the driving scene playback system 700, the driving scene playback system 700 orientation or acceleration / deceleration and the temperature change of the driving scene playback system 700. The sensor assembly 714 may include a proximity sensor configured to detect the presence of nearby objects without any physical contact. The sensor assembly 714 may also include a light sensor, such as a CMOS or CCD image sensor, for use in imaging applications. In some embodiments, the sensor assembly 714 may also include an acceleration sensor or a temperature sensor.

[0147] The communication component 716 is configured to enable the driving scene playback system 700 to provide the ability to communicate with other devices and cloud platforms in a wired or wireless manner. The driving scene playback system 700 can access a wireless network based on a communication standard, such as WiFi, 2G or 3G, or a combination thereof. In an exemplary embodiment, the communication component 716 receives a broadcast signal or broadcast-related information from an external broadcast management system via a broadcast channel. In an exemplary embodiment, the communication component 716 also includes a near field communication (NFC) module to facilitate short-range communication. For example, the NFC module can be implemented based on radio frequency identification (RFID) technology, infrared data association (IrDA) technology, ultra-wideband (UWB) technology, Bluetooth (BT) technology and other technologies.

[0148] In an exemplary embodiment, the driving scene playback system 700 can be implemented by one or more application-specific integrated circuits (ASICs), digital signal processors (DSPs), digital signal processing devices (DSPDs), programmable logic devices (PLDs), field programmable gate arrays (FPGAs), controllers, microcontrollers, microprocessors or other electronic components to execute the driving scene playback method described in any of the above embodiments.

[0149] The present application also provides a computer-readable storage medium. When the instructions in the storage medium are executed by a processor corresponding to the driving scene playback system, the driving scene playback system can implement the driving scene playback method recorded in any of the above embodiments.

[0150] Those skilled in the art will appreciate that the embodiments of the present application may be provided as methods, systems, or computer program products. Therefore, the present application may adopt the form of a complete hardware embodiment, a complete software embodiment, or an embodiment in combination with software and hardware. Moreover, the present application may adopt the form of a computer program product implemented on one or more computer-usable storage media (including but not limited to disk storage and optical storage, etc.) that contain computer-usable program code.

[0151] The present application is described with reference to the flowcharts and / or block diagrams of the methods, devices (systems), and computer program products according to the embodiments of the present application. It should be understood that each process and / or box in the flowchart and / or block diagram, as well as the combination of the processes and / or boxes in the flowchart and / or block diagram, can be implemented by computer program instructions. These computer program instructions can be provided to a processor of a general-purpose computer, a special-purpose computer, an embedded processor, or other programmable data processing device to generate a machine, so that the instructions executed by the processor of the computer or other programmable data processing device generate instructions for implementing the processes in the flowchart and / or block diagram. Figure 1 A process or multiple processes and / or boxes Figure 1 A device that provides the functions specified in a block or multiple blocks.

[0152] These computer program instructions may also be stored in a computer-readable memory capable of directing a computer or other programmable data processing device to operate in a specific manner, so that the instructions stored in the computer-readable memory produce an article of manufacture comprising an instruction device, which implements the process Figure 1 A process or multiple processes and / or boxes Figure 1 A function specified in one or more boxes.

[0153] These computer program instructions can also be loaded onto a computer or other programmable data processing device so that a series of operating steps are executed on the computer or other programmable device to produce a computer-implemented process, thereby providing instructions for implementing the process. Figure 1 A process or multiple processes and / or boxes Figure 1 The steps for the functions specified in one or more boxes.

[0154] Obviously, those skilled in the art can make various changes and modifications to the present application without departing from the spirit and scope of the present application. Thus, if these modifications and variations of the present application fall within the scope of the claims of the present application and their equivalents, the present application is also intended to include these modifications and variations.

Claims

1. A driving scene playback method, characterized in that: include: When receiving a playback request for a target vehicle driving scene, splitting the playback duration corresponding to the playback request into multiple time periods according to a preset time step; Get playback data of multiple preset types in each time period; Generate a list containing the playback data of the plurality of preset types, wherein each time period corresponds to a list; Synchronize the playback data in each list according to the timestamp; The playback data of multiple preset types after time synchronization are stored in segments according to the chronological order of the time periods to which they belong, and during the playback process, the segmented playback data are sent to the sender of the playback request in segments according to the chronological order of the time periods.

2. The method according to claim 1, characterized in that The method further comprises: Determine the playback duration according to the start time and end time in the playback request; When the playback duration is greater than the preset time period step, the playback duration is divided into multiple time periods according to the preset time period step.

3. The method according to claim 1, characterized in that Get multiple preset types of playback data for each time period, including: The playback data of each time period is obtained through multiple threads, wherein each thread is responsible for obtaining a specific type of data.

4. The method according to claim 1, characterized in that The generating a list of playback data containing the plurality of preset types comprises: Multiple threads merge their acquired data into the main thread; A plurality of lists containing a plurality of preset types of data are generated through the main thread, wherein each time period corresponds to a list.

5. The method according to claim 1, characterized in that The step of synchronizing the playback data in each list according to the timestamp includes: Set up cursors for each type of data in each list, and generate an empty list for each list as the timeline list, start a loop, and each cursor loops over one type of data; When the cursor cycles to the data with the smallest timestamp, the data with the smallest timestamp is added to the corresponding time axis list, and the cursor is moved to find the next data with the smallest timestamp; When all data are added to the corresponding timeline list, the loop ends.

6. The method according to claim 5, characterized in that The time-synchronized playback data of multiple preset types are stored in segments according to the time sequence of the time periods to which they belong, including: The vehicle code is combined with the start and end time of the time period as a unique hash value of the playback data of the time period; Using the unique hash value as an identifier, the data in the timeline list is stored in segments according to chronological order.

7. The method according to claim 1, characterized in that The method further comprises: During playback, the time-synchronized playback data of multiple preset types are sent down in segments, and the playback process is detected; When it is detected that the playback progress of the playback data corresponding to the current time period reaches the preset progress, the playback data corresponding to the next time period is sent to the sender of the playback request.

8. A driving scene playback device, characterized in that: include: A splitting module, for, when receiving a playback request for a target vehicle driving scene, splitting the playback duration corresponding to the playback request into multiple time periods according to a preset time step; An acquisition module is used to acquire playback data of multiple preset types in each time period; A generating module, configured to generate a list containing the playback data of the plurality of preset types, wherein each time period corresponds to a list; The synchronization module is used to synchronize the playback data in each list according to the timestamp; The storage module is used to store the playback data of multiple preset types after time synchronization in segments according to the chronological order of the time periods to which they belong, and during the playback process, send the segmented playback data in segments according to the chronological order of the time periods to the sender of the playback request.

9. A driving scene playback system, characterized in that: include: at least one processor; as well as, a memory communicatively connected to the at least one processor; wherein, The memory stores instructions that can be executed by the at least one processor, and the instructions are executed by the at least one processor to implement the driving scene playback method as described in any one of claims 1-7.

10. A computer-readable storage medium, characterized in that: When the instructions in the storage medium are executed by a processor corresponding to the driving scene playback system, the driving scene playback system can implement the driving scene playback method as described in any one of claims 1 to 7.