system
The system automates the creation of meeting minutes and extraction of important sections from video recordings by converting audio to text, formatting, and editing based on time codes, addressing the inefficiencies of manual processes.
Patent Information
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- SOFTBANK GROUP CORP
- Filing Date
- 2024-10-01
- Publication Date
- 2026-04-13
AI Technical Summary
Creating meeting minutes and extracting important parts from video recordings of meetings and on-the-job training requires significant time and effort, often performed manually with low efficiency and accuracy, necessitating a system that can automate these tasks.
A system that receives a video file, extracts audio data, converts it into text, formats it into meeting minutes, selects and edits important portions based on time codes, and outputs the edited video as a file, reducing manual effort and improving efficiency.
Automatically generates meeting minutes and extracts key sections from video recordings, significantly reducing time and effort, enabling efficient and accurate processing by a wider range of users.
Smart Images

Figure 2026063819000001_ABST
Abstract
Description
Technical Field
[0001] The technology of the present disclosure relates to a system.
Background Art
[0002] Patent Document 1 discloses a method for controlling a persona chatbot, which is performed by at least one processor, and includes steps of receiving a user utterance, adding the user utterance to a prompt including an instruction sentence related to an explanation of a chatbot character, encoding the prompt, and inputting the encoded prompt into a language model to generate a chatbot utterance in response to the user utterance.
Prior Art Documents
Patent Documents
[0003]
Patent Document 1
Summary of the Invention
Problems to be Solved by the Invention
[0004] Currently, creating meeting minutes and extracting and editing important parts using video recordings of meetings, OJT, etc. requires a lot of time and effort. These tasks are usually performed manually, with low efficiency and difficulty in ensuring accuracy. Also, because specialized knowledge and skills are required, many people cannot perform them easily. Therefore, there is a demand for a system that can automate these tasks and perform them efficiently and simply.
Means for Solving the Problems
[0005] The present invention is a system that includes means for receiving a video file containing audio data, extracting the audio portion and converting it into text data, formatting the text data into a meeting minutes format, selecting a predetermined portion from the meeting minutes, identifying time codes based on the selected portion and extracting and editing the corresponding portion of the video, and outputting the edited video as a file. This makes it possible to automatically create meeting minutes from recordings of meetings and on-the-job training, easily extract only the necessary portions, and output them as a single video file. This system significantly reduces time and effort, enabling many people to work more efficiently.
[0006] A "video file" is a file format that includes audio and video data, and is typically used to record meetings and on-the-job training (OJT).
[0007] The "audio portion" refers to the audio data included within the video file, including the content of the meeting and the speakers' comments.
[0008] "Text data" refers to audio data converted into text format, representing the content of speech as written information.
[0009] "Meeting minutes format" refers to a format in which text data is formatted and compiled according to a specific style, clearly summarizing the content and conclusions of a meeting.
[0010] A "timecode" is a code that indicates a specific time within a video, and is used to identify the start and end times of a selected section.
[0011] "Methods for extraction and editing" refers to a general term for functions and tools that extract selected portions from a video file, edit them, and combine only the necessary parts into a single file.
[0012] "Output methods" refers to the collective functions and tools that convert edited videos into a final file format, making them available for users to download or play. [Brief explanation of the drawing]
[0013] [Figure 1] This is a conceptual diagram showing an example of the configuration of a data processing system according to the first embodiment. [Figure 2] This is a conceptual diagram showing an example of the essential functions of a data processing device and a smart device according to the first embodiment. [Figure 3] This is a conceptual diagram showing an example of the configuration of a data processing system according to the second embodiment. [Figure 4] This is a conceptual diagram showing an example of the main functions of a data processing device and smart glasses according to the second embodiment. [Figure 5] This is a conceptual diagram showing an example of the configuration of a data processing system according to the third embodiment. [Figure 6] This is a conceptual diagram showing an example of the main functions of a data processing device and a headset-type terminal according to the third embodiment. [Figure 7] This is a conceptual diagram showing an example of the configuration of a data processing system according to the fourth embodiment. [Figure 8] This is a conceptual diagram showing an example of the main functions of a data processing device and a robot according to the fourth embodiment. [Figure 9] This shows an emotion map where multiple emotions are mapped. [Figure 10] This shows an emotion map where multiple emotions are mapped. [Figure 11] This is a sequence diagram showing the processing flow of the data processing system in Example 1. [Figure 12] This is a sequence diagram showing the processing flow of the data processing system in Application Example 1. [Figure 13] This is a sequence diagram showing the processing flow of the data processing system in Example 2, which incorporates an emotion engine. [Figure 14]It is a sequence diagram showing the processing flow of a data processing system in Application Example 2 when a sentiment engine is combined.
Modes for Carrying Out the Invention
[0014] Hereinafter, an example of an embodiment of a system according to the technology of the present disclosure will be described with reference to the accompanying drawings.
[0015] First, the terms used in the following description will be explained.
[0016] In the following embodiments, a numbered processor (hereinafter simply referred to as "processor") may be a single arithmetic unit or a combination of multiple arithmetic units. Also, the processor may be a single type of arithmetic unit or a combination of multiple types of arithmetic units. Examples of arithmetic units include a CPU (Central Processing Unit), a GPU (Graphics Processing Unit), a GPGPU (General-Purpose computing on Graphics Processing Units), an APU (Accelerated Processing Unit), and the like.
[0017] In the following embodiments, a numbered RAM (Random Access Memory) is a memory in which information is temporarily stored and is used as a work memory by the processor.
[0018] In the following embodiments, a numbered storage is one or more non-volatile storage devices that store various programs and various parameters, etc. Examples of non-volatile storage devices include flash memory (SSD (Solid State Drive)), magnetic disks (e.g., hard disks), or magnetic tapes, and the like.
[0019] In the following embodiments, the signed communication interface (I / F) is an interface that includes a communication processor and an antenna, etc. The communication interface manages communication between multiple computers. Examples of communication standards applicable to the communication interface include wireless communication standards such as 5G (5th Generation Mobile Communication System), Wi-Fi (registered trademark), or Bluetooth (registered trademark).
[0020] In the following embodiments, "A and / or B" is synonymous with "at least one of A and B." That is, "A and / or B" means that it may be A alone, or B alone, or a combination of A and B. Furthermore, in this specification, the same concept as "A and / or B" applies when expressing three or more things linked by "and / or."
[0021] [First Embodiment]
[0022] Figure 1 shows an example of the configuration of the data processing system 10 according to the first embodiment.
[0023] As shown in Figure 1, the data processing system 10 includes a data processing device 12 and a smart device 14. An example of the data processing device 12 is a server.
[0024] The data processing device 12 comprises a computer 22, a database 24, and a communication interface 26. The computer 22 is an example of a "computer" related to the technology of this disclosure. The computer 22 comprises a processor 28, RAM 30, and storage 32. The processor 28, RAM 30, and storage 32 are connected to a bus 34. The database 24 and the communication interface 26 are also connected to the bus 34. The communication interface 26 is connected to a network 54. An example of the network 54 is a WAN (Wide Area Network) and / or a LAN (Local Area Network).
[0025] The smart device 14 comprises a computer 36, a reception device 38, an output device 40, a camera 42, and a communication interface 44. The computer 36 comprises a processor 46, RAM 48, and storage 50. The processor 46, RAM 48, and storage 50 are connected to a bus 52. The reception device 38, output device 40, and camera 42 are also connected to the bus 52.
[0026] The reception device 38 is equipped with a touch panel 38A and a microphone 38B, etc., and receives user input. The touch panel 38A receives user input by detecting contact with an object (e.g., a pen or finger). The microphone 38B receives user input by detecting the user's voice. The control unit 46A transmits data indicating the user input received by the touch panel 38A and microphone 38B to the data processing device 12. In the data processing device 12, the specific processing unit 290 acquires the data indicating the user input.
[0027] The output device 40 includes a display 40A and a speaker 40B, and presents data to the user 20 by outputting the data in a form perceptible to the user 20 (e.g., audio and / or text). The display 40A displays visible information such as text and images according to instructions from the processor 46. The speaker 40B outputs audio according to instructions from the processor 46. The camera 42 is a small digital camera equipped with an optical system such as a lens, aperture, and shutter, and an image sensor such as a CMOS (Complementary Metal-Oxide-Semiconductor) image sensor or a CCD (Charge Coupled Device) image sensor.
[0028] Communication interface 44 is connected to network 54. Communication interfaces 44 and 26 are responsible for the exchange of various types of information between processor 46 and processor 28 via network 54.
[0029] Figure 2 shows an example of the main functions of the data processing device 12 and the smart device 14.
[0030] As shown in Figure 2, in the data processing device 12, a specific processing is performed by the processor 28. A specific processing program 56 is stored in the storage 32. The specific processing program 56 is an example of a "program" related to the technology of this disclosure. The processor 28 reads the specific processing program 56 from the storage 32 and executes the read specific processing program 56 on the RAM 30. The specific processing is realized by the processor 28 operating as a specific processing unit 290 according to the specific processing program 56 executed on the RAM 30.
[0031] The storage 32 stores the data generation model 58 and the emotion identification model 59. The data generation model 58 and the emotion identification model 59 are used by the identification processing unit 290.
[0032] In the smart device 14, the processor 46 performs the reception output processing. The storage 50 stores the reception output program 60. The reception output program 60 is used in conjunction with a specific processing program 56 by the data processing system 10. The processor 46 reads the reception output program 60 from the storage 50 and executes the read reception output program 60 on the RAM 48. The reception output processing is realized by the processor 46 operating as a control unit 46A according to the reception output program 60 executed on the RAM 48.
[0033] Next, the specific processing performed by the specific processing unit 290 of the data processing device 12 will be described. In the following description, the data processing device 12 will be referred to as the "server" and the smart device 14 as the "terminal".
[0034] The present invention is a system that automatically creates meeting minutes from recorded data of meetings and on-the-job training, and selects and edits important parts. The system includes means for receiving a video file containing audio data, extracting the audio portion and converting it into text data, formatting the text data into meeting minutes format, selecting predetermined parts from the meeting minutes, identifying time codes based on the selected parts and extracting and editing the corresponding parts of the video, and outputting the edited video as a file.
[0035] The system's program and its description in natural language.
[0036] Loading video
[0037] 1. The user uploads the ZOOM recording data (e.g., "meeting_record.mp4") to the server.
[0038] The user selects files through the web interface and presses the upload button.
[0039] The device receives this command and sends the file to the server.
[0040] 2. The server receives the video file and saves it to a database or storage.
[0041] The server confirms receipt of the uploaded file and records it in the appropriate storage location.
[0042] Speech recognition
[0043] 1. Extract the audio portion of the video file received by the server.
[0044] The server uses tools such as FFmpeg to separate the audio track from the video file and generate an audio file (e.g., "audio.wav").
[0045] 2. The server uses a speech recognition engine (e.g., Google® Cloud Speech-to-Text API) to convert the audio data into text data.
[0046] The server sends an audio file to the speech recognition API and temporarily stores the returned text data.
[0047] Meeting minutes
[0048] 1. The server formats the text data obtained through speech recognition into a meeting minutes format.
[0049] The server converts the data into a format that includes a timestamp and speaker information, and then constructs the text data.
[0050] 2. The server saves the formatted text meeting minutes and makes them accessible to users.
[0051] The server generates a file as meeting minutes (e.g., "meeting_minutes.txt") and provides a link for the user to download it.
[0052] Selecting the necessary parts
[0053] 1. Users can view meeting minutes through a web interface.
[0054] The user reviews the meeting minutes and selects the necessary sections (e.g., "Agenda Item 1, Agenda Item 3").
[0055] 2. The terminal sends the timecode of the selected portion of the meeting minutes to the server.
[0056] The terminal collects the selected start and end time codes and sends them to the server.
[0057] Video editing
[0058] 1. The server extracts the corresponding portion from the video file based on the timecode sent.
[0059] The server uses tools such as FFmpeg to split and extract the video according to the specified timecode.
[0060] 2. The server combines and edits the extracted video segments.
[0061] The server combines the selected portions into a single, continuous video file.
[0062] File Output
[0063] 1. The server generates the edited video as a file and provides the user with a download link.
[0064] The server generates the final edited file (e.g., "final_output.mp4") and provides the user with a download link.
[0065] 2. The user downloads the generated video file and meeting minutes.
[0066] Users save the video and meeting minutes files to their devices via the provided links.
[0067] Specific example
[0068] One day, a user uploads a ZOOM recording file titled "Meeting 2023-10-01.mp4" to the server. The server receives this video file, extracts and analyzes the audio data, and generates temporary text data. Next, it generates a formatted meeting minutes file, "Meeting 2023-10-01_minutes.txt," and provides it to the user.
[0069] The user reviews the meeting minutes and selects the sections they need, namely "Agenda Item 1" and "Agenda Item 3." Based on this, the server extracts and edits the specified sections from the video file and generates it as "Selected Meeting Agenda Items.mp4." Finally, the user can download this edited video file and the meeting minutes, allowing for efficient sharing of the key points of the meeting.
[0070] As described above, this system automatically and efficiently extracts and edits important information from meeting and on-the-job training records and provides it to the user.
[0071] The following describes the processing flow.
[0072] Step 1:
[0073] To upload a ZOOM recording file (e.g., "meeting_record.mp4"), the user accesses the web interface and selects the file. Pressing the upload button sends the recording file to the server.
[0074] Step 2:
[0075] The server receives the uploaded video file and saves it to a database or storage. The server confirms receipt of the file and records its location.
[0076] Step 3:
[0077] The server extracts the audio portion from the stored video files. Using media processing tools such as FFmpeg, it separates the audio track from the video and generates an "audio.wav" file.
[0078] Step 4:
[0079] The server sends the extracted audio files to a speech recognition engine (e.g., Google Cloud Speech-to-Text API) to convert the audio data into text data. The returned text data is then temporarily stored.
[0080] Step 5:
[0081] The server formats the text data obtained from the speech recognition engine into a meeting minutes format. It converts it into a format that includes timestamps and speaker information, thus constructing the text data.
[0082] Step 6:
[0083] The server generates a formatted text meeting minutes file and saves it as "meeting_minutes.txt". A download link is then provided for the user to access.
[0084] Step 7:
[0085] The user reviews the meeting minutes via the provided link. They select the necessary sections (e.g., "Agenda Item 1, Agenda Item 3") and enter or select the start and end time codes for the selected sections.
[0086] Step 8:
[0087] The terminal collects timecode information based on the user's selection and sends it to the server. For example, it sends timecode information if the start time of "Agenda Item 1" is 00:05:10 and the end time is 00:15:45.
[0088] Step 9:
[0089] The server extracts the corresponding portion from the video file based on the timecode sent. Tools such as FFmpeg are used to split and extract the video according to the specified timecode.
[0090] Step 10:
[0091] The server combines and edits the multiple extracted video segments. Next, it generates a single continuous video file, "final_output.mp4".
[0092] Step 11:
[0093] The server converts the edited video file to the final file format and provides the user with a download link. By clicking this link, the user saves the edited video file and meeting minutes to their device.
[0094] (Example 1)
[0095] Next, we will describe Example 1. In the following description, the data processing device 12 will be referred to as the "server," and the smart device 14 will be referred to as the "terminal."
[0096] Traditional meeting and on-the-job training (OJT) records often require manual creation of meeting minutes, which is time-consuming and labor-intensive. Furthermore, efficiently extracting and editing important parts from video footage is difficult. Therefore, there is a growing need for a system that can automatically generate meeting minutes from video files including audio data, and efficiently select and edit important sections.
[0097] The identification process performed by the identification processing unit 290 of the data processing device 12 in Example 1 is realized by the following means.
[0098] In this invention, the server includes means for receiving a video file containing audio data, means for extracting the audio portion from the video file using dedicated software and converting it into text data, and means for formatting the text data into a meeting minutes format including a timestamp and speaker information. This enables the automatic generation of meeting minutes from a video file containing audio data, allowing the user to efficiently select and edit important parts.
[0099] "Audio data" refers to data in which the human voice is recorded in an electronic format.
[0100] A "video file" is a digital file that contains moving images and sound.
[0101] "Means of receiving" refers to a method or device for acquiring data sent from an external source and incorporating it into an internal system.
[0102] "Dedicated software" refers to a program developed to perform a specific function.
[0103] "Means of extraction" refers to a method or apparatus for separating specific data elements from the original data.
[0104] "Text data" refers to electronic data expressed in the form of characters and sentences.
[0105] "Means of conversion" refers to a method or apparatus for changing the format of data to another format.
[0106] A "timestamp" is a record of the exact date and time when data was created or modified.
[0107] "Speaker information" refers to information about the person speaking in the audio data.
[0108] "Meeting minutes" are documents that record the proceedings of a meeting or similar event.
[0109] "Means of formatting" refers to a method or apparatus for arranging data into a specific format.
[0110] A "user" is a person or organization that uses a system.
[0111] A "web interface" is a user interface used to access and operate a system using a web browser.
[0112] "Means of selection" refers to a method or device for choosing a specific option from among several options.
[0113] "Timecode" is time information used to indicate a specific location within digital media.
[0114] "Means for extraction and editing" refers to a method or apparatus that has the function of separating specific elements and then processing or adjusting them.
[0115] "Means of outputting as a file" refers to a method or device for saving and presenting processed or edited data in a specific file format.
[0116] A "download link" is a URL used to obtain a file via the internet.
[0117] This invention is a system that automatically creates meeting minutes from recorded data of meetings and on-the-job training (OJT), and allows for the selection and editing of important sections. This system uses the following hardware and software to perform data processing and calculations in multiple stages.
[0118] First, a web interface is provided for users to upload video files containing audio data. Using this interface, users select a meeting recording file (e.g., "meeting_record.mp4") from their device and send it to the server. The device receives this operation and sends the file to the server using an HTTP POST request.
[0119] Next, the server receives the file and saves it appropriately to the database or storage. Using FFmpeg as the dedicated software, the audio track is extracted from the uploaded video file to generate an audio file (e.g., "audio.wav"). An example FFmpeg command used is ffmpeg -i meeting_record.mp4 -q:a 0 -map a audio.wav.
[0120] The server then uses a speech recognition engine, such as the Google Cloud Speech-to-Text API, to convert the audio data into text data. This converts the audio file into text data, which is then temporarily stored. Specifically, the Google Cloud client library is used to send the audio file to the API, and the returned JSON-formatted text data is processed.
[0121] The server then formats the text data generated by the speech recognition engine into a meeting minutes format. After analyzing the timestamp and speaker information, the data, converted to the predetermined format, is saved as a text file. For example, it might be in the format of "[00:01:23] User A: Regarding agenda item 1..."
[0122] After the meeting minutes are created, users can review them through a web interface. Users select the parts they need (e.g., "Agenda Item 1, Agenda Item 3"), and the selection information is sent to the server. Based on the received selection information, the server identifies the corresponding video timecodes and uses FFmpeg to extract and edit the identified sections. An example is `ffmpeg -i meeting_record.mp4 -ss 00:01:23 -to 00:02:34 -c copy part1.mp4`.
[0123] Finally, an edited video file is generated, and the server provides a download link. Through this link, users can download the edited video file and meeting minutes. This allows for the efficient sharing of key points from the meeting.
[0124] Specific example
[0125] One day, a user uploads a ZOOM recording file titled "Meeting 2023-10-01.mp4" to the server. The server receives this video file, extracts and analyzes the audio data, and generates temporary text data. Next, it generates a formatted meeting minutes file, "Meeting 2023-10-01_minutes.txt," and provides it to the user. The user reviews the minutes and selects the sections they need, namely "Agenda Item 1" and "Agenda Item 3." Based on this, the server extracts and edits the specified sections from the video file and generates it as "Selected Meeting Agenda Items.mp4." Finally, the user can download this edited video file and meeting minutes, allowing them to efficiently share the key points of the meeting.
[0126] Examples of prompts for generative AI models
[0127] Prompt: "Please describe the process of a system that uploads ZOOM recording data, automatically converts the audio data to text, and creates meeting minutes. Please include specific actions, such as the process of the user selecting the necessary meeting minutes and then extracting and editing the corresponding video portion based on that selection."
[0128] The flow of the specific processing in Example 1 will be explained using Figure 11.
[0129] Step 1:
[0130] The user uploads the ZOOM recording data to the server.
[0131] Specifically, the user selects a file named "meeting_record.mp4" through the web interface and presses the upload button. The device receives this action and sends the file to the server using an HTTP POST request.
[0132] Input: ZOOM recording file.
[0133] Output: The recorded file received on the server side.
[0134] Step 2:
[0135] The server receives the video file and saves it to a database or storage.
[0136] Specifically, the server receives an HTTP POST request and verifies that the file was transferred correctly. After verification, it saves the file to the "videos / " directory and records the file path and metadata in the database.
[0137] Input: Recording file sent by the user.
[0138] Output: Files stored in storage and their metadata.
[0139] Step 3:
[0140] The server extracts the audio portion from the video file it receives.
[0141] Specifically, the server executes the FFmpeg command to extract the audio track from "meeting_record.mp4" and save it as "audio.wav".
[0142] Input: Recording file.
[0143] Output: Audio file.
[0144] Step 4:
[0145] The server uses a speech recognition engine to convert the audio data into text data.
[0146] Specifically, the server uses a speech recognition engine such as the Google Cloud Speech-to-Text API to convert "audio.wav" into text data and saves it as a temporary file.
[0147] Input: Audio file.
[0148] Output: Text data.
[0149] Step 5:
[0150] The server formats the text data obtained through speech recognition into a meeting minutes format.
[0151] Specifically, the server reads text data from a temporary file, analyzes the timestamp and speaker information, and converts it into a meeting minutes format. It then saves it as "meeting_minutes.txt".
[0152] Input: Text data of the speech recognition result.
[0153] Output: Formatted meeting minutes file.
[0154] Step 6:
[0155] The server saves formatted text meeting minutes and makes them accessible to users.
[0156] Specifically, the server saves the formatted meeting minutes file to the "minutes / " directory, generates a URL for the file, and displays it on the user's dashboard.
[0157] Input: Formatted meeting minutes file.
[0158] Output: Access URL for the meeting minutes file.
[0159] Step 7:
[0160] Users can review meeting minutes through a web interface and select the parts they need.
[0161] Specifically, the user accesses the dashboard, clicks the link to the new meeting minutes to review the contents, selects the necessary sections (e.g., "Agenda Item 1, Agenda Item 3"), and presses the submit button.
[0162] Input: Contents of the meeting minutes file.
[0163] Output: Timecode of the portion selected by the user.
[0164] Step 8:
[0165] The terminal sends the timecode of the selected portion of the meeting minutes to the server.
[0166] Specifically, the selected start and end timecodes are sent to the server as an HTTP POST request in JSON format.
[0167] Input: The timecode selected by the user.
[0168] Output: Timecode sent to the server.
[0169] Step 9:
[0170] The server extracts the corresponding portion from the video file based on the timecode sent.
[0171] Specifically, the server uses the FFmpeg command to split and extract the video according to the specified timecode.
[0172] Input: Timecode and recording file.
[0173] Output: Extracted video portion.
[0174] Step 10:
[0175] The server combines and edits the extracted video segments.
[0176] Specifically, the server sequentially combines the multiple extracted parts into a single, continuous file.
[0177] Input: Extracted video portion.
[0178] Output: Combined edited video file.
[0179] Step 11:
[0180] The server generates the edited video as a file and provides the user with a download link.
[0181] Specifically, the server saves the final edited file "final_output.mp4" to the "edited_videos / " directory and displays the URL on the user dashboard.
[0182] Input: Combined edited video files.
[0183] Output: Download link.
[0184] Step 12:
[0185] The user downloads the generated video files and meeting minutes.
[0186] Specifically, the user clicks a link on the dashboard to download the video file and meeting minutes file to their device.
[0187] Input: Download link.
[0188] Output: Files saved on the user's device.
[0189] (Application Example 1)
[0190] Next, we will explain Application Example 1. In the following explanation, the data processing device 12 will be referred to as the "server," and the smart device 14 will be referred to as the "terminal."
[0191] Traditional surveillance camera systems and security services require significant human effort to detect abnormal sounds or critical events, making real-time response difficult. Furthermore, the time between detecting abnormal sounds and responding increases the likelihood of damage escalating. Additionally, the lack of technology to automatically extract and edit relevant video footage of detected abnormal sounds hinders efficient information sharing and rapid countermeasures.
[0192] The specific processing performed by the specific processing unit 290 of the data processing device 12 in Application Example 1 is realized by the following means.
[0193] In this invention, the server includes means for receiving a video file containing audio data, means for extracting the audio portion from the video file and converting it into text data, means for formatting the text data into a meeting minutes format, means for selecting a predetermined portion from the meeting minutes, means for identifying time codes based on the selected portion and extracting and editing the corresponding portion of the video, means for outputting the edited video as a file, means for analyzing the audio data and detecting abnormal sounds, means for highlighting abnormal sounds and including them in the meeting minutes format, and means for notifying of abnormal sounds and selecting necessary portions. This enables real-time detection of abnormal sounds and rapid extraction and editing of important portions.
[0194] A "video file" is a file in a video recording format that also includes audio data.
[0195] "Audio data" refers to a data format that contains information expressed through sound.
[0196] "Text data" refers to a data format that expresses information as characters.
[0197] "Meeting minutes format" refers to a document format that organizes and summarizes the content of meetings and discussions.
[0198] A "timecode" is a marker that indicates a specific time position in video or audio data.
[0199] An "unusual sound" is a sound that deviates from the normal sound environment and suggests an incident or accident.
[0200] "Notification" refers to a means of informing users of anomalies or important information.
[0201] "Selection" refers to the act of a user identifying a specific part.
[0202] "Extraction" is the process of taking a specific part from the whole.
[0203] "Editing" is the process of rearranging video and audio data to suit a specific purpose.
[0204] This invention relates to a system that receives a video file containing audio data, extracts the audio portion, converts it into text data, and detects abnormal sounds and formats it into a meeting minutes format. This system further includes functions for notifying abnormal sounds, selecting important parts, and extracting, editing, and outputting corresponding parts of the video based on time codes.
[0205] First, the user uploads a video file recorded by a surveillance camera to the server. The server receives the video file and uses the FFmpeg tool to extract the audio. Then, it converts the extracted audio data into text data using a speech recognition engine such as the Google Cloud Speech-to-Text API.
[0206] Next, the server analyzes the converted text data to detect abnormal sounds. The abnormal sound detection engine detects sounds such as breaking glass, screams, and abnormal machine noises. The results are highlighted in a meeting minutes format and provided to the user. The user can view the abnormal sound information in real time through smart glasses and select the time codes for the parts they need.
[0207] Based on the selected timecode, the server extracts the corresponding portion from the video file and edits it using the FFmpeg tool. Finally, the edited video is generated, and a download link is provided to the user.
[0208] As a concrete example, consider a scenario where a security guard wears smart glasses while performing their duties. Video from surveillance cameras is recorded on the smart glasses, and audio data is uploaded to a server in real time. The server detects abnormal sounds based on the audio data and immediately notifies the smart glasses if an abnormal sound is detected. The security guard then checks the details of the abnormal sound on the spot, selects the time codes of the necessary parts, and sends them to the server.
[0209] The server extracts and edits the corresponding video segments according to the selected timecodes, highlighting any anomalies and combining them. Finally, the edited video file is provided as a download link and immediately shared with security guards and other relevant personnel.
[0210] Examples of prompts for the generative AI model in this system are as follows:
[0211] Please detect abnormal sounds from the following audio data:
[0212] The sound of glass breaking
[0213] scream
[0214] Abnormal noise from the machine
[0215] Audio data: "Contents of the audio data"
[0216] By using this prompt statement, it is possible to detect specific abnormal sounds from audio data and respond quickly and efficiently.
[0217] The flow of a specific process in Application Example 1 will be explained using Figure 12.
[0218] Step 1:
[0219] Uploading videos
[0220] The user uploads video files recorded by surveillance cameras to the server. The input is a video file (e.g., "monitoring_video.mp4"), and the output is the path to the video file saved on the server. The user selects the file through the web interface and presses the upload button, at which point the terminal sends the video file to the server.
[0221] Step 2:
[0222] Extraction of the audio portion
[0223] The server extracts the audio portion from the received video file. The input is the path to the video file, and the output is an audio file (e.g., "audio.wav"). Specifically, the server uses the FFmpeg tool to separate the audio track from the video file.
[0224] Step 3:
[0225] Speech-to-text conversion
[0226] The server sends the extracted audio files to a speech recognition engine and converts them into text data. The input is an audio file, and the output is text data (e.g., "transcribed_text.txt"). Specifically, the server uses the Google Cloud Speech-to-Text API or similar to convert the audio data into text data and temporarily stores it.
[0227] Step 4:
[0228] Detection of abnormal sounds
[0229] The server analyzes text data to detect abnormal sounds. The input is text data, and the output is information about detected abnormal sounds. Specifically, the abnormal sound detection engine scans the text data and identifies patterns such as "the sound of glass breaking" or "screaming."
[0230] Step 5:
[0231] Notification of abnormal sound information
[0232] The server notifies the user of any detected abnormal sounds. The input is the detected abnormal sound information, and the output is the notification to the user. Specifically, the server sends an alert to smart glasses or a terminal to notify the user of the occurrence of an abnormal sound.
[0233] Step 6:
[0234] User-selected timecode
[0235] The user views abnormal sound information through smart glasses and selects the timecodes for the required sections. The input consists of abnormal sound information and a portion of the meeting minutes, while the output is the selected timecodes. Specifically, the user operates the interface to specify the start and end timecodes for important sections.
[0236] Step 7:
[0237] Extraction and editing of video portions
[0238] The server extracts and edits the corresponding video portion based on the selected timecode. The input is the path to the video file and the selected timecode, and the output is the edited video file (e.g., "highlighted_event.mp4"). Specifically, the server uses the FFmpeg tool to split and extract the video, and then combines and edits the specified portions.
[0239] Step 8:
[0240] Outputting and sharing edited videos
[0241] The server generates the edited video file and provides the user with a download link. The input is the edited video file, and the output is the download link. Specifically, the server generates the final edited file and creates and notifies the user of a link that allows immediate access.
[0242] Furthermore, an emotion engine that estimates the user's emotions may be incorporated. That is, the identification processing unit 290 may use the emotion identification model 59 to estimate the user's emotions and perform identification processing using the user's emotions.
[0243] This invention combines a system that automatically creates meeting minutes from recorded data of meetings and on-the-job training, and selects and edits important parts, with an emotion engine that recognizes the user's emotions. The system includes means for receiving a video file containing audio data, extracting the audio portion and converting it into text data, formatting the text data into meeting minutes format, selecting predetermined parts from the meeting minutes, identifying time codes based on the selected parts and extracting and editing the corresponding parts of the video, outputting the edited video as a file, and an emotion engine that recognizes the user's emotions.
[0244] The system's program and its description in natural language.
[0245] Loading video
[0246] 1. The user accesses the web interface to upload a ZOOM recording file (e.g., "meeting_record.mp4"), selects the file, and presses the upload button. The device then sends the recording file to the server.
[0247] 2. The server receives the uploaded video file and saves it to a database or storage. The server confirms receipt of the file and records its location.
[0248] Speech recognition
[0249] 1. The server extracts the audio portion from the stored video file. Using a media processing tool such as FFmpeg, the audio track is separated from the video and an "audio.wav" file is generated.
[0250] 2. The server sends the audio data to a speech recognition engine (e.g., Google Cloud Speech-to-Text API) to convert the audio into text data. The returned text data is then temporarily stored.
[0251] emotion recognition
[0252] 1. The server sends audio and video data to the emotion engine and recognizes the user's emotions from their voice and facial expressions.
[0253] 2. The server adds the emotion information returned by the emotion engine to the meeting minutes text data. For example, it converts it into a format that includes emotion information, such as "10:15 [Yamada]: Hello, let's start the meeting. (Emotion: Joy)".
[0254] Meeting minutes
[0255] 1. The server generates a formatted text meeting minutes file and saves it as "meeting_minutes.txt". A download link is then provided for the user to access.
[0256] Selecting the necessary parts
[0257] 1. The user reviews the meeting minutes, including sentiment information, via the provided link. They select the necessary sections (e.g., "Agenda Item 1, Agenda Item 3") and enter or select the start and end time codes.
[0258] 2. The terminal collects timecode information based on the user's selection and sends it to the server. For example, it sends timecode information if the start time of "Agenda Item 1" is 00:05:10 and the end time is 00:15:45.
[0259] Video editing
[0260] 1. The server extracts the corresponding portion from the video file based on the transmitted timecode. Tools such as FFmpeg are used to split and extract the video according to the specified timecode.
[0261] 2. The server combines and edits the multiple extracted video segments. Next, it generates a single continuous video file, "final_output.mp4".
[0262] File Output
[0263] 1. The server converts the edited video file to the final file format and provides a download link for the user. By clicking this link, the user saves the edited video file and meeting minutes, including sentiment information, to their device.
[0264] Specific example
[0265] For example, a user uploads a ZOOM recording file titled "Meeting 2023-10-01.mp4" to the server. The server receives this video file, analyzes the audio and video data, and generates text data containing sentiment information, such as "Meeting 2023-10-01_minutes.txt". The meeting minutes will also include sentiment information for each statement made.
[0266] The user reviews the meeting minutes, which include emotional information, and selects the sections they need, namely "Agenda Item 1" and "Agenda Item 3." Based on this, the server extracts and edits the specified sections from the video file to generate "Selected Meeting Agenda Items.mp4." The user can then download this edited video file and the meeting minutes, allowing them to efficiently share the key points of the meeting.
[0267] As described above, this system automatically creates meeting minutes with added emotional information from records of meetings and on-the-job training, efficiently extracts and edits important information, and provides it to the user.
[0268] The following describes the processing flow.
[0269] Step 1:
[0270] The user accesses the web interface to upload a ZOOM recording file (e.g., "meeting_record.mp4"), selects the file, and presses the upload button. The device then sends the recording file to the server.
[0271] Step 2:
[0272] The server receives the uploaded video file and saves it to a database or storage. It confirms the file's receipt and records its location.
[0273] Step 3:
[0274] A media processing tool such as FFmpeg is used to extract the audio part from the video file saved by the server. This separates the audio track from the video and generates an "audio.wav" file.
[0275] Step 4:
[0276] The server sends the audio file "audio.wav" to a speech recognition engine (e.g., Google Cloud Speech-to-Text API) to convert the audio data into text data. The returned text data is temporarily saved.
[0277] Step 5:
[0278] The server sends the audio and video data to an emotion engine to recognize the user's emotion from the voice and expressions. The emotion engine performs the analysis and returns emotion information (e.g., happiness, sadness, anger, etc.).
[0279] Step 6:
[0280] The server adds the emotion information returned from the emotion engine to the text data, formats and converts it into a minutes format. For example, it is converted into a format including emotion information like "10:15 [Yamada]: Hello, let's start the meeting. (Emotion: Happiness)".
[0281] Step 7:
[0282] The server generates the formatted text minutes and saves them as "meeting_minutes.txt". A download link accessible to the user is provided.
[0283] Step 8:
[0284] The user checks the minutes including emotion information through the provided link. Selects the necessary parts (e.g., "Topic 1, Topic 3") and enters or selects the start and end timecodes.
[0285] Step 9:
[0286] The terminal collects time code information based on the user's selection and sends it to the server. As an example, the time code information when the start time of "Agenda 1" is 00:05:10 and the end time is 00:15:45 is sent.
[0287] Step 10:
[0288] Based on the time code sent by the server, the corresponding part is extracted from the video file. A tool such as FFmpeg is used to split and extract the video according to the specified time code.
[0289] Step 11:
[0290] The server combines the multiple extracted video parts and performs editing. Next, a single continuous video file "final_output.mp4" is generated.
[0291] Step 12:
[0292] The server converts the edited video file into the final file format and provides a link that the user can download. By clicking on this link, the user saves the edited video file and the minutes including the emotion information to the terminal.
[0293] (Example 2)
[0294] Next, Example 2 will be described. In the following description, the data processing device 12 is referred to as the "server", and the smart device 14 is referred to as the "terminal".
[0295] Traditional meeting recording systems made it difficult to efficiently extract important information from recorded meetings and on-the-job training (OJT) footage. Furthermore, the resulting meeting minutes lacked information tailored to the speaker's emotions and the importance of each point, making it difficult to extract and share crucial information. This resulted in cumbersome post-meeting reviews and report creation, requiring significant time and effort.
[0296] The identification process performed by the identification processing unit 290 of the data processing device 12 in Example 2 is realized by the following means.
[0297] In this invention, the server includes means for receiving a video file containing audio data, means for extracting the audio portion from the video file and converting it into text data, means for formatting the text data into a meeting minutes format, means for adding emotional information to the text data, means for selecting a predetermined portion from the meeting minutes, means for identifying time codes based on the selected portion and extracting and editing the corresponding portion of the video, and means for outputting the edited video as a file. This makes it possible to efficiently extract important parts from recorded meeting and OJT data, create meeting minutes including emotional information, and quickly and efficiently provide the specific information that the user needs.
[0298] A "video file" is a recording medium that contains both audio and video data.
[0299] The "audio portion" refers to audio data extracted from a video file, including the speaker's utterances and other sounds.
[0300] "Text data" refers to the character information converted from the audio portion by a speech recognition engine.
[0301] "Meeting minutes format" refers to a document format that records the contents of a meeting or on-the-job training in chronological order.
[0302] "Emotional information" refers to information that indicates the emotional state of a speaker, analyzed from their speech and facial expressions.
[0303] A "time code" is a code indicating a specific time position within a video file.
[0304] "Extraction and editing" refers to a process of cutting out corresponding parts from a video file based on specific time codes and performing joining and processing as necessary.
[0305] A "means" is a device, program, or method for executing a specific function or process.
[0306] A "server" is a computer device that receives, processes, stores, and transmits data via a network.
[0307] A "user" is a subject that extracts, edits, and checks information from recorded data of meetings or OJTs using this system.
[0308] The present invention is a system that automatically creates minutes of a meeting from recorded data of a meeting or OJT and selects and edits important parts. This system includes means for receiving a video file containing audio data, extracting the audio part and converting it into text data, formatting the text data and formatting it in the form of minutes of a meeting, selecting a predetermined part from the minutes of a meeting, specifying a time code based on the selected part and extracting and editing the corresponding part of the video, and an emotion engine for recognizing the emotions of the user.
[0309] The user uploads a recorded file (e.g., "meeting_record.mp4") via a web interface. The terminal transmits this file to the server. The server receives the file and stores it in a database or storage. At this time, the storage path of the file is also recorded.
[0310] Next, the server uses a media processing tool such as FFmpeg to extract the audio portion from the video file and generate an "audio.wav" file. The generated audio file is then sent to a speech recognition engine such as the Google Cloud Speech-to-Text API to convert the audio data into text data. This converted text data is temporarily stored.
[0311] Furthermore, the server sends audio and video data to the emotion engine to recognize the user's emotions. The emotion information returned by the emotion engine is integrated into the text data and added, for example, "10:15 [Speaker]: Hello, let's start the meeting. (Emotion: Joy)".
[0312] The server generates a formatted text meeting minutes file with added sentiment information and saves it as "meeting_minutes.txt". Users can download these minutes from the provided link.
[0313] The user reviews the meeting minutes and selects important sections (e.g., "Agenda Item 1, Agenda Item 3"). Based on this selection, the user enters or selects the start and end time codes. The terminal sends this time code information to the server.
[0314] Based on the transmitted timecode, the server extracts and edits the corresponding portion from the video file using tools such as FFmpeg. If multiple video portions are specified, they are combined and finally output as a "final_output.mp4" file.
[0315] Finally, the server converts the edited video file to its final file format and provides a download link for the user. The user can click this link to download the edited video file and meeting minutes, including sentiment information.
[0316] Specific example
[0317] For example, a user uploads a video recording file titled "Meeting 2023-10-01.mp4" to the server. This video file is analyzed for audio and video data, and a text file named "Meeting 2023-10-01_minutes.txt" is generated with added sentiment information. The minutes also include sentiment information for each statement. The user reviews the minutes, which include sentiment information, and selects sections for "Agenda Item 1" and "Agenda Item 3." Based on this, the server extracts and edits the specified sections from the video file to generate "Selected Meeting Agenda Items.mp4." The user can then download this edited video file and the minutes, enabling efficient sharing of important information.
[0318] Examples of prompts to input into a generative AI model
[0319] "Please upload the meeting recording file (e.g., meeting_record.mp4), extract the audio, and transcribe it. Then, create meeting minutes with emotional information added for each statement, edit the video based on the timecodes of the specified statements, and make the results available for download."
[0320] The flow of the specific processing in Example 2 will be explained using Figure 13.
[0321] Step 1: Load the video
[0322] The user selects a recording file (e.g., "meeting_record.mp4") via a web interface and presses the upload button. The device then sends this file to the server. Specifically, the device sends the selected file to the server via an HTTP POST request. The server saves the received video file to a database or file storage and records its save path.
[0323] Input: Recording file (e.g., "meeting_record.mp4")
[0324] Data processing: Receiving and saving files
[0325] Output: Path to the saved video file
[0326] Step 2: Extraction of the audio portion
[0327] The server reads the saved video file and extracts the audio portion using a media processing tool such as FFmpeg. It then sends the generated "audio.wav" file to a speech recognition engine (e.g., Google Cloud Speech-to-Text API) to convert the audio data into text data. Specifically, the server uses the FFmpeg command to separate the audio track and generate the "audio.wav" file. It then sends this audio file to the speech recognition engine and temporarily stores the returned text data.
[0328] Input: Path to the saved video file
[0329] Data processing: Extraction of audio and conversion to text.
[0330] Output: Text data
[0331] Step 3: Adding emotional information
[0332] The server sends audio and video data to an emotion engine to recognize the user's emotions. The emotion information returned by the emotion engine is then integrated into the existing text data. Specifically, the server sends audio and video data to APIs for speech emotion recognition and facial expression analysis, respectively, analyzes the responses from the APIs, and adds the emotion information to the relevant parts.
[0333] Input: Audio data and video data
[0334] Data processing: Recognition and integration of emotional information
[0335] Output: Text data with added emotional information
[0336] Step 4: Creating meeting minutes
[0337] The server formats the text data, which includes emotional information, into a meeting minutes format. Specifically, the server uses a template engine (e.g., Jinja2) to convert it into a meeting minutes format and saves it as "meeting_minutes.txt". Users can download these meeting minutes via the provided link.
[0338] Input: Text data with added emotional information
[0339] Data processing: Formatting and shaping text data
[0340] Output: Meeting minutes file ("meeting_minutes.txt")
[0341] Step 5: Selecting the Timecode
[0342] The user clicks the provided link to view the meeting minutes, which include sentiment information. They select the necessary sections (e.g., "Agenda Item 1, Agenda Item 3") and enter or select the start and end time codes. Specifically, the user enters the time code information while referring to the web page, and the terminal sends this time code information to the server.
[0343] Input: Meeting minutes file ("meeting_minutes.txt")
[0344] Data processing: User input of timecodes
[0345] Output: Timecode information
[0346] Step 6: Editing the video
[0347] The server extracts and edits the corresponding portion from the video file based on the transmitted timecode. Specifically, the server uses the FFmpeg command to extract the video portion within the specified timecode range, combines multiple video clips, and generates the final file.
[0348] Input: Timecode information
[0349] Data processing: Extraction and merging of video portions
[0350] Output: Edited video file ("final_output.mp4")
[0351] Step 7: File Output
[0352] The server encodes the edited video file and converts it into a format that the user can download. Specifically, the server encodes the final video into a predetermined format (e.g., MP4) and saves it. Finally, the server displays a download link on the user interface and provides it in the HTTP response. The user can click this link to download the edited video file and meeting minutes, including sentiment information.
[0353] Input: Edited video file
[0354] Data processing: Encoding and saving
[0355] Output: Download link
[0356] (Application Example 2)
[0357] Next, we will explain application example 2. In the following explanation, the data processing device 12 will be referred to as a "server" and the smart device 14 as a "terminal".
[0358] Conventional factory work record and report creation systems struggle to integrate the recording and textualization of work processes with emotional recognition, often leading to human error and wasted time. Furthermore, real-time assessment of worker stress and fatigue levels, and suggesting appropriate breaks, proved challenging. As a result, efficiency improvements and adequate worker health management were hindered, potentially leading to decreased quality and productivity.
[0359] The specific processing performed by the specific processing unit 290 of the data processing device 12 in Application Example 2 is realized by the following means.
[0360] In this invention, the server includes means for receiving a video file containing audio data, means for extracting the audio portion from the video file and converting it into text data, means for formatting the text data into a meeting minutes format, means for selecting a predetermined portion from the meeting minutes, means for identifying time codes based on the selected portion and extracting and editing the corresponding portion of the video, means for outputting the edited video as a file, means for recognizing emotions from the text data and video and adding that information, means for recording the manufacturing process and detecting abnormalities, and means for evaluating the worker's condition and suggesting appropriate break times. This enables increased work efficiency and accurate recording, and allows for proper management of the worker's health.
[0361] "Audio data" refers to information obtained by converting sound waves into a digital format, and includes data such as human speech and other sounds.
[0362] A "video file" is a file format that integrates sequential image data and audio data, and contains both video and audio.
[0363] "Text data" refers to data that has been converted into a format that can be handled by programs, such as characters and numbers.
[0364] "Meeting minutes" are documents that record the content of meetings and discussions, and include statements made, topics discussed, and decisions made.
[0365] A "timecode" is location information that indicates a specific time within video or audio data.
[0366] "Emotion recognition" is a technology that analyzes human facial expressions and tone of voice from audio and video to determine emotional states.
[0367] Anomaly detection is a technology that detects behavior or states that deviate from normal patterns.
[0368] "Break timing" refers to information indicating the appropriate time for workers to interrupt their work or take a rest.
[0369] A "server" is a computer dedicated to providing data and services to other computers on a network.
[0370] This invention is a system applied to robots that record factory work processes and quality checks. Specifically, it automatically generates work reports from conversations between workers and the robot, as well as recorded work data, and detects anomalies and areas for process improvement. It also recognizes the worker's emotions, assesses stress and fatigue levels, and provides appropriate rest timings.
[0371] The server receives a video file containing audio data, extracts the audio portion from the video file, and converts it into text data. This involves using a media processing tool such as FFmpeg to separate the audio track from the video and sending it to a speech recognition engine (e.g., Google Cloud Speech-to-Text API) to convert the audio data into text.
[0372] Furthermore, the server transmits audio and video data to the emotion recognition engine, which recognizes the user's emotions from their voice and facial expressions. The emotion recognition results are added to the text data of the meeting minutes. For example, it is recorded in a format that includes emotion information, such as "Work start time: 10:00 (Emotion: Neutral)".
[0373] Users review this information and identify any anomalies or defects. Anomaly detection uses automated tools to analyze video data. Time codes are identified, providing users with a means to select important sections, and the video is edited based on those selections.
[0374] Finally, the server generates formatted text minutes and provides them to the user in a format accessible along with the video files.
[0375] For example, a user uploads a video file titled "Task 2023-10-01.mp4" to the server. The server receives this video file, analyzes the audio and video data, and generates text data containing emotional information, titled "Task 2023-10-01_minutes.txt". The minutes also include emotional information for each work step. The user reviews the minutes, which include emotional information, and selects any abnormal or unnecessary parts. Based on this, the server extracts and edits the specified parts from the video file to generate "Edited Work Record.mp4". The user can download this edited video file and minutes, enabling efficient sharing of key points of factory work.
[0376] Examples of prompts for a generative AI model:
[0377] Analyze the audio and video data from the work video '2023-10-15_factory_work.mp4' and create a work report. Include emotional information regarding the statements made, and also include any anomaly detection results in the report. Additionally, suggest break times that reflect the worker's emotional state.
[0378] This system enables more efficient work processes, accurate record-keeping, and proper health management of workers.
[0379] The flow of a specific process in Application Example 2 will be explained using Figure 14.
[0380] Step 1:
[0381] The user uploads a recorded file (e.g., "Work 2023-10-01.mp4").
[0382] Specific operation: The user accesses the web interface, selects a recording file, and presses the upload button. The file is sent to the server.
[0383] Input: User selects and uploads video files.
[0384] Output: The server receives and saves the video file.
[0385] Step 2:
[0386] The server receives the uploaded video file and saves it to a database or storage.
[0387] Specific operation: The server records the file's location and confirms receipt.
[0388] Input: User-uploaded video file
[0389] Output: The video file is saved to the server's storage.
[0390] Step 3:
[0391] The server extracts the audio portion from the stored video file.
[0392] Specific operation: Using a media processing tool such as FFmpeg, separate the audio track from the video and generate an audio file named "audio.wav".
[0393] Input: Saved video file
[0394] Output: Audio file "audio.wav"
[0395] Step 4:
[0396] The server sends the audio data to the speech recognition engine, which converts the audio into text data.
[0397] Specific operation: Use the Google Cloud Speech-to-Text API to convert the audio file to text and temporarily store it.
[0398] Input: Audio file "audio.wav"
[0399] Output: Text data
[0400] Step 5:
[0401] The server sends audio and video data to the emotion recognition engine, which then recognizes the user's emotions from their voice and facial expressions.
[0402] Specific operation: Use an emotion recognition module to analyze video and audio and extract emotional information.
[0403] Input: Audio data and video data
[0404] Output: Text data containing emotional information
[0405] Step 6:
[0406] The server generates formatted text meeting minutes and provides a download link that users can access.
[0407] Specific operation: Format the generated text data, format it into a meeting minutes format, and save it as a file.
[0408] Input: Text data containing emotional information
[0409] Output: Formatted text meeting minutes
[0410] Step 7:
[0411] Users can view the meeting minutes via the provided link and select the necessary sections.
[0412] Specific operation: The user reviews the meeting minutes, selects the necessary sections, and enters or selects the start and end time codes.
[0413] Input: Formatted text meeting minutes
[0414] Output: Timecode information for the portion selected by the user.
[0415] Step 8:
[0416] The server extracts the corresponding portion from the video file based on the timecode sent.
[0417] Specific operation: Use a media processing tool such as FFmpeg to split and extract video according to the specified timecode.
[0418] Input: Timecode information
[0419] Output: Extracted video portion
[0420] Step 9:
[0421] The server combines the extracted video segments to generate a single, continuous video file.
[0422] Specific operation: The extracted video segments are combined to generate the final video file "Edited Work Log.mp4".
[0423] Input: Extracted video portion
[0424] Output: Edited video file
[0425] Step 10:
[0426] The server converts the edited video file to the final file format and provides the user with a download link.
[0427] Specific actions: Convert the final video file to a file format and provide a download link that the user can access.
[0428] Input: Edited video file
[0429] Output: A downloadable link for the user.
[0430] The specific processing unit 290 transmits the result of the specific processing to the smart device 14. In the smart device 14, the control unit 46A causes the output device 40 to output the result of the specific processing. The microphone 38B acquires audio indicating user input for the result of the specific processing. The control unit 46A transmits the audio data indicating user input acquired by the microphone 38B to the data processing device 12. In the data processing device 12, the specific processing unit 290 acquires the audio data.
[0431] Data generation model 58 is a so-called generative AI (Artificial Intelligence). An example of data generation model 58 is ChatGPT (registered trademark) (Internet search).<URL: https: / / openai.com / blog / chatgpt> ), Gemini (registered trademark) (Internet search) <url: https: gemini.google.com ?hl="ja">Examples of generative AI include the following. The data generation model 58 is obtained by performing deep learning on a neural network. The data generation model 58 is input with prompts containing instructions, and with inference data such as audio data representing speech, text data representing text, and image data representing images. The data generation model 58 infers from the input inference data according to the instructions indicated by the prompts, and outputs the inference results in data formats such as audio data and text data. Here, inference refers to, for example, analysis, classification, prediction, and / or summarization.
[0432] In the above embodiment, an example was given in which specific processing is performed by the data processing device 12, but the technology of this disclosure is not limited thereto, and the specific processing may also be performed by the smart device 14.
[0433] [Second Embodiment]
[0434] Figure 3 shows an example of the configuration of the data processing system 210 according to the second embodiment.
[0435] As shown in Figure 3, the data processing system 210 includes a data processing device 12 and smart glasses 214. An example of the data processing device 12 is a server.
[0436] The data processing device 12 comprises a computer 22, a database 24, and a communication interface 26. The computer 22 is an example of a "computer" related to the technology of this disclosure. The computer 22 comprises a processor 28, RAM 30, and storage 32. The processor 28, RAM 30, and storage 32 are connected to a bus 34. The database 24 and the communication interface 26 are also connected to the bus 34. The communication interface 26 is connected to a network 54. An example of the network 54 is a WAN (Wide Area Network) and / or a LAN (Local Area Network).
[0437] The smart glasses 214 include a computer 36, a microphone 238, a speaker 240, a camera 42, and a communication interface 44. The computer 36 includes a processor 46, RAM 48, and storage 50. The processor 46, RAM 48, and storage 50 are connected to a bus 52. The microphone 238, speaker 240, and camera 42 are also connected to the bus 52.
[0438] The microphone 238 receives voice signals from the user 20 and receives instructions from the user 20. The microphone 238 captures the voice signals from the user 20, converts the captured voice into audio data, and outputs it to the processor 46. The speaker 240 outputs audio according to the instructions from the processor 46.
[0439] Camera 42 is a small digital camera equipped with an optical system including a lens, aperture, and shutter, and an image sensor such as a CMOS (Complementary Metal-Oxide-Semiconductor) image sensor or a CCD (Charge Coupled Device) image sensor, and captures images of the area around the user 20 (for example, an imaging range defined by a field of view equivalent to the width of a typical healthy person's field of vision).
[0440] Communication interface 44 is connected to network 54. Communication interfaces 44 and 26 are responsible for the exchange of various information between processor 46 and processor 28 via network 54. The exchange of various information between processor 46 and processor 28 using communication interfaces 44 and 26 is performed in a secure manner.
[0441] Figure 4 shows an example of the main functions of the data processing device 12 and the smart glasses 214. As shown in Figure 4, the data processing device 12 performs specific processing using the processor 28. The storage 32 stores the specific processing program 56.
[0442] The specific processing program 56 is an example of a "program" relating to the technology of this disclosure. The processor 28 reads the specific processing program 56 from the storage 32 and executes the read specific processing program 56 on the RAM 30. The specific processing is realized by the processor 28 operating as a specific processing unit 290 in accordance with the specific processing program 56 executed on the RAM 30.
[0443] The storage 32 stores the data generation model 58 and the emotion identification model 59. The data generation model 58 and the emotion identification model 59 are used by the identification processing unit 290.
[0444] In the smart glasses 214, the processor 46 performs the reception output processing. The storage 50 stores the reception output program 60. The processor 46 reads the reception output program 60 from the storage 50 and executes the read reception output program 60 on the RAM 48. The reception output processing is realized by the processor 46 operating as a control unit 46A according to the reception output program 60 executed on the RAM 48.
[0445] Next, the identification processing performed by the identification processing unit 290 of the data processing device 12 will be described. In the following description, the data processing device 12 will be referred to as the "server" and the smart glasses 214 will be referred to as the "terminal".
[0446] The present invention is a system that automatically creates meeting minutes from recorded data of meetings and on-the-job training, and selects and edits important parts. The system includes means for receiving a video file containing audio data, extracting the audio portion and converting it into text data, formatting the text data into meeting minutes format, selecting predetermined parts from the meeting minutes, identifying time codes based on the selected parts and extracting and editing the corresponding parts of the video, and outputting the edited video as a file.
[0447] The system's program and its description in natural language.
[0448] Loading video
[0449] 1. The user uploads the ZOOM recording data (e.g., "meeting_record.mp4") to the server.
[0450] The user selects files through the web interface and presses the upload button.
[0451] The device receives this command and sends the file to the server.
[0452] 2. The server receives the video file and saves it to a database or storage.
[0453] The server confirms receipt of the uploaded file and records it in the appropriate storage location.
[0454] Speech recognition
[0455] 1. Extract the audio portion of the video file received by the server.
[0456] The server uses tools such as FFmpeg to separate the audio track from the video file and generate an audio file (e.g., "audio.wav").
[0457] 2. The server uses a speech recognition engine (e.g., Google Cloud Speech-to-Text API) to convert the audio data into text data.
[0458] The server sends an audio file to the speech recognition API and temporarily stores the returned text data.
[0459] Meeting minutes
[0460] 1. The server formats the text data obtained through speech recognition into a meeting minutes format.
[0461] The server converts the data into a format that includes a timestamp and speaker information, and then constructs the text data.
[0462] 2. The server saves the formatted text meeting minutes and makes them accessible to users.
[0463] The server generates a file as meeting minutes (e.g., "meeting_minutes.txt") and provides a link for the user to download it.
[0464] Selecting the necessary parts
[0465] 1. Users can view meeting minutes through a web interface.
[0466] The user reviews the meeting minutes and selects the necessary sections (e.g., "Agenda Item 1, Agenda Item 3").
[0467] 2. The terminal sends the timecode of the selected portion of the meeting minutes to the server.
[0468] The terminal collects the selected start and end time codes and sends them to the server.
[0469] Video editing
[0470] 1. The server extracts the corresponding portion from the video file based on the timecode sent.
[0471] The server uses tools such as FFmpeg to split and extract the video according to the specified timecode.
[0472] 2. The server combines and edits the extracted video segments.
[0473] The server combines the selected portions into a single, continuous video file.
[0474] File Output
[0475] 1. The server generates the edited video as a file and provides the user with a download link.
[0476] The server generates the final edited file (e.g., "final_output.mp4") and provides the user with a download link.
[0477] 2. The user downloads the generated video file and meeting minutes.
[0478] Users save the video and meeting minutes files to their devices via the provided links.
[0479] Specific example
[0480] One day, a user uploads a ZOOM recording file titled "Meeting 2023-10-01.mp4" to the server. The server receives this video file, extracts and analyzes the audio data, and generates temporary text data. Next, it generates a formatted meeting minutes file, "Meeting 2023-10-01_minutes.txt," and provides it to the user.
[0481] The user reviews the meeting minutes and selects the sections they need, namely "Agenda Item 1" and "Agenda Item 3." Based on this, the server extracts and edits the specified sections from the video file and generates it as "Selected Meeting Agenda Items.mp4." Finally, the user can download this edited video file and the meeting minutes, allowing for efficient sharing of the key points of the meeting.
[0482] As described above, this system automatically and efficiently extracts and edits important information from meeting and on-the-job training records and provides it to the user.
[0483] The following describes the processing flow.
[0484] Step 1:
[0485] To upload a ZOOM recording file (e.g., "meeting_record.mp4"), the user accesses the web interface and selects the file. Pressing the upload button sends the recording file to the server.
[0486] Step 2:
[0487] The server receives the uploaded video file and saves it to a database or storage. The server confirms receipt of the file and records its location.
[0488] Step 3:
[0489] The server extracts the audio portion from the stored video files. Using media processing tools such as FFmpeg, it separates the audio track from the video and generates an "audio.wav" file.
[0490] Step 4:
[0491] The server sends the extracted audio files to a speech recognition engine (e.g., Google Cloud Speech-to-Text API) to convert the audio data into text data. The returned text data is then temporarily stored.
[0492] Step 5:
[0493] The server formats the text data obtained from the speech recognition engine into a meeting minutes format. It converts it into a format that includes timestamps and speaker information, thus constructing the text data.
[0494] Step 6:
[0495] The server generates a formatted text meeting minutes file and saves it as "meeting_minutes.txt". A download link is then provided for the user to access.
[0496] Step 7:
[0497] The user reviews the meeting minutes via the provided link. They select the necessary sections (e.g., "Agenda Item 1, Agenda Item 3") and enter or select the start and end time codes for the selected sections.
[0498] Step 8:
[0499] The terminal collects timecode information based on the user's selection and sends it to the server. For example, it sends timecode information if the start time of "Agenda Item 1" is 00:05:10 and the end time is 00:15:45.
[0500] Step 9:
[0501] The server extracts the corresponding portion from the video file based on the timecode sent. Tools such as FFmpeg are used to split and extract the video according to the specified timecode.
[0502] Step 10:
[0503] The server combines and edits the multiple extracted video segments. Next, it generates a single continuous video file, "final_output.mp4".
[0504] Step 11:
[0505] The server converts the edited video file to the final file format and provides the user with a download link. By clicking this link, the user saves the edited video file and meeting minutes to their device.
[0506] (Example 1)
[0507] Next, we will describe Example 1. In the following description, the data processing device 12 will be referred to as the "server," and the smart glasses 214 will be referred to as the "terminal."
[0508] Traditional meeting and on-the-job training (OJT) records often require manual creation of meeting minutes, which is time-consuming and labor-intensive. Furthermore, efficiently extracting and editing important parts from video footage is difficult. Therefore, there is a growing need for a system that can automatically generate meeting minutes from video files including audio data, and efficiently select and edit important sections.
[0509] The identification process performed by the identification processing unit 290 of the data processing device 12 in Example 1 is realized by the following means.
[0510] In this invention, the server includes means for receiving a video file containing audio data, means for extracting the audio portion from the video file using dedicated software and converting it into text data, and means for formatting the text data into a meeting minutes format including a timestamp and speaker information. This enables the automatic generation of meeting minutes from a video file containing audio data, allowing the user to efficiently select and edit important parts.
[0511] "Audio data" refers to data in which the human voice is recorded in an electronic format.
[0512] A "video file" is a digital file that contains moving images and sound.
[0513] "Means of receiving" refers to a method or device for acquiring data sent from an external source and incorporating it into an internal system.
[0514] "Dedicated software" refers to a program developed to perform a specific function.
[0515] "Means of extraction" refers to a method or apparatus for separating specific data elements from the original data.
[0516] "Text data" refers to electronic data expressed in the form of characters and sentences.
[0517] "Means of conversion" refers to a method or apparatus for changing the format of data to another format.
[0518] A "timestamp" is a record of the exact date and time when data was created or modified.
[0519] "Speaker information" refers to information about the person speaking in the audio data.
[0520] "Meeting minutes" are documents that record the proceedings of a meeting or similar event.
[0521] "Means of formatting" refers to a method or apparatus for arranging data into a specific format.
[0522] A "user" is a person or organization that uses a system.
[0523] A "web interface" is a user interface used to access and operate a system using a web browser.
[0524] "Means of selection" refers to a method or device for choosing a specific option from among several options.
[0525] "Timecode" is time information used to indicate a specific location within digital media.
[0526] "Means for extraction and editing" refers to a method or apparatus that has the function of separating specific elements and then processing or adjusting them.
[0527] "Means of outputting as a file" refers to a method or device for saving and presenting processed or edited data in a specific file format.
[0528] A "download link" is a URL used to obtain a file via the internet.
[0529] This invention is a system that automatically creates meeting minutes from recorded data of meetings and on-the-job training (OJT), and allows for the selection and editing of important sections. This system uses the following hardware and software to perform data processing and calculations in multiple stages.
[0530] First, a web interface is provided for users to upload video files containing audio data. Using this interface, users select a meeting recording file (e.g., "meeting_record.mp4") from their device and send it to the server. The device receives this operation and sends the file to the server using an HTTP POST request.
[0531] Next, the server receives the file and saves it appropriately to the database or storage. Using FFmpeg as the dedicated software, the audio track is extracted from the uploaded video file to generate an audio file (e.g., "audio.wav"). An example FFmpeg command used is ffmpeg -i meeting_record.mp4 -q:a 0 -map a audio.wav.
[0532] The server then uses a speech recognition engine, such as the Google Cloud Speech-to-Text API, to convert the audio data into text data. This converts the audio file into text data, which is then temporarily stored. Specifically, the Google Cloud client library is used to send the audio file to the API, and the returned JSON-formatted text data is processed.
[0533] The server then formats the text data generated by the speech recognition engine into a meeting minutes format. After analyzing the timestamp and speaker information, the data, converted to the predetermined format, is saved as a text file. For example, it might be in the format of "[00:01:23] User A: Regarding agenda item 1..."
[0534] After the meeting minutes are created, users can review them through a web interface. Users select the parts they need (e.g., "Agenda Item 1, Agenda Item 3"), and the selection information is sent to the server. Based on the received selection information, the server identifies the corresponding video timecodes and uses FFmpeg to extract and edit the identified sections. An example is `ffmpeg -i meeting_record.mp4 -ss 00:01:23 -to 00:02:34 -c copy part1.mp4`.
[0535] Finally, an edited video file is generated, and the server provides a download link. Through this link, users can download the edited video file and meeting minutes. This allows for the efficient sharing of key points from the meeting.
[0536] Specific example
[0537] One day, a user uploads a ZOOM recording file titled "Meeting 2023-10-01.mp4" to the server. The server receives this video file, extracts and analyzes the audio data, and generates temporary text data. Next, it generates a formatted meeting minutes file, "Meeting 2023-10-01_minutes.txt," and provides it to the user. The user reviews the minutes and selects the sections they need, namely "Agenda Item 1" and "Agenda Item 3." Based on this, the server extracts and edits the specified sections from the video file and generates it as "Selected Meeting Agenda Items.mp4." Finally, the user can download this edited video file and meeting minutes, allowing them to efficiently share the key points of the meeting.
[0538] Examples of prompts for generative AI models
[0539] Prompt: "Please describe the process of a system that uploads ZOOM recording data, automatically converts the audio data to text, and creates meeting minutes. Please include specific actions, such as the process of the user selecting the necessary meeting minutes and then extracting and editing the corresponding video portion based on that selection."
[0540] The flow of the specific processing in Example 1 will be explained using Figure 11.
[0541] Step 1:
[0542] The user uploads the ZOOM recording data to the server.
[0543] Specifically, the user selects a file named "meeting_record.mp4" through the web interface and presses the upload button. The device receives this action and sends the file to the server using an HTTP POST request.
[0544] Input: ZOOM recording file.
[0545] Output: The recorded file received on the server side.
[0546] Step 2:
[0547] The server receives the video file and saves it to a database or storage.
[0548] Specifically, the server receives an HTTP POST request and verifies that the file was transferred correctly. After verification, it saves the file to the "videos / " directory and records the file path and metadata in the database.
[0549] Input: Recording file sent by the user.
[0550] Output: Files stored in storage and their metadata.
[0551] Step 3:
[0552] The server extracts the audio portion from the video file it receives.
[0553] Specifically, the server executes the FFmpeg command to extract the audio track from "meeting_record.mp4" and save it as "audio.wav".
[0554] Input: Recording file.
[0555] Output: Audio file.
[0556] Step 4:
[0557] The server uses a speech recognition engine to convert the audio data into text data.
[0558] Specifically, the server uses a speech recognition engine such as the Google Cloud Speech-to-Text API to convert "audio.wav" into text data and saves it as a temporary file.
[0559] Input: Audio file.
[0560] Output: Text data.
[0561] Step 5:
[0562] The server formats the text data obtained through speech recognition into a meeting minutes format.
[0563] Specifically, the server reads text data from a temporary file, analyzes the timestamp and speaker information, and converts it into a meeting minutes format. It then saves it as "meeting_minutes.txt".
[0564] Input: Text data of the speech recognition result.
[0565] Output: Formatted meeting minutes file.
[0566] Step 6:
[0567] The server saves formatted text meeting minutes and makes them accessible to users.
[0568] Specifically, the server saves the formatted meeting minutes file to the "minutes / " directory, generates a URL for the file, and displays it on the user's dashboard.
[0569] Input: Formatted meeting minutes file.
[0570] Output: Access URL for the meeting minutes file.
[0571] Step 7:
[0572] Users can review meeting minutes through a web interface and select the parts they need.
[0573] Specifically, the user accesses the dashboard, clicks the link to the new meeting minutes to review the contents, selects the necessary sections (e.g., "Agenda Item 1, Agenda Item 3"), and presses the submit button.
[0574] Input: Contents of the meeting minutes file.
[0575] Output: Timecode of the portion selected by the user.
[0576] Step 8:
[0577] The terminal sends the timecode of the selected portion of the meeting minutes to the server.
[0578] Specifically, the selected start and end timecodes are sent to the server as an HTTP POST request in JSON format.
[0579] Input: The timecode selected by the user.
[0580] Output: Timecode sent to the server.
[0581] Step 9:
[0582] The server extracts the corresponding portion from the video file based on the timecode sent.
[0583] Specifically, the server uses the FFmpeg command to split and extract the video according to the specified timecode.
[0584] Input: Timecode and recording file.
[0585] Output: Extracted video portion.
[0586] Step 10:
[0587] The server combines and edits the extracted video segments.
[0588] Specifically, the server sequentially combines the multiple extracted parts into a single, continuous file.
[0589] Input: Extracted video portion.
[0590] Output: Combined edited video file.
[0591] Step 11:
[0592] The server generates the edited video as a file and provides the user with a download link.
[0593] Specifically, the server saves the final edited file "final_output.mp4" to the "edited_videos / " directory and displays the URL on the user dashboard.
[0594] Input: Combined edited video files.
[0595] Output: Download link.
[0596] Step 12:
[0597] The user downloads the generated video files and meeting minutes.
[0598] Specifically, the user clicks a link on the dashboard to download the video file and meeting minutes file to their device.
[0599] Input: Download link.
[0600] Output: Files saved on the user's device.
[0601] (Application Example 1)
[0602] Next, we will explain Application Example 1. In the following explanation, the data processing device 12 will be referred to as the "server," and the smart glasses 214 will be referred to as the "terminal."
[0603] Traditional surveillance camera systems and security services require significant human effort to detect abnormal sounds or critical events, making real-time response difficult. Furthermore, the time between detecting abnormal sounds and responding increases the likelihood of damage escalating. Additionally, the lack of technology to automatically extract and edit relevant video footage of detected abnormal sounds hinders efficient information sharing and rapid countermeasures.
[0604] The specific processing performed by the specific processing unit 290 of the data processing device 12 in Application Example 1 is realized by the following means.
[0605] In this invention, the server includes means for receiving a video file containing audio data, means for extracting the audio portion from the video file and converting it into text data, means for formatting the text data into a meeting minutes format, means for selecting a predetermined portion from the meeting minutes, means for identifying time codes based on the selected portion and extracting and editing the corresponding portion of the video, means for outputting the edited video as a file, means for analyzing the audio data and detecting abnormal sounds, means for highlighting abnormal sounds and including them in the meeting minutes format, and means for notifying of abnormal sounds and selecting necessary portions. This enables real-time detection of abnormal sounds and rapid extraction and editing of important portions.
[0606] A "video file" is a file in a video recording format that also includes audio data.
[0607] "Audio data" refers to a data format that contains information expressed through sound.
[0608] "Text data" refers to a data format that expresses information as characters.
[0609] "Meeting minutes format" refers to a document format that organizes and summarizes the content of meetings and discussions.
[0610] A "timecode" is a marker that indicates a specific time position in video or audio data.
[0611] An "unusual sound" is a sound that deviates from the normal sound environment and suggests an incident or accident.
[0612] "Notification" refers to a means of informing users of anomalies or important information.
[0613] "Selection" refers to the act of a user identifying a specific part.
[0614] "Extraction" is the process of taking a specific part from the whole.
[0615] "Editing" is the process of rearranging video and audio data to suit a specific purpose.
[0616] This invention relates to a system that receives a video file containing audio data, extracts the audio portion, converts it into text data, and detects abnormal sounds and formats it into a meeting minutes format. This system further includes functions for notifying abnormal sounds, selecting important parts, and extracting, editing, and outputting corresponding parts of the video based on time codes.
[0617] First, the user uploads a video file recorded by a surveillance camera to the server. The server receives the video file and uses the FFmpeg tool to extract the audio. Then, it converts the extracted audio data into text data using a speech recognition engine such as the Google Cloud Speech-to-Text API.
[0618] Next, the server analyzes the converted text data to detect abnormal sounds. The abnormal sound detection engine detects sounds such as breaking glass, screams, and abnormal machine noises. The results are highlighted in a meeting minutes format and provided to the user. The user can view the abnormal sound information in real time through smart glasses and select the time codes for the parts they need.
[0619] Based on the selected timecode, the server extracts the corresponding portion from the video file and edits it using the FFmpeg tool. Finally, the edited video is generated, and a download link is provided to the user.
[0620] As a concrete example, consider a scenario where a security guard wears smart glasses while performing their duties. Video from surveillance cameras is recorded on the smart glasses, and audio data is uploaded to a server in real time. The server detects abnormal sounds based on the audio data and immediately notifies the smart glasses if an abnormal sound is detected. The security guard then checks the details of the abnormal sound on the spot, selects the time codes of the necessary parts, and sends them to the server.
[0621] The server extracts and edits the corresponding video segments according to the selected timecodes, highlighting any anomalies and combining them. Finally, the edited video file is provided as a download link and immediately shared with security guards and other relevant personnel.
[0622] Examples of prompts for the generative AI model in this system are as follows:
[0623] Please detect abnormal sounds from the following audio data:
[0624] The sound of glass breaking
[0625] scream
[0626] Abnormal noise from the machine
[0627] Audio data: "Contents of the audio data"
[0628] By using this prompt statement, it is possible to detect specific abnormal sounds from audio data and respond quickly and efficiently.
[0629] The flow of a specific process in Application Example 1 will be explained using Figure 12.
[0630] Step 1:
[0631] Uploading videos
[0632] The user uploads video files recorded by surveillance cameras to the server. The input is a video file (e.g., "monitoring_video.mp4"), and the output is the path to the video file saved on the server. The user selects the file through the web interface and presses the upload button, at which point the terminal sends the video file to the server.
[0633] Step 2:
[0634] Extraction of the audio portion
[0635] The server extracts the audio portion from the received video file. The input is the path to the video file, and the output is an audio file (e.g., "audio.wav"). Specifically, the server uses the FFmpeg tool to separate the audio track from the video file.
[0636] Step 3:
[0637] Speech-to-text conversion
[0638] The server sends the extracted audio files to a speech recognition engine and converts them into text data. The input is an audio file, and the output is text data (e.g., "transcribed_text.txt"). Specifically, the server uses the Google Cloud Speech-to-Text API or similar to convert the audio data into text data and temporarily stores it.
[0639] Step 4:
[0640] Detection of abnormal sounds
[0641] The server analyzes text data to detect abnormal sounds. The input is text data, and the output is information about detected abnormal sounds. Specifically, the abnormal sound detection engine scans the text data and identifies patterns such as "the sound of glass breaking" or "screaming."
[0642] Step 5:
[0643] Notification of abnormal sound information
[0644] The server notifies the user of any detected abnormal sounds. The input is the detected abnormal sound information, and the output is the notification to the user. Specifically, the server sends an alert to smart glasses or a terminal to notify the user of the occurrence of an abnormal sound.
[0645] Step 6:
[0646] User-selected timecode
[0647] The user views abnormal sound information through smart glasses and selects the timecodes for the required sections. The input consists of abnormal sound information and a portion of the meeting minutes, while the output is the selected timecodes. Specifically, the user operates the interface to specify the start and end timecodes for important sections.
[0648] Step 7:
[0649] Extraction and editing of video portions
[0650] The server extracts and edits the corresponding video portion based on the selected timecode. The input is the path to the video file and the selected timecode, and the output is the edited video file (e.g., "highlighted_event.mp4"). Specifically, the server uses the FFmpeg tool to split and extract the video, and then combines and edits the specified portions.
[0651] Step 8:
[0652] Outputting and sharing edited videos
[0653] The server generates the edited video file and provides the user with a download link. The input is the edited video file, and the output is the download link. Specifically, the server generates the final edited file and creates and notifies the user of a link that allows immediate access.
[0654] Furthermore, an emotion engine that estimates the user's emotions may be incorporated. That is, the identification processing unit 290 may use the emotion identification model 59 to estimate the user's emotions and perform identification processing using the user's emotions.
[0655] This invention combines a system that automatically creates meeting minutes from recorded data of meetings and on-the-job training, and selects and edits important parts, with an emotion engine that recognizes the user's emotions. The system includes means for receiving a video file containing audio data, extracting the audio portion and converting it into text data, formatting the text data into meeting minutes format, selecting predetermined parts from the meeting minutes, identifying time codes based on the selected parts and extracting and editing the corresponding parts of the video, outputting the edited video as a file, and an emotion engine that recognizes the user's emotions.
[0656] The system's program and its description in natural language.
[0657] Loading video
[0658] 1. The user accesses the web interface to upload a ZOOM recording file (e.g., "meeting_record.mp4"), selects the file, and presses the upload button. The device then sends the recording file to the server.
[0659] 2. The server receives the uploaded video file and saves it to a database or storage. The server confirms receipt of the file and records its location.
[0660] Speech recognition
[0661] 1. The server extracts the audio portion from the stored video file. Using a media processing tool such as FFmpeg, the audio track is separated from the video and an "audio.wav" file is generated.
[0662] 2. The server sends the audio data to a speech recognition engine (e.g., Google Cloud Speech-to-Text API) to convert the audio into text data. The returned text data is then temporarily stored.
[0663] emotion recognition
[0664] 1. The server sends audio and video data to the emotion engine and recognizes the user's emotions from their voice and facial expressions.
[0665] 2. The server adds the emotion information returned by the emotion engine to the meeting minutes text data. For example, it converts it into a format that includes emotion information, such as "10:15 [Yamada]: Hello, let's start the meeting. (Emotion: Joy)".
[0666] Meeting minutes
[0667] 1. The server generates a formatted text meeting minutes file and saves it as "meeting_minutes.txt". A download link is then provided for the user to access.
[0668] Selecting the necessary parts
[0669] 1. The user reviews the meeting minutes, including sentiment information, via the provided link. They select the necessary sections (e.g., "Agenda Item 1, Agenda Item 3") and enter or select the start and end time codes.
[0670] 2. The terminal collects timecode information based on the user's selection and sends it to the server. For example, it sends timecode information if the start time of "Agenda Item 1" is 00:05:10 and the end time is 00:15:45.
[0671] Video editing
[0672] 1. The server extracts the corresponding portion from the video file based on the transmitted timecode. Tools such as FFmpeg are used to split and extract the video according to the specified timecode.
[0673] 2. The server combines and edits the multiple extracted video segments. Next, it generates a single continuous video file, "final_output.mp4".
[0674] File Output
[0675] 1. The server converts the edited video file to the final file format and provides a download link for the user. By clicking this link, the user saves the edited video file and meeting minutes, including sentiment information, to their device.
[0676] Specific example
[0677] For example, a user uploads a ZOOM recording file titled "Meeting 2023-10-01.mp4" to the server. The server receives this video file, analyzes the audio and video data, and generates text data containing sentiment information, such as "Meeting 2023-10-01_minutes.txt". The meeting minutes will also include sentiment information for each statement made.
[0678] The user reviews the meeting minutes, which include emotional information, and selects the sections they need, namely "Agenda Item 1" and "Agenda Item 3." Based on this, the server extracts and edits the specified sections from the video file to generate "Selected Meeting Agenda Items.mp4." The user can then download this edited video file and the meeting minutes, allowing them to efficiently share the key points of the meeting.
[0679] As described above, this system automatically creates meeting minutes with added emotional information from records of meetings and on-the-job training, efficiently extracts and edits important information, and provides it to the user.
[0680] The following describes the processing flow.
[0681] Step 1:
[0682] The user accesses the web interface to upload a ZOOM recording file (e.g., "meeting_record.mp4"), selects the file, and presses the upload button. The device then sends the recording file to the server.
[0683] Step 2:
[0684] The server receives the uploaded video file and saves it to a database or storage. It confirms the file's receipt and records its location.
[0685] Step 3:
[0686] The server uses media processing tools such as FFmpeg to extract the audio portion from the stored video files. This separates the audio track from the video and generates an "audio.wav" file.
[0687] Step 4:
[0688] The server sends the audio file "audio.wav" to a speech recognition engine (e.g., Google Cloud Speech-to-Text API) and converts the audio data into text data. The returned text data is then temporarily stored.
[0689] Step 5:
[0690] The server sends audio and video data to the emotion engine, which recognizes the user's emotions from the audio and facial expressions. The emotion engine performs analysis and returns emotional information (e.g., joy, sadness, anger, etc.).
[0691] Step 6:
[0692] The server adds the emotion information returned from the emotion engine to the text data, formats it, and then formats it into a meeting minutes format. For example, it converts it into a format that includes emotion information, such as "10:15 [Yamada]: Hello, let's start the meeting. (Emotion: Joy)".
[0693] Step 7:
[0694] The server generates a formatted text meeting minutes file and saves it as "meeting_minutes.txt". A download link is then provided for the user to access.
[0695] Step 8:
[0696] Users review meeting minutes, including sentiment information, via the provided link. They select the necessary sections (e.g., "Agenda Item 1, Agenda Item 3") and enter or select the start and end time codes.
[0697] Step 9:
[0698] The terminal collects timecode information based on the user's selection and sends it to the server. For example, it sends timecode information if the start time of "Agenda Item 1" is 00:05:10 and the end time is 00:15:45.
[0699] Step 10:
[0700] The server extracts the corresponding portion from the video file based on the timecode sent. Tools such as FFmpeg are used to split and extract the video according to the specified timecode.
[0701] Step 11:
[0702] The server combines and edits the multiple extracted video segments. Next, it generates a single continuous video file, "final_output.mp4".
[0703] Step 12:
[0704] The server converts the edited video file to the final file format and provides the user with a download link. Clicking this link saves the edited video file and meeting minutes, including emotional information, to the user's device.
[0705] (Example 2)
[0706] Next, we will describe Example 2. In the following description, the data processing device 12 will be referred to as the "server" and the smart glasses 214 will be referred to as the "terminal".
[0707] Traditional meeting recording systems made it difficult to efficiently extract important information from recorded meetings and on-the-job training (OJT) footage. Furthermore, the resulting meeting minutes lacked information tailored to the speaker's emotions and the importance of each point, making it difficult to extract and share crucial information. This resulted in cumbersome post-meeting reviews and report creation, requiring significant time and effort.
[0708] The identification process performed by the identification processing unit 290 of the data processing device 12 in Example 2 is realized by the following means.
[0709] In this invention, the server includes means for receiving a video file containing audio data, means for extracting the audio portion from the video file and converting it into text data, means for formatting the text data into a meeting minutes format, means for adding emotional information to the text data, means for selecting a predetermined portion from the meeting minutes, means for identifying time codes based on the selected portion and extracting and editing the corresponding portion of the video, and means for outputting the edited video as a file. This makes it possible to efficiently extract important parts from recorded meeting and OJT data, create meeting minutes including emotional information, and quickly and efficiently provide the specific information that the user needs.
[0710] A "video file" is a recording medium that contains both audio and video data.
[0711] The "audio portion" refers to audio data extracted from a video file, including the speaker's utterances and other sounds.
[0712] "Text data" refers to the character information converted from the audio portion by a speech recognition engine.
[0713] "Meeting minutes format" refers to a document format that records the contents of a meeting or on-the-job training in chronological order.
[0714] "Emotional information" refers to information that indicates the emotional state of a speaker, analyzed from their speech and facial expressions.
[0715] A "timecode" is a code that indicates a specific time position within a video file.
[0716] "Extraction and editing" refers to the process of cutting out corresponding portions from a video file based on specific time codes and combining or processing them as needed.
[0717] "Means" refers to a device, program, or method for performing a specific function or process.
[0718] A "server" is a computer device that receives, processes, stores, and transmits data over a network.
[0719] A "user" is the entity that uses this system to extract, edit, and review information from recorded data of meetings and on-the-job training (OJT).
[0720] The present invention is a system that automatically creates meeting minutes from recorded data of meetings and on-the-job training, and selects and edits important parts. The system includes means for receiving a video file containing audio data, extracting the audio portion and converting it into text data, means for formatting the text data into meeting minutes format, means for selecting predetermined parts from the meeting minutes, means for identifying time codes based on the selected parts and extracting and editing the corresponding parts of the video, and an emotion engine that recognizes the user's emotions.
[0721] The user uploads a recording file (e.g., "meeting_record.mp4") via a web interface. The terminal sends this file to the server. The server receives the file and saves it to a database or storage. The file's save path is also recorded at this time.
[0722] Next, the server uses a media processing tool such as FFmpeg to extract the audio portion from the video file and generate an "audio.wav" file. The generated audio file is then sent to a speech recognition engine such as the Google Cloud Speech-to-Text API to convert the audio data into text data. This converted text data is temporarily stored.
[0723] Furthermore, the server sends audio and video data to the emotion engine to recognize the user's emotions. The emotion information returned by the emotion engine is integrated into the text data and added, for example, "10:15 [Speaker]: Hello, let's start the meeting. (Emotion: Joy)".
[0724] The server generates a formatted text meeting minutes file with added sentiment information and saves it as "meeting_minutes.txt". Users can download these minutes from the provided link.
[0725] The user reviews the meeting minutes and selects important sections (e.g., "Agenda Item 1, Agenda Item 3"). Based on this selection, the user enters or selects the start and end time codes. The terminal sends this time code information to the server.
[0726] Based on the transmitted timecode, the server extracts and edits the corresponding portion from the video file using tools such as FFmpeg. If multiple video portions are specified, they are combined and finally output as a "final_output.mp4" file.
[0727] Finally, the server converts the edited video file to its final file format and provides a download link for the user. The user can click this link to download the edited video file and meeting minutes, including sentiment information.
[0728] Specific example
[0729] For example, a user uploads a video recording file titled "Meeting 2023-10-01.mp4" to the server. This video file is analyzed for audio and video data, and a text file named "Meeting 2023-10-01_minutes.txt" is generated with added sentiment information. The minutes also include sentiment information for each statement. The user reviews the minutes, which include sentiment information, and selects sections for "Agenda Item 1" and "Agenda Item 3." Based on this, the server extracts and edits the specified sections from the video file to generate "Selected Meeting Agenda Items.mp4." The user can then download this edited video file and the minutes, enabling efficient sharing of important information.
[0730] Examples of prompts to input into a generative AI model
[0731] "Please upload the meeting recording file (e.g., meeting_record.mp4), extract the audio, and transcribe it. Then, create meeting minutes with emotional information added for each statement, edit the video based on the timecodes of the specified statements, and make the results available for download."
[0732] The flow of the specific processing in Example 2 will be explained using Figure 13.
[0733] Step 1: Load the video
[0734] The user selects a recording file (e.g., "meeting_record.mp4") via a web interface and presses the upload button. The device then sends this file to the server. Specifically, the device sends the selected file to the server via an HTTP POST request. The server saves the received video file to a database or file storage and records its save path.
[0735] Input: Recording file (e.g., "meeting_record.mp4")
[0736] Data processing: Receiving and saving files
[0737] Output: Path to the saved video file
[0738] Step 2: Extraction of the audio portion
[0739] The server reads the saved video file and extracts the audio portion using a media processing tool such as FFmpeg. It then sends the generated "audio.wav" file to a speech recognition engine (e.g., Google Cloud Speech-to-Text API) to convert the audio data into text data. Specifically, the server uses the FFmpeg command to separate the audio track and generate the "audio.wav" file. It then sends this audio file to the speech recognition engine and temporarily stores the returned text data.
[0740] Input: Path to the saved video file
[0741] Data processing: Extraction of audio and conversion to text.
[0742] Output: Text data
[0743] Step 3: Adding emotional information
[0744] The server sends audio and video data to an emotion engine to recognize the user's emotions. The emotion information returned by the emotion engine is then integrated into the existing text data. Specifically, the server sends audio and video data to APIs for speech emotion recognition and facial expression analysis, respectively, analyzes the responses from the APIs, and adds the emotion information to the relevant parts.
[0745] Input: Audio data and video data
[0746] Data processing: Recognition and integration of emotional information
[0747] Output: Text data with added emotional information
[0748] Step 4: Creating meeting minutes
[0749] The server formats the text data, which includes emotional information, into a meeting minutes format. Specifically, the server uses a template engine (e.g., Jinja2) to convert it into a meeting minutes format and saves it as "meeting_minutes.txt". Users can download these meeting minutes via the provided link.
[0750] Input: Text data with added emotional information
[0751] Data processing: Formatting and shaping text data
[0752] Output: Meeting minutes file ("meeting_minutes.txt")
[0753] Step 5: Selecting the Timecode
[0754] The user clicks the provided link to view the meeting minutes, which include sentiment information. They select the necessary sections (e.g., "Agenda Item 1, Agenda Item 3") and enter or select the start and end time codes. Specifically, the user enters the time code information while referring to the web page, and the terminal sends this time code information to the server.
[0755] Input: Meeting minutes file ("meeting_minutes.txt")
[0756] Data processing: User input of timecodes
[0757] Output: Timecode information
[0758] Step 6: Editing the video
[0759] The server extracts and edits the corresponding portion from the video file based on the transmitted timecode. Specifically, the server uses the FFmpeg command to extract the video portion within the specified timecode range, combines multiple video clips, and generates the final file.
[0760] Input: Timecode information
[0761] Data processing: Extraction and merging of video portions
[0762] Output: Edited video file ("final_output.mp4")
[0763] Step 7: File Output
[0764] The server encodes the edited video file and converts it into a format that the user can download. Specifically, the server encodes the final video into a predetermined format (e.g., MP4) and saves it. Finally, the server displays a download link on the user interface and provides it in the HTTP response. The user can click this link to download the edited video file and meeting minutes, including sentiment information.
[0765] Input: Edited video file
[0766] Data processing: Encoding and saving
[0767] Output: Download link
[0768] (Application Example 2)
[0769] Next, we will explain application example 2. In the following explanation, the data processing device 12 will be referred to as the "server," and the smart glasses 214 will be referred to as the "terminal."
[0770] Conventional factory work record and report creation systems struggle to integrate the recording and textualization of work processes with emotional recognition, often leading to human error and wasted time. Furthermore, real-time assessment of worker stress and fatigue levels, and suggesting appropriate breaks, proved challenging. As a result, efficiency improvements and adequate worker health management were hindered, potentially leading to decreased quality and productivity.
[0771] The specific processing performed by the specific processing unit 290 of the data processing device 12 in Application Example 2 is realized by the following means.
[0772] In this invention, the server includes means for receiving a video file containing audio data, means for extracting the audio portion from the video file and converting it into text data, means for formatting the text data into a meeting minutes format, means for selecting a predetermined portion from the meeting minutes, means for identifying time codes based on the selected portion and extracting and editing the corresponding portion of the video, means for outputting the edited video as a file, means for recognizing emotions from the text data and video and adding that information, means for recording the manufacturing process and detecting abnormalities, and means for evaluating the worker's condition and suggesting appropriate break times. This enables increased work efficiency and accurate recording, and allows for proper management of the worker's health.
[0773] "Audio data" refers to information obtained by converting sound waves into a digital format, and includes data such as human speech and other sounds.
[0774] A "video file" is a file format that integrates sequential image data and audio data, and contains both video and audio.
[0775] "Text data" refers to data that has been converted into a format that can be handled by programs, such as characters and numbers.
[0776] "Meeting minutes" are documents that record the content of meetings and discussions, and include statements made, topics discussed, and decisions made.
[0777] A "timecode" is location information that indicates a specific time within video or audio data.
[0778] "Emotion recognition" is a technology that analyzes human facial expressions and tone of voice from audio and video to determine emotional states.
[0779] Anomaly detection is a technology that detects behavior or states that deviate from normal patterns.
[0780] "Break timing" refers to information indicating the appropriate time for workers to interrupt their work or take a rest.
[0781] A "server" is a computer dedicated to providing data and services to other computers on a network.
[0782] This invention is a system applied to robots that record factory work processes and quality checks. Specifically, it automatically generates work reports from conversations between workers and the robot, as well as recorded work data, and detects anomalies and areas for process improvement. It also recognizes the worker's emotions, assesses stress and fatigue levels, and provides appropriate rest timings.
[0783] The server receives a video file containing audio data, extracts the audio portion from the video file, and converts it into text data. This involves using a media processing tool such as FFmpeg to separate the audio track from the video and sending it to a speech recognition engine (e.g., Google Cloud Speech-to-Text API) to convert the audio data into text.
[0784] Furthermore, the server transmits audio and video data to the emotion recognition engine, which recognizes the user's emotions from their voice and facial expressions. The emotion recognition results are added to the text data of the meeting minutes. For example, it is recorded in a format that includes emotion information, such as "Work start time: 10:00 (Emotion: Neutral)".
[0785] Users review this information and identify any anomalies or defects. Anomaly detection uses automated tools to analyze video data. Time codes are identified, providing users with a means to select important sections, and the video is edited based on those selections.
[0786] Finally, the server generates formatted text minutes and provides them to the user in a format accessible along with the video files.
[0787] For example, a user uploads a video file titled "Task 2023-10-01.mp4" to the server. The server receives this video file, analyzes the audio and video data, and generates text data containing emotional information, titled "Task 2023-10-01_minutes.txt". The minutes also include emotional information for each work step. The user reviews the minutes, which include emotional information, and selects any abnormal or unnecessary parts. Based on this, the server extracts and edits the specified parts from the video file to generate "Edited Work Record.mp4". The user can download this edited video file and minutes, enabling efficient sharing of key points of factory work.
[0788] Examples of prompts for a generative AI model:
[0789] Analyze the audio and video data from the work video '2023-10-15_factory_work.mp4' and create a work report. Include emotional information regarding the statements made, and also include any anomaly detection results in the report. Additionally, suggest break times that reflect the worker's emotional state.
[0790] This system enables more efficient work processes, accurate record-keeping, and proper health management of workers.
[0791] The flow of a specific process in Application Example 2 will be explained using Figure 14.
[0792] Step 1:
[0793] The user uploads a recorded file (e.g., "Work 2023-10-01.mp4").
[0794] Specific operation: The user accesses the web interface, selects a recording file, and presses the upload button. The file is sent to the server.
[0795] Input: User selects and uploads video files.
[0796] Output: The server receives and saves the video file.
[0797] Step 2:
[0798] The server receives the uploaded video file and saves it to a database or storage.
[0799] Specific operation: The server records the file's location and confirms receipt.
[0800] Input: User-uploaded video file
[0801] Output: The video file is saved to the server's storage.
[0802] Step 3:
[0803] The server extracts the audio portion from the stored video file.
[0804] Specific operation: Using a media processing tool such as FFmpeg, separate the audio track from the video and generate an audio file named "audio.wav".
[0805] Input: Saved video file
[0806] Output: Audio file "audio.wav"
[0807] Step 4:
[0808] The server sends the audio data to the speech recognition engine, which converts the audio into text data.
[0809] Specific operation: Use the Google Cloud Speech-to-Text API to convert the audio file to text and temporarily store it.
[0810] Input: Audio file "audio.wav"
[0811] Output: Text data
[0812] Step 5:
[0813] The server sends audio and video data to the emotion recognition engine, which then recognizes the user's emotions from their voice and facial expressions.
[0814] Specific operation: Use an emotion recognition module to analyze video and audio and extract emotional information.
[0815] Input: Audio data and video data
[0816] Output: Text data containing emotional information
[0817] Step 6:
[0818] The server generates formatted text meeting minutes and provides a download link that users can access.
[0819] Specific operation: Format the generated text data, format it into a meeting minutes format, and save it as a file.
[0820] Input: Text data containing emotional information
[0821] Output: Formatted text meeting minutes
[0822] Step 7:
[0823] Users can view the meeting minutes via the provided link and select the necessary sections.
[0824] Specific operation: The user reviews the meeting minutes, selects the necessary sections, and enters or selects the start and end time codes.
[0825] Input: Formatted text meeting minutes
[0826] Output: Timecode information for the portion selected by the user.
[0827] Step 8:
[0828] The server extracts the corresponding portion from the video file based on the timecode sent.
[0829] Specific operation: Use a media processing tool such as FFmpeg to split and extract video according to the specified timecode.
[0830] Input: Timecode information
[0831] Output: Extracted video portion
[0832] Step 9:
[0833] The server combines the extracted video segments to generate a single, continuous video file.
[0834] Specific operation: The extracted video segments are combined to generate the final video file "Edited Work Log.mp4".
[0835] Input: Extracted video portion
[0836] Output: Edited video file
[0837] Step 10:
[0838] The server converts the edited video file to the final file format and provides the user with a download link.
[0839] Specific actions: Convert the final video file to a file format and provide a download link that the user can access.
[0840] Input: Edited video file
[0841] Output: A downloadable link for the user.
[0842] The specific processing unit 290 transmits the result of the specific processing to the smart glasses 214. In the smart glasses 214, the control unit 46A causes the speaker 240 to output the result of the specific processing. The microphone 238 acquires audio indicating user input for the result of the specific processing. The control unit 46A transmits the audio data indicating user input acquired by the microphone 238 to the data processing unit 12. In the data processing unit 12, the specific processing unit 290 acquires the audio data.
[0843] Data generation model 58 is a type of so-called generative AI (Artificial Intelligence). One example of data generation model 58 is ChatGPT (Internet search<URL: https: / / openai.com / blog / chatgpt> ), Gemini (Internet search) <url: https: gemini.google.com ?hl="ja">Examples of generative AI include the following. The data generation model 58 is obtained by performing deep learning on a neural network. The data generation model 58 is input with prompts containing instructions, and with inference data such as audio data representing speech, text data representing text, and image data representing images. The data generation model 58 infers from the input inference data according to the instructions indicated by the prompts, and outputs the inference results in data formats such as audio data and text data. Here, inference refers to, for example, analysis, classification, prediction, and / or summarization.
[0844] In the above embodiment, an example was given in which specific processing is performed by the data processing device 12, but the technology of this disclosure is not limited thereto, and the specific processing may also be performed by the smart glasses 214.
[0845] [Third Embodiment]
[0846] Figure 5 shows an example of the configuration of the data processing system 310 according to the third embodiment.
[0847] As shown in Figure 5, the data processing system 310 includes a data processing device 12 and a headset terminal 314. An example of the data processing device 12 is a server.
[0848] The data processing device 12 comprises a computer 22, a database 24, and a communication interface 26. The computer 22 is an example of a "computer" related to the technology of this disclosure. The computer 22 comprises a processor 28, RAM 30, and storage 32. The processor 28, RAM 30, and storage 32 are connected to a bus 34. The database 24 and the communication interface 26 are also connected to the bus 34. The communication interface 26 is connected to a network 54. An example of the network 54 is a WAN (Wide Area Network) and / or a LAN (Local Area Network).
[0849] The headset terminal 314 includes a computer 36, a microphone 238, a speaker 240, a camera 42, a communication interface 44, and a display 343. The computer 36 includes a processor 46, RAM 48, and storage 50. The processor 46, RAM 48, and storage 50 are connected to a bus 52. The microphone 238, speaker 240, camera 42, and display 343 are also connected to the bus 52.
[0850] The microphone 238 receives voice signals from the user 20 and receives instructions from the user 20. The microphone 238 captures the voice signals from the user 20, converts the captured voice into audio data, and outputs it to the processor 46. The speaker 240 outputs audio according to the instructions from the processor 46.
[0851] Camera 42 is a small digital camera equipped with an optical system including a lens, aperture, and shutter, and an image sensor such as a CMOS (Complementary Metal-Oxide-Semiconductor) image sensor or a CCD (Charge Coupled Device) image sensor, and captures images of the area around the user 20 (for example, an imaging range defined by a field of view equivalent to the width of a typical healthy person's field of vision).
[0852] Communication interface 44 is connected to network 54. Communication interfaces 44 and 26 are responsible for the exchange of various information between processor 46 and processor 28 via network 54. The exchange of various information between processor 46 and processor 28 using communication interfaces 44 and 26 is performed in a secure manner.
[0853] Figure 6 shows an example of the main functions of the data processing device 12 and the headset terminal 314. As shown in Figure 6, the data processing device 12 performs specific processing using the processor 28. The storage 32 stores the specific processing program 56.
[0854] The specific processing program 56 is an example of a "program" relating to the technology of this disclosure. The processor 28 reads the specific processing program 56 from the storage 32 and executes the read specific processing program 56 on the RAM 30. The specific processing is realized by the processor 28 operating as a specific processing unit 290 in accordance with the specific processing program 56 executed on the RAM 30.
[0855] The storage 32 stores the data generation model 58 and the emotion identification model 59. The data generation model 58 and the emotion identification model 59 are used by the identification processing unit 290.
[0856] In the headset terminal 314, the processor 46 performs the reception output processing. The storage 50 stores the reception output program 60. The processor 46 reads the reception output program 60 from the storage 50 and executes the read reception output program 60 on the RAM 48. The reception output processing is realized by the processor 46 operating as a control unit 46A according to the reception output program 60 executed on the RAM 48.
[0857] Next, the specific processing performed by the specific processing unit 290 of the data processing device 12 will be described. In the following description, the data processing device 12 will be referred to as the "server" and the headset terminal 314 will be referred to as the "terminal".
[0858] The present invention is a system that automatically creates meeting minutes from recorded data of meetings and on-the-job training, and selects and edits important parts. The system includes means for receiving a video file containing audio data, extracting the audio portion and converting it into text data, formatting the text data into meeting minutes format, selecting predetermined parts from the meeting minutes, identifying time codes based on the selected parts and extracting and editing the corresponding parts of the video, and outputting the edited video as a file.
[0859] The system's program and its description in natural language.
[0860] Loading video
[0861] 1. The user uploads the ZOOM recording data (e.g., "meeting_record.mp4") to the server.
[0862] The user selects files through the web interface and presses the upload button.
[0863] The device receives this command and sends the file to the server.
[0864] 2. The server receives the video file and saves it to a database or storage.
[0865] The server confirms receipt of the uploaded file and records it in the appropriate storage location.
[0866] Speech recognition
[0867] 1. Extract the audio portion of the video file received by the server.
[0868] The server uses tools such as FFmpeg to separate the audio track from the video file and generate an audio file (e.g., "audio.wav").
[0869] 2. The server uses a speech recognition engine (e.g., Google Cloud Speech-to-Text API) to convert the audio data into text data.
[0870] The server sends an audio file to the speech recognition API and temporarily stores the returned text data.
[0871] Meeting minutes
[0872] 1. The server formats the text data obtained through speech recognition into a meeting minutes format.
[0873] The server converts the data into a format that includes a timestamp and speaker information, and then constructs the text data.
[0874] 2. The server saves the formatted text meeting minutes and makes them accessible to users.
[0875] The server generates a file as meeting minutes (e.g., "meeting_minutes.txt") and provides a link for the user to download it.
[0876] Selecting the necessary parts
[0877] 1. Users can view meeting minutes through a web interface.
[0878] The user reviews the meeting minutes and selects the necessary sections (e.g., "Agenda Item 1, Agenda Item 3").
[0879] 2. The terminal sends the timecode of the selected portion of the meeting minutes to the server.
[0880] The terminal collects the selected start and end time codes and sends them to the server.
[0881] Video editing
[0882] 1. The server extracts the corresponding portion from the video file based on the timecode sent.
[0883] The server uses tools such as FFmpeg to split and extract the video according to the specified timecode.
[0884] 2. The server combines and edits the extracted video segments.
[0885] The server combines the selected portions into a single, continuous video file.
[0886] File Output
[0887] 1. The server generates the edited video as a file and provides the user with a download link.
[0888] The server generates the final edited file (e.g., "final_output.mp4") and provides the user with a download link.
[0889] 2. The user downloads the generated video file and meeting minutes.
[0890] Users save the video and meeting minutes files to their devices via the provided links.
[0891] Specific example
[0892] One day, a user uploads a ZOOM recording file titled "Meeting 2023-10-01.mp4" to the server. The server receives this video file, extracts and analyzes the audio data, and generates temporary text data. Next, it generates a formatted meeting minutes file, "Meeting 2023-10-01_minutes.txt," and provides it to the user.
[0893] The user reviews the meeting minutes and selects the sections they need, namely "Agenda Item 1" and "Agenda Item 3." Based on this, the server extracts and edits the specified sections from the video file and generates it as "Selected Meeting Agenda Items.mp4." Finally, the user can download this edited video file and the meeting minutes, allowing for efficient sharing of the key points of the meeting.
[0894] As described above, this system automatically and efficiently extracts and edits important information from meeting and on-the-job training records and provides it to the user.
[0895] The following describes the processing flow.
[0896] Step 1:
[0897] To upload a ZOOM recording file (e.g., "meeting_record.mp4"), the user accesses the web interface and selects the file. Pressing the upload button sends the recording file to the server.
[0898] Step 2:
[0899] The server receives the uploaded video file and saves it to a database or storage. The server confirms receipt of the file and records its location.
[0900] Step 3:
[0901] The server extracts the audio portion from the stored video files. Using media processing tools such as FFmpeg, it separates the audio track from the video and generates an "audio.wav" file.
[0902] Step 4:
[0903] The server sends the extracted audio files to a speech recognition engine (e.g., Google Cloud Speech-to-Text API) to convert the audio data into text data. The returned text data is then temporarily stored.
[0904] Step 5:
[0905] The server formats the text data obtained from the speech recognition engine into a meeting minutes format. It converts it into a format that includes timestamps and speaker information, thus constructing the text data.
[0906] Step 6:
[0907] The server generates a formatted text meeting minutes file and saves it as "meeting_minutes.txt". A download link is then provided for the user to access.
[0908] Step 7:
[0909] The user reviews the meeting minutes via the provided link. They select the necessary sections (e.g., "Agenda Item 1, Agenda Item 3") and enter or select the start and end time codes for the selected sections.
[0910] Step 8:
[0911] The terminal collects timecode information based on the user's selection and sends it to the server. For example, it sends timecode information if the start time of "Agenda Item 1" is 00:05:10 and the end time is 00:15:45.
[0912] Step 9:
[0913] The server extracts the corresponding portion from the video file based on the timecode sent. Tools such as FFmpeg are used to split and extract the video according to the specified timecode.
[0914] Step 10:
[0915] The server combines and edits the multiple extracted video segments. Next, it generates a single continuous video file, "final_output.mp4".
[0916] Step 11:
[0917] The server converts the edited video file to the final file format and provides the user with a download link. By clicking this link, the user saves the edited video file and meeting minutes to their device.
[0918] (Example 1)
[0919] Next, we will describe Example 1. In the following description, the data processing device 12 will be referred to as the "server," and the headset-type terminal 314 will be referred to as the "terminal."
[0920] Traditional meeting and on-the-job training (OJT) records often require manual creation of meeting minutes, which is time-consuming and labor-intensive. Furthermore, efficiently extracting and editing important parts from video footage is difficult. Therefore, there is a growing need for a system that can automatically generate meeting minutes from video files including audio data, and efficiently select and edit important sections.
[0921] The identification process performed by the identification processing unit 290 of the data processing device 12 in Example 1 is realized by the following means.
[0922] In this invention, the server includes means for receiving a video file containing audio data, means for extracting the audio portion from the video file using dedicated software and converting it into text data, and means for formatting the text data into a meeting minutes format including a timestamp and speaker information. This enables the automatic generation of meeting minutes from a video file containing audio data, allowing the user to efficiently select and edit important parts.
[0923] "Audio data" refers to data in which the human voice is recorded in an electronic format.
[0924] A "video file" is a digital file that contains moving images and sound.
[0925] "Means of receiving" refers to a method or device for acquiring data sent from an external source and incorporating it into an internal system.
[0926] "Dedicated software" refers to a program developed to perform a specific function.
[0927] "Means of extraction" refers to a method or apparatus for separating specific data elements from the original data.
[0928] "Text data" refers to electronic data expressed in the form of characters and sentences.
[0929] "Means of conversion" refers to a method or apparatus for changing the format of data to another format.
[0930] A "timestamp" is a record of the exact date and time when data was created or modified.
[0931] "Speaker information" refers to information about the person speaking in the audio data.
[0932] "Meeting minutes" are documents that record the proceedings of a meeting or similar event.
[0933] "Means of formatting" refers to a method or apparatus for arranging data into a specific format.
[0934] A "user" is a person or organization that uses a system.
[0935] A "web interface" is a user interface used to access and operate a system using a web browser.
[0936] "Means of selection" refers to a method or device for choosing a specific option from among several options.
[0937] "Timecode" is time information used to indicate a specific location within digital media.
[0938] "Means for extraction and editing" refers to a method or apparatus that has the function of separating specific elements and then processing or adjusting them.
[0939] "Means of outputting as a file" refers to a method or device for saving and presenting processed or edited data in a specific file format.
[0940] A "download link" is a URL used to obtain a file via the internet.
[0941] This invention is a system that automatically creates meeting minutes from recorded data of meetings and on-the-job training (OJT), and allows for the selection and editing of important sections. This system uses the following hardware and software to perform data processing and calculations in multiple stages.
[0942] First, a web interface is provided for users to upload video files containing audio data. Using this interface, users select a meeting recording file (e.g., "meeting_record.mp4") from their device and send it to the server. The device receives this operation and sends the file to the server using an HTTP POST request.
[0943] Next, the server receives the file and saves it appropriately to the database or storage. Using FFmpeg as the dedicated software, the audio track is extracted from the uploaded video file to generate an audio file (e.g., "audio.wav"). An example FFmpeg command used is ffmpeg -i meeting_record.mp4 -q:a 0 -map a audio.wav.
[0944] The server then uses a speech recognition engine, such as the Google Cloud Speech-to-Text API, to convert the audio data into text data. This converts the audio file into text data, which is then temporarily stored. Specifically, the Google Cloud client library is used to send the audio file to the API, and the returned JSON-formatted text data is processed.
[0945] The server then formats the text data generated by the speech recognition engine into a meeting minutes format. After analyzing the timestamp and speaker information, the data, converted to the predetermined format, is saved as a text file. For example, it might be in the format of "[00:01:23] User A: Regarding agenda item 1..."
[0946] After the meeting minutes are created, users can review them through a web interface. Users select the parts they need (e.g., "Agenda Item 1, Agenda Item 3"), and the selection information is sent to the server. Based on the received selection information, the server identifies the corresponding video timecodes and uses FFmpeg to extract and edit the identified sections. An example is `ffmpeg -i meeting_record.mp4 -ss 00:01:23 -to 00:02:34 -c copy part1.mp4`.
[0947] Finally, an edited video file is generated, and the server provides a download link. Through this link, users can download the edited video file and meeting minutes. This allows for the efficient sharing of key points from the meeting.
[0948] Specific example
[0949] One day, a user uploads a ZOOM recording file titled "Meeting 2023-10-01.mp4" to the server. The server receives this video file, extracts and analyzes the audio data, and generates temporary text data. Next, it generates a formatted meeting minutes file, "Meeting 2023-10-01_minutes.txt," and provides it to the user. The user reviews the minutes and selects the sections they need, namely "Agenda Item 1" and "Agenda Item 3." Based on this, the server extracts and edits the specified sections from the video file and generates it as "Selected Meeting Agenda Items.mp4." Finally, the user can download this edited video file and meeting minutes, allowing them to efficiently share the key points of the meeting.
[0950] Examples of prompts for generative AI models
[0951] Prompt: "Please describe the process of a system that uploads ZOOM recording data, automatically converts the audio data to text, and creates meeting minutes. Please include specific actions, such as the process of the user selecting the necessary meeting minutes and then extracting and editing the corresponding video portion based on that selection."
[0952] The flow of the specific processing in Example 1 will be explained using Figure 11.
[0953] Step 1:
[0954] The user uploads the ZOOM recording data to the server.
[0955] Specifically, the user selects a file named "meeting_record.mp4" through the web interface and presses the upload button. The device receives this action and sends the file to the server using an HTTP POST request.
[0956] Input: ZOOM recording file.
[0957] Output: The recorded file received on the server side.
[0958] Step 2:
[0959] The server receives the video file and saves it to a database or storage.
[0960] Specifically, the server receives an HTTP POST request and verifies that the file was transferred correctly. After verification, it saves the file to the "videos / " directory and records the file path and metadata in the database.
[0961] Input: Recording file sent by the user.
[0962] Output: Files stored in storage and their metadata.
[0963] Step 3:
[0964] The server extracts the audio portion from the video file it receives.
[0965] Specifically, the server executes the FFmpeg command to extract the audio track from "meeting_record.mp4" and save it as "audio.wav".
[0966] Input: Recording file.
[0967] Output: Audio file.
[0968] Step 4:
[0969] The server uses a speech recognition engine to convert the audio data into text data.
[0970] Specifically, the server uses a speech recognition engine such as the Google Cloud Speech-to-Text API to convert "audio.wav" into text data and saves it as a temporary file.
[0971] Input: Audio file.
[0972] Output: Text data.
[0973] Step 5:
[0974] The server formats the text data obtained through speech recognition into a meeting minutes format.
[0975] Specifically, the server reads text data from a temporary file, analyzes the timestamp and speaker information, and converts it into a meeting minutes format. It then saves it as "meeting_minutes.txt".
[0976] Input: Text data of the speech recognition result.
[0977] Output: Formatted meeting minutes file.
[0978] Step 6:
[0979] The server saves formatted text meeting minutes and makes them accessible to users.
[0980] Specifically, the server saves the formatted meeting minutes file to the "minutes / " directory, generates a URL for the file, and displays it on the user's dashboard.
[0981] Input: Formatted meeting minutes file.
[0982] Output: Access URL for the meeting minutes file.
[0983] Step 7:
[0984] Users can review meeting minutes through a web interface and select the parts they need.
[0985] Specifically, the user accesses the dashboard, clicks the link to the new meeting minutes to review the contents, selects the necessary sections (e.g., "Agenda Item 1, Agenda Item 3"), and presses the submit button.
[0986] Input: Contents of the meeting minutes file.
[0987] Output: Timecode of the portion selected by the user.
[0988] Step 8:
[0989] The terminal sends the timecode of the selected portion of the meeting minutes to the server.
[0990] Specifically, the selected start and end timecodes are sent to the server as an HTTP POST request in JSON format.
[0991] Input: The timecode selected by the user.
[0992] Output: Timecode sent to the server.
[0993] Step 9:
[0994] The server extracts the corresponding portion from the video file based on the timecode sent.
[0995] Specifically, the server uses the FFmpeg command to split and extract the video according to the specified timecode.
[0996] Input: Timecode and recording file.
[0997] Output: Extracted video portion.
[0998] Step 10:
[0999] The server combines and edits the extracted video segments.
[1000] Specifically, the server sequentially combines the multiple extracted parts into a single, continuous file.
[1001] Input: Extracted video portion.
[1002] Output: Combined edited video file.
[1003] Step 11:
[1004] The server generates the edited video as a file and provides the user with a download link.
[1005] Specifically, the server saves the final edited file "final_output.mp4" to the "edited_videos / " directory and displays the URL on the user dashboard.
[1006] Input: Combined edited video files.
[1007] Output: Download link.
[1008] Step 12:
[1009] The user downloads the generated video files and meeting minutes.
[1010] Specifically, the user clicks a link on the dashboard to download the video file and meeting minutes file to their device.
[1011] Input: Download link.
[1012] Output: Files saved on the user's device.
[1013] (Application Example 1)
[1014] Next, we will explain Application Example 1. In the following explanation, the data processing device 12 will be referred to as the "server," and the headset-type terminal 314 will be referred to as the "terminal."
[1015] Traditional surveillance camera systems and security services require significant human effort to detect abnormal sounds or critical events, making real-time response difficult. Furthermore, the time between detecting abnormal sounds and responding increases the likelihood of damage escalating. Additionally, the lack of technology to automatically extract and edit relevant video footage of detected abnormal sounds hinders efficient information sharing and rapid countermeasures.
[1016] The specific processing performed by the specific processing unit 290 of the data processing device 12 in Application Example 1 is realized by the following means.
[1017] In this invention, the server includes means for receiving a video file containing audio data, means for extracting the audio portion from the video file and converting it into text data, means for formatting the text data into a meeting minutes format, means for selecting a predetermined portion from the meeting minutes, means for identifying time codes based on the selected portion and extracting and editing the corresponding portion of the video, means for outputting the edited video as a file, means for analyzing the audio data and detecting abnormal sounds, means for highlighting abnormal sounds and including them in the meeting minutes format, and means for notifying of abnormal sounds and selecting necessary portions. This enables real-time detection of abnormal sounds and rapid extraction and editing of important portions.
[1018] A "video file" is a file in a video recording format that also includes audio data.
[1019] "Audio data" refers to a data format that contains information expressed through sound.
[1020] "Text data" refers to a data format that expresses information as characters.
[1021] "Meeting minutes format" refers to a document format that organizes and summarizes the content of meetings and discussions.
[1022] A "timecode" is a marker that indicates a specific time position in video or audio data.
[1023] An "unusual sound" is a sound that deviates from the normal sound environment and suggests an incident or accident.
[1024] "Notification" refers to a means of informing users of anomalies or important information.
[1025] "Selection" refers to the act of a user identifying a specific part.
[1026] "Extraction" is the process of taking a specific part from the whole.
[1027] "Editing" is the process of rearranging video and audio data to suit a specific purpose.
[1028] This invention relates to a system that receives a video file containing audio data, extracts the audio portion, converts it into text data, and detects abnormal sounds and formats it into a meeting minutes format. This system further includes functions for notifying abnormal sounds, selecting important parts, and extracting, editing, and outputting corresponding parts of the video based on time codes.
[1029] First, the user uploads a video file recorded by a surveillance camera to the server. The server receives the video file and uses the FFmpeg tool to extract the audio. Then, it converts the extracted audio data into text data using a speech recognition engine such as the Google Cloud Speech-to-Text API.
[1030] Next, the server analyzes the converted text data to detect abnormal sounds. The abnormal sound detection engine detects sounds such as breaking glass, screams, and abnormal machine noises. The results are highlighted in a meeting minutes format and provided to the user. The user can view the abnormal sound information in real time through smart glasses and select the time codes for the parts they need.
[1031] Based on the selected timecode, the server extracts the corresponding portion from the video file and edits it using the FFmpeg tool. Finally, the edited video is generated, and a download link is provided to the user.
[1032] As a concrete example, consider a scenario where a security guard wears smart glasses while performing their duties. Video from surveillance cameras is recorded on the smart glasses, and audio data is uploaded to a server in real time. The server detects abnormal sounds based on the audio data and immediately notifies the smart glasses if an abnormal sound is detected. The security guard then checks the details of the abnormal sound on the spot, selects the time codes of the necessary parts, and sends them to the server.
[1033] The server extracts and edits the corresponding video segments according to the selected timecodes, highlighting any anomalies and combining them. Finally, the edited video file is provided as a download link and immediately shared with security guards and other relevant personnel.
[1034] Examples of prompts for the generative AI model in this system are as follows:
[1035] Please detect abnormal sounds from the following audio data:
[1036] The sound of glass breaking
[1037] scream
[1038] Abnormal noise from the machine
[1039] Audio data: "Contents of the audio data"
[1040] By using this prompt statement, it is possible to detect specific abnormal sounds from audio data and respond quickly and efficiently.
[1041] The flow of a specific process in Application Example 1 will be explained using Figure 12.
[1042] Step 1:
[1043] Uploading videos
[1044] The user uploads video files recorded by surveillance cameras to the server. The input is a video file (e.g., "monitoring_video.mp4"), and the output is the path to the video file saved on the server. The user selects the file through the web interface and presses the upload button, at which point the terminal sends the video file to the server.
[1045] Step 2:
[1046] Extraction of the audio portion
[1047] The server extracts the audio portion from the received video file. The input is the path to the video file, and the output is an audio file (e.g., "audio.wav"). Specifically, the server uses the FFmpeg tool to separate the audio track from the video file.
[1048] Step 3:
[1049] Speech-to-text conversion
[1050] The server sends the extracted audio files to a speech recognition engine and converts them into text data. The input is an audio file, and the output is text data (e.g., "transcribed_text.txt"). Specifically, the server uses the Google Cloud Speech-to-Text API or similar to convert the audio data into text data and temporarily stores it.
[1051] Step 4:
[1052] Detection of abnormal sounds
[1053] The server analyzes text data to detect abnormal sounds. The input is text data, and the output is information about detected abnormal sounds. Specifically, the abnormal sound detection engine scans the text data and identifies patterns such as "the sound of glass breaking" or "screaming."
[1054] Step 5:
[1055] Notification of abnormal sound information
[1056] The server notifies the user of any detected abnormal sounds. The input is the detected abnormal sound information, and the output is the notification to the user. Specifically, the server sends an alert to smart glasses or a terminal to notify the user of the occurrence of an abnormal sound.
[1057] Step 6:
[1058] User-selected timecode
[1059] The user views abnormal sound information through smart glasses and selects the timecodes for the required sections. The input consists of abnormal sound information and a portion of the meeting minutes, while the output is the selected timecodes. Specifically, the user operates the interface to specify the start and end timecodes for important sections.
[1060] Step 7:
[1061] Extraction and editing of video portions
[1062] The server extracts and edits the corresponding video portion based on the selected timecode. The input is the path to the video file and the selected timecode, and the output is the edited video file (e.g., "highlighted_event.mp4"). Specifically, the server uses the FFmpeg tool to split and extract the video, and then combines and edits the specified portions.
[1063] Step 8:
[1064] Outputting and sharing edited videos
[1065] The server generates the edited video file and provides the user with a download link. The input is the edited video file, and the output is the download link. Specifically, the server generates the final edited file and creates and notifies the user of a link that allows immediate access.
[1066] Furthermore, an emotion engine that estimates the user's emotions may be incorporated. That is, the identification processing unit 290 may use the emotion identification model 59 to estimate the user's emotions and perform identification processing using the user's emotions.
[1067] This invention combines a system that automatically creates meeting minutes from recorded data of meetings and on-the-job training, and selects and edits important parts, with an emotion engine that recognizes the user's emotions. The system includes means for receiving a video file containing audio data, extracting the audio portion and converting it into text data, formatting the text data into meeting minutes format, selecting predetermined parts from the meeting minutes, identifying time codes based on the selected parts and extracting and editing the corresponding parts of the video, outputting the edited video as a file, and an emotion engine that recognizes the user's emotions.
[1068] The system's program and its description in natural language.
[1069] Loading video
[1070] 1. The user accesses the web interface to upload a ZOOM recording file (e.g., "meeting_record.mp4"), selects the file, and presses the upload button. The device then sends the recording file to the server.
[1071] 2. The server receives the uploaded video file and saves it to a database or storage. The server confirms receipt of the file and records its location.
[1072] Speech recognition
[1073] 1. The server extracts the audio portion from the stored video file. Using a media processing tool such as FFmpeg, the audio track is separated from the video and an "audio.wav" file is generated.
[1074] 2. The server sends the audio data to a speech recognition engine (e.g., Google Cloud Speech-to-Text API) to convert the audio into text data. The returned text data is then temporarily stored.
[1075] emotion recognition
[1076] 1. The server sends audio and video data to the emotion engine and recognizes the user's emotions from their voice and facial expressions.
[1077] 2. The server adds the emotion information returned by the emotion engine to the meeting minutes text data. For example, it converts it into a format that includes emotion information, such as "10:15 [Yamada]: Hello, let's start the meeting. (Emotion: Joy)".
[1078] Meeting minutes
[1079] 1. The server generates a formatted text meeting minutes file and saves it as "meeting_minutes.txt". A download link is then provided for the user to access.
[1080] Selecting the necessary parts
[1081] 1. The user reviews the meeting minutes, including sentiment information, via the provided link. They select the necessary sections (e.g., "Agenda Item 1, Agenda Item 3") and enter or select the start and end time codes.
[1082] 2. The terminal collects timecode information based on the user's selection and sends it to the server. For example, it sends timecode information if the start time of "Agenda Item 1" is 00:05:10 and the end time is 00:15:45.
[1083] Video editing
[1084] 1. The server extracts the corresponding portion from the video file based on the transmitted timecode. Tools such as FFmpeg are used to split and extract the video according to the specified timecode.
[1085] 2. The server combines and edits the multiple extracted video segments. Next, it generates a single continuous video file, "final_output.mp4".
[1086] File Output
[1087] 1. The server converts the edited video file to the final file format and provides a download link for the user. By clicking this link, the user saves the edited video file and meeting minutes, including sentiment information, to their device.
[1088] Specific example
[1089] For example, a user uploads a ZOOM recording file titled "Meeting 2023-10-01.mp4" to the server. The server receives this video file, analyzes the audio and video data, and generates text data containing sentiment information, such as "Meeting 2023-10-01_minutes.txt". The meeting minutes will also include sentiment information for each statement made.
[1090] The user reviews the meeting minutes, which include emotional information, and selects the sections they need, namely "Agenda Item 1" and "Agenda Item 3." Based on this, the server extracts and edits the specified sections from the video file to generate "Selected Meeting Agenda Items.mp4." The user can then download this edited video file and the meeting minutes, allowing them to efficiently share the key points of the meeting.
[1091] As described above, this system automatically creates meeting minutes with added emotional information from records of meetings and on-the-job training, efficiently extracts and edits important information, and provides it to the user.
[1092] The following describes the processing flow.
[1093] Step 1:
[1094] The user accesses the web interface to upload a ZOOM recording file (e.g., "meeting_record.mp4"), selects the file, and presses the upload button. The device then sends the recording file to the server.
[1095] Step 2:
[1096] The server receives the uploaded video file and saves it to a database or storage. It confirms the file's receipt and records its location.
[1097] Step 3:
[1098] The server uses media processing tools such as FFmpeg to extract the audio portion from the stored video files. This separates the audio track from the video and generates an "audio.wav" file.
[1099] Step 4:
[1100] The server sends the audio file "audio.wav" to a speech recognition engine (e.g., Google Cloud Speech-to-Text API) and converts the audio data into text data. The returned text data is then temporarily stored.
[1101] Step 5:
[1102] The server sends audio and video data to the emotion engine, which recognizes the user's emotions from the audio and facial expressions. The emotion engine performs analysis and returns emotional information (e.g., joy, sadness, anger, etc.).
[1103] Step 6:
[1104] The server adds the emotion information returned from the emotion engine to the text data, formats it, and then formats it into a meeting minutes format. For example, it converts it into a format that includes emotion information, such as "10:15 [Yamada]: Hello, let's start the meeting. (Emotion: Joy)".
[1105] Step 7:
[1106] The server generates a formatted text meeting minutes file and saves it as "meeting_minutes.txt". A download link is then provided for the user to access.
[1107] Step 8:
[1108] Users review meeting minutes, including sentiment information, via the provided link. They select the necessary sections (e.g., "Agenda Item 1, Agenda Item 3") and enter or select the start and end time codes.
[1109] Step 9:
[1110] The terminal collects timecode information based on the user's selection and sends it to the server. For example, it sends timecode information if the start time of "Agenda Item 1" is 00:05:10 and the end time is 00:15:45.
[1111] Step 10:
[1112] The server extracts the corresponding portion from the video file based on the timecode sent. Tools such as FFmpeg are used to split and extract the video according to the specified timecode.
[1113] Step 11:
[1114] The server combines and edits the multiple extracted video segments. Next, it generates a single continuous video file, "final_output.mp4".
[1115] Step 12:
[1116] The server converts the edited video file to the final file format and provides the user with a download link. Clicking this link saves the edited video file and meeting minutes, including emotional information, to the user's device.
[1117] (Example 2)
[1118] Next, we will describe Example 2. In the following description, the data processing device 12 will be referred to as the "server," and the headset-type terminal 314 will be referred to as the "terminal."
[1119] Traditional meeting recording systems made it difficult to efficiently extract important information from recorded meetings and on-the-job training (OJT) footage. Furthermore, the resulting meeting minutes lacked information tailored to the speaker's emotions and the importance of each point, making it difficult to extract and share crucial information. This resulted in cumbersome post-meeting reviews and report creation, requiring significant time and effort.
[1120] The identification process performed by the identification processing unit 290 of the data processing device 12 in Example 2 is realized by the following means.
[1121] In this invention, the server includes means for receiving a video file containing audio data, means for extracting the audio portion from the video file and converting it into text data, means for formatting the text data into a meeting minutes format, means for adding emotional information to the text data, means for selecting a predetermined portion from the meeting minutes, means for identifying time codes based on the selected portion and extracting and editing the corresponding portion of the video, and means for outputting the edited video as a file. This makes it possible to efficiently extract important parts from recorded meeting and OJT data, create meeting minutes including emotional information, and quickly and efficiently provide the specific information that the user needs.
[1122] A "video file" is a recording medium that contains both audio and video data.
[1123] The "audio portion" refers to audio data extracted from a video file, including the speaker's utterances and other sounds.
[1124] "Text data" refers to the character information converted from the audio portion by a speech recognition engine.
[1125] "Meeting minutes format" refers to a document format that records the contents of a meeting or on-the-job training in chronological order.
[1126] "Emotional information" refers to information that indicates the emotional state of a speaker, analyzed from their speech and facial expressions.
[1127] A "timecode" is a code that indicates a specific time position within a video file.
[1128] "Extraction and editing" refers to the process of cutting out corresponding portions from a video file based on specific time codes and combining or processing them as needed.
[1129] "Means" refers to a device, program, or method for performing a specific function or process.
[1130] A "server" is a computer device that receives, processes, stores, and transmits data over a network.
[1131] A "user" is the entity that uses this system to extract, edit, and review information from recorded data of meetings and on-the-job training (OJT).
[1132] The present invention is a system that automatically creates meeting minutes from recorded data of meetings and on-the-job training, and selects and edits important parts. The system includes means for receiving a video file containing audio data, extracting the audio portion and converting it into text data, means for formatting the text data into meeting minutes format, means for selecting predetermined parts from the meeting minutes, means for identifying time codes based on the selected parts and extracting and editing the corresponding parts of the video, and an emotion engine that recognizes the user's emotions.
[1133] The user uploads a recording file (e.g., "meeting_record.mp4") via a web interface. The terminal sends this file to the server. The server receives the file and saves it to a database or storage. The file's save path is also recorded at this time.
[1134] Next, the server uses a media processing tool such as FFmpeg to extract the audio portion from the video file and generate an "audio.wav" file. The generated audio file is then sent to a speech recognition engine such as the Google Cloud Speech-to-Text API to convert the audio data into text data. This converted text data is temporarily stored.
[1135] Furthermore, the server sends audio and video data to the emotion engine to recognize the user's emotions. The emotion information returned by the emotion engine is integrated into the text data and added, for example, "10:15 [Speaker]: Hello, let's start the meeting. (Emotion: Joy)".
[1136] The server generates a formatted text meeting minutes file with added sentiment information and saves it as "meeting_minutes.txt". Users can download these minutes from the provided link.
[1137] The user reviews the meeting minutes and selects important sections (e.g., "Agenda Item 1, Agenda Item 3"). Based on this selection, the user enters or selects the start and end time codes. The terminal sends this time code information to the server.
[1138] Based on the transmitted timecode, the server extracts and edits the corresponding portion from the video file using tools such as FFmpeg. If multiple video portions are specified, they are combined and finally output as a "final_output.mp4" file.
[1139] Finally, the server converts the edited video file to its final file format and provides a download link for the user. The user can click this link to download the edited video file and meeting minutes, including sentiment information.
[1140] Specific example
[1141] For example, a user uploads a video recording file titled "Meeting 2023-10-01.mp4" to the server. This video file is analyzed for audio and video data, and a text file named "Meeting 2023-10-01_minutes.txt" is generated with added sentiment information. The minutes also include sentiment information for each statement. The user reviews the minutes, which include sentiment information, and selects sections for "Agenda Item 1" and "Agenda Item 3." Based on this, the server extracts and edits the specified sections from the video file to generate "Selected Meeting Agenda Items.mp4." The user can then download this edited video file and the minutes, enabling efficient sharing of important information.
[1142] Examples of prompts to input into a generative AI model
[1143] "Please upload the meeting recording file (e.g., meeting_record.mp4), extract the audio, and transcribe it. Then, create meeting minutes with emotional information added for each statement, edit the video based on the timecodes of the specified statements, and make the results available for download."
[1144] The flow of the specific processing in Example 2 will be explained using Figure 13.
[1145] Step 1: Load the video
[1146] The user selects a recording file (e.g., "meeting_record.mp4") via a web interface and presses the upload button. The device then sends this file to the server. Specifically, the device sends the selected file to the server via an HTTP POST request. The server saves the received video file to a database or file storage and records its save path.
[1147] Input: Recording file (e.g., "meeting_record.mp4")
[1148] Data processing: Receiving and saving files
[1149] Output: Path to the saved video file
[1150] Step 2: Extraction of the audio portion
[1151] The server reads the saved video file and extracts the audio portion using a media processing tool such as FFmpeg. It then sends the generated "audio.wav" file to a speech recognition engine (e.g., Google Cloud Speech-to-Text API) to convert the audio data into text data. Specifically, the server uses the FFmpeg command to separate the audio track and generate the "audio.wav" file. It then sends this audio file to the speech recognition engine and temporarily stores the returned text data.
[1152] Input: Path to the saved video file
[1153] Data processing: Extraction of audio and conversion to text.
[1154] Output: Text data
[1155] Step 3: Adding emotional information
[1156] The server sends audio and video data to an emotion engine to recognize the user's emotions. The emotion information returned by the emotion engine is then integrated into the existing text data. Specifically, the server sends audio and video data to APIs for speech emotion recognition and facial expression analysis, respectively, analyzes the responses from the APIs, and adds the emotion information to the relevant parts.
[1157] Input: Audio data and video data
[1158] Data processing: Recognition and integration of emotional information
[1159] Output: Text data with added emotional information
[1160] Step 4: Creating meeting minutes
[1161] The server formats the text data, which includes emotional information, into a meeting minutes format. Specifically, the server uses a template engine (e.g., Jinja2) to convert it into a meeting minutes format and saves it as "meeting_minutes.txt". Users can download these meeting minutes via the provided link.
[1162] Input: Text data with added emotional information
[1163] Data processing: Formatting and shaping text data
[1164] Output: Meeting minutes file ("meeting_minutes.txt")
[1165] Step 5: Selecting the Timecode
[1166] The user clicks the provided link to view the meeting minutes, which include sentiment information. They select the necessary sections (e.g., "Agenda Item 1, Agenda Item 3") and enter or select the start and end time codes. Specifically, the user enters the time code information while referring to the web page, and the terminal sends this time code information to the server.
[1167] Input: Meeting minutes file ("meeting_minutes.txt")
[1168] Data processing: User input of timecodes
[1169] Output: Timecode information
[1170] Step 6: Editing the video
[1171] The server extracts and edits the corresponding portion from the video file based on the transmitted timecode. Specifically, the server uses the FFmpeg command to extract the video portion within the specified timecode range, combines multiple video clips, and generates the final file.
[1172] Input: Timecode information
[1173] Data processing: Extraction and merging of video portions
[1174] Output: Edited video file ("final_output.mp4")
[1175] Step 7: File Output
[1176] The server encodes the edited video file and converts it into a format that the user can download. Specifically, the server encodes the final video into a predetermined format (e.g., MP4) and saves it. Finally, the server displays a download link on the user interface and provides it in the HTTP response. The user can click this link to download the edited video file and meeting minutes, including sentiment information.
[1177] Input: Edited video file
[1178] Data processing: Encoding and saving
[1179] Output: Download link
[1180] (Application Example 2)
[1181] Next, we will explain application example 2. In the following explanation, the data processing device 12 will be referred to as the "server," and the headset-type terminal 314 will be referred to as the "terminal."
[1182] Conventional factory work record and report creation systems struggle to integrate the recording and textualization of work processes with emotional recognition, often leading to human error and wasted time. Furthermore, real-time assessment of worker stress and fatigue levels, and suggesting appropriate breaks, proved challenging. As a result, efficiency improvements and adequate worker health management were hindered, potentially leading to decreased quality and productivity.
[1183] The specific processing performed by the specific processing unit 290 of the data processing device 12 in Application Example 2 is realized by the following means.
[1184] In this invention, the server includes means for receiving a video file containing audio data, means for extracting the audio portion from the video file and converting it into text data, means for formatting the text data into a meeting minutes format, means for selecting a predetermined portion from the meeting minutes, means for identifying time codes based on the selected portion and extracting and editing the corresponding portion of the video, means for outputting the edited video as a file, means for recognizing emotions from the text data and video and adding that information, means for recording the manufacturing process and detecting abnormalities, and means for evaluating the worker's condition and suggesting appropriate break times. This enables increased work efficiency and accurate recording, and allows for proper management of the worker's health.
[1185] "Audio data" refers to information obtained by converting sound waves into a digital format, and includes data such as human speech and other sounds.
[1186] A "video file" is a file format that integrates sequential image data and audio data, and contains both video and audio.
[1187] "Text data" refers to data that has been converted into a format that can be handled by programs, such as characters and numbers.
[1188] "Meeting minutes" are documents that record the content of meetings and discussions, and include statements made, topics discussed, and decisions made.
[1189] A "timecode" is location information that indicates a specific time within video or audio data.
[1190] "Emotion recognition" is a technology that analyzes human facial expressions and tone of voice from audio and video to determine emotional states.
[1191] Anomaly detection is a technology that detects behavior or states that deviate from normal patterns.
[1192] "Break timing" refers to information indicating the appropriate time for workers to interrupt their work or take a rest.
[1193] A "server" is a computer dedicated to providing data and services to other computers on a network.
[1194] This invention is a system applied to robots that record factory work processes and quality checks. Specifically, it automatically generates work reports from conversations between workers and the robot, as well as recorded work data, and detects anomalies and areas for process improvement. It also recognizes the worker's emotions, assesses stress and fatigue levels, and provides appropriate rest timings.
[1195] The server receives a video file containing audio data, extracts the audio portion from the video file, and converts it into text data. This involves using a media processing tool such as FFmpeg to separate the audio track from the video and sending it to a speech recognition engine (e.g., Google Cloud Speech-to-Text API) to convert the audio data into text.
[1196] Furthermore, the server transmits audio and video data to the emotion recognition engine, which recognizes the user's emotions from their voice and facial expressions. The emotion recognition results are added to the text data of the meeting minutes. For example, it is recorded in a format that includes emotion information, such as "Work start time: 10:00 (Emotion: Neutral)".
[1197] Users review this information and identify any anomalies or defects. Anomaly detection uses automated tools to analyze video data. Time codes are identified, providing users with a means to select important sections, and the video is edited based on those selections.
[1198] Finally, the server generates formatted text minutes and provides them to the user in a format accessible along with the video files.
[1199] For example, a user uploads a video file titled "Task 2023-10-01.mp4" to the server. The server receives this video file, analyzes the audio and video data, and generates text data containing emotional information, titled "Task 2023-10-01_minutes.txt". The minutes also include emotional information for each work step. The user reviews the minutes, which include emotional information, and selects any abnormal or unnecessary parts. Based on this, the server extracts and edits the specified parts from the video file to generate "Edited Work Record.mp4". The user can download this edited video file and minutes, enabling efficient sharing of key points of factory work.
[1200] Examples of prompts for a generative AI model:
[1201] Analyze the audio and video data from the work video '2023-10-15_factory_work.mp4' and create a work report. Include emotional information regarding the statements made, and also include any anomaly detection results in the report. Additionally, suggest break times that reflect the worker's emotional state.
[1202] This system enables more efficient work processes, accurate record-keeping, and proper health management of workers.
[1203] The flow of a specific process in Application Example 2 will be explained using Figure 14.
[1204] Step 1:
[1205] The user uploads a recorded file (e.g., "Work 2023-10-01.mp4").
[1206] Specific operation: The user accesses the web interface, selects a recording file, and presses the upload button. The file is sent to the server.
[1207] Input: User selects and uploads video files.
[1208] Output: The server receives and saves the video file.
[1209] Step 2:
[1210] The server receives the uploaded video file and saves it to a database or storage.
[1211] Specific operation: The server records the file's location and confirms receipt.
[1212] Input: User-uploaded video file
[1213] Output: The video file is saved to the server's storage.
[1214] Step 3:
[1215] The server extracts the audio portion from the stored video file.
[1216] Specific operation: Using a media processing tool such as FFmpeg, separate the audio track from the video and generate an audio file named "audio.wav".
[1217] Input: Saved video file
[1218] Output: Audio file "audio.wav"
[1219] Step 4:
[1220] The server sends the audio data to the speech recognition engine, which converts the audio into text data.
[1221] Specific operation: Use the Google Cloud Speech-to-Text API to convert the audio file to text and temporarily store it.
[1222] Input: Audio file "audio.wav"
[1223] Output: Text data
[1224] Step 5:
[1225] The server sends audio and video data to the emotion recognition engine, which then recognizes the user's emotions from their voice and facial expressions.
[1226] Specific operation: Use an emotion recognition module to analyze video and audio and extract emotional information.
[1227] Input: Audio data and video data
[1228] Output: Text data containing emotional information
[1229] Step 6:
[1230] The server generates formatted text meeting minutes and provides a download link that users can access.
[1231] Specific operation: Format the generated text data, format it into a meeting minutes format, and save it as a file.
[1232] Input: Text data containing emotional information
[1233] Output: Formatted text meeting minutes
[1234] Step 7:
[1235] Users can view the meeting minutes via the provided link and select the necessary sections.
[1236] Specific operation: The user reviews the meeting minutes, selects the necessary sections, and enters or selects the start and end time codes.
[1237] Input: Formatted text meeting minutes
[1238] Output: Timecode information for the portion selected by the user.
[1239] Step 8:
[1240] The server extracts the corresponding portion from the video file based on the timecode sent.
[1241] Specific operation: Use a media processing tool such as FFmpeg to split and extract video according to the specified timecode.
[1242] Input: Timecode information
[1243] Output: Extracted video portion
[1244] Step 9:
[1245] The server combines the extracted video segments to generate a single, continuous video file.
[1246] Specific operation: The extracted video segments are combined to generate the final video file "Edited Work Log.mp4".
[1247] Input: Extracted video portion
[1248] Output: Edited video file
[1249] Step 10:
[1250] The server converts the edited video file to the final file format and provides the user with a download link.
[1251] Specific actions: Convert the final video file to a file format and provide a download link that the user can access.
[1252] Input: Edited video file
[1253] Output: A downloadable link for the user.
[1254] The specific processing unit 290 transmits the result of the specific processing to the headset terminal 314. In the headset terminal 314, the control unit 46A causes the speaker 240 and display 343 to output the result of the specific processing. The microphone 238 acquires audio indicating user input for the result of the specific processing. The control unit 46A transmits the audio data indicating user input acquired by the microphone 238 to the data processing unit 12. In the data processing unit 12, the specific processing unit 290 acquires the audio data.
[1255] Data generation model 58 is a type of so-called generative AI (Artificial Intelligence). One example of data generation model 58 is ChatGPT (Internet search<URL: https: / / openai.com / blog / chatgpt> ), Gemini (Internet search) <url: https: gemini.google.com ?hl="ja">Examples of generative AI include the following. The data generation model 58 is obtained by performing deep learning on a neural network. The data generation model 58 is input with prompts containing instructions, and with inference data such as audio data representing speech, text data representing text, and image data representing images. The data generation model 58 infers from the input inference data according to the instructions indicated by the prompts, and outputs the inference results in data formats such as audio data and text data. Here, inference refers to, for example, analysis, classification, prediction, and / or summarization.
[1256] In the above embodiment, an example was given in which specific processing is performed by the data processing device 12, but the technology of this disclosure is not limited thereto, and specific processing may also be performed by the headset terminal 314.
[1257] [Fourth Embodiment]
[1258] Figure 7 shows an example of the configuration of the data processing system 410 according to the fourth embodiment.
[1259] As shown in Figure 7, the data processing system 410 includes a data processing device 12 and a robot 414. An example of the data processing device 12 is a server.
[1260] The data processing device 12 comprises a computer 22, a database 24, and a communication interface 26. The computer 22 is an example of a "computer" related to the technology of this disclosure. The computer 22 comprises a processor 28, RAM 30, and storage 32. The processor 28, RAM 30, and storage 32 are connected to a bus 34. The database 24 and the communication interface 26 are also connected to the bus 34. The communication interface 26 is connected to a network 54. An example of the network 54 is a WAN (Wide Area Network) and / or a LAN (Local Area Network).
[1261] The robot 414 includes a computer 36, a microphone 238, a speaker 240, a camera 42, a communication interface 44, and a controlled object 443. The computer 36 includes a processor 46, RAM 48, and storage 50. The processor 46, RAM 48, and storage 50 are connected to a bus 52. The microphone 238, speaker 240, camera 42, and controlled object 443 are also connected to the bus 52.
[1262] The microphone 238 receives voice signals from the user 20 and receives instructions from the user 20. The microphone 238 captures the voice signals from the user 20, converts the captured voice into audio data, and outputs it to the processor 46. The speaker 240 outputs audio according to the instructions from the processor 46.
[1263] Camera 42 is a small digital camera equipped with an optical system including a lens, aperture, and shutter, and an image sensor such as a CMOS (Complementary Metal-Oxide-Semiconductor) image sensor or a CCD (Charge Coupled Device) image sensor, and captures images of the area around the user 20 (for example, an imaging range defined by a field of view equivalent to the width of a typical healthy person's field of vision).
[1264] Communication interface 44 is connected to network 54. Communication interfaces 44 and 26 are responsible for the exchange of various information between processor 46 and processor 28 via network 54. The exchange of various information between processor 46 and processor 28 using communication interfaces 44 and 26 is performed in a secure manner.
[1265] The controlled object 443 includes a display device, LEDs in the eyes, and motors that drive the arms, hands, and feet. The posture and gestures of the robot 414 are controlled by controlling the motors of the arms, hands, and feet. Some of the robot 414's emotions can be expressed by controlling these motors. Furthermore, the robot 414's facial expressions can also be expressed by controlling the illumination state of the LEDs in its eyes.
[1266] Figure 8 shows an example of the main functions of the data processing device 12 and the robot 414. As shown in Figure 8, the data processing device 12 performs specific processing using the processor 28. The storage 32 stores the specific processing program 56.
[1267] The specific processing program 56 is an example of a "program" relating to the technology of this disclosure. The processor 28 reads the specific processing program 56 from the storage 32 and executes the read specific processing program 56 on the RAM 30. The specific processing is realized by the processor 28 operating as a specific processing unit 290 in accordance with the specific processing program 56 executed on the RAM 30.
[1268] The storage 32 stores the data generation model 58 and the emotion identification model 59. The data generation model 58 and the emotion identification model 59 are used by the identification processing unit 290.
[1269] In robot 414, the processor 46 performs the reception output processing. The storage 50 stores the reception output program 60. The processor 46 reads the reception output program 60 from the storage 50 and executes the read reception output program 60 on the RAM 48. The reception output processing is realized by the processor 46 operating as a control unit 46A according to the reception output program 60 executed on the RAM 48.
[1270] Next, the specific processing performed by the specific processing unit 290 of the data processing device 12 will be described. In the following description, the data processing device 12 will be referred to as the "server" and the robot 414 as the "terminal".
[1271] The present invention is a system that automatically creates meeting minutes from recorded data of meetings and on-the-job training, and selects and edits important parts. The system includes means for receiving a video file containing audio data, extracting the audio portion and converting it into text data, formatting the text data into meeting minutes format, selecting predetermined parts from the meeting minutes, identifying time codes based on the selected parts and extracting and editing the corresponding parts of the video, and outputting the edited video as a file.
[1272] The system's program and its description in natural language.
[1273] Loading video
[1274] 1. The user uploads the ZOOM recording data (e.g., "meeting_record.mp4") to the server.
[1275] The user selects files through the web interface and presses the upload button.
[1276] The device receives this command and sends the file to the server.
[1277] 2. The server receives the video file and saves it to a database or storage.
[1278] The server confirms receipt of the uploaded file and records it in the appropriate storage location.
[1279] Speech recognition
[1280] 1. Extract the audio portion of the video file received by the server.
[1281] The server uses tools such as FFmpeg to separate the audio track from the video file and generate an audio file (e.g., "audio.wav").
[1282] 2. The server uses a speech recognition engine (e.g., Google Cloud Speech-to-Text API) to convert the audio data into text data.
[1283] The server sends an audio file to the speech recognition API and temporarily stores the returned text data.
[1284] Meeting minutes
[1285] 1. The server formats the text data obtained through speech recognition into a meeting minutes format.
[1286] The server converts the data into a format that includes a timestamp and speaker information, and then constructs the text data.
[1287] 2. The server saves the formatted text meeting minutes and makes them accessible to users.
[1288] The server generates a file as meeting minutes (e.g., "meeting_minutes.txt") and provides a link for the user to download it.
[1289] Selecting the necessary parts
[1290] 1. Users can view meeting minutes through a web interface.
[1291] The user reviews the meeting minutes and selects the necessary sections (e.g., "Agenda Item 1, Agenda Item 3").
[1292] 2. The terminal sends the timecode of the selected portion of the meeting minutes to the server.
[1293] The terminal collects the selected start and end time codes and sends them to the server.
[1294] Video editing
[1295] 1. The server extracts the corresponding portion from the video file based on the timecode sent.
[1296] The server uses tools such as FFmpeg to split and extract the video according to the specified timecode.
[1297] 2. The server combines and edits the extracted video segments.
[1298] The server combines the selected portions into a single, continuous video file.
[1299] File Output
[1300] 1. The server generates the edited video as a file and provides the user with a download link.
[1301] The server generates the final edited file (e.g., "final_output.mp4") and provides the user with a download link.
[1302] 2. The user downloads the generated video file and meeting minutes.
[1303] Users save the video and meeting minutes files to their devices via the provided links.
[1304] Specific example
[1305] One day, a user uploads a ZOOM recording file titled "Meeting 2023-10-01.mp4" to the server. The server receives this video file, extracts and analyzes the audio data, and generates temporary text data. Next, it generates a formatted meeting minutes file, "Meeting 2023-10-01_minutes.txt," and provides it to the user.
[1306] The user reviews the meeting minutes and selects the sections they need, namely "Agenda Item 1" and "Agenda Item 3." Based on this, the server extracts and edits the specified sections from the video file and generates it as "Selected Meeting Agenda Items.mp4." Finally, the user can download this edited video file and the meeting minutes, allowing for efficient sharing of the key points of the meeting.
[1307] As described above, this system automatically and efficiently extracts and edits important information from meeting and on-the-job training records and provides it to the user.
[1308] The following describes the processing flow.
[1309] Step 1:
[1310] To upload a ZOOM recording file (e.g., "meeting_record.mp4"), the user accesses the web interface and selects the file. Pressing the upload button sends the recording file to the server.
[1311] Step 2:
[1312] The server receives the uploaded video file and saves it to a database or storage. The server confirms receipt of the file and records its location.
[1313] Step 3:
[1314] The server extracts the audio portion from the stored video files. Using media processing tools such as FFmpeg, it separates the audio track from the video and generates an "audio.wav" file.
[1315] Step 4:
[1316] The server sends the extracted audio files to a speech recognition engine (e.g., Google Cloud Speech-to-Text API) to convert the audio data into text data. The returned text data is then temporarily stored.
[1317] Step 5:
[1318] The server formats the text data obtained from the speech recognition engine into a meeting minutes format. It converts it into a format that includes timestamps and speaker information, thus constructing the text data.
[1319] Step 6:
[1320] The server generates a formatted text meeting minutes file and saves it as "meeting_minutes.txt". A download link is then provided for the user to access.
[1321] Step 7:
[1322] The user reviews the meeting minutes via the provided link. They select the necessary sections (e.g., "Agenda Item 1, Agenda Item 3") and enter or select the start and end time codes for the selected sections.
[1323] Step 8:
[1324] The terminal collects timecode information based on the user's selection and sends it to the server. For example, it sends timecode information if the start time of "Agenda Item 1" is 00:05:10 and the end time is 00:15:45.
[1325] Step 9:
[1326] The server extracts the corresponding portion from the video file based on the timecode sent. Tools such as FFmpeg are used to split and extract the video according to the specified timecode.
[1327] Step 10:
[1328] The server combines and edits the multiple extracted video segments. Next, it generates a single continuous video file, "final_output.mp4".
[1329] Step 11:
[1330] The server converts the edited video file to the final file format and provides the user with a download link. By clicking this link, the user saves the edited video file and meeting minutes to their device.
[1331] (Example 1)
[1332] Next, we will describe Example 1. In the following description, the data processing device 12 will be referred to as the "server" and the robot 414 as the "terminal".
[1333] Traditional meeting and on-the-job training (OJT) records often require manual creation of meeting minutes, which is time-consuming and labor-intensive. Furthermore, efficiently extracting and editing important parts from video footage is difficult. Therefore, there is a growing need for a system that can automatically generate meeting minutes from video files including audio data, and efficiently select and edit important sections.
[1334] The identification process performed by the identification processing unit 290 of the data processing device 12 in Example 1 is realized by the following means.
[1335] In this invention, the server includes means for receiving a video file containing audio data, means for extracting the audio portion from the video file using dedicated software and converting it into text data, and means for formatting the text data into a meeting minutes format including a timestamp and speaker information. This enables the automatic generation of meeting minutes from a video file containing audio data, allowing the user to efficiently select and edit important parts.
[1336] "Audio data" refers to data in which the human voice is recorded in an electronic format.
[1337] A "video file" is a digital file that contains moving images and sound.
[1338] "Means of receiving" refers to a method or device for acquiring data sent from an external source and incorporating it into an internal system.
[1339] "Dedicated software" refers to a program developed to perform a specific function.
[1340] "Means of extraction" refers to a method or apparatus for separating specific data elements from the original data.
[1341] "Text data" refers to electronic data expressed in the form of characters and sentences.
[1342] "Means of conversion" refers to a method or apparatus for changing the format of data to another format.
[1343] A "timestamp" is a record of the exact date and time when data was created or modified.
[1344] "Speaker information" refers to information about the person speaking in the audio data.
[1345] "Meeting minutes" are documents that record the proceedings of a meeting or similar event.
[1346] "Means of formatting" refers to a method or apparatus for arranging data into a specific format.
[1347] A "user" is a person or organization that uses a system.
[1348] A "web interface" is a user interface used to access and operate a system using a web browser.
[1349] "Means of selection" refers to a method or device for choosing a specific option from among several options.
[1350] "Timecode" is time information used to indicate a specific location within digital media.
[1351] "Means for extraction and editing" refers to a method or apparatus that has the function of separating specific elements and then processing or adjusting them.
[1352] "Means of outputting as a file" refers to a method or device for saving and presenting processed or edited data in a specific file format.
[1353] A "download link" is a URL used to obtain a file via the internet.
[1354] This invention is a system that automatically creates meeting minutes from recorded data of meetings and on-the-job training (OJT), and allows for the selection and editing of important sections. This system uses the following hardware and software to perform data processing and calculations in multiple stages.
[1355] First, a web interface is provided for users to upload video files containing audio data. Using this interface, users select a meeting recording file (e.g., "meeting_record.mp4") from their device and send it to the server. The device receives this operation and sends the file to the server using an HTTP POST request.
[1356] Next, the server receives the file and saves it appropriately to the database or storage. Using FFmpeg as the dedicated software, the audio track is extracted from the uploaded video file to generate an audio file (e.g., "audio.wav"). An example FFmpeg command used is ffmpeg -i meeting_record.mp4 -q:a 0 -map a audio.wav.
[1357] The server then uses a speech recognition engine, such as the Google Cloud Speech-to-Text API, to convert the audio data into text data. This converts the audio file into text data, which is then temporarily stored. Specifically, the Google Cloud client library is used to send the audio file to the API, and the returned JSON-formatted text data is processed.
[1358] The server then formats the text data generated by the speech recognition engine into a meeting minutes format. After analyzing the timestamp and speaker information, the data, converted to the predetermined format, is saved as a text file. For example, it might be in the format of "[00:01:23] User A: Regarding agenda item 1..."
[1359] After the meeting minutes are created, users can review them through a web interface. Users select the parts they need (e.g., "Agenda Item 1, Agenda Item 3"), and the selection information is sent to the server. Based on the received selection information, the server identifies the corresponding video timecodes and uses FFmpeg to extract and edit the identified sections. An example is `ffmpeg -i meeting_record.mp4 -ss 00:01:23 -to 00:02:34 -c copy part1.mp4`.
[1360] Finally, an edited video file is generated, and the server provides a download link. Through this link, users can download the edited video file and meeting minutes. This allows for the efficient sharing of key points from the meeting.
[1361] Specific example
[1362] One day, a user uploads a ZOOM recording file titled "Meeting 2023-10-01.mp4" to the server. The server receives this video file, extracts and analyzes the audio data, and generates temporary text data. Next, it generates a formatted meeting minutes file, "Meeting 2023-10-01_minutes.txt," and provides it to the user. The user reviews the minutes and selects the sections they need, namely "Agenda Item 1" and "Agenda Item 3." Based on this, the server extracts and edits the specified sections from the video file and generates it as "Selected Meeting Agenda Items.mp4." Finally, the user can download this edited video file and meeting minutes, allowing them to efficiently share the key points of the meeting.
[1363] Examples of prompts for generative AI models
[1364] Prompt: "Please describe the process of a system that uploads ZOOM recording data, automatically converts the audio data to text, and creates meeting minutes. Please include specific actions, such as the process of the user selecting the necessary meeting minutes and then extracting and editing the corresponding video portion based on that selection."
[1365] The flow of the specific processing in Example 1 will be explained using Figure 11.
[1366] Step 1:
[1367] The user uploads the ZOOM recording data to the server.
[1368] Specifically, the user selects a file named "meeting_record.mp4" through the web interface and presses the upload button. The device receives this action and sends the file to the server using an HTTP POST request.
[1369] Input: ZOOM recording file.
[1370] Output: The recorded file received on the server side.
[1371] Step 2:
[1372] The server receives the video file and saves it to a database or storage.
[1373] Specifically, the server receives an HTTP POST request and verifies that the file was transferred correctly. After verification, it saves the file to the "videos / " directory and records the file path and metadata in the database.
[1374] Input: Recording file sent by the user.
[1375] Output: Files stored in storage and their metadata.
[1376] Step 3:
[1377] The server extracts the audio portion from the video file it receives.
[1378] Specifically, the server executes the FFmpeg command to extract the audio track from "meeting_record.mp4" and save it as "audio.wav".
[1379] Input: Recording file.
[1380] Output: Audio file.
[1381] Step 4:
[1382] The server uses a speech recognition engine to convert the audio data into text data.
[1383] Specifically, the server uses a speech recognition engine such as the Google Cloud Speech-to-Text API to convert "audio.wav" into text data and saves it as a temporary file.
[1384] Input: Audio file.
[1385] Output: Text data.
[1386] Step 5:
[1387] The server formats the text data obtained through speech recognition into a meeting minutes format.
[1388] Specifically, the server reads text data from a temporary file, analyzes the timestamp and speaker information, and converts it into a meeting minutes format. It then saves it as "meeting_minutes.txt".
[1389] Input: Text data of the speech recognition result.
[1390] Output: Formatted meeting minutes file.
[1391] Step 6:
[1392] The server saves formatted text meeting minutes and makes them accessible to users.
[1393] Specifically, the server saves the formatted meeting minutes file to the "minutes / " directory, generates a URL for the file, and displays it on the user's dashboard.
[1394] Input: Formatted meeting minutes file.
[1395] Output: Access URL for the meeting minutes file.
[1396] Step 7:
[1397] Users can review meeting minutes through a web interface and select the parts they need.
[1398] Specifically, the user accesses the dashboard, clicks the link to the new meeting minutes to review the contents, selects the necessary sections (e.g., "Agenda Item 1, Agenda Item 3"), and presses the submit button.
[1399] Input: Contents of the meeting minutes file.
[1400] Output: Timecode of the portion selected by the user.
[1401] Step 8:
[1402] The terminal sends the timecode of the selected portion of the meeting minutes to the server.
[1403] Specifically, the selected start and end timecodes are sent to the server as an HTTP POST request in JSON format.
[1404] Input: The timecode selected by the user.
[1405] Output: Timecode sent to the server.
[1406] Step 9:
[1407] The server extracts the corresponding portion from the video file based on the timecode sent.
[1408] Specifically, the server uses the FFmpeg command to split and extract the video according to the specified timecode.
[1409] Input: Timecode and recording file.
[1410] Output: Extracted video portion.
[1411] Step 10:
[1412] The server combines and edits the extracted video segments.
[1413] Specifically, the server sequentially combines the multiple extracted parts into a single, continuous file.
[1414] Input: Extracted video portion.
[1415] Output: Combined edited video file.
[1416] Step 11:
[1417] The server generates the edited video as a file and provides the user with a download link.
[1418] Specifically, the server saves the final edited file "final_output.mp4" to the "edited_videos / " directory and displays the URL on the user dashboard.
[1419] Input: Combined edited video files.
[1420] Output: Download link.
[1421] Step 12:
[1422] The user downloads the generated video files and meeting minutes.
[1423] Specifically, the user clicks a link on the dashboard to download the video file and meeting minutes file to their device.
[1424] Input: Download link.
[1425] Output: Files saved on the user's device.
[1426] (Application Example 1)
[1427] Next, we will explain Application Example 1. In the following explanation, the data processing device 12 will be referred to as the "server" and the robot 414 as the "terminal".
[1428] Traditional surveillance camera systems and security services require significant human effort to detect abnormal sounds or critical events, making real-time response difficult. Furthermore, the time between detecting abnormal sounds and responding increases the likelihood of damage escalating. Additionally, the lack of technology to automatically extract and edit relevant video footage of detected abnormal sounds hinders efficient information sharing and rapid countermeasures.
[1429] The specific processing performed by the specific processing unit 290 of the data processing device 12 in Application Example 1 is realized by the following means.
[1430] In this invention, the server includes means for receiving a video file containing audio data, means for extracting the audio portion from the video file and converting it into text data, means for formatting the text data into a meeting minutes format, means for selecting a predetermined portion from the meeting minutes, means for identifying time codes based on the selected portion and extracting and editing the corresponding portion of the video, means for outputting the edited video as a file, means for analyzing the audio data and detecting abnormal sounds, means for highlighting abnormal sounds and including them in the meeting minutes format, and means for notifying of abnormal sounds and selecting necessary portions. This enables real-time detection of abnormal sounds and rapid extraction and editing of important portions.
[1431] A "video file" is a file in a video recording format that also includes audio data.
[1432] "Audio data" refers to a data format that contains information expressed through sound.
[1433] "Text data" refers to a data format that expresses information as characters.
[1434] "Meeting minutes format" refers to a document format that organizes and summarizes the content of meetings and discussions.
[1435] A "timecode" is a marker that indicates a specific time position in video or audio data.
[1436] An "unusual sound" is a sound that deviates from the normal sound environment and suggests an incident or accident.
[1437] "Notification" refers to a means of informing users of anomalies or important information.
[1438] "Selection" refers to the act of a user identifying a specific part.
[1439] "Extraction" is the process of taking a specific part from the whole.
[1440] "Editing" is the process of rearranging video and audio data to suit a specific purpose.
[1441] This invention relates to a system that receives a video file containing audio data, extracts the audio portion, converts it into text data, and detects abnormal sounds and formats it into a meeting minutes format. This system further includes functions for notifying abnormal sounds, selecting important parts, and extracting, editing, and outputting corresponding parts of the video based on time codes.
[1442] First, the user uploads a video file recorded by a surveillance camera to the server. The server receives the video file and uses the FFmpeg tool to extract the audio. Then, it converts the extracted audio data into text data using a speech recognition engine such as the Google Cloud Speech-to-Text API.
[1443] Next, the server analyzes the converted text data to detect abnormal sounds. The abnormal sound detection engine detects sounds such as breaking glass, screams, and abnormal machine noises. The results are highlighted in a meeting minutes format and provided to the user. The user can view the abnormal sound information in real time through smart glasses and select the time codes for the parts they need.
[1444] Based on the selected timecode, the server extracts the corresponding portion from the video file and edits it using the FFmpeg tool. Finally, the edited video is generated, and a download link is provided to the user.
[1445] As a concrete example, consider a scenario where a security guard wears smart glasses while performing their duties. Video from surveillance cameras is recorded on the smart glasses, and audio data is uploaded to a server in real time. The server detects abnormal sounds based on the audio data and immediately notifies the smart glasses if an abnormal sound is detected. The security guard then checks the details of the abnormal sound on the spot, selects the time codes of the necessary parts, and sends them to the server.
[1446] The server extracts and edits the corresponding video segments according to the selected timecodes, highlighting any anomalies and combining them. Finally, the edited video file is provided as a download link and immediately shared with security guards and other relevant personnel.
[1447] Examples of prompts for the generative AI model in this system are as follows:
[1448] Please detect abnormal sounds from the following audio data:
[1449] The sound of glass breaking
[1450] scream
[1451] Abnormal noise from the machine
[1452] Audio data: "Contents of the audio data"
[1453] By using this prompt statement, it is possible to detect specific abnormal sounds from audio data and respond quickly and efficiently.
[1454] The flow of a specific process in Application Example 1 will be explained using Figure 12.
[1455] Step 1:
[1456] Uploading videos
[1457] The user uploads video files recorded by surveillance cameras to the server. The input is a video file (e.g., "monitoring_video.mp4"), and the output is the path to the video file saved on the server. The user selects the file through the web interface and presses the upload button, at which point the terminal sends the video file to the server.
[1458] Step 2:
[1459] Extraction of the audio portion
[1460] The server extracts the audio portion from the received video file. The input is the path to the video file, and the output is an audio file (e.g., "audio.wav"). Specifically, the server uses the FFmpeg tool to separate the audio track from the video file.
[1461] Step 3:
[1462] Speech-to-text conversion
[1463] The server sends the extracted audio files to a speech recognition engine and converts them into text data. The input is an audio file, and the output is text data (e.g., "transcribed_text.txt"). Specifically, the server uses the Google Cloud Speech-to-Text API or similar to convert the audio data into text data and temporarily stores it.
[1464] Step 4:
[1465] Detection of abnormal sounds
[1466] The server analyzes text data to detect abnormal sounds. The input is text data, and the output is information about detected abnormal sounds. Specifically, the abnormal sound detection engine scans the text data and identifies patterns such as "the sound of glass breaking" or "screaming."
[1467] Step 5:
[1468] Notification of abnormal sound information
[1469] The server notifies the user of any detected abnormal sounds. The input is the detected abnormal sound information, and the output is the notification to the user. Specifically, the server sends an alert to smart glasses or a terminal to notify the user of the occurrence of an abnormal sound.
[1470] Step 6:
[1471] User-selected timecode
[1472] The user views abnormal sound information through smart glasses and selects the timecodes for the required sections. The input consists of abnormal sound information and a portion of the meeting minutes, while the output is the selected timecodes. Specifically, the user operates the interface to specify the start and end timecodes for important sections.
[1473] Step 7:
[1474] Extraction and editing of video portions
[1475] The server extracts and edits the corresponding video portion based on the selected timecode. The input is the path to the video file and the selected timecode, and the output is the edited video file (e.g., "highlighted_event.mp4"). Specifically, the server uses the FFmpeg tool to split and extract the video, and then combines and edits the specified portions.
[1476] Step 8:
[1477] Outputting and sharing edited videos
[1478] The server generates the edited video file and provides the user with a download link. The input is the edited video file, and the output is the download link. Specifically, the server generates the final edited file and creates and notifies the user of a link that allows immediate access.
[1479] Furthermore, an emotion engine that estimates the user's emotions may be incorporated. That is, the identification processing unit 290 may use the emotion identification model 59 to estimate the user's emotions and perform identification processing using the user's emotions.
[1480] This invention combines a system that automatically creates meeting minutes from recorded data of meetings and on-the-job training, and selects and edits important parts, with an emotion engine that recognizes the user's emotions. The system includes means for receiving a video file containing audio data, extracting the audio portion and converting it into text data, formatting the text data into meeting minutes format, selecting predetermined parts from the meeting minutes, identifying time codes based on the selected parts and extracting and editing the corresponding parts of the video, outputting the edited video as a file, and an emotion engine that recognizes the user's emotions.
[1481] The system's program and its description in natural language.
[1482] Loading video
[1483] 1. The user accesses the web interface to upload a ZOOM recording file (e.g., "meeting_record.mp4"), selects the file, and presses the upload button. The device then sends the recording file to the server.
[1484] 2. The server receives the uploaded video file and saves it to a database or storage. The server confirms receipt of the file and records its location.
[1485] Speech recognition
[1486] 1. The server extracts the audio portion from the stored video file. Using a media processing tool such as FFmpeg, the audio track is separated from the video and an "audio.wav" file is generated.
[1487] 2. The server sends the audio data to a speech recognition engine (e.g., Google Cloud Speech-to-Text API) to convert the audio into text data. The returned text data is then temporarily stored.
[1488] emotion recognition
[1489] 1. The server sends audio and video data to the emotion engine and recognizes the user's emotions from their voice and facial expressions.
[1490] 2. The server adds the emotion information returned by the emotion engine to the meeting minutes text data. For example, it converts it into a format that includes emotion information, such as "10:15 [Yamada]: Hello, let's start the meeting. (Emotion: Joy)".
[1491] Meeting minutes
[1492] 1. The server generates a formatted text meeting minutes file and saves it as "meeting_minutes.txt". A download link is then provided for the user to access.
[1493] Selecting the necessary parts
[1494] 1. The user reviews the meeting minutes, including sentiment information, via the provided link. They select the necessary sections (e.g., "Agenda Item 1, Agenda Item 3") and enter or select the start and end time codes.
[1495] 2. The terminal collects timecode information based on the user's selection and sends it to the server. For example, it sends timecode information if the start time of "Agenda Item 1" is 00:05:10 and the end time is 00:15:45.
[1496] Video editing
[1497] 1. The server extracts the corresponding portion from the video file based on the transmitted timecode. Tools such as FFmpeg are used to split and extract the video according to the specified timecode.
[1498] 2. The server combines and edits the multiple extracted video segments. Next, it generates a single continuous video file, "final_output.mp4".
[1499] File Output
[1500] 1. The server converts the edited video file to the final file format and provides a download link for the user. By clicking this link, the user saves the edited video file and meeting minutes, including sentiment information, to their device.
[1501] Specific example
[1502] For example, a user uploads a ZOOM recording file titled "Meeting 2023-10-01.mp4" to the server. The server receives this video file, analyzes the audio and video data, and generates text data containing sentiment information, such as "Meeting 2023-10-01_minutes.txt". The meeting minutes will also include sentiment information for each statement made.
[1503] The user reviews the meeting minutes, which include emotional information, and selects the sections they need, namely "Agenda Item 1" and "Agenda Item 3." Based on this, the server extracts and edits the specified sections from the video file to generate "Selected Meeting Agenda Items.mp4." The user can then download this edited video file and the meeting minutes, allowing them to efficiently share the key points of the meeting.
[1504] As described above, this system automatically creates meeting minutes with added emotional information from records of meetings and on-the-job training, efficiently extracts and edits important information, and provides it to the user.
[1505] The following describes the processing flow.
[1506] Step 1:
[1507] The user accesses the web interface to upload a ZOOM recording file (e.g., "meeting_record.mp4"), selects the file, and presses the upload button. The device then sends the recording file to the server.
[1508] Step 2:
[1509] The server receives the uploaded video file and saves it to a database or storage. It confirms the file's receipt and records its location.
[1510] Step 3:
[1511] The server uses media processing tools such as FFmpeg to extract the audio portion from the stored video files. This separates the audio track from the video and generates an "audio.wav" file.
[1512] Step 4:
[1513] The server sends the audio file "audio.wav" to a speech recognition engine (e.g., Google Cloud Speech-to-Text API) and converts the audio data into text data. The returned text data is then temporarily stored.
[1514] Step 5:
[1515] The server sends audio and video data to the emotion engine, which recognizes the user's emotions from the audio and facial expressions. The emotion engine performs analysis and returns emotional information (e.g., joy, sadness, anger, etc.).
[1516] Step 6:
[1517] The server adds the emotion information returned from the emotion engine to the text data, formats it, and then formats it into a meeting minutes format. For example, it converts it into a format that includes emotion information, such as "10:15 [Yamada]: Hello, let's start the meeting. (Emotion: Joy)".
[1518] Step 7:
[1519] The server generates a formatted text meeting minutes file and saves it as "meeting_minutes.txt". A download link is then provided for the user to access.
[1520] Step 8:
[1521] Users review meeting minutes, including sentiment information, via the provided link. They select the necessary sections (e.g., "Agenda Item 1, Agenda Item 3") and enter or select the start and end time codes.
[1522] Step 9:
[1523] The terminal collects timecode information based on the user's selection and sends it to the server. For example, it sends timecode information if the start time of "Agenda Item 1" is 00:05:10 and the end time is 00:15:45.
[1524] Step 10:
[1525] The server extracts the corresponding portion from the video file based on the timecode sent. Tools such as FFmpeg are used to split and extract the video according to the specified timecode.
[1526] Step 11:
[1527] The server combines and edits the multiple extracted video segments. Next, it generates a single continuous video file, "final_output.mp4".
[1528] Step 12:
[1529] The server converts the edited video file to the final file format and provides the user with a download link. Clicking this link saves the edited video file and meeting minutes, including emotional information, to the user's device.
[1530] (Example 2)
[1531] Next, we will describe Example 2. In the following description, the data processing device 12 will be referred to as the "server" and the robot 414 as the "terminal".
[1532] Traditional meeting recording systems made it difficult to efficiently extract important information from recorded meetings and on-the-job training (OJT) footage. Furthermore, the resulting meeting minutes lacked information tailored to the speaker's emotions and the importance of each point, making it difficult to extract and share crucial information. This resulted in cumbersome post-meeting reviews and report creation, requiring significant time and effort.
[1533] The identification process performed by the identification processing unit 290 of the data processing device 12 in Example 2 is realized by the following means.
[1534] In this invention, the server includes means for receiving a video file containing audio data, means for extracting the audio portion from the video file and converting it into text data, means for formatting the text data into a meeting minutes format, means for adding emotional information to the text data, means for selecting a predetermined portion from the meeting minutes, means for identifying time codes based on the selected portion and extracting and editing the corresponding portion of the video, and means for outputting the edited video as a file. This makes it possible to efficiently extract important parts from recorded meeting and OJT data, create meeting minutes including emotional information, and quickly and efficiently provide the specific information that the user needs.
[1535] A "video file" is a recording medium that contains both audio and video data.
[1536] The "audio portion" refers to audio data extracted from a video file, including the speaker's utterances and other sounds.
[1537] "Text data" refers to the character information converted from the audio portion by a speech recognition engine.
[1538] "Meeting minutes format" refers to a document format that records the contents of a meeting or on-the-job training in chronological order.
[1539] "Emotional information" refers to information that indicates the emotional state of a speaker, analyzed from their speech and facial expressions.
[1540] A "timecode" is a code that indicates a specific time position within a video file.
[1541] "Extraction and editing" refers to the process of cutting out corresponding portions from a video file based on specific time codes and combining or processing them as needed.
[1542] "Means" refers to a device, program, or method for performing a specific function or process.
[1543] A "server" is a computer device that receives, processes, stores, and transmits data over a network.
[1544] A "user" is the entity that uses this system to extract, edit, and review information from recorded data of meetings and on-the-job training (OJT).
[1545] The present invention is a system that automatically creates meeting minutes from recorded data of meetings and on-the-job training, and selects and edits important parts. The system includes means for receiving a video file containing audio data, extracting the audio portion and converting it into text data, means for formatting the text data into meeting minutes format, means for selecting predetermined parts from the meeting minutes, means for identifying time codes based on the selected parts and extracting and editing the corresponding parts of the video, and an emotion engine that recognizes the user's emotions.
[1546] The user uploads a recording file (e.g., "meeting_record.mp4") via a web interface. The terminal sends this file to the server. The server receives the file and saves it to a database or storage. The file's save path is also recorded at this time.
[1547] Next, the server uses a media processing tool such as FFmpeg to extract the audio portion from the video file and generate an "audio.wav" file. The generated audio file is then sent to a speech recognition engine such as the Google Cloud Speech-to-Text API to convert the audio data into text data. This converted text data is temporarily stored.
[1548] Furthermore, the server sends audio and video data to the emotion engine to recognize the user's emotions. The emotion information returned by the emotion engine is integrated into the text data and added, for example, "10:15 [Speaker]: Hello, let's start the meeting. (Emotion: Joy)".
[1549] The server generates a formatted text meeting minutes file with added sentiment information and saves it as "meeting_minutes.txt". Users can download these minutes from the provided link.
[1550] The user reviews the meeting minutes and selects important sections (e.g., "Agenda Item 1, Agenda Item 3"). Based on this selection, the user enters or selects the start and end time codes. The terminal sends this time code information to the server.
[1551] Based on the transmitted timecode, the server extracts and edits the corresponding portion from the video file using tools such as FFmpeg. If multiple video portions are specified, they are combined and finally output as a "final_output.mp4" file.
[1552] Finally, the server converts the edited video file to its final file format and provides a download link for the user. The user can click this link to download the edited video file and meeting minutes, including sentiment information.
[1553] Specific example
[1554] For example, a user uploads a video recording file titled "Meeting 2023-10-01.mp4" to the server. This video file is analyzed for audio and video data, and a text file named "Meeting 2023-10-01_minutes.txt" is generated with added sentiment information. The minutes also include sentiment information for each statement. The user reviews the minutes, which include sentiment information, and selects sections for "Agenda Item 1" and "Agenda Item 3." Based on this, the server extracts and edits the specified sections from the video file to generate "Selected Meeting Agenda Items.mp4." The user can then download this edited video file and the minutes, enabling efficient sharing of important information.
[1555] Examples of prompts to input into a generative AI model
[1556] "Please upload the meeting recording file (e.g., meeting_record.mp4), extract the audio, and transcribe it. Then, create meeting minutes with emotional information added for each statement, edit the video based on the timecodes of the specified statements, and make the results available for download."
[1557] The flow of the specific processing in Example 2 will be explained using Figure 13.
[1558] Step 1: Load the video
[1559] The user selects a recording file (e.g., "meeting_record.mp4") via a web interface and presses the upload button. The device then sends this file to the server. Specifically, the device sends the selected file to the server via an HTTP POST request. The server saves the received video file to a database or file storage and records its save path.
[1560] Input: Recording file (e.g., "meeting_record.mp4")
[1561] Data processing: Receiving and saving files
[1562] Output: Path to the saved video file
[1563] Step 2: Extraction of the audio portion
[1564] The server reads the saved video file and extracts the audio portion using a media processing tool such as FFmpeg. It then sends the generated "audio.wav" file to a speech recognition engine (e.g., Google Cloud Speech-to-Text API) to convert the audio data into text data. Specifically, the server uses the FFmpeg command to separate the audio track and generate the "audio.wav" file. It then sends this audio file to the speech recognition engine and temporarily stores the returned text data.
[1565] Input: Path to the saved video file
[1566] Data processing: Extraction of audio and conversion to text.
[1567] Output: Text data
[1568] Step 3: Adding emotional information
[1569] The server sends audio and video data to an emotion engine to recognize the user's emotions. The emotion information returned by the emotion engine is then integrated into the existing text data. Specifically, the server sends audio and video data to APIs for speech emotion recognition and facial expression analysis, respectively, analyzes the responses from the APIs, and adds the emotion information to the relevant parts.
[1570] Input: Audio data and video data
[1571] Data processing: Recognition and integration of emotional information
[1572] Output: Text data with added emotional information
[1573] Step 4: Creating meeting minutes
[1574] The server formats the text data, which includes emotional information, into a meeting minutes format. Specifically, the server uses a template engine (e.g., Jinja2) to convert it into a meeting minutes format and saves it as "meeting_minutes.txt". Users can download these meeting minutes via the provided link.
[1575] Input: Text data with added emotional information
[1576] Data processing: Formatting and shaping text data
[1577] Output: Meeting minutes file ("meeting_minutes.txt")
[1578] Step 5: Selecting the Timecode
[1579] The user clicks the provided link to view the meeting minutes, which include sentiment information. They select the necessary sections (e.g., "Agenda Item 1, Agenda Item 3") and enter or select the start and end time codes. Specifically, the user enters the time code information while referring to the web page, and the terminal sends this time code information to the server.
[1580] Input: Meeting minutes file ("meeting_minutes.txt")
[1581] Data processing: User input of timecodes
[1582] Output: Timecode information
[1583] Step 6: Editing the video
[1584] The server extracts and edits the corresponding portion from the video file based on the transmitted timecode. Specifically, the server uses the FFmpeg command to extract the video portion within the specified timecode range, combines multiple video clips, and generates the final file.
[1585] Input: Timecode information
[1586] Data processing: Extraction and merging of video portions
[1587] Output: Edited video file ("final_output.mp4")
[1588] Step 7: File Output
[1589] The server encodes the edited video file and converts it into a format that the user can download. Specifically, the server encodes the final video into a predetermined format (e.g., MP4) and saves it. Finally, the server displays a download link on the user interface and provides it in the HTTP response. The user can click this link to download the edited video file and meeting minutes, including sentiment information.
[1590] Input: Edited video file
[1591] Data processing: Encoding and saving
[1592] Output: Download link
[1593] (Application Example 2)
[1594] Next, we will explain application example 2. In the following explanation, the data processing device 12 will be referred to as the "server" and the robot 414 as the "terminal".
[1595] Conventional factory work record and report creation systems struggle to integrate the recording and textualization of work processes with emotional recognition, often leading to human error and wasted time. Furthermore, real-time assessment of worker stress and fatigue levels, and suggesting appropriate breaks, proved challenging. As a result, efficiency improvements and adequate worker health management were hindered, potentially leading to decreased quality and productivity.
[1596] The specific processing performed by the specific processing unit 290 of the data processing device 12 in Application Example 2 is realized by the following means.
[1597] In this invention, the server includes means for receiving a video file containing audio data, means for extracting the audio portion from the video file and converting it into text data, means for formatting the text data into a meeting minutes format, means for selecting a predetermined portion from the meeting minutes, means for identifying time codes based on the selected portion and extracting and editing the corresponding portion of the video, means for outputting the edited video as a file, means for recognizing emotions from the text data and video and adding that information, means for recording the manufacturing process and detecting abnormalities, and means for evaluating the worker's condition and suggesting appropriate break times. This enables increased work efficiency and accurate recording, and allows for proper management of the worker's health.
[1598] "Audio data" refers to information obtained by converting sound waves into a digital format, and includes data such as human speech and other sounds.
[1599] A "video file" is a file format that integrates sequential image data and audio data, and contains both video and audio.
[1600] "Text data" refers to data that has been converted into a format that can be handled by programs, such as characters and numbers.
[1601] "Meeting minutes" are documents that record the content of meetings and discussions, and include statements made, topics discussed, and decisions made.
[1602] A "timecode" is location information that indicates a specific time within video or audio data.
[1603] "Emotion recognition" is a technology that analyzes human facial expressions and tone of voice from audio and video to determine emotional states.
[1604] Anomaly detection is a technology that detects behavior or states that deviate from normal patterns.
[1605] "Break timing" refers to information indicating the appropriate time for workers to interrupt their work or take a rest.
[1606] A "server" is a computer dedicated to providing data and services to other computers on a network.
[1607] This invention is a system applied to robots that record factory work processes and quality checks. Specifically, it automatically generates work reports from conversations between workers and the robot, as well as recorded work data, and detects anomalies and areas for process improvement. It also recognizes the worker's emotions, assesses stress and fatigue levels, and provides appropriate rest timings.
[1608] The server receives a video file containing audio data, extracts the audio portion from the video file, and converts it into text data. This involves using a media processing tool such as FFmpeg to separate the audio track from the video and sending it to a speech recognition engine (e.g., Google Cloud Speech-to-Text API) to convert the audio data into text.
[1609] Furthermore, the server transmits audio and video data to the emotion recognition engine, which recognizes the user's emotions from their voice and facial expressions. The emotion recognition results are added to the text data of the meeting minutes. For example, it is recorded in a format that includes emotion information, such as "Work start time: 10:00 (Emotion: Neutral)".
[1610] Users review this information and identify any anomalies or defects. Anomaly detection uses automated tools to analyze video data. Time codes are identified, providing users with a means to select important sections, and the video is edited based on those selections.
[1611] Finally, the server generates formatted text minutes and provides them to the user in a format accessible along with the video files.
[1612] For example, a user uploads a video file titled "Task 2023-10-01.mp4" to the server. The server receives this video file, analyzes the audio and video data, and generates text data containing emotional information, titled "Task 2023-10-01_minutes.txt". The minutes also include emotional information for each work step. The user reviews the minutes, which include emotional information, and selects any abnormal or unnecessary parts. Based on this, the server extracts and edits the specified parts from the video file to generate "Edited Work Record.mp4". The user can download this edited video file and minutes, enabling efficient sharing of key points of factory work.
[1613] Examples of prompts for a generative AI model:
[1614] Analyze the audio and video data from the work video '2023-10-15_factory_work.mp4' and create a work report. Include emotional information regarding the statements made, and also include any anomaly detection results in the report. Additionally, suggest break times that reflect the worker's emotional state.
[1615] This system enables more efficient work processes, accurate record-keeping, and proper health management of workers.
[1616] The flow of a specific process in Application Example 2 will be explained using Figure 14.
[1617] Step 1:
[1618] The user uploads a recorded file (e.g., "Work 2023-10-01.mp4").
[1619] Specific operation: The user accesses the web interface, selects a recording file, and presses the upload button. The file is sent to the server.
[1620] Input: User selects and uploads video files.
[1621] Output: The server receives and saves the video file.
[1622] Step 2:
[1623] The server receives the uploaded video file and saves it to a database or storage.
[1624] Specific operation: The server records the file's location and confirms receipt.
[1625] Input: User-uploaded video file
[1626] Output: The video file is saved to the server's storage.
[1627] Step 3:
[1628] The server extracts the audio portion from the stored video file.
[1629] Specific operation: Using a media processing tool such as FFmpeg, separate the audio track from the video and generate an audio file named "audio.wav".
[1630] Input: Saved video file
[1631] Output: Audio file "audio.wav"
[1632] Step 4:
[1633] The server sends the audio data to the speech recognition engine, which converts the audio into text data.
[1634] Specific operation: Use the Google Cloud Speech-to-Text API to convert the audio file to text and temporarily store it.
[1635] Input: Audio file "audio.wav"
[1636] Output: Text data
[1637] Step 5:
[1638] The server sends audio and video data to the emotion recognition engine, which then recognizes the user's emotions from their voice and facial expressions.
[1639] Specific operation: Use an emotion recognition module to analyze video and audio and extract emotional information.
[1640] Input: Audio data and video data
[1641] Output: Text data containing emotional information
[1642] Step 6:
[1643] The server generates formatted text meeting minutes and provides a download link that users can access.
[1644] Specific operation: Format the generated text data, format it into a meeting minutes format, and save it as a file.
[1645] Input: Text data containing emotional information
[1646] Output: Formatted text meeting minutes
[1647] Step 7:
[1648] Users can view the meeting minutes via the provided link and select the necessary sections.
[1649] Specific operation: The user reviews the meeting minutes, selects the necessary sections, and enters or selects the start and end time codes.
[1650] Input: Formatted text meeting minutes
[1651] Output: Timecode information for the portion selected by the user.
[1652] Step 8:
[1653] The server extracts the corresponding portion from the video file based on the timecode sent.
[1654] Specific operation: Use a media processing tool such as FFmpeg to split and extract video according to the specified timecode.
[1655] Input: Timecode information
[1656] Output: Extracted video portion
[1657] Step 9:
[1658] The server combines the extracted video segments to generate a single, continuous video file.
[1659] Specific operation: The extracted video segments are combined to generate the final video file "Edited Work Log.mp4".
[1660] Input: Extracted video portion
[1661] Output: Edited video file
[1662] Step 10:
[1663] The server converts the edited video file to the final file format and provides the user with a download link.
[1664] Specific actions: Convert the final video file to a file format and provide a download link that the user can access.
[1665] Input: Edited video file
[1666] Output: A downloadable link for the user.
[1667] The specific processing unit 290 transmits the result of the specific processing to the robot 414. In the robot 414, the control unit 46A causes the speaker 240 and the controlled object 443 to output the result of the specific processing. The microphone 238 acquires audio indicating user input for the result of the specific processing. The control unit 46A transmits the audio data indicating user input acquired by the microphone 238 to the data processing unit 12. In the data processing unit 12, the specific processing unit 290 acquires the audio data.
[1668] Data generation model 58 is a type of so-called generative AI (Artificial Intelligence). One example of data generation model 58 is ChatGPT (Internet search<URL: https: / / openai.com / blog / chatgpt> ), Gemini (Internet search) <url: https: gemini.google.com ?hl="ja">Examples of generative AI include the following. The data generation model 58 is obtained by performing deep learning on a neural network. The data generation model 58 is input with prompts containing instructions, and with inference data such as audio data representing speech, text data representing text, and image data representing images. The data generation model 58 infers from the input inference data according to the instructions indicated by the prompts, and outputs the inference results in data formats such as audio data and text data. Here, inference refers to, for example, analysis, classification, prediction, and / or summarization.
[1669] In the above embodiment, an example was given in which specific processing is performed by the data processing device 12, but the technology of this disclosure is not limited thereto, and the specific processing may also be performed by the robot 414.
[1670] Furthermore, the emotion identification model 59, acting as an emotion engine, may determine the user's emotion according to a specific mapping. Specifically, the emotion identification model 59 may determine the user's emotion according to a specific mapping, which is an emotion map (see Figure 9). Similarly, the emotion identification model 59 may also determine the robot's emotion, and the identification processing unit 290 may perform identification processing using the robot's emotion.
[1671] Figure 9 shows an emotion map 400 in which multiple emotions are mapped. In the emotion map 400, emotions are arranged in concentric circles radiating from the center. The closer to the center of the concentric circles, the more primitive the emotions are located. Further out of the concentric circles, emotions representing states and actions arising from mental states are located. Emotion is a concept that includes feelings and mental states. On the left side of the concentric circles, emotions that are generally generated from reactions occurring in the brain are located. On the right side of the concentric circles, emotions that are generally induced by situational judgment are located. Above and below the concentric circles, emotions that are generally generated from reactions occurring in the brain and induced by situational judgment are located. In addition, the emotion of "pleasure" is located on the upper side of the concentric circles, and the emotion of "displeasure" is located on the lower side. Thus, in the emotion map 400, multiple emotions are mapped based on the structure in which emotions arise, and emotions that are likely to occur simultaneously are mapped close together.
[1672] These emotions are distributed at the 3 o'clock position on the Emotion Map 400, and usually fluctuate between feelings of security and anxiety. In the right half of the Emotion Map 400, situational awareness takes precedence over internal feelings, resulting in a calm impression.
[1673] The inside of the Emotion Map 400 represents inner thoughts, while the outside represents actions. Therefore, the further you go from the outside of the Emotion Map 400, the more visible (expressed in actions) your emotions become.
[1674] Here, human emotions are based on various balances, such as posture and blood sugar levels. When these balances deviate from the ideal, it results in discomfort, and when they approach the ideal, it results in pleasure. Similarly, in robots, cars, motorcycles, etc., emotions can be created based on various balances, such as posture and battery level. When these balances deviate from the ideal, it results in discomfort, and when they approach the ideal, it results in pleasure. The emotion map can be generated, for example, based on Dr. Mitsuyoshi's emotion map (Research on a system for analyzing brain physiological signals of speech emotion recognition and emotion, Tokushima University, doctoral dissertation: https: / / ci.nii.ac.jp / naid / 500000375379). The left half of the emotion map contains emotions belonging to a region called "response," where sensation is dominant. The right half of the emotion map contains emotions belonging to a region called "situation," where situational awareness is dominant.
[1675] The emotion map defines two emotions that promote learning. One is the emotion around the middle of the negative "repentance" and "reflection" on the situation side. In other words, it is when the robot experiences negative emotions such as "I never want to feel this way again" or "I don't want to be scolded again." The other is the emotion around the positive "desire" on the reaction side. In other words, it is when the robot has positive feelings such as "I want more" or "I want to know more."
[1676] The emotion identification model 59 inputs user input into a pre-trained neural network, obtains emotion values representing each emotion shown in the emotion map 400, and determines the user's emotion. This neural network is pre-trained based on multiple training data sets, which are combinations of user input and emotion values representing each emotion shown in the emotion map 400. Furthermore, this neural network is trained so that emotions located close together have similar values, as shown in the emotion map 900 in Figure 10. Figure 10 shows an example where multiple emotions such as "reassured," "calm," and "confident" have similar emotion values.
[1677] The above description primarily focuses on the functions of the data processing device 12 in relation to this disclosure. However, the system related to this disclosure is not necessarily implemented on a server. The system related to this disclosure may be implemented as a general information processing system. This disclosure may be implemented, for example, as a software program that runs on a personal computer or as an application that runs on a smartphone. The method related to this disclosure may be provided to users in SaaS (Software as a Service) format.
[1678] In the above embodiment, an example was given in which a specific process is performed by a single computer 22. However, the technology of this disclosure is not limited thereto, and a distributed processing of the specific process may be performed by multiple computers, including computer 22. For example, a data generation model 58 may be provided in an external device of the data processing device 12, and the external device may generate data according to the input data.
[1679] In the above embodiment, an example was given in which the specific processing program 56 is stored in the storage 32, but the technology of this disclosure is not limited thereto. For example, the specific processing program 56 may be stored in a portable, computer-readable, non-temporary storage medium such as a USB (Universal Serial Bus) memory. The specific processing program 56 stored in the non-temporary storage medium is installed in the computer 22 of the data processing device 12. The processor 28 executes specific processing according to the specific processing program 56.
[1680] Alternatively, the specific processing program 56 may be stored in a storage device such as a server connected to the data processing device 12 via the network 54, and the specific processing program 56 may be downloaded and installed on the computer 22 in response to a request from the data processing device 12.
[1681] Furthermore, it is not necessary to store the entirety of the specific processing program 56 in a storage device such as a server connected to the data processing device 12 via the network 54, or to store the entirety of the specific processing program 56 in the storage 32; it is acceptable to store only a portion of the specific processing program 56.
[1682] The following types of processors can be used as hardware resources to perform specific processing. Examples of processors include a CPU, a general-purpose processor that functions as a hardware resource to perform specific processing by executing software, i.e., a program. Other examples of processors include dedicated electrical circuits, such as FPGAs (Field-Programmable Gate Arrays), PLDs (Programmable Logic Devices), or ASICs (Application Specific Integrated Circuits), which have circuit configurations specifically designed to perform specific processing. All of these processors have built-in or connected memory, and all of them perform specific processing by using memory.
[1683] The hardware resource that performs a specific process may consist of one of these various processors, or it may consist of a combination of two or more processors of the same or different types (for example, a combination of multiple FPGAs, or a combination of a CPU and an FPGA). Alternatively, the hardware resource that performs a specific process may consist of a single processor.
[1684] Examples of configurations using a single processor include, firstly, a configuration in which one or more CPUs and software are combined to form a single processor, and this processor functions as a hardware resource that performs a specific process. Secondly, there is a configuration using a processor that realizes the functions of the entire system, including multiple hardware resources that perform a specific process, on a single IC chip, as exemplified by SoCs (System-on-a-chip). In this way, a specific process is realized using one or more of the above types of processors as hardware resources.
[1685] Furthermore, the hardware structure of these various processors can more specifically utilize electrical circuits that combine circuit elements such as semiconductor devices. Also, the specific processing described above is merely an example. Therefore, it goes without saying that unnecessary steps can be deleted, new steps added, or the processing order rearranged, as long as it does not deviate from the main purpose.
[1686] The descriptions and illustrations presented above are detailed explanations of the technical aspects of this disclosure and are merely examples of the technical aspects. For example, the above descriptions of the structure, function, operation, and effect are examples of the structure, function, operation, and effect of the technical aspects of this disclosure. Therefore, it goes without saying that you may delete unnecessary parts, add new elements, or replace elements in the descriptions and illustrations presented above, as long as you do not deviate from the essence of the technical aspects of this disclosure. Furthermore, in order to avoid confusion and facilitate understanding of the technical aspects of this disclosure, explanations of common technical knowledge and the like that do not require special explanation to enable the implementation of the technical aspects of this disclosure have been omitted from the descriptions and illustrations presented above.
[1687] All documents, patent applications, and technical standards described herein are incorporated by reference to the same extent as if each individual document, patent application, and technical standard were specifically and individually noted to be incorporated by reference.
[1688] The following is further disclosed regarding the embodiments described above.
[1689] (Claim 1)
[1690] A means for receiving a video file containing audio data,
[1691] A means for extracting the audio portion from the aforementioned video file and converting it into text data,
[1692] A means for formatting the aforementioned text data into a meeting minutes format,
[1693] A means for selecting a predetermined portion from the aforementioned minutes,
[1694] A means for identifying the timecode based on the selected portion and for extracting and editing the corresponding portion of the video,
[1695] A means for outputting the edited video as a file,
[1696] A system that includes this.
[1697] (Claim 2)
[1698] The system according to claim 1, characterized in that a speech recognition engine is used to extract the aforementioned audio portion.
[1699] (Claim 3)
[1700] The system according to claim 1, characterized in that the identification of the timecode includes means for the user to input or select.
[1701] "Example 1"
[1702] (Claim 1)
[1703] A means for receiving a video file containing audio data,
[1704] A means for extracting the audio portion from the video file using dedicated software and converting it into text data,
[1705] A means for formatting the aforementioned text data into a meeting minutes format including a timestamp and speaker information,
[1706] A means for displaying the aforementioned meeting minutes to the user and allowing the user to select the necessary parts,
[1707] A means for identifying the timecode based on the selected portion and for extracting and editing the corresponding portion of the video,
[1708] A means for outputting the edited video as a file and providing a download link to the user,
[1709] A system that includes this.
[1710] (Claim 2)
[1711] The system according to claim 1, characterized in that a speech recognition engine is used in the extraction and conversion of the aforementioned speech data.
[1712] (Claim 3)
[1713] The system according to claim 1, characterized in that, in identifying the timecode of the minutes, the user inputs or selects from a web interface.
[1714] "Application Example 1"
[1715] (Claim 1)
[1716] A means for receiving a video file containing audio data,
[1717] A means for extracting the audio portion from the aforementioned video file and converting it into text data,
[1718] A means for formatting the aforementioned text data into a meeting minutes format,
[1719] A means for selecting a predetermined portion from the aforementioned minutes,
[1720] A means for identifying the timecode based on the selected portion and for extracting and editing the corresponding portion of the video,
[1721] A means for outputting the edited video as a file,
[1722] A means for analyzing audio data and detecting abnormal sounds,
[1723] Methods for emphasizing abnormal sounds and including them in the meeting minutes format,
[1724] A means for notifying abnormal sounds and selecting the necessary parts,
[1725] A system that includes this.
[1726] (Claim 2)
[1727] The system according to claim 1, characterized in that a speech recognition engine is used to extract the aforementioned audio portion.
[1728] (Claim 3)
[1729] The system according to claim 1, characterized in that the identification of the timecode includes means for the user to input or select.
[1730] "Example 2 of combining an emotion engine"
[1731] (Claim 1)
[1732] A means for receiving a video file containing audio data,
[1733] A means for extracting the audio portion from the aforementioned video file and converting it into text data,
[1734] A means for formatting the aforementioned text data into a meeting minutes format,
[1735] A means of adding emotional information to text data,
[1736] A means for selecting a predetermined portion from the aforementioned minutes,
[1737] A means for identifying the timecode based on the selected portion and for extracting and editing the corresponding portion of the video,
[1738] A means for outputting the edited video as a file,
[1739] A system that includes this.
[1740] (Claim 2)
[1741] The system according to claim 1, characterized in that a speech recognition engine is used to extract the aforementioned audio portion.
[1742] (Claim 3)
[1743] The system according to claim 1, characterized in that the identification of the timecode includes means for the user to input or select.
[1744] (Claim 4)
[1745] The system according to claim 1, characterized in that it analyzes voice tone and video data when adding the aforementioned emotional information.
[1746] (Claim 5)
[1747] The system according to claim 1, characterized in that it outputs the edited video file and meeting minutes in a downloadable format.
[1748] "Application example 2 when combining with an emotional engine"
[1749] (Claim 1)
[1750] A means for receiving a video file containing audio data,
[1751] A means for extracting the audio portion from the aforementioned video file and converting it into text data,
[1752] A means for formatting the aforementioned text data into a meeting minutes format,
[1753] A means for selecting a predetermined portion from the aforementioned minutes,
[1754] A means for identifying the timecode based on the selected portion and for extracting and editing the corresponding portion of the video,
[1755] A means for outputting the edited video as a file,
[1756] A means for recognizing emotions from the aforementioned text data and video, and adding that information,
[1757] A means of recording the manufacturing process and detecting abnormalities,
[1758] A means of evaluating the worker's condition and suggesting appropriate break times,
[1759] A system that includes this.
[1760] (Claim 2)
[1761] The system according to claim 1, characterized in that a speech recognition engine is used to extract the aforementioned audio portion.
[1762] (Claim 3)
[1763] The system according to claim 1, characterized in that the identification of the timecode includes means for the user to input or select. [Explanation of symbols]
[1764] 10, 210, 310, 410 Data Processing Systems 12 Data Processing Devices 14 Smart Devices 214 Smart Glasses 314 Headset-type terminal 414 Robots< / url:> < / url:> < / url:> < / url:>
Claims
1. A means for receiving a video file containing audio data, A means for extracting the audio portion from the aforementioned video file and converting it into text data, A means for formatting the aforementioned text data into a meeting minutes format, A means for selecting a predetermined portion from the aforementioned minutes, A means for identifying the timecode based on the selected portion and for extracting and editing the corresponding portion of the video, A means for outputting the edited video as a file, A system that includes this.
2. The system according to claim 1, characterized in that a speech recognition engine is used to extract the aforementioned audio portion.
3. The system according to claim 1, characterized in that it includes means for the user to input or select the time code in the identification of the aforementioned time code.
Citation Information
Patent Citations
Persona chatbot control method and system
JP2022180282A