Video provision system and video provision method
The video providing system addresses the issue of low motivation in students with lower skills by enabling personalized practice with model videos, enhancing their chances of being selected during lessons and improving overall lesson experience.
Patent Information
- Application Number
- JP2024201589
- Authority / Receiving Office
- JP · JP
- Patent Type
- Patents
- Current Assignee / Owner
- Filing Date
- 2024-11-19
- Publication Date
- 2025-12-09
- Estimated Expiration
- 2044-11-19
AI Technical Summary
Instructors typically rate students higher for those with relatively high skills, leading to decreased motivation among students with lower skills who are not recognized, as they receive low ratings and are less likely to be selected for 'pick-up' during lessons.
A video providing system and method that allows students to practice lesson content independently by providing model videos before the lesson, enabling customizable playback of these videos alongside their own performances to improve learning efficiency and increase motivation.
Enhances student motivation and satisfaction by allowing personalized practice, increasing the chances of being selected during lessons and improving overall lesson experience.
Smart Images

Figure 0007783387000001_ABST
Abstract
Description
[Technical Field]
[0001] The present invention relates to a video providing system and a video providing method. [Background technology]
[0002] The market for dance and other dance lesson schools is expanding. One of the motivations for students taking lessons at dance lesson schools is the desire to be recognized among other students. For example, for students taking dance lessons, one of the motivations is to be selected by the instructor at the end of the lesson to be "picked up" and dance in front of everyone. [Prior art documents] [Patent documents]
[0003] [Patent Document 1] Japanese Patent Publication No. 2022-136108 [Patent Document 2] Japanese Patent Application Laid-Open No. 2013-539075 Summary of the Invention [Problem to be solved by the invention]
[0004] However, instructors typically rate students higher for students with relatively high skills, while rating students lower for students with relatively low skills. Even if students with relatively low skills are highly motivated to be recognized by their instructors, if they continue to receive low ratings from their instructors, their motivation to participate in lessons will decrease.
[0005] In one aspect, an object of the present invention is to provide a video providing system and a video providing method that can support a user who practices lesson content independently before attending the lesson. [Means for solving the problem]
[0006] In one aspect of the video provision system, a server device has a provision unit that provides a model video uploaded by an instructor terminal identified by an account assigned to the instructor before the start of a dance lesson to a student terminal identified by an account assigned to the student of the lesson, and the student terminal has a setting unit that sets parameters related to the playback state of the model video downloaded from the server device, and a playback control unit that controls the playback state of the model video in a display mode that includes a mode in which the model video and a student video filmed by the student are simultaneously displayed based on the parameter settings. [Effects of the Invention]
[0007] According to one embodiment, a user can be assisted in practicing the content of a lesson on his or her own before taking the lesson. [Brief explanation of the drawings]
[0008] [Figure 1] FIG. 1 is a diagram illustrating an example of the configuration of a video providing system. [Figure 2] FIG. 2 is a diagram illustrating an example of the flow of a dance lesson. [Figure 3] FIG. 3 is a diagram showing an example of a business model for a dance school. [Figure 4] FIG. 4 is a diagram illustrating one aspect of the problem-solving approach. [Figure 5] FIG. 5 is a diagram showing one aspect of another problem-solving approach. [Figure 6] FIG. 6 is a diagram illustrating an example of user story mapping. [Figure 7] FIG. 7 is a block diagram showing an example of the functional configuration of each device. [Figure 8] FIG. 8 is a schematic diagram showing an example of a method for recording a model video. [Figure 9] FIG. 9 is a diagram showing an example of the lesson selection screen. [Figure 10]FIG. 10 is a schematic diagram showing an example of a method for recording student videos. [Figure 11] FIG. 11 is a schematic diagram (1) showing an example of transition of the playback control screen. [Figure 12] FIG. 12 is a schematic diagram (2) showing an example of transition of the playback control screen. [Figure 13] FIG. 13 is a schematic diagram (3) showing an example of transition of the playback control screen. [Figure 14] FIG. 14 is a schematic diagram showing an example of a moving image display mode. [Figure 15] FIG. 15 is a diagram showing an example of the model video. [Figure 16] FIG. 16 is a diagram showing an example of a student video. [Figure 17] FIG. 17 is a diagram showing an example of a user setting of opacity. [Figure 18] FIG. 18 is a diagram showing an example of size change. [Figure 19] FIG. 19 is a diagram showing an example of dance practice procedures and functional relationships. [Figure 20] FIG. 20 is a diagram showing a use case of checking choreography timing. [Figure 21] FIG. 21 is a flowchart showing the procedure of the recording process. [Figure 22] FIG. 22 is a sequence diagram showing the procedure of the reservation process. [Figure 23] FIG. 23 is a flowchart showing the procedure of the video playback process. [Figure 24] FIG. 24 illustrates an example of a hardware configuration. DETAILED DESCRIPTION OF THE INVENTION
[0009] Hereinafter, a description will be given of a mode for carrying out a video providing system and a video providing method according to the present disclosure (hereinafter referred to as an "embodiment") with reference to the accompanying drawings. Note that this embodiment merely shows one example or aspect, and the structure, action, function, properties, characteristics, methods, uses, etc. according to the present disclosure are not limited by such an example.
[0010] <Embodiment 1> <System configuration> Fig. 1 is a diagram showing an example of the configuration of a video providing system. Fig. 1 shows video providing system 1 that provides students with model videos of what an instructor will teach in a lesson before the lesson begins. For example, if video providing system 1 is applied to a dance school, model videos of the dance choreography that the instructor will teach in the lesson are provided to students.
[0011] 1, the video providing system 1 may include a server device 10, instructor terminals 20A-20M, and student terminals 30A-30N. Hereinafter, when it is not necessary to distinguish between the individual instructor terminals 20A-20M, the instructor terminals 20A-20M may be referred to as "instructor terminal 20." Similarly, when it is not necessary to distinguish between the individual student terminals 30A-30N, the student terminals 30A-30N may be referred to as "student terminal 30."
[0012] The server device 10, the instructor terminal 20, and the student terminal 30 may be communicably connected to each other via any network NW. The network NW may be realized by any type of communication network, such as the Internet or a LAN (Local Area Network), whether wired or wireless.
[0013] Server device 10 is an example of a computer that provides ICT (Information and Communication Technology) services related to dance schools. For example, server device 10 may be implemented by a supplier of the above-mentioned ICT services, with dance schools, dance studios, and other businesses that provide lessons as a service as customers and students who take the lessons as end users.
[0014] In one embodiment, the server device 10 can provide the video providing function as a cloud service by executing a platform as a service (PaaS) type middleware or a software as a service (SaaS) type application.
[0015] Such an ICT service may be packaged with various functions, such as, for example, a reservation function for accepting lesson reservations and a video provision function for providing the above-mentioned example video before the start of the lesson.
[0016] The instructor terminal 20 is a terminal device used by an instructor belonging to a dance school, etc. The student terminal 30 is a terminal device used by a student participating in a lesson offered by a dance school, etc. The instructor terminal 20 and the student terminal 30 are examples of video playback devices.
[0017] The instructor terminal 20 and the student terminal 30 may be realized by any computer, such as a smart device such as a smartphone, a tablet terminal, or a wearable terminal, or a personal computer.
[0018] For example, applications for dancers that provide various functions such as music editing, video playback, and photography may be installed on the instructor terminal 20 and the student terminal 30. Hereinafter, applications for dancers may be referred to as "APPs for dancers."
[0019] In one aspect, the content that the instructor will teach in a lesson, for example, a model video of a dance choreography, may be uploaded from the instructor terminal 20 to the server device 10. In another aspect, the model video uploaded from the instructor terminal 20 to the server device 10 may be downloaded from the server device 10 to the student terminal 30.
[0020] Hereinafter, as an example of a use case, an example in which the instructor terminal 20 and the student terminal 30 are realized by smart devices such as smartphones will be described.
[0021] Although the above-described ICT services are provided as cloud services in the above example, the present invention is not limited to this. For example, the above-described ICT services may be provided on-premise.
[0022] <Pickup> FIG. 2 is a diagram illustrating an example of the flow of a dance lesson. FIG. 2 shows just one example of the menu that will be performed on the day of the lesson, listed in chronological order. In the example shown in FIG. 2, the dance lesson will be performed in the following order: "Stretching" and "Isolation," "Learn the choreography," "Dance along to music," "Pick-up photo shoot," and "SNS post." SNS is an abbreviation for "Social Networking Service."
[0023] "Pick-up" refers to the instructor selecting a student from the students taking the lesson at the end of the lesson to dance with the instructor in front of everyone. The dance between the selected student and the instructor may be filmed and posted on social media.
[0024] In this way, "Pick Up" is a simulated experience for students to stand on the same stage as a teacher they admire and respect, which is one of the motivations for students to take dance lessons.
[0025] <One aspect of the issue> However, students with relatively high skills are usually selected for pickup, while students with relatively low skills are unlikely to be selected. Even if such students have a high motivation to be selected for pickup, if they continue to not be selected, their motivation to participate in dance lessons will decrease.
[0026] Fig. 3 is a diagram showing an example of a business model for a dance school. Fig. 3 shows an example of a business model carried out by a conventional dance school. As shown in Fig. 3, the dance school business model may include the dance school, instructors, and students as stakeholders.
[0027] On the one hand, students make reservations for lessons held by the dance school and pay the dance school for the lessons they take. On the other hand, dance schools provide instructors with space to give offline lessons to students and pay the instructors for the lessons they give to students. In this way, a business model has been established in which instructors affiliated with dance schools give offline lessons to students recruited by the dance school in studios provided by the dance school.
[0028] In this type of business model, from the students' perspective, the following factors 1) to 4) are factors that reduce students' motivation to participate in dance lessons. 1) Because the content of the lesson is not known in advance, you cannot know whether it is something you want to take until you actually take the lesson. 2) Even if the content is something I want to take, it is difficult to remember the choreography during the lesson. 3) I feel embarrassed when the teacher and other students see me not doing well, so I have no choice but to sit at the back of the class. 4) As a result of 1) to 3) above, you are not selected for pickup.
[0029] Factors 1) to 4) above prevent students from fully enjoying their lessons, resulting in low student satisfaction and a decrease in the added value of dance lessons.
[0030] <One aspect of the problem-solving approach> Therefore, in the video providing system 1 according to this embodiment, before the lesson begins, the instructor provides the student terminal 30 with a sample video of the content that will be taught in the lesson, such as a dance choreography, thereby enabling the student to prepare for and learn ahead of the lesson content that has not yet been learned.
[0031] Figure 4 is a diagram showing one aspect of the problem-solving approach. As shown in Figure 4, the content that the instructor will teach in a lesson, for example, dance choreography, is filmed as a model video on the instructor terminal 20 (step S1). The model video filmed in this way is uploaded from the instructor terminal 20 to the server device 10 (step S2).
[0032] Furthermore, the model video uploaded from the instructor terminal 20 to the server device 10 is downloaded from the server device 10 to the student terminal 30 before the lesson starts (step S3). Then, the student terminal 30 plays the model video downloaded from the server device 10 (step S4).
[0033] In this way, by providing a sample video before the lesson begins, it is possible to prepare for and learn ahead of the content of the actual lesson.
[0034] <An aspect of other issues that can be independent> Here, when students play back student videos, including the model video mentioned above, to prepare for lessons, conventional technologies such as media players make it difficult for users to customize the playback state of the video according to their purpose, such as for personal practice, and there is room for improvement.
[0035] For example, in the case of dancing, if different people have different difficulties in dance choreography, the number and range of difficult parts will also differ, and furthermore, the playback speed of the video at which they check the dance choreography will differ from person to person. Even if you try to customize the settings of the playback functions of the above media player to suit these playback conditions for personal practice, the above media player may lack the functions and settings desired for personal practice.
[0036] <An aspect of other problem-solving approaches that can be independent> Therefore, as part of the above-mentioned video playback function, the APP for dancers in this embodiment has a playback control function that controls the playback state of the model video in a display mode that displays student videos and model videos simultaneously based on the setting of parameters related to the playback state of the model video.
[0037] The "parameters relating to the playback state" referred to here may include, by way of example only, playback speed, playback position (playback time), loop, and other parameters that define the playback state.
[0038] Fig. 5 is a diagram showing one aspect of another problem-solving approach. Fig. 5 shows, as an example only, a playback control screen 300 displayed on the display unit 32 of the student terminal 30 as an example of a user interface that provides the above-mentioned playback control function.
[0039] As shown in FIG. 5, the playback control screen 300 may include a video display area 310 in which the video to be played back is displayed, and a playback status setting area 320 in which parameters relating to the playback status of the model video are set.
[0040] Of these, the student video and the model video can be played simultaneously in the video display area 310. "Simultaneous playback" here may include "overlay display," in which the student video and the model video are displayed superimposed on each other, and "dual-screen display," in which the student video and the model video are displayed side by side. These display modes, such as "overlay display" and "dual-screen display," make it possible to compare the two videos, the student video and the model video.
[0041] The playback state setting area 320 may include, by way of example only, a tempo change tab 321 for changing the playback speed of the video, a loop setting tab 322 for accepting the specification of a loop within the playback time of the video, and a marker setting tab 323 for accepting the specification of a playback position within the video.
[0042] The tempo change tab 321, loop setting tab 322, and marker setting tab 323 make it possible to call up the playback speed change function, loop function, and marker function.
[0043] For example, even if the number and range of difficult parts in a dance choreography differs from person to person, the marker function can be called to play back each difficult part at a specific cue, or the loop function can be called to play back the difficult part repeatedly. Also, even if the playback speed of the video used to check the dance choreography differs from person to person, the playback speed change function can be called to play back at a speed that allows the user to check the difficult parts.
[0044] Therefore, with the video playback function, the video playback state can be easily customized to play back the video. Therefore, by using the video playback function for preparation or advance learning of the content of the actual lesson, the learning efficiency of advance learning or advance learning can be improved.
[0045] As an example, the video playback feature can be used to help users practice the content of a lesson before taking it, which can increase the chances of being featured in a dance lesson, for example.
[0046] For example, as shown in FIG. 4, the factors of decreased motivation 1) to 4) shown in FIG. 3 can be overcome. 1A) By sharing lesson content in advance, students can take the lessons they want, when they want. 2A) Using the video playback function mentioned above, students can prepare for lessons to a certain level, and can also repeatedly practice weaker parts at their own pace. 3A) Because students can prepare for lessons as individual practice, or self-study, they will not be hesitant to make mistakes in choreography, and they will be able to prepare without losing their enthusiasm. As a result, they will be able to participate in lessons with confidence without worrying about what others think, and will be more likely to be selected for pick-up. 4A) Having fun and improving your dance skills will make you want to continue your dance lessons.
[0047] As a result of 1A) to 4A) above, student satisfaction will increase and the added value of dance lessons will be improved, thereby realizing the user story mapping shown in Figure 6.
[0048] Figure 6 is a diagram showing an example of user story mapping. As shown in Figure 6, traditionally, students with relatively low skills tend to fall into a cycle of booking a lesson, taking the lesson, looking at the pick-ups, and booking the next lesson. This cycle repeats itself, and only students with relatively high skills continue to be selected for pick-ups, which diminishes the expectations of other students who will be selected for pick-ups. As a result, the motivation of students who are rarely selected for pick-ups to participate in dance lessons continues to decline.
[0049] On the other hand, with the video provision function according to this embodiment, students can increase their chances of being selected as a pick-up by reserving a lesson and studying for it before attending, creating a cycle in which students are highly motivated to participate in dance lessons and book the next lesson. This increases the expectation of being selected as a pick-up not only for students with relatively high skills, but for all students who participate in lessons, and as a result, increases their motivation to participate in dance lessons.
[0050] Although the above example illustrates a case where the two functions, the video provision function and the video playback function, are used in combination, it is also possible to provide only one of the video provision function and the video playback function. For example, the video playback function can be applied to use cases other than advance learning or preparation for lessons. In other words, the model video does not necessarily have to be a video of a dance choreography performed by an instructor at a lesson school, and it goes without saying that the video playback function can be used to play any model video available on the Internet.
[0051] In addition, although dance videos of dance choreography have been given as examples of the model video and the student video, the present invention is not limited to this. For example, in addition to dance videos, baseball, golf, and other sports motions may be filmed as model videos and student videos.
[0052] <Configuration of each device> Next, the configuration of each device included in the video providing system 1 according to this embodiment will be described. Fig. 7 is a block diagram showing an example of the functional configuration of each device. Fig. 7 schematically shows blocks related to the functions of the server device 10, the instructor terminal 20, and the student terminal 30. Note that Fig. 7 only shows an excerpt of functional units related to the above-mentioned ICT services and the above-mentioned video playback function, and each device may be provided with functional units other than those shown.
[0053] <Instructor terminal configuration> First, an example of the functional configuration of the instructor terminal 20 according to this embodiment will be described. As shown in Fig. 7, the instructor terminal 20 has an input unit 21, a display unit 22, an imaging unit 23, a recording unit 24, an output control unit 25, and a request unit 26. Naturally, this does not preclude the instructor terminal 20 from being provided with functional units other than those shown in Fig. 7, such as a communication control unit that provides a communication interface or a memory unit realized by storage.
[0054] The input unit 21 has a function of receiving various instruction inputs. For example, the input unit 21 may be realized by an OS (Operating System) or an application running on the instructor terminal 20, such as a GUI (Graphical User Interface) provided by an APP for dancers.
[0055] The display unit 22 has a function of displaying various types of information. In one embodiment, the display unit 22 may be realized by a liquid crystal display, an organic EL (Electro Luminescence) display, or the like.
[0056] The input unit 21 and the display unit 22 can be integrated as a display input unit realized by a touch panel or the like.
[0057] The imaging unit 23 has an imaging function for capturing images. The "image" referred to here may be either a still image or a video. For example, if the instructor terminal 20 is realized by a smart device, the imaging unit 23 may be realized by a camera unit such as a front camera arranged in the same direction as the screen surface of the display unit 22 or a rear camera arranged behind the screen of the display unit 22.
[0058] The recording unit 24 has a recording function for recording images captured by the imaging unit 23. In one embodiment, the recording unit 24 can record the content that the instructor teaches in a lesson, for example, a model video of a dance choreography.
[0059] For example, the recording function may be implemented as one of the modules packaged in the dancer APP. For example, the recording function may be activated by accepting an operation of a video recording button that accepts a recording request from a main menu screen provided by the dancer APP.
[0060] When the recording function is activated in this way, the main menu screen transitions to a music selection screen for selecting a music piece to embed in the model video. For example, the music selection screen may include music files purchased for download using the instructor's account as music options. Other options may include music files provided by a streaming service to which the instructor's account is subscribed, or music files generated from a project file edited using the music editing function. Then, when a music piece to embed in the model video is selected on the music selection screen via the input unit 21, the music selection screen transitions to a recording screen.
[0061] Fig. 8 is a schematic diagram showing an example of a method for recording a model video. Fig. 8 shows a schematic diagram from left to right of the transition of a recording screen 400 displayed on the display unit 22 of the instructor terminal 20 according to an operating procedure. As shown in Fig. 8, the recording screen 400 may include a live video display area 410 and a setting window 420.
[0062] Of these, the live video display area 410 displays live video captured in real time by the imaging unit 23. The setting window 420 is a window that accepts the setting of the playback time at which recording should start within the playback time of the music to be embedded in the model video. For example, the setting window 420 may be displayed superimposed on the live video display area 410.
[0063] This setting window 420 may include a slider bar (seek bar) 421, a slider 421A, a play button 422, and a record button 423. For example, the slider bar 421 corresponds to the range of playback time of the song selected on the song selection screen, and the slider 421A indicates the playback position, i.e., the playback time. This slider 421A can be moved by a drag operation, or by pressing the play button 422 to play the song.
[0064] By setting such slider 421A to the position of the playback time at which the user wishes to start recording and then pressing record button 423, a record start button 430 is displayed on the recording screen 400. Note that the display of record start button 430 may be linked to the hiding of setting window 420.
[0065] Here, when the recording start button 430 is operated, recording of live video captured in real time by the imaging unit 23 begins. At this time, recording of the live video can also be started after a countdown display of a predetermined time, for example, 3 seconds or 5 seconds. When recording starts in this way, the recording start button 430 switches to the recording stop button 440.
[0066] The recording unit 24 continues the following recording process until the recording ends when the playback time of the song ends or when the recording is stopped by pressing the recording stop button 440. For example, the recording unit 24 sets the time code (HH:MM:SS:FF) of the playback time of the song being played in the video of the nth frame captured by the imaging unit 23. Then, the recording unit 24 records the video with the set time code. As a result, the time code of the song is embedded in each frame of the video included in the model moving image.
[0067] Thereafter, when recording ends when the playback of the music ends or when recording is stopped by pressing the recording stop button 440, the recording unit 24 saves the video captured in the section from the playback time corresponding to the start of recording to the playback time corresponding to the end of playback of the music or the stop of recording as a model video 40 in a storage device or the like (not shown).
[0068] The model video recorded in this manner may be uploaded from the instructor terminal 20 to the server device 10. At this time, the model video uploaded to the server device 10 is registered in the model video DB 12 in a state where it is associated with the identification information of the instructor who created it and the identification information of the lesson.
[0069] The output control unit 25 has a function to control the output of various types of information. The term "output" here may include display output and audio output. In one aspect, the output control unit 25 can display on the display unit 22 a student video viewing screen including GUI components that accept instruction inputs requesting viewing of student videos uploaded from the student terminals 30 to the server device 10 and input of comments on the student videos. For example, viewing of student videos may be achieved by accessing a link embedded by the server device 10 that contains the student videos and a media player for playing the student videos. Alternatively, viewing of student videos may be achieved by playing student videos downloaded from the server device 10 using a video playback function included in the dancer app. Input of comments on student videos may be achieved using GUI elements such as text boxes.
[0070] The request unit 26 has a function of sending a request to the server device 10. In one aspect, when the request unit 26 receives input of a comment on a student video via the student video viewing screen, the request unit 26 can request the server device 10 to register the received comment. The comment requested to be registered from the instructor terminal 20 to the server device 10 in this way is registered in the comment DB 14 described below in association with the identification information of the instructor who is the source of the reply and the identification information of the student who is the recipient of the reply.
[0071] <Server device configuration> Next, an example of the functional configuration of the server device 10 according to this embodiment will be described. As shown in Fig. 7, the server device 10 has a program DB (DataBase) 11, a model video DB 12, a student video DB 13, a comment DB 14, a first providing unit 15, and a second providing unit 26. Naturally, this does not preclude the server device 10 from being provided with functional units other than those shown in Fig. 7, such as a communication control unit that provides a communication interface or a memory unit realized by storage.
[0072] The program DB 11 is a database that stores lesson programs. A "lesson program" here refers to a program in which a schedule of multiple lessons is determined. In one embodiment, the program DB 11 may be data in which identification information of lessons offered in each time period is associated with each time period.
[0073] The model video DB 12 is a database that stores a collection of model videos. In one embodiment, the model videos stored in the model video DB 12 may be associated with meta information such as identification information of the instructor who created the video and identification information of the lesson.
[0074] Student video DB 13 is a database that stores a collection of student videos. In one embodiment, the student videos stored in student video DB 13 may be associated with meta information such as account information of the student who created the video, identification information of the lesson in which the student is participating, and identification information of the instructor in charge of the lesson.
[0075] The comment DB 14 is a database that stores a collection of comments. In one embodiment, the comments stored in the comment DB 14 may be associated with meta-information such as the identification information of the instructor who sent the reply and the identification information of the student who sent the reply.
[0076] The first providing unit 15 has a function of providing an ICT service to the student terminal 30. As shown in Fig. 7, the first providing unit 15 has a reservation unit 15A, a video providing unit 15B, and a calculation unit 15C.
[0077] The reservation unit 15A has a reservation function for accepting reservations for lessons. In one embodiment, when the reservation unit 15A receives a request to view a lesson program from the student terminal 30, it reads out the lesson program for the date, time, and time period specified in the request from the program DB 11. The reservation unit 15A then provides the student terminal 30 with a lesson selection screen that accepts an instruction input requesting viewing of a sample video for each lesson included in the lesson program and an instruction input for the lesson that the student requests to take.
[0078] FIG. 9 is a diagram showing an example of a lesson selection screen 500. As shown in FIG. 9, the lesson selection screen includes day-of-week selection buttons 511-517 and a lesson display field 520. These day-of-week selection buttons 511-517 correspond to the days of the week from Monday to Sunday. While the example shown here shows the days of the week displayed only as an example, other calendar information such as the year, month, and date may also be displayed along with the days of the week. The lesson display field 520 displays lessons held on the day of the week corresponding to the currently selected day-of-week selection button among the day-of-week selection buttons 511-517. For example, in the example shown in FIG. 9, the lesson display field 520 displays excerpts of lesson information 530 starting at 1:00 PM and lesson information 540 starting at 3:00 PM, from among the lessons held on Wednesday corresponding to the day-of-week selection button 514.
[0079] Of these, lesson information 530 includes a model video display area 531 and a lesson detail information display area 532. Furthermore, model video display area 531 includes a play button 531A and a download button 531B. Playback and downloading of the model video using the play button 531A and the download button 531B may be restricted or prohibited before a lesson is reserved. For example, playback and downloading of the model video may be completely prohibited until a lesson is reserved, or playback of only a portion of the model video may be permitted. The permitted playback section may be specified from instructor terminal 20, or may be automatically set to a specific section of the music played in the model video, such as the chorus. However, restricting or prohibiting playback and downloading before a lesson is reserved is merely an example; playback and downloading of the entire model video may be permitted before a lesson is reserved.
[0080] After a lesson is booked, if the operation of the play button 531A is accepted, the model video can be played on the media player incorporated in the lesson information 531. Furthermore, if the operation of the download button 531B is accepted, the model video is provided to the student terminal 30 by the video providing unit 15B, which will be described later. As a result, the model video is downloaded to the student terminal 30, and the above-mentioned video playback function can be used.
[0081] The lesson detail information display area 532 displays detailed information such as the time period when the lesson is held, the instructor's name, the lesson genre, and the lesson name, and also displays a reservation acceptance button 532A for accepting reservations for the lesson. For example, when the reservation acceptance button 532A is operated, the reservation unit 15A registers account information, such as the student's identification information, assigned to the student who is the user of the student terminal 30 in the participation slot for the lesson. Note that the lesson information 540 also has the same function, even though the target lessons are different.
[0082] The video providing unit 15B has a function of providing model videos. As just one example, when the video providing unit 15B receives a request to download a model video, for example, an operation of the download button included in the lesson selection screen 500 shown in Figure 9, the video providing unit 15B provides the model video of the lesson specified in the request from the model videos stored in the model video DB 12 to the student terminal 30.
[0083] The calculation unit 15C has a function of calculating an evaluation index of the dance between the model video and the student video. An example of such an evaluation index is the dance synchronization rate. A higher synchronization rate indicates a greater match between the instructor's movements in the model video and the student's movements in the student video. The "movement" referred to here may refer, for example, to a time-series change in posture corresponding to the dance choreography. In one embodiment, upon receiving a request to calculate the synchronization rate from the student terminal 30, the calculation unit 15C reads the model video of the lesson specified in the request from the model video DB 12 and the student video of the lesson specified in the request from the student video DB 13. The calculation unit 15C then calculates the synchronization rate of the dance of the student video relative to the model video. For example, the synchronization rate may be calculated based on the degree of agreement of the angles of specific joints, such as the arms, elbows, wrists, feet, knees, and ankles, by comparing frames of the model video and the student video. To calculate such a synchronization rate, a machine learning model framework can be used that realizes object detection, which detects the position of the bounding box of an object in an image for each frame of the model video and each frame of the student video and performs object classification, skeletal detection, which detects the position of each joint from an image of a bounding box corresponding to an object labeled as "person" as a result of the classification, and scoring, which calculates the synchronization rate from the degree of agreement of the joint angles. The synchronization rate calculated in this way is output as a response to the student terminal 30.
[0084] The second providing unit 16 has a function of providing ICT services to the instructor terminal 20. In one embodiment, when a student video is uploaded from the student terminal 30, the second providing unit 16 provides a student video viewing screen including GUI components that accept an input of an instruction requesting viewing of the student video and an input of a comment on the student video to the instructor terminal 20 used by the instructor in charge of the lesson corresponding to the student video.
[0085] <Student device configuration> Next, an example of the functional configuration of the student terminal 30 according to this embodiment will be described. As shown in Fig. 7, the student terminal 30 has an input unit 31, a display unit 32, an imaging unit 33, a student video DB 34, a recording unit 35, a request unit 36, a UL (Upload) unit 37, a setting unit 38, and an output control unit 39. Naturally, functional units other than those shown in Fig. 7, such as a communication control unit that provides a communication interface or a memory unit realized by storage, may also be provided.
[0086] The input unit 31 has a function of receiving various instruction inputs. For example, the input unit 31 may be realized by an OS or an application running on the student terminal 30, such as a GUI provided by an APP for dancers.
[0087] The display unit 32 has a function of displaying various types of information. In one embodiment, the display unit 32 may be realized by a liquid crystal display, an organic EL display, or the like.
[0088] The input unit 31 and the display unit 32 can be integrated as a display input unit realized by a touch panel or the like.
[0089] The imaging unit 33 has an imaging function for capturing an image. The "image" referred to here may be either a still image or a video. For example, if the student terminal 30 is realized by a smart device, the imaging unit 33 may be realized by a camera unit such as a front camera arranged in the same direction as the screen surface of the display unit 32 or a rear camera arranged behind the screen of the display unit 32.
[0090] The student video DB 34 is a database that stores a collection of student videos. In one embodiment, the student videos stored in the student video DB 34 may be associated with meta information such as account information of the student who created the video, identification information of the lesson in which the student is participating, and identification information of the instructor in charge of the lesson.
[0091] The recording unit 35 has a recording function for recording images captured by the imaging unit 33. In one embodiment, the recording unit 35 can record a student video of a student dancing while playing the video using the video player function.
[0092] For example, the video player function may be implemented as one of the modules packaged in the dancer app. For example, the video player function may be activated by accepting an operation of a video player button that plays a video from a main menu screen provided by the dancer app.
[0093] When the video player function is activated in this way, the main menu screen transitions to a video selection screen for selecting a video to be played. For example, the video selection screen may display a list of videos, and the list of videos may include a model video as an option. When the model video is selected on the video selection screen via input unit 31, the video selection screen transitions to a recording screen. Note that the main menu screen may transition to a music selection screen for selecting a song to be embedded as background music (BGM) for the student video, so that only the music of the model video is played when the student video is recorded.
[0094] Fig. 10 is a schematic diagram showing an example of a method for recording student videos. Fig. 10 shows a schematic diagram from left to right of the transition of a recording screen 600 displayed on the display unit 32 of the student terminal 30 according to an operating procedure. As shown in Fig. 10, the recording screen 600 may include a video display area 610 and a settings window 620.
[0095] Of these, the video display area 610 displays live video captured in real time by the imaging unit 33. As will be described in detail later with reference to FIG. 14, the video display area 610 may display live video or a model video, or simultaneously display live video and a model video, in any of the first to fourth display modes described later. The setting window 620 is a window that accepts setting of the playback time at which recording should start within the playback time of the model video. For example, the setting window 620 may be displayed superimposed on the video display area 610.
[0096] This setting window 620 may include a slider bar (seek bar) 621, a slider 621A, a play button 622, and a record button 623. For example, the slider bar 621 corresponds to the range of playback time of the model video selected on the video selection screen, and the slider 621A indicates the playback position, i.e., the playback time. This slider 621A can be moved by a drag operation, or by pressing the play button 622 to play back the model video.
[0097] When the slider 621A is set to the position of the playback time at which the user wishes to start recording and then the record button 623 is pressed, a record start button 630 is displayed on the recording screen 600. The display of the record start button 630 may be linked to the hiding of the setting window 620.
[0098] Here, when the recording start button 630 is operated, recording of live video captured in real time by the imaging unit 33 begins. At this time, recording of the live video can also be started after a countdown display of a predetermined time, for example, 3 seconds or 5 seconds. When recording starts in this way, the recording start button 630 switches to the recording stop button 640.
[0099] The recording unit 35 continues the following recording process until recording ends when the playback time of the model video ends or when recording is stopped by pressing the recording stop button 640. For example, the recording unit 35 sets the time code (HH:MM:SS:FF) of the playback time of the model video being played back in the video of the nth frame captured by the imaging unit 33. The recording unit 35 then records the video with the set time code. As a result, the time code of the model video, and ultimately the time code of the music embedded in the model video, are embedded in each frame of the video included in the student video. This allows the playback times of the model video and the student video to be identified by the time code of the same music, allowing the model video and the student video to be played back simultaneously, making it possible to synchronize the model video and the student video by time code.
[0100] Thereafter, when recording ends when playback of the model video ends or when recording is stopped by pressing recording stop button 640, recording unit 35 saves student video 60 captured in the section from the playback time corresponding to the start of recording to the playback time corresponding to the end of music playback or recording stop in student video DB 34. At this time, the student video may be associated with meta information such as account information of the student who created it, identification information of the lesson corresponding to the model video played by the video player function described above when recording the student video, and identification information of the instructor in charge of the lesson.
[0101] Here, an example has been given in which the instructor terminal 20 has a video recording function for recording live video from the imaging unit 23 while playing back music, while the student terminal 30 has a function for recording live video from the imaging unit 33 while playing back a video such as a model video using a video player function, but this is not limiting. For example, the instructor terminal 20 may have a function for recording live video from the imaging unit 33 while playing back a video using the above-mentioned video player function, or the student terminal 30 may have the above-mentioned video recording function.
[0102] The request unit 36 has a function of transmitting a request to the server device 10. In one aspect, when the request unit 36 receives an instruction to view the synchronization rate via the input unit 31, the request unit 36 transmits a request to view the synchronization rate, including identification information of the student video and identification information of the model video specified in the viewing instruction, to the server device 10. In response to such a viewing request, the calculation result of the synchronization rate by the calculation unit 15C of the server device 10 may be displayed on the display unit 32.
[0103] The UL unit 37 has a function of uploading data to the server device 10. In one embodiment, when the UL unit 37 receives an instruction to upload a student video to the server device 10 via the input unit 31, it uploads the meta information of the student video along with the student video to the server device 10. Such meta information may include identification information of the student video, identification information of the lesson corresponding to the model video played by the video player function described above when the student video was recorded, and identification information of the instructor in charge of the lesson. The student video uploaded in this manner is stored in the student video DB 13.
[0104] The setting unit 38 has a function of setting parameters related to the playback state of the video. In one aspect, when a parameter related to the playback state of the model video is designated via the playback control screen 300, the setting unit 38 sets the parameter in the playback control unit 39B described below.
[0105] The output control unit 39 has a function of controlling the output of various types of information. The "output" referred to here may include display output and audio output. As shown in Fig. 7, the output control unit 39 has a GUI control unit 39A and a playback control unit 39B.
[0106] GUI control unit 39A has a function of executing display control of the GUI screen displayed on display unit 32. In one aspect, when GUI control unit 39A receives an instruction to play a model video, an instruction to play a student video, or an instruction to play a model video and a student video via input unit 31, GUI control unit 39A causes display unit 32 to display a playback control screen 300 shown in FIG.
[0107] Fig. 11 is a schematic diagram (1) showing an example of transitions of the playback control screen 300. Fig. 11 shows a schematic diagram from left to right of how the playback control screen 300 displayed on the display unit 32 of the student terminal 30 transitions in accordance with the operating procedure. As shown in Fig. 11, the playback control screen 300 may include a thumbnail bar display area 330 and a controller display area 340 in addition to the video display area 310 and playback status setting area 320 previously described with reference to Fig. 3.
[0108] A thumbnail bar 331 in which thumbnail images of the model video are arranged in the horizontal direction, for example, left to right or row direction, in order of playback time, is displayed as a preview of the model video in the thumbnail bar display area 330. By sliding a slider 331A on such thumbnail bar 331, it is possible to specify the playback position of the model video while visually checking the playback content of the model video corresponding to the playback position.
[0109] The controller display area 340 may include a first rewind button 341 , a second rewind button 342 , a play / pause button 343 , a second fast forward button 344 , and a second fast forward button 345 .
[0110] The first rewind button 341 and the second rewind button 342 are both buttons that rewind the playback position of the video, but have different rewind periods. For example, in the example shown in FIG. 11 , the rewind period per tap of the first rewind button 341 is set to 5 seconds, and the rewind period per tap of the second rewind button 342 is set to 0.3 seconds. When the first rewind button 341 is tapped, the playback position is rewound by 5 seconds, while when the second rewind button 342 is tapped, the playback position is rewound by 0.3 seconds. The rewind periods of the first rewind button 341 and the second rewind button 342 are merely examples, and the user can set any period.
[0111] Play / pause button 343 is a button for instructing playback or pause of a video. For example, while a video is being played, play / pause button 343 is displayed as an icon corresponding to pause, while while the video is stopped, play / pause button 343 is displayed as an icon corresponding to playback.
[0112] The second fast-forward button 344 and the first fast-forward button 345 are both buttons for fast-forwarding the playback position of the video, but the fast-forward durations are different. For example, in the example shown in FIG. 11 , the fast-forward duration per tap of the first fast-forward button 345 is set to 5 seconds, and the fast-forward duration per tap of the second fast-forward button 344 is set to 0.3 seconds. When the first fast-forward button 345 is tapped, the playback position is fast-forwarded for 5 seconds, while when the second fast-forward button 344 is tapped, the playback position is fast-forwarded for 0.3 seconds. The fast-forward durations of the first fast-forward button 345 and the second fast-forward button 344 are merely examples, and any duration can be set by the user.
[0113] The reason why the GUI components for rewinding and fast-forwarding are arranged in two types in this way is because the intended use by users is also divided into two types. That is, when a user wants to roughly rewind or roughly fast-forward, for example, when a user wants to call up a specific scene around the playback position during playback, the first rewind button 341 and the first fast-forward button 345 are used. On the other hand, when a user wants to rewind or fast-forward in fine increments, for example, when a user wants to closely observe the dance by frame-by-frame while the playback is stopped, the second rewind button 342 and the second fast-forward button 344 are used.
[0114] As one aspect, on the playback control screen 300, the marker function can be invoked by operating the marker setting tab 323. For example, when the marker setting tab 323 is tapped, the display in the playback status setting area 320 transitions from the tab display of the tempo change tab 321, the loop setting tab 322, and the marker setting tab 323 to a button display for setting markers. That is, the playback status setting area 320 displays marker buttons 321A to 321D, a back button 321E, and a trash can button 321F.
[0115] These marker buttons 321A to 321D are all buttons that instruct playback from the playback position where a marker has been set. Here, Fig. 11 shows, as just one example, an example in which a marker is set in marker button 321C under a situation in which no marker has been set in any of marker buttons 321A to 321D. For example, the playback position at which the user wants to set a marker is specified by moving slider 331A left or right on thumbnail bar 331. Then, by tapping marker button 321C after specifying the playback position, the marker of marker button 321C is set at the playback position corresponding to the position of slider 331A. In order to distinguish marker button 321C, which has a marker already set, from marker buttons 321A, 321B, and 321D, which have not yet been set, marker button 321C is displayed in a different form from marker buttons 321A, 321B, and 321D, for example, in a different display color (hatched in Figure 11).
[0116] The back button 321E is a button for returning the display of the playback status setting area 320 to the tab display of the tempo change tab 321, the loop setting tab 322, and the marker setting tab 323. The trash can button 321F is a button for deleting marker settings. For example, if a marker button to which a marker has already been set is tapped after the trash can button 321F is tapped, the marker set in that marker button is deleted.
[0117] As another aspect, on the playback control screen 300, a loop function can be called up by operating the loop setting tab 322. Fig. 12 is a schematic diagram (2) showing an example of transitions of the playback control screen 300. Fig. 12 also shows a schematic diagram from left to right of how the playback control screen 300 displayed on the display unit 32 of the student terminal 30 transitions in accordance with the operating procedure.
[0118] 12, when loop setting tab 322 is tapped, the display in playback status setting area 320 transitions from the tab display of tempo change tab 321, loop setting tab 322, and marker setting tab 323 to a display of buttons for loop setting. That is, playback status setting area 320 displays start position designation button 322A, loop switch 322B, end position designation button 322C, back button 322D, and trash can button 322E.
[0119] The start position designation button 322A is a button for designating the playback position at which loop playback starts. The end position designation button 322C is a button for designating the playback position at which loop playback ends. The loop switch 322B is a button for switching loop playback ON or OFF.
[0120] For example, by moving slider 331A left or right on thumbnail bar 331, the user specifies the playback position at which they want to set the start or end of loop playback. In the example shown in FIG. 12 , when start position specification button 322A is tapped, the loop playback start position pointer is set to the playback position specified on thumbnail bar 331, i.e., the position marked "A." Furthermore, when end position specification button 322C is tapped, the loop playback end position pointer is set to the playback position specified on thumbnail bar 331, i.e., the position marked "B." After these start position pointer and end position pointer are set, when loop switch 322B is tapped, loop playback is set to the ON state. In this case, loop playback begins for the section between the start position pointer and the end position pointer, i.e., the hatched section on thumbnail bar 331 shown in FIG. 12. In this way, to notify users that loop playback has been switched ON, loop switch 322B can be highlighted when loop playback is ON.
[0121] The back button 322D is a button that returns the display in the playback status setting area 320 to the tab display of the tempo change tab 321, the loop setting tab 322, and the marker setting tab 323. The trash can button 322E is a button that deletes the loop playback setting. For example, if the trash can button 322E is tapped and then the loop switch 322B that has loop playback set is tapped, the loop playback set in that loop switch 322B is deleted.
[0122] As a further aspect, on the playback control screen 300, a tempo change function can be invoked by operating the tempo change tab 321. Fig. 13 is a schematic diagram (3) showing an example of transitions in the playback control screen 300. Fig. 13 also shows a schematic diagram from left to right of how the playback control screen 300 displayed on the display unit 32 of the student terminal 30 transitions in accordance with the operating procedure.
[0123] 13, when tempo change tab 321 is tapped, the display in playback status setting area 320 transitions from the tab display of tempo change tab 321, loop setting tab 322, and marker setting tab 323 to the display of GUI components for tempo change. That is, playback status setting area 320 displays slider bar 321A, slider 321B, initialize button 321C, and back button 321E.
[0124] For example, the user can specify the desired playback speed by moving slider 331A left or right on slider bar 321A, which corresponds to a range from a minimum of 0.20 times to a maximum of 2.00 times. Furthermore, when initialization button 321C is tapped, the playback speed is initialized to 1.00 times. Furthermore, when back button 322D is tapped, the display in playback status setting area 320 returns to the tab display of tempo change tab 321, loop setting tab 322, and marker setting tab 323. While an example in which a playback speed multiplier is specified has been given here, the playback speed may also be specified in BPM (Beats Per Minute).
[0125] As a further aspect, playback control screen 300 allows switching between multiple display modes to display videos in video display area 310. Merely by way of example, such display modes may include a first mode that displays a model video, a second mode that displays an overlay of the model video and the student video, a third mode that displays the model video and the student video side by side, and a fourth mode that displays the student video.
[0126] Fig. 14 is a schematic diagram showing an example of a moving image display mode, which shows, in order from the upper left to the upper right, the lower left, and the lower right, examples of moving image display corresponding to the first mode, the second mode, the third mode, and the fourth mode, respectively.
[0127] In these first to fourth modes, it is possible to freely switch between any of the modes. Here, an example is shown in which in all modes, the original video is played back in a state where it is flipped horizontally, for example, left and right.
[0128] FIG. 15 is a diagram showing an example of a model video. FIG. 16 is a diagram showing an example of a student video. Hereinafter, when a horizontally flipped video is being played in the video display area 310, the word "mirror" is displayed in a mirror image in the upper right corner of the video display area 310 to clearly indicate that the video is being flipped. As shown in FIGS. 15 and 16, the model video 40 and student video 60 displayed in the video display area 310 are flipped symmetrically when the flip button 311 is tapped. Hereinafter, to distinguish between the labels of the original model video and the model video whose screen is flipped, the model video whose screen is flipped may be referred to as the "flipped model image." For the same purpose, the student video whose screen is flipped may be referred to as the "flipped student image." As a result, the flipped model video 40A or the flipped student video 60A is displayed in the video display area 310. The advantage of flipping the original model video and the original student video in this way is that it prevents students from learning the dance choreography with the original appearance unchanged, resulting in a mirror image of the choreography with the left and right sides reversed. If flip button 311 is tapped again, flipped model video 40A and flipped student video 60A will revert to original model video 40 and original student video 60. In this way, by operating flip button 311, it is possible to freely switch between the display of original model video 40 and original student video 60, and the display of flipped model video 40A and flipped student video 60A.
[0129] Returning to the explanation of FIG. 14 , in the first mode, only the inverted model video 40A is displayed in the video display area 310. In the second mode, an overlay display is performed in which the inverted model video 40A and the inverted student video 60A are displayed in the video display area 310, with the inverted model video 40A superimposed on top of the inverted student video 60A. In the third mode, a dual-screen display is performed in which the two videos, the inverted model image 40A and the inverted student video 60A, are displayed side by side horizontally or vertically in the video display area 310. In the fourth mode, only the inverted student video 60A is displayed in the video display area 310. Note that, although an example has been given in which the two videos, the inverted model image 40A and the inverted student video 60A, are displayed side by side horizontally or vertically, the arrangement of the two videos is not limited to this, and the inverted model image 40A and the inverted student video 60A may also be displayed side by side diagonally.
[0130] Here, in the second mode, as an example only, the inverted model video 40A is displayed with the opacity set to 50% by default, but it is also possible for the user to set the opacity of the inverted model video 40A.
[0131] FIG. 17 illustrates an example of a user-defined opacity setting. FIG. 17 shows three examples: an opacity setting of 0% for the reversed model video 40A, an opacity setting of 50%, and an opacity setting of 100% for the reversed model video 40A. As shown in FIG. 17, a slider bar 312 for setting the opacity of the reversed model video 40A may be provided in the video display area 310. A numerical range of opacity values, from a minimum of 0% to a maximum of 100%, is assigned to the slider bar 312. The user can set the desired opacity by moving the slider 312A to any position on the slider bar 312. For example, when the opacity of the reversed model video 40A is set to 0%, only the reversed student image 60 is displayed in the video display area 310. On the other hand, when the opacity of the reversed model video 40A is set to 100%, only the reversed model image 40 is displayed in the video display area 310. The user can set any opacity level, not just the minimum and maximum levels, which allows for an overlay display that matches the visual characteristics of the student.
[0132] Furthermore, the position and size of the inverted model image 40A and the inverted student video 60A can be changed in each of the first to fourth modes. FIG. 18 illustrates an example of size change. FIG. 18 illustrates an example in which the position of the inverted model image 40A and the inverted student video 60A displayed in the third mode shown in FIG. 14 is moved to the right and the size of the inverted student video 60A is reduced. In this way, the position and size can be arbitrarily changed by the user. For example, the display size can be reduced by accepting a pinch-in operation on the inverted model image 40A or the inverted student video 60A, or the display size can be enlarged by accepting a pinch-out operation. Furthermore, the display position of the inverted model image 40A or the inverted student video 60A can be moved by accepting a drag operation on the inverted model image 40A or the inverted student video 60A, and the movement of the display position can be completed by a drop operation. Although FIG. 18 shows an example in which the position and size are changed, the reversed model image 40A and the reversed student video 60A can also be rotated.
[0133] By freely transitioning between these four modes, students can customize the video playback state according to their needs when learning dance choreography. Figure 19 shows an example of the relationship between dance practice procedures and functions. As shown in Figure 19, changing the playback speed, looping, and flipping the video can be effectively utilized at all steps of practicing dance choreography. Furthermore, in the 1) stage of memorizing the flow of the choreography, the 1st mode, i.e., "playback of the model video," is highly effective. In the 2) stage of memorizing the angles of the choreography, the 2nd mode, i.e., "overlay playback," is highly effective. Furthermore, in the 3) stage of memorizing the timing of the choreography, the 3rd mode, i.e., "parallel playback," is highly effective. In the 4) stage of checking whether you can dance alone, the 4th mode, i.e., "playback of the student video," is highly effective.
[0134] FIG. 20 illustrates a use case for checking choreography timing. FIG. 20 illustrates an example in which a reversed model video 40A and a reversed student video 60A are displayed side by side in the video display area 310. For example, in the example illustrated in FIG. 20, by comparing the reversed model video 40A and the reversed student video 60A, it is possible to confirm that the instructor and the student are performing different poses. Specifically, there is a misalignment between the orientation of the instructor's right wrist 41 and right elbow 42 and the orientation of the student's right wrist 61 and right elbow 62, and there is also a misalignment between the orientation of the instructor's right hip 43 and right knee 44 and the orientation of the student's right hip 63 and right knee 64. Such pose misalignment may be output as a result of the calculation of the synchronization rate by the calculation unit 15C. Having confirmed the misalignment, the student can determine that the misalignment is caused by the student's choreography timing being one beat off from the instructor's choreography timing.
[0135] Returning to the description of FIG. 7, the playback control unit 39B has a function of executing playback control of the video displayed in the video display area 310. In one embodiment, the playback control unit 39B plays the video corresponding to the display mode of the video display area 310 in accordance with the playback state parameter settings set by the setting unit 38, such as the playback speed magnification setting, the loop playback section setting, and the marker setting. At this time, if the second mode or the third mode is selected as the display mode of the video display area 310, the playback control unit 39B plays the model video and the student video in accordance with the time code of the model video. Note that when the second mode or the third mode is selected, the same parameters are used for playing the model video and the student video.
[0136] <Processing flow> Next, the processing flow of the video providing system according to this embodiment will be explained. Here, the following will be explained in order: (1) recording processing executed by the instructor terminal 20, (2) reservation processing executed by the server device 10 and the student terminal 30, and (3) video playback processing executed by the student terminal 30.
[0137] (1) Recording process 21 is a flowchart showing the procedure for the recording process. This process can be started, by way of example only, when a video recording button that accepts a recording request is pressed on the main menu screen provided by the APP for dancers.
[0138] 21, the recording unit 24 accepts a designation of a piece of music to be embedded in a model video that the instructor is about to shoot (step S101). Next, the recording unit 24 accepts a setting of a playback time for starting recording within the playback time of the piece of music designated in step S101 (step S102). Then, the recording unit 24 accepts an operation to start recording (step S103).
[0139] Thereafter, the recording unit 24 executes loop processing 1, which repeats the processing of steps S104 and S105 described below, until recording ends when the playback time of the song specified in step S101 ends, or until recording ends when recording is stopped.
[0140] That is, the recording unit 24 sets the time code (HH:MM:SS:FF) of the playback time of the music being played back in the video of the n-th frame captured by the imaging unit 23 (step S104).Then, the recording unit 24 records the video for which the time code was set in step S104 (step S105).
[0141] By repeating this loop process 1, a model moving image is recorded in which the time code of the music piece designated by the instructor is embedded in each frame of the video captured by the imaging unit 23.
[0142] Thereafter, the recording unit 24 uploads the moving image file of the model moving image recorded by repeating the above-mentioned loop process 1 to the server device 10 (step S106), and the process ends.
[0143] In this way, the model video uploaded to the server device 10 in step S106 is stored in the model video DB 12 of the server device 10. Naturally, the model video may also be stored in a storage device or the like that the instructor terminal 20 has.
[0144] (2) Reservation processing 22 is a sequence diagram showing the procedure of the reservation process. As shown in FIG. 22, the reservation unit 15A of the server device 10 receives a request to view a lesson program from the student terminal 30 (step S301). Next, the reservation unit 15A of the server device 10 reads out the lesson program for the date, time, and time period specified in the request from the program DB 11 (step S302).
[0145] Then, the reservation unit 15A of the server device 10 provides the student terminal 30 with a lesson selection screen that accepts instruction inputs requesting viewing of a model video for each lesson included in the lesson program and instruction inputs for lessons that the student requests to take (step S303).
[0146] Meanwhile, when a reservation acceptance button assigned to one of the lessons included in the lesson selection screen is selected (step S304), the request unit 36 of the student terminal 30 sends a request to the server device 10 requesting reservation registration for the lesson to which the reservation acceptance button is assigned (step S305).
[0147] Then, the reservation unit 15A registers account information, such as the student's identification information, assigned to the student who is the user of the student terminal 30 in the participation slot for the lesson (step S306), and notifies the student terminal 30 that the reservation is complete (step S307).
[0148] Once the lesson reservation is completed in this way, the student terminal 30 is permitted to release functions such as playing and downloading the model video.
[0149] After the reservation is accepted, the student terminal 30 accepts the operation of the play button for the model video from among the lessons included in the lesson selection screen provided in step S303 (step S308).Then, the request unit of the student terminal 30 transmits a request to the server device 10 for downloading the model video for which the play button operation has been accepted (step S309).
[0150] When a request to download a model video is made in this manner, the video providing unit 15B of the server device 10 reads out the model video of the lesson specified in the request from the model video stored in the model video DB 12 and provides it to the student terminal 30 (steps S310 and S311).
[0151] Then, the playback control unit 39B of the student terminal 30 executes a video playback process using the model video provided in step S307 (step S312), and ends the process.
[0152] The processes from step S308 to step S312 can be repeated any number of times until the display on the display unit 32 of the student terminal 30 transitions from the lesson selection screen to another screen. Note that the model video downloaded in step S311 can be played using the dancer APP even after the transition from the lesson selection screen to another screen.
[0153] (3) Video playback processing 23 is a flowchart showing the procedure for video playback processing. This processing may be executed continuously even while a video is being played. Note that each step described in this flowchart is applicable regardless of whether the display mode of the video display area 310 is any of the first to fourth modes.
[0154] As shown in FIG. 23, the playback control unit 39B displays the video of the frame to which the time code corresponding to the playback position is set in the video display area 310, and also outputs the audio of the frame to which the time code is set from an audio output unit (not shown) (step S501).
[0155] Next, if the playback speed is changed via the tempo change tab 321 (Yes in step S502), the setting unit 38 changes the playback speed parameter set by the playback control unit 39B to the playback speed corresponding to the position of the slider 323B on the slider bar 323A (step S503).
[0156] If a marker is specified via the marker setting tab 323 (Yes in step S504), the playback control unit 39B shifts the playback position to the time code where the marker is set (step S505).
[0157] If a fast-forward or rewind operation is performed (No in step S504 and Yes in step S506), the playback control unit 39B executes fast-forward or rewind for the fast-forward period or rewind period (step S507).
[0158] If neither a marker is specified nor a fast-forward or rewind operation is performed (step S504 No and step S506 No), the playback control unit 39B shifts to the next time code by adding a time width corresponding to the frame rate to the time code corresponding to the playback position (step S508).
[0159] Thereafter, if loop playback is ON (Yes in step S509), the playback control unit 39B determines whether the playback position has passed the end position of the section set as a loop (step S510).
[0160] At this time, if the playback position exceeds the end position of the section set as a loop (Yes in step S510), the playback control unit 39B sets the playback position to the start position of the loop setting (step S511), and returns to the processing of step S501.
[0161] If loop playback is OFF (No in step S509), or if the playback position does not exceed the end position of the loop-set section (No in step S510), the process proceeds to step S501 without executing step S511.
[0162] <Summary> As described above, the video providing system 1 according to this embodiment provides, before the start of a lesson, a model video of the content that the instructor will teach in the lesson, for example, a dance choreography, to the student terminal 30. Therefore, the video providing system 1 according to this embodiment can support the user in practicing the lesson content on their own before attending the lesson.
[0163] Furthermore, the student terminal 30 according to this embodiment controls the playback state of the model video in a display mode in which the student video and the model video are simultaneously displayed, based on parameter settings related to the playback state of the model video. Therefore, the student terminal 30 according to this embodiment makes it possible to easily customize the playback state of the video and realize video playback.
[0164] <Exercise creative ability> The matters described in the above embodiment, such as the number of instructor terminals 20 and student terminals 30, specific examples of various screens, etc., are merely examples and can be changed. Also, the order of processing in the flowcharts described in the embodiment can be changed within a consistent range.
[0165] <System> The information including the processing procedures, control procedures, specific names, various data, and parameters shown in the above documents and drawings can be changed as desired unless otherwise specified. For example, one or more of the functional units of the first providing unit 15A and the second providing unit 16 of the server device 10 may be configured as separate devices.
[0166] Furthermore, the components of each device shown in the figure are functional concepts and do not necessarily have to be physically configured as shown. In other words, the specific form of distribution and integration of each device is not limited to that shown. In other words, all or part of them can be functionally or physically distributed and integrated in any unit depending on various loads, usage conditions, etc. Note that each configuration may also be a physical configuration.
[0167] Furthermore, each processing function performed by each device can be realized, in whole or in part, by a CPU (Central Processing Unit) and a program analyzed and executed by the CPU, or can be realized as hardware using wired logic.
[0168] <Hardware> Next, an example of the hardware configuration of the computer described in the above embodiment will be described. FIG. 24 is a diagram showing an example of the hardware configuration. As shown in FIG. 24, the student terminal 30 has a communication device 30a, a storage device 30b, a memory 30c, and a processor 30d. Note that the components shown in FIG. 24 may be interconnected via a bus or the like. Note that while FIG. 24 shows an example of the hardware configuration of the student terminal 30, the server device 10 and the instructor terminal 20 may also be realized with a similar hardware configuration.
[0169] The communication device 30a is a network interface card, etc. The storage device 30b is a storage device such as a hard disk drive (HDD) or a solid state drive (SSD). For example, the storage device 30b stores programs and databases that operate the functions shown in FIG.
[0170] The processor 30d reads out a program that executes the same processing as the processing unit shown in FIG. 7 from the storage device 30b or the like and loads it into the memory 30c, thereby operating the process that executes the functions described in FIG.
[0171] Such a process realizes the same functions as the processing units of the student terminal 30. For example, the processor 30d reads out from the storage device 30b a program having the same functions as the recording unit 35, the request unit 36, the UL unit 37, the setting unit 38, the output control unit 39, etc. Then, the processor 30d executes a process that executes the same processes as the recording unit 35, the request unit 36, the UL unit 37, the setting unit 38, the output control unit 39, etc.
[0172] In this way, the student terminal 30 operates as an information processing device that executes the video playback method by reading and executing the program. The student terminal 30 can also realize the same functions as those in the above-described embodiment by reading the program from a recording medium using a medium reading device and executing the read program.
[0173] Note that the program in this other embodiment is not limited to being executed by the student terminal 30. For example, the present invention can be similarly applied to cases where another computer or server executes the program, or where these execute the program in cooperation with each other. As just one example, the video playback function may be provided by executing the above program on the instructor terminal 20. As another example, a video providing service corresponding to the video playback function may be provided from the server device 10 to the instructor terminal 20 and the student terminal 30 by executing the above program on the server device 10.
[0174] The above program can be distributed via a network such as the Internet. The above program can also be recorded on any recording medium and executed by a computer by reading it from the recording medium. For example, the recording medium can be a hard disk, a flexible disk (FD), a CD-ROM, a magneto-optical disk (MO), a digital versatile disk (DVD), or the like. [Explanation of symbols]
[0175] 1. Video provision system 10 Server device 11 Program Database 12 Example Video DB 13 Student Video DB 14 Comment DB 15 First Service Section 15A Reservation Section 15B Video Provider 15C calculation section 16 Second Service Department 20 Instructor terminals 21 Input section 22 Display section 23 Imaging unit 24 Recording Department 25 Output control section 26 Request section 30 Student Terminals 31 Input section 32 Display section 33 Imaging unit 34 Student Video DB 35 Recording Department 36 Request section 37 UL section 38 Setting section 39 Output control section 39A GUI control unit 39B Playback control section
Claims
1. The server device a providing unit that provides a sample video, which is uploaded by an instructor terminal identified by an account assigned to the instructor before the start of the lesson and in which the time code of the music is embedded, to a student terminal identified by an account assigned to a student of the lesson; and The student terminal includes: a setting unit that sets parameters related to the playback state of the sample video downloaded from the server device; a playback control unit that controls a playback state of the model video in a display mode including a mode in which the model video and a student video in which the student is filmed and the time code of the music is embedded are simultaneously displayed based on the setting of the parameter; and The video providing system is characterized in that the playback control unit controls the playback positions of the model video and the student video based on the time code of the music.
2. 2. The video providing system according to claim 1, wherein the student video is a recording.
3. 2. The video providing system according to claim 1, wherein the student video is live video captured in real time.
4. The video providing system according to claim 1 , wherein the model video or the student video is displayed in a horizontally inverted state.
5. The video provision system of claim 1, characterized in that the display mode can be switched between a first mode in which the model video is displayed, a second mode in which the model video and the student video are overlaid and displayed, a third mode in which the model video and the student video are displayed side by side, and a fourth mode in which the student video is displayed.
6. The video provision system described in claim 1, characterized in that the provision unit provides a user interface to the student terminal that accepts instruction input requesting viewing of the model video for each lesson included in a lesson program in which a schedule of multiple lessons is set, and instruction input for the lesson to be taken.
7. The student terminal or the server device The video providing system according to claim 1 , further comprising a calculation unit for calculating a synchronization rate of the student video with respect to the model video.
8. The video provision system described in claim 1, characterized in that the provision unit provides the instructor terminal with a user interface that accepts instruction input requesting viewing of the student video uploaded from the student terminal to the server device and input of comments on the student video.
9. 9. The video providing system according to claim 1, wherein the model video is a model video in which dance choreography is filmed.
10. The server device providing a sample video, which has been uploaded by an instructor terminal identified by an account assigned to the instructor before the start of the lesson and in which the time code of the music is embedded, to a student terminal identified by an account assigned to the student of the lesson; The student terminal, Setting parameters related to the playback state of the sample video downloaded from the server device; controlling a playback state of the model video in a display mode including a mode in which the model video and a student video in which the student is filmed and the time code of the music is embedded are simultaneously displayed based on the setting of the parameter; A video providing method characterized in that the process of controlling the playback state includes a process of controlling the playback positions of the model video and the student video based on the time code of the music.
Citation Information
Patent Citations
Actual action analysis system and program
JP2005237494A
Motion evaluation support device, motion evaluation support system, motion evaluation support method and program
JP2014094029A
Image processing device, image processing method and program
JP2014183560A
Moving image processing system
JP2024128440A
Apparatus and Method for Diagnosing Parallel Operation of Power Transformers for Substation
KR102801320B1