[go: up one dir, main page]

CN115802093A - Video playing method and device, electronic equipment and storage medium - Google Patents

Video playing method and device, electronic equipment and storage medium Download PDF

Info

Publication number
CN115802093A
CN115802093A CN202310064206.XA CN202310064206A CN115802093A CN 115802093 A CN115802093 A CN 115802093A CN 202310064206 A CN202310064206 A CN 202310064206A CN 115802093 A CN115802093 A CN 115802093A
Authority
CN
China
Prior art keywords
full
video
window
screen page
video window
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202310064206.XA
Other languages
Chinese (zh)
Inventor
程相同
丁广策
金锐
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hangzhou Arges Technology Co ltd
Original Assignee
Hangzhou Arges Technology Co ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hangzhou Arges Technology Co ltd filed Critical Hangzhou Arges Technology Co ltd
Priority to CN202310064206.XA priority Critical patent/CN115802093A/en
Publication of CN115802093A publication Critical patent/CN115802093A/en
Pending legal-status Critical Current

Links

Images

Landscapes

  • User Interface Of Digital Computer (AREA)

Abstract

The invention provides a video playing method, a video playing device, electronic equipment and a storage medium, and relates to the field of video playing, wherein the method comprises the following steps: when detecting that a page switching event is triggered, acquiring a preset linked list and a corresponding relation table; the nodes connected in sequence in the linked list are used for sequentially storing the window information of each video window, and the corresponding relation table is used for storing the corresponding relation between each video window and the full-screen page; determining a full-screen page to be switched corresponding to the page switching event, searching a target video window corresponding to the full-screen page to be switched according to the corresponding relation table, and determining target window information and an arrangement sequence of each target video window by using a linked list; generating a full screen page to be switched, generating target video windows according to the target window information, and arranging all the target video windows in the full screen page to be switched according to the arrangement sequence; outputting a full screen page to be switched, and playing videos in each target video window; the arrangement flexibility of the video window in the full-screen page can be improved.

Description

Video playing method and device, electronic equipment and storage medium
Technical Field
The present invention relates to the field of video playing, and in particular, to a video playing method and apparatus, an electronic device, and a computer-readable storage medium.
Background
With the continuous development of the video industry, it has become a normal state to watch videos by using terminal devices such as computers and mobile devices. However, in the related art, the arrangement mode of the video windows in the full screen page of the device is not flexible enough, and the switching mode between the video windows is also not flexible enough, so that the experience of watching videos by a user is reduced.
Disclosure of Invention
The invention aims to provide a video playing method, a video playing device, electronic equipment and a computer readable storage medium, which can realize the generation and switching of a full screen page and a video window by utilizing a corresponding relation table recorded with the corresponding relation between each video window and the full screen page and a linked list recorded with the arrangement sequence of each video window in the full screen page, thereby improving the arrangement flexibility and the switching flexibility of the video windows.
In order to solve the above technical problem, the present invention provides a video playing method, including:
when detecting that a page switching event is triggered, acquiring a preset linked list and a corresponding relation table; the nodes connected in sequence in the linked list are used for sequentially storing window information of each video window, and the corresponding relation table is used for storing the corresponding relation between each video window and a full-screen page;
determining a full screen page to be switched corresponding to the page switching event, searching a target video window corresponding to the full screen page to be switched according to the corresponding relation table, and determining target window information and an arrangement sequence of each target video window by using the linked list;
generating the full-screen page to be switched, generating the target video windows according to the target window information, and arranging each target video window in the full-screen page to be switched according to the arrangement sequence;
and outputting the full screen page to be switched, and playing videos in the target video windows.
Preferably, before detecting that the page switching event is triggered, the method further comprises:
acquiring the total number of video windows, the total number of full-screen pages and preset layout information; the preset layout information comprises the number of video windows which can be accommodated by each full-screen page;
creating the linked list by taking the total number of the video windows as the number of nodes, and adding the window information into each node of the linked list;
and according to the total number of the full-screen pages, the number of the video windows capable of being held by each full-screen page and the sequence of the nodes of each video window in the linked list, sequentially determining the corresponding relation between each video window and each full-screen page, and recording the corresponding relation to the corresponding relation table.
Preferably, the preset layout information further includes placeable positions of the video windows in the full screen page, and the arranging of the target video windows in the full screen page to be switched according to the arrangement order includes:
determining the actual position of each target video window in the full screen page to be switched according to the arrangement sequence and the placeable position;
and arranging the target video window to the full screen page to be switched according to the actual position.
Preferably, the method further comprises the following steps:
when a touch point is detected in display equipment, determining a position and a touch action corresponding to the touch point;
and when the touch action is determined to be a horizontal sliding action and the sliding distance is greater than a preset distance, triggering the page switching event.
Preferably, after determining the position and the touch action corresponding to the touch point, the method further includes:
when the touch action is determined to be a pressing action and the action holding duration exceeds the preset duration, setting a target video window where the touch point is located as a main video window;
when the touch point is determined not to be released, moving the main video window according to the position of the touch point, and adjusting the arrangement sequence between the main video window and other target video windows according to the moving position of the main video window;
and when the touch point is determined to be released, stopping moving the main video window, and adjusting the sequence of the nodes of the main video window in the linked list according to the adjusted arrangement sequence.
Preferably, after determining the position and the touch action corresponding to the touch point, the method further includes:
when the touch action is determined as the click action, judging whether the number of times that a target video window where the touch point is located is continuously clicked exceeds a preset number of times;
if yes, setting a target video window where the touch point is located as a main video window, and amplifying the main video window to a preset size.
Preferably, after the video playing is performed in each target video window, the method further includes:
acquiring the CPU utilization rate, the CPU work core number and the memory utilization rate;
and adjusting video parameters corresponding to the videos played by the target video windows according to the CPU utilization rate, the CPU work core number and the memory utilization rate.
Preferably, after detecting that the page switching event is triggered, the method further includes:
determining a currently displayed visible full-screen page and a visible video window contained in the currently displayed visible full-screen page;
pausing the video played by each visible video window, and caching the currently displayed image frame of each visible video window to a corresponding node;
correspondingly, after arranging each target video window in the full screen page to be switched according to the arrangement sequence, the method further comprises the following steps:
when it is determined that image frames are cached in the nodes of the target video window, the image frames of the target video window are set in the target video window, and the step of outputting the full screen page to be switched is executed after the setting is finished.
The present invention also provides a video playing device, comprising:
the acquisition module is used for acquiring a preset linked list and a corresponding relation list when detecting that a page switching event is triggered; the nodes connected in sequence in the linked list are used for sequentially storing window information of each video window, and the corresponding relation table is used for storing the corresponding relation between each video window and a full-screen page;
the information determining module is used for determining a full screen page to be switched corresponding to the page switching event, searching a target video window corresponding to the full screen page to be switched according to the corresponding relation table, and determining target window information and an arrangement sequence of each target video window by using the linked list;
the page generating module is used for generating the full screen page to be switched, generating the target video windows according to the target window information, and arranging each target video window in the full screen page to be switched according to the arrangement sequence;
and the page output module is used for outputting the full screen page to be switched and playing videos in the target video windows.
The present invention also provides an electronic device comprising:
a memory for storing a computer program;
a processor for implementing the video playing method as described above when executing the computer program.
The present invention also provides a computer-readable storage medium, in which computer-executable instructions are stored, and when the computer-executable instructions are loaded and executed by a processor, the video playing method as described above is implemented.
The invention provides a video playing method, which comprises the following steps: when detecting that a page switching event is triggered, acquiring a preset linked list and a corresponding relation table; the nodes connected in sequence in the linked list are used for sequentially storing window information of each video window, and the corresponding relation table is used for storing the corresponding relation between each video window and a full screen page; determining a full screen page to be switched corresponding to the page switching event, searching a target video window corresponding to the full screen page to be switched according to the corresponding relation table, and determining target window information and an arrangement sequence of each target video window by using the linked list; generating the full-screen page to be switched, generating the target video windows according to the target window information, and arranging each target video window in the full-screen page to be switched according to the arrangement sequence; and outputting the full screen page to be switched, and playing videos in the target video windows.
Therefore, when the page switching event is detected to be triggered, the preset linked list and the corresponding relation table can be obtained, wherein each node sequentially connected in the linked list is used for sequentially storing the window information of each video window, and the corresponding relation table is used for storing the corresponding relation between each video window and the full-screen page; then, the invention can determine the full screen page to be switched corresponding to the page switching event, determine the target video window corresponding to the full screen page to be switched according to the corresponding relation table, and can determine the target window information and the arrangement sequence of each target video window by utilizing the linked list, in other words, the linked list is not only used for storing the window information of the video windows, but also can be used for determining the arrangement sequence of each video window in the full screen page according to the sequence of the nodes of each video window in the linked list; further, the full-screen page to be switched is generated, the target video windows are generated according to the target window information, the target video windows are arranged in the full-screen page to be switched according to the previously determined arrangement sequence, and finally the full-screen page to be switched is output so as to complete the switching of the video windows. Simply speaking, the invention can flexibly set video windows in a full screen page, can record the corresponding relation between the full screen page and each video window by using the corresponding relation table, and can record the window information of the video windows and the arrangement sequence in the full screen page by using the linked list; in addition, the switching of the video window can be quickly realized by switching the full-screen page, so that the arrangement flexibility and the switching flexibility of the video window in the full-screen page of the mobile equipment can be remarkably improved, and the use experience of a user can be remarkably improved. The invention also provides a video playing device, electronic equipment and a computer readable storage medium, which have the beneficial effects.
Drawings
In order to more clearly illustrate the embodiments of the present invention or the technical solutions in the prior art, the drawings used in the description of the embodiments or the prior art will be briefly described below, it is obvious that the drawings in the following description are only embodiments of the present invention, and for those skilled in the art, other drawings can be obtained according to the provided drawings without creative efforts.
FIG. 1 is a schematic diagram of a linked list according to an embodiment of the present invention;
FIG. 2 is a diagram of a first full screen page provided in an embodiment of the present invention;
FIG. 3 is a diagram of a second full-screen page provided in an embodiment of the present invention;
FIG. 4 is a diagram of a third full screen page provided in the embodiment of the present invention;
fig. 5 is a flowchart of a video playing method according to an embodiment of the present invention;
fig. 6 is a schematic diagram of a full screen page switching provided in the embodiment of the present invention;
fig. 7 is a block diagram of a video playback device according to an embodiment of the present invention.
Detailed description of the preferred embodiments
In order to make the objects, technical solutions and advantages of the embodiments of the present invention clearer, the technical solutions in the embodiments of the present invention will be clearly and completely described below with reference to the drawings in the embodiments of the present invention, and it is obvious that the described embodiments are some, but not all, embodiments of the present invention. All other embodiments, which can be derived by a person skilled in the art from the embodiments given herein without making any creative effort, shall fall within the protection scope of the present invention.
In the related art, the arrangement mode of the video windows in the full-screen page of the equipment is not flexible enough, and the switching mode between the video windows is also not flexible enough, so that the video watching experience of a user is reduced. In view of this, the present invention may provide a video playing method, which may record a corresponding relationship between each video window and a full-screen page and an arrangement order of each window in the full-screen page by using a corresponding relationship table and a linked list, and generate and switch the full-screen page and the video window based on the corresponding relationship table and the linked list, so as to improve the arrangement flexibility of the video window in the full-screen page and improve the switching flexibility of the video window.
For easy understanding, the embodiment of the present invention first introduces a full screen page, a video window, a correspondence table, and a linked list. The full screen page refers to page content capable of completely covering a display interface of equipment, a plurality of video windows can be arranged in the page, and the video windows can play videos at the same time, so that the embodiment of the invention can realize the effect of simultaneously playing a plurality of videos in a single full screen page. Furthermore, a plurality of full-screen pages can be preset, the pages are provided with a plurality of video windows and can be switched randomly, and further, the embodiment of the invention can realize the fast switching of the plurality of video windows in a full-screen page switching mode so as to remarkably improve the switching flexibility among the video windows. It should be noted that, the embodiment of the present invention does not limit the number of full screen pages and the number of video windows that can be included in each full screen page, and these numbers can be set according to the actual application requirements; the embodiment of the present invention also does not limit whether the number of the video windows included in each full-screen page is the same, and can be set according to the actual application requirements, for example, convenience for setting up the promotion can be achieved, the number of the video windows included in each full-screen page can be set to the same value, for example, flexibility of display of the video windows can be improved, and the number of the video windows included in each full-screen page can also be set to different values.
Further, in order to prevent the arrangement of the video windows from being disordered, the corresponding relationship between each video window and the full-screen page and the arrangement sequence of each video window in the full-screen page should be specially recorded. Therefore, the embodiment of the invention particularly sets a corresponding relation table and a linked list. The corresponding relation table is used for recording the corresponding relation between each video window and each full screen page, namely recording which video windows belong to which full screen page. The corresponding relation table can be in a form of a table or a two-dimensional array, elements in the array are numbers of video windows, a first dimension of the array corresponds to a full-screen page, a second dimension of the array corresponds to the video windows contained in each full-screen page, and the specific form of the array can be set according to actual application requirements. The linked list is not only used for recording window information (such as the serial number of the video window, video stream information of the played video, etc.) of each video window, but also can record the arrangement sequence among each video window through the linked list structure. Specifically, a plurality of nodes which are connected in sequence are arranged in the linked list, the nodes correspond to the video windows one by one and are used for recording window information of each video window, and the arrangement sequence of the video windows in the full-screen page is recorded by the aid of the connection sequence among the linked lists. For easy understanding, please refer to fig. 1, fig. 1 is a schematic diagram of a linked list according to an embodiment of the present invention, in which a root node is a start node of the linked list, and nodes 1, 2, and 3 are respectively used to store window information of video windows 1, 2, and 3. Assuming that a full-screen page only includes video windows 1, 2, and 3, the arrangement order of the three windows in the full-screen page is, according to the node order: video window 1, video window 2, video window 3. Fig. 2 is a schematic diagram of a first full screen page provided by an embodiment of the present invention, and it can be seen that the three video windows are arranged from top to bottom according to the above sequence.
Further, it can be understood that the above correspondence table and the linked list should be initialized before generating each full screen page and video window. It should be noted that, before initializing the correspondence table and the linked list, the total number of video windows, the total number of full-screen pages, and layout information of each full-screen page should be determined, where the layout information may include, for example, the number of video windows that each full-screen page can accommodate, and then the linked list may be initialized according to the total number of video windows, each full-screen page may be determined according to the total number of full-screen pages, and the correspondence between each video window and each full-screen page may be established according to the number of video windows that each full-screen page can accommodate. The embodiment of the invention does not limit the determination mode of the total number of the video windows, the total number of the full-screen pages and the layout information, for example, the determination mode can be preset, can also be input by a user independently, and can be set according to the actual application requirements. In the embodiment of the present invention, in order to improve the initialization efficiency and reduce the use threshold of the user, the total number of the video windows, the total number of the full-screen pages, and the layout information may be preset information. It should be noted that, in the using process, the user may still modify and adjust the total number of the video windows, the total number of the full screen pages, and the layout information to meet the use requirement, for example, add video windows, full screen pages, or adjust the layout information. Further, the embodiment of the present invention does not limit the initialization order of the correspondence table and the linked list, and for example, the correspondence table may be initialized first, or the linked list may be initialized first. In order to improve the initialization efficiency, the embodiment of the invention initializes the linked list at first, and then determines the corresponding relation between each video window and the full screen page in sequence according to the determined arrangement sequence of each video window in the linked list. Specifically, when initializing the linked list, the total number of predetermined video windows may be obtained, the total number is used as the number of nodes to create the linked list, and then window information is added to each node of the linked list to complete initialization of the linked list. Then, when initializing the corresponding relationship, the corresponding relationship between each video window and each full-screen page can be determined in sequence according to the total number of the full-screen pages, the number of the video windows capable of being accommodated by each full-screen page and the sequence of the nodes of each video window in the linked list, and the corresponding relationship is recorded to the corresponding relationship table, so as to complete the initialization of the corresponding relationship table.
Furthermore, it should be noted that, in the embodiment of the present invention, it is not limited whether the preset layout information corresponding to each full screen page is the same, and the preset layout information may be set according to the actual application requirements, for example, for convenience, the same preset layout information may be set for each full screen page; for example, to improve layout flexibility, different preset layout information may be set for each full screen page. Furthermore, besides the number of video windows that can be accommodated by each full-screen page, the preset layout information may further include placeable positions where the video windows can be placed in each full-screen page, so as to further enrich the layout manner of the video windows in the full-screen page. It will be appreciated that the number of placeable locations should be the same as the number of video windows that a full screen page can accommodate. For further understanding, please refer to fig. 3, fig. 3 is a schematic diagram of a second full-screen page provided by the embodiment of the present invention, in which two full-screen pages are shown, wherein three dashed boxes in full-screen page 1 correspond to three positions where video windows can be placed, and six dashed boxes in full-screen page 2 correspond to six positions where video windows can be placed, and related information (such as coordinate information, size, and the like) of these positions can be recorded by preset layout information. Furthermore, when arranging the video windows, the video windows can be sequentially arranged to the placeable positions. For example, referring to fig. 4, fig. 4 is a schematic diagram of a third full screen page according to an embodiment of the present invention, for the placeable positions shown in fig. 3, video windows may be placed according to the sequence shown in fig. 4, where in full screen page 1, the video windows may be sequentially arranged to the three placeable positions from top to bottom; in the full screen page 2, the video windows can be sequentially arranged to the six placeable positions from left to right and then from top to bottom. Of course, the arrangement sequence shown in fig. 4 is only an example, and the actual arrangement sequence can be freely set according to the application requirements. In addition, the size of each placeable position and the specific position of the placeable position in the full-screen page are not limited in the embodiment of the invention, and can be set according to the actual application requirements, for example, the placeable positions can be flexibly set so as to place a larger window and a plurality of smaller windows in the same page, or place a plurality of rows and columns of windows with the same size in the same page, and other various arrangement modes.
Based on the above descriptions of the full screen page, the video window, the corresponding relationship table and the linked list, the video playing method provided by the embodiment of the present invention is described in detail below. Referring to fig. 5, fig. 5 is a flowchart of a video playing method according to an embodiment of the present invention, where the method includes:
s501, when a page switching event is detected to be triggered, acquiring a preset linked list and a corresponding relation table; the nodes connected in sequence in the linked list are used for sequentially storing the window information of each video window, and the corresponding relation table is used for storing the corresponding relation between each video window and the full-screen page.
In an embodiment of the present invention, the page switching event is used to switch a visible full screen page displayed by the current device, for example, to a previous full screen page, a next full screen page, or a specific full screen page. When detecting that a page switching event is triggered, the embodiment of the invention needs to perform rendering generation on a full screen page to be switched corresponding to the event so as to replace the current visible full screen page by using the full screen page to be switched. It should be noted that the embodiment of the present invention does not limit the specific triggering manner of the page switching event, for example, the specific operation (such as a screen touch operation, a physical button pressing operation, and the like) performed by the user may be detected, or the page switching event may be automatically triggered when the video playing is detected to be finished or the screen switching time is reached, and the triggering manner may be set according to the actual application requirement. Further, the chain table and the corresponding relation table are required to be used for generating the full screen page to be switched, and as described above, the chain table and the corresponding relation table should be initialized before the full screen page and the video window are generated, so that the chain table and the corresponding relation table should be initialized first before the page is generated, displayed and switched.
Based on this, before detecting that the page switching event is triggered, the method may further include:
step 11: acquiring the total number of video windows, the total number of full-screen pages and preset layout information; the preset layout information comprises the number of video windows which can be accommodated in each full-screen page;
step 12: creating a linked list by taking the total number of the video windows as the number of the nodes, and adding window information into each node of the linked list;
step 13: and according to the total number of the full-screen pages, the number of the video windows capable of being accommodated by each full-screen page and the sequence of the nodes of each video window in the linked list, sequentially determining the corresponding relationship between each video window and each full-screen page, and recording the corresponding relationship into a corresponding relationship table.
After the initialization of the corresponding relation table and the linked list is completed, the embodiment of the invention can complete the generation, display and switching of the full screen page, for example, a first full screen page is generated and output based on the corresponding relation table and the linked list, and when a page switching event is detected to be triggered, a full screen page to be switched is generated by using the corresponding relation table and the linked list, and the currently visible full screen page is replaced by using the full screen page to be switched.
S502, determining a full-screen page to be switched corresponding to the page switching event, searching a target video window corresponding to the full-screen page to be switched according to the corresponding relation table, and determining target window information and an arrangement sequence of each target video window by using a linked list.
As described above, the correspondence table is used to record the correspondence between the video windows and the full-screen pages, and the linked list is used to record the window information of each video window and the arrangement order of each video window in the full-screen pages, so that when the full-screen pages to be switched corresponding to the page switching event are determined, the corresponding target video windows can be queried in the correspondence table, and the target window information and the arrangement order of each target video window are determined by using the linked list, so as to generate and sequentially arrange each target video window according to the target window information and the arrangement order.
S503, generating a full screen page to be switched, generating target video windows according to the target window information, and arranging all the target video windows in the full screen page to be switched according to the arrangement sequence;
as described above, since the preset layout information may further include placeable positions of the video windows in the full-screen page, after the arrangement order is determined, the actual positions of the target video windows in the full-screen page may be further determined based on the placeable position order, and the target video windows may be placed in the actual positions.
Based on this, the preset layout information further includes placeable positions of the video windows in the full screen page, and the arranging of the target video windows in the full screen page to be switched according to the arrangement sequence may include:
step 21: determining the actual position of each target video window in the full screen page to be switched according to the arrangement sequence and the placeable position sequence;
step 22: and arranging the target video window to a full screen page to be switched according to the actual position.
It should be noted that the embodiment of the present invention does not limit the generation manners of the full screen page to be switched and the target video window, wherein the full screen page to be switched may be rendered in a manner of rendering a ViewGroup container, and the target video window may be rendered in a manner of rendering a TextureView layer, which may refer to related technologies of visualization interface rendering.
S504, outputting the full screen page to be switched, and playing videos in the target video windows.
It should be noted that the video information played by each target video window may be obtained from the corresponding linked list. The embodiment of the invention does not limit the setting mode of each video information and can set according to the actual application requirement.
Further, when a page switching event is triggered, the video may still be played in the currently displayed visible full-screen page, and at this time, in order to avoid wasting computing resources, the video played in the visible full-screen page may be paused. Of course, besides the pause processing, the embodiment of the invention can also buffer the last frame of image frame played by each video window in the visible full-screen page, so that when the user switches back to the page next time, the buffered image frame is displayed as the cover of each video window, the smoothness of the page when switching back and forth is improved, and the use experience of the user can be further improved. It will be appreciated that the image frames described above may be stored in nodes corresponding to video windows.
Based on this, after detecting that the page switching event is triggered, the method may further include:
step 31: determining a currently displayed visible full-screen page and a visible video window contained in the page;
step 32: pausing the video played by each visible video window, and caching the currently displayed image frame of each visible video window to a corresponding node;
correspondingly, after arranging each target video window in the full screen page to be switched according to the arrangement sequence, the method further comprises the following steps:
step 41: when the image frames are cached in the nodes of the target video window, the image frames of the target video window are set in the target video window, and the step of outputting the full screen page to be switched is executed after the setting is finished.
It can be understood that if the full-screen page to be switched has been output and displayed previously, each target video window in the page may have a corresponding image frame cached therein, so the embodiment of the present invention may attempt to extract the image frame from the node of the target video window, and if the extraction is successful, may set the image frame as a cover image of the target video window, and output and display the full-screen page after the setting is completed.
Based on the embodiment, when the page switching event is detected to be triggered, the preset linked list and the corresponding relation table can be obtained, wherein each node sequentially connected in the linked list is used for sequentially storing the window information of each video window, and the corresponding relation table is used for storing the corresponding relation between each video window and the full-screen page; then, the invention can determine the full screen page to be switched corresponding to the page switching event, determine the target video window corresponding to the full screen page to be switched according to the corresponding relation table, and can determine the target window information and the arrangement sequence of each target video window by using the linked list, in other words, the linked list is not only used for storing the window information of the video windows, but also can be used for determining the arrangement sequence of each video window in the full screen page by the sequence of the nodes of each video window in the linked list; further, the full-screen page to be switched is generated, the target video windows are generated according to the target window information, the target video windows are arranged in the full-screen page to be switched according to the previously determined arrangement sequence, and the full-screen page to be switched is finally output so as to complete the switching of the video windows. Simply speaking, the invention can flexibly set video windows in a full-screen page, can record the corresponding relation between the full-screen page and each video window by using the corresponding relation table, and can record the window information of the video windows and the arrangement sequence in the full-screen page by using the linked list; in addition, the method and the device can quickly realize the switching of the video window in a full-screen page switching mode, further can remarkably improve the arrangement flexibility and the switching flexibility of the video window in the full-screen page of the mobile equipment, and can remarkably improve the use experience of a user.
Based on the embodiment, the embodiment of the invention can realize the switching between full-screen pages in a touch operation mode; in addition, a more flexible video window control mode can be realized through a touch operation mode. The following describes three touch operation modes provided by the embodiment of the present invention in detail.
Firstly, the user can realize flexible switching between full-screen pages in a screen sliding mode. Specifically, the embodiment of the present invention may determine whether a touch point can be detected in the display device, and if the touch point can be detected, the position of the touch point in the display screen and the corresponding touch action may be further determined. Then, the embodiment of the present invention needs to determine whether the touch action corresponding to the touch point is a horizontal sliding action, for example, sliding horizontally to the left, or sliding horizontally to the right; in addition, in order to avoid misoperation, the embodiment of the present invention further needs to determine whether the sliding distance corresponding to the touch point is greater than a preset distance. In this way, if it is determined that the touch point corresponds to the horizontal sliding action and the corresponding sliding distance is greater than the preset distance, it can be determined that the user has performed the page switching operation, and the page switching event can be triggered. It can be understood that when the horizontal sliding motion is horizontal leftward sliding, the corresponding switch can be made to the previous page, and when the horizontal sliding motion is horizontal rightward sliding, the corresponding switch can be made to the next page.
Based on this, the method may further comprise:
step 51: when a touch point is detected in the display equipment, determining a position and a touch action corresponding to the touch point;
step 52: and when the touch action is determined to be a horizontal sliding action and the sliding distance is greater than a preset distance, triggering a page switching event.
For convenience of understanding, please refer to fig. 6, where fig. 6 is a schematic diagram of full screen page switching according to an embodiment of the present invention, and the embodiment of the present invention may implement switching between a current visible screen and an invisible screen by performing a horizontal sliding motion on a display device. It should be noted that, the embodiment of the present invention does not limit the specific value of the preset distance, and the preset distance may be set according to the actual application requirement.
Furthermore, the user can select a specific video window in the full screen page by a long-press mode, and can adjust the position of the window in the full screen page by a dragging mode. Specifically, in the embodiment of the present invention, if a touch point can be detected in the display device, and a pressing action (that is, a pressing action but no movement occurs) corresponding to the touch point can be determined, it can be determined whether a duration of the action holding exceeds a preset duration. If the holding time length exceeds the preset time length, the touch point corresponding to the long-time pressing action can be determined, and at this time, the embodiment of the present invention can set the target video window where the touch point is located as the main video window, which means that the window has been selected and can be moved and adjusted. Then, before the touch point is determined not to be released, the main video window can be moved according to the position of the touch point, and the arrangement sequence between the main video window and other video windows in the full-screen page can be adjusted according to the moving position of the main video window; and when the touch point is determined to be released, stopping moving the main video window, and placing the main video window at the current position. Of course, the position change means that the arrangement order of the main video window and other video windows is changed. In order to record the change, the corresponding position adjustment of the node of the main video window in the linked list is needed.
Based on this, after determining the position and the touch action corresponding to the touch point, the method may further include:
step 61: when the touch action is determined to be a pressing action and the action holding duration exceeds the preset duration, setting a target video window where the touch point is located as a main video window;
step 62: when the touch point is determined not to be released, moving the main video window according to the position of the touch point, and adjusting the arrangement sequence between the main video window and other target video windows according to the moving position of the main video window;
and step 63: and when the touch point is determined to be released, stopping moving the main video window, and adjusting the sequence of the nodes of the main video window in the linked list according to the adjusted arrangement sequence.
It should be noted that, the embodiment of the present invention may mark the video window as the main video window by adding a mark to the video window. In addition, other visual markers may be added to the main video window to specifically mark out that the window may be adjusted and moved for ease of use by the user. In addition, the embodiment of the invention does not limit the specific value of the preset duration, and can be set according to the actual application requirement.
Further, the user may also enlarge a video window by continuously clicking on the video window. Specifically, if a touch point can be detected in the display device and a click action (i.e., pressing and quickly lifting) corresponding to the touch point can be determined, the embodiment of the present invention can further determine whether the number of times that a target video window where the touch point is located is continuously clicked (i.e., the interval between adjacent click actions is short) exceeds a preset number of times. If it can be determined that the number of consecutive clicks has exceeded a preset number, the target video window may be set as a main video window, and the main video window is enlarged to a preset size.
Based on this, after determining the position and the touch action corresponding to the touch point, the method may further include:
step 71: when the touch action is determined to be a click action, judging whether the number of times of continuous clicks of a target video window where the touch point is located exceeds a preset number of times;
step 72: if so, setting the target video window where the touch point is located as a main video window, and amplifying the main video window to a preset size.
It should be noted that, the embodiment of the present invention does not limit the specific value of the preset number of times, for example, the number of times may be two; the embodiment of the invention also does not limit the specific preset size and can be set according to the actual application requirements.
Based on the above embodiments, the embodiments of the present invention can implement the switching between full-screen pages, the moving of the video window, and the size adjustment by a touch operation manner, and can further improve the flexibility of the switching and adjustment of the video window.
Based on the above embodiments, it is considered that playing multiple videos simultaneously in a single full screen page easily occupies a large amount of computing resources of the device. In order to avoid the equipment jam caused by resource occupation, the embodiment of the invention can also self-adaptively adjust the video parameters corresponding to the currently played videos according to the use condition of the equipment computing resources so as to reduce the resource occupation. In a possible case, after the video playing is performed in each target video window, the method may further include:
step 81: acquiring the CPU utilization rate, the CPU work core number and the memory utilization rate;
step 82: and adjusting the video parameters corresponding to the videos played by the target video windows according to the CPU utilization rate, the CPU work core number and the memory utilization rate.
The embodiment of the present invention does not limit specific video parameters, and the specific video parameters may be, for example, resolution, code rate, and the like. The embodiment of the present invention does not limit how to adjust the video parameters according to the CPU utilization, the CPU core count, and the memory utilization, but it can be understood that if the CPU utilization and the memory utilization are higher and the CPU core count is more, the video parameters should be adjusted downward, that is, the video quality should be reduced, so as to reduce the CPU utilization and the memory utilization, and reduce the CPU core occupied by playing the video. The following description will be made based on a specific example. If nine windows currently playing videos exist, the utilization rates of a CPU and a memory can be obtained through a system self-contained method, if the utilization rate of the CPU exceeds 50%, the working core is larger than 2 cores, the utilization rate of the memory reaches 70%, and the memory occupation reaches 2g, 5 windows are automatically switched into auxiliary code streams, namely the video quality of the 5 windows is reduced; if the CPU utilization rate exceeds 60%, the work core is larger than 2 cores, the memory utilization rate reaches 80% and the memory occupation reaches 2g, only the first window plays the main code stream at the moment, other windows are switched into the auxiliary code stream, namely, only one window is ensured to play with higher image quality, and other windows are adjusted to have lower image quality, so that the use of the mobile phone memory and the CPU is reduced.
In the following, the video playing device, the electronic device, and the computer-readable storage medium provided in the embodiments of the present invention are introduced, and the video playing device, the electronic device, and the computer-readable storage medium described below may be referred to in correspondence with the video playing method described above.
Referring to fig. 7, fig. 7 is a block diagram of a video playing apparatus according to an embodiment of the present invention, where the apparatus may include:
an obtaining module 701, configured to obtain a preset linked list and a corresponding relationship table when it is detected that a page switching event is triggered; the nodes connected in sequence in the linked list are used for sequentially storing the window information of each video window, and the corresponding relation table is used for storing the corresponding relation between each video window and the full screen page;
an information determining module 702, configured to determine a full-screen page to be switched corresponding to the page switching event, search a target video window corresponding to the full-screen page to be switched according to the correspondence table, and determine target window information and an arrangement order of each target video window by using a linked list;
the page generating module 703 is configured to generate a full-screen page to be switched, generate target video windows according to the target window information, and arrange each target video window in the full-screen page to be switched according to the arrangement order;
and the page output module 704 is used for outputting a full-screen page to be switched and playing videos in each target video window.
Optionally, the apparatus may further include:
the initialization parameter acquisition module is used for acquiring the total number of video windows, the total number of full-screen pages and preset layout information; the preset layout information comprises the number of video windows which can be accommodated in each full-screen page;
the linked list initialization module is used for creating a linked list by taking the total number of the video windows as the number of the nodes and adding window information into each node of the linked list;
and the corresponding relation table initialization module is used for sequentially determining the corresponding relation between each video window and each full-screen page according to the total number of the full-screen pages, the number of the video windows which can be accommodated by each full-screen page and the sequence of the nodes of each video window in the linked list, and recording the corresponding relation to the corresponding relation table.
Optionally, the preset layout information further includes placeable positions of the video windows in a full screen page, and the page generating module 703 may include:
the position determining sub-module is used for sequentially determining the actual positions of all target video windows in the full screen page to be switched according to the arrangement sequence and the placeable positions;
and the arrangement sub-module is used for arranging the target video window to the full screen page to be switched according to the actual position.
Optionally, the apparatus may further include:
the touch point detection module is used for determining the position and the touch action corresponding to the touch point when the touch point is detected in the display equipment;
and the page switching event triggering module is used for triggering a page switching event when the touch action is determined to be a horizontal sliding action and the sliding distance is greater than a preset distance.
Optionally, the apparatus may further include:
the first main video window setting module is used for setting a target video window where the touch point is located as a main video window when the touch action is determined to be a pressing action and the action holding duration exceeds the preset duration;
the moving module is used for moving the main video window according to the position of the touch point when the touch point is determined not to be released, and adjusting the arrangement sequence between the main video window and other target video windows according to the moving position of the main video window;
and the setting module is used for stopping moving the main video window when the touch point is determined to be released, and adjusting the sequence of the nodes of the main video window in the linked list according to the adjusted arrangement sequence.
Optionally, the apparatus may further include:
the judging module is used for judging whether the number of times of continuous clicking of a target video window where the touch point is located exceeds a preset number of times when the touch action is determined to be a clicking action;
and the window size adjusting module is used for setting the target video window where the touch point is located as a main video window if the touch point is located, and amplifying the main video window to a preset size.
Optionally, the apparatus may further include:
the computing resource parameter acquisition module is used for acquiring the CPU utilization rate, the CPU working core number and the memory utilization rate;
and the video parameter adjusting module is used for adjusting the video parameters corresponding to the videos played by the target video windows according to the CPU utilization rate, the CPU work core number and the memory utilization rate.
Optionally, the apparatus may further include:
the page and window determining module is used for determining a currently displayed visible full-screen page and a visible video window contained in the page;
the pause and cache module is used for pausing the video played by each visible video window and caching the currently displayed image frame of each visible video window to the corresponding node;
correspondingly, the device can also comprise:
and the image frame setting module is used for setting the image frames of the target video window in the target video window when the image frames are cached in the nodes of the target video window, and executing the step of outputting the full screen page to be switched after the setting is finished.
An embodiment of the present invention further provides an electronic device, including:
a memory for storing a computer program;
a processor for implementing the steps of the video playing method as described above when executing the computer program.
Since the embodiment of the electronic device portion corresponds to the embodiment of the video playing method portion, please refer to the description of the embodiment of the video playing method portion for the embodiment of the electronic device portion, which is not described herein again.
An embodiment of the present invention further provides a computer-readable storage medium, where a computer program is stored on the computer-readable storage medium, and when the computer program is executed by a processor, the steps of the video playing method in any of the above embodiments are implemented.
Since the embodiment of the computer-readable storage medium portion corresponds to the embodiment of the video playing method portion, please refer to the description of the embodiment of the video playing method portion for the embodiment of the storage medium portion, which is not described herein again.
The embodiments are described in a progressive manner in the specification, each embodiment focuses on differences from other embodiments, and the same and similar parts among the embodiments are referred to each other. The device disclosed by the embodiment corresponds to the method disclosed by the embodiment, so that the description is simple, and the relevant points can be referred to the method part for description.
Those of skill would further appreciate that the various illustrative elements and algorithm steps described in connection with the embodiments disclosed herein may be implemented as electronic hardware, computer software, or combinations of both, and that the various illustrative components and steps have been described above generally in terms of their functionality in order to clearly illustrate this interchangeability of hardware and software. Whether such functionality is implemented as hardware or software depends upon the particular application and design constraints imposed on the implementation. Skilled artisans may implement the described functionality in varying ways for each particular application, but such implementation decisions should not be interpreted as causing a departure from the scope of the present invention.
The steps of a method or algorithm described in connection with the embodiments disclosed herein may be embodied directly in hardware, in a software module executed by a processor, or in a combination of the two. A software module may reside in Random Access Memory (RAM), memory, read-only memory (ROM), electrically programmable ROM, electrically erasable programmable ROM, registers, hard disk, a removable disk, a CD-ROM, or any other form of storage medium known in the art.
The video playing method, the video playing device, the electronic device and the storage medium provided by the invention are described in detail above. The principles and embodiments of the present invention have been described herein using specific examples, which are presented only to assist in understanding the method and its core concepts of the present invention. It should be noted that, for those skilled in the art, it is possible to make various improvements and modifications to the present invention without departing from the principle of the present invention, and those improvements and modifications also fall within the scope of the claims of the present invention.

Claims (11)

1. A video playback method, comprising:
when detecting that a page switching event is triggered, acquiring a preset linked list and a corresponding relation table; the nodes connected in sequence in the linked list are used for sequentially storing window information of each video window, and the corresponding relation table is used for storing the corresponding relation between each video window and a full-screen page;
determining a full screen page to be switched corresponding to the page switching event, searching a target video window corresponding to the full screen page to be switched according to the corresponding relation table, and determining target window information and an arrangement sequence of each target video window by using the linked list;
generating the full-screen page to be switched, generating the target video windows according to the target window information, and arranging each target video window in the full-screen page to be switched according to the arrangement sequence;
and outputting the full screen page to be switched, and playing videos in the target video windows.
2. The video playback method of claim 1, further comprising, before detecting that a page switch event is triggered:
acquiring the total number of video windows, the total number of full-screen pages and preset layout information; the preset layout information comprises the number of video windows which can be accommodated by each full screen page;
creating the linked list by taking the total number of the video windows as the number of nodes, and adding the window information into each node of the linked list;
and according to the total number of the full-screen pages, the number of the video windows capable of being held by each full-screen page and the sequence of the nodes of each video window in the linked list, sequentially determining the corresponding relation between each video window and each full-screen page, and recording the corresponding relation to the corresponding relation table.
3. The video playing method according to claim 2, wherein the preset layout information further includes placeable positions of the video windows in the full-screen page, and the arranging of the target video windows in the full-screen page to be switched according to the arrangement order includes:
determining the actual position of each target video window in the full screen page to be switched according to the arrangement sequence and the placeable position;
and arranging the target video window to the full screen page to be switched according to the actual position.
4. The video playback method of claim 1, further comprising:
when a touch point is detected in display equipment, determining a position and a touch action corresponding to the touch point;
and when the touch action is determined to be a horizontal sliding action and the sliding distance is greater than a preset distance, triggering the page switching event.
5. The video playing method according to claim 4, further comprising, after determining the position and the touch action corresponding to the touch point:
when the touch action is determined to be a pressing action and the action holding duration exceeds the preset duration, setting a target video window where the touch point is located as a main video window;
when the touch point is determined not to be released, moving the main video window according to the position of the touch point, and adjusting the arrangement sequence between the main video window and other target video windows according to the moving position of the main video window;
and when the touch point is determined to be released, stopping moving the main video window, and adjusting the sequence of the nodes of the main video window in the linked list according to the adjusted arrangement sequence.
6. The video playing method according to claim 4, further comprising, after determining the position and the touch action corresponding to the touch point:
when the touch action is determined as the click action, judging whether the number of times that a target video window where the touch point is located is continuously clicked exceeds a preset number of times;
if yes, setting a target video window where the touch point is located as a main video window, and amplifying the main video window to a preset size.
7. The video playing method according to claim 1, further comprising, after the video playing in each of the target video windows:
acquiring the CPU utilization rate, the CPU work core number and the memory utilization rate;
and adjusting video parameters corresponding to the videos played by the target video windows according to the CPU utilization rate, the CPU work core number and the memory utilization rate.
8. The video playing method according to any one of claims 1 to 7, further comprising, after detecting that the page switch event is triggered:
determining a currently displayed visible full-screen page and a visible video window contained in the currently displayed visible full-screen page;
pausing the video played by each visible video window, and caching the currently displayed image frame of each visible video window to a corresponding node;
correspondingly, after arranging each target video window in the full screen page to be switched according to the arrangement sequence, the method further comprises the following steps:
and when the image frame is cached in the node of the target video window, setting the image frame of the target video window in the target video window, and executing the step of outputting the full screen page to be switched after the setting is finished.
9. A video playback apparatus, comprising:
the acquisition module is used for acquiring a preset linked list and a corresponding relation list when detecting that a page switching event is triggered; the nodes connected in sequence in the linked list are used for sequentially storing window information of each video window, and the corresponding relation table is used for storing the corresponding relation between each video window and a full-screen page;
an information determining module, configured to determine a full-screen page to be switched corresponding to the page switching event, search a target video window corresponding to the full-screen page to be switched according to the correspondence table, and determine target window information and an arrangement order of each target video window by using the linked list;
the page generating module is used for generating the full-screen page to be switched, generating the target video windows according to the target window information, and arranging each target video window in the full-screen page to be switched according to the arrangement sequence;
and the page output module is used for outputting the full screen page to be switched and playing videos in the target video windows.
10. An electronic device, comprising:
a memory for storing a computer program;
a processor for implementing the video playback method as claimed in any one of claims 1 to 8 when executing the computer program.
11. A computer-readable storage medium having stored thereon computer-executable instructions that, when loaded and executed by a processor, carry out a video playback method as claimed in any one of claims 1 to 8.
CN202310064206.XA 2023-02-06 2023-02-06 Video playing method and device, electronic equipment and storage medium Pending CN115802093A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202310064206.XA CN115802093A (en) 2023-02-06 2023-02-06 Video playing method and device, electronic equipment and storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202310064206.XA CN115802093A (en) 2023-02-06 2023-02-06 Video playing method and device, electronic equipment and storage medium

Publications (1)

Publication Number Publication Date
CN115802093A true CN115802093A (en) 2023-03-14

Family

ID=85429860

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202310064206.XA Pending CN115802093A (en) 2023-02-06 2023-02-06 Video playing method and device, electronic equipment and storage medium

Country Status (1)

Country Link
CN (1) CN115802093A (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN118075571A (en) * 2024-04-12 2024-05-24 北京搜狐新动力信息技术有限公司 Player reuse management method, device, equipment, and readable storage medium
CN119851189A (en) * 2025-03-20 2025-04-18 杭州阿启视科技有限公司 Video tag sharing multiplexing method and device, electronic equipment and medium

Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101365117A (en) * 2008-09-18 2009-02-11 中兴通讯股份有限公司 Method for customized screen splitting mode
CN101763213A (en) * 2009-12-28 2010-06-30 广东威创视讯科技股份有限公司 Window layout switching method and system thereof
CN102110430A (en) * 2009-12-23 2011-06-29 富士通株式会社 Method and system for multi-window display
CN105159578A (en) * 2015-08-24 2015-12-16 小米科技有限责任公司 Video display mode switching method and apparatus
CN105163167A (en) * 2015-08-20 2015-12-16 三星电子(中国)研发中心 Method and device for continuing to play video
CN105872802A (en) * 2015-12-30 2016-08-17 乐视网信息技术(北京)股份有限公司 Video playing method and device
CN112788276A (en) * 2019-11-11 2021-05-11 中兴通讯股份有限公司 Video stream display method, transmission method, device, terminal, server and medium
CN112822552A (en) * 2021-01-11 2021-05-18 湖南新云网科技有限公司 Multimedia resource loading method, device, equipment and computer storage medium
CN115334355A (en) * 2022-10-17 2022-11-11 广州市保伦电子有限公司 Multi-picture mode switching method and device of web player
CN115495185A (en) * 2022-09-26 2022-12-20 京东方数字科技有限公司 Method and device for displaying page elements

Patent Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101365117A (en) * 2008-09-18 2009-02-11 中兴通讯股份有限公司 Method for customized screen splitting mode
CN102110430A (en) * 2009-12-23 2011-06-29 富士通株式会社 Method and system for multi-window display
CN101763213A (en) * 2009-12-28 2010-06-30 广东威创视讯科技股份有限公司 Window layout switching method and system thereof
CN105163167A (en) * 2015-08-20 2015-12-16 三星电子(中国)研发中心 Method and device for continuing to play video
CN105159578A (en) * 2015-08-24 2015-12-16 小米科技有限责任公司 Video display mode switching method and apparatus
CN105872802A (en) * 2015-12-30 2016-08-17 乐视网信息技术(北京)股份有限公司 Video playing method and device
CN112788276A (en) * 2019-11-11 2021-05-11 中兴通讯股份有限公司 Video stream display method, transmission method, device, terminal, server and medium
CN112822552A (en) * 2021-01-11 2021-05-18 湖南新云网科技有限公司 Multimedia resource loading method, device, equipment and computer storage medium
CN115495185A (en) * 2022-09-26 2022-12-20 京东方数字科技有限公司 Method and device for displaying page elements
CN115334355A (en) * 2022-10-17 2022-11-11 广州市保伦电子有限公司 Multi-picture mode switching method and device of web player

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN118075571A (en) * 2024-04-12 2024-05-24 北京搜狐新动力信息技术有限公司 Player reuse management method, device, equipment, and readable storage medium
CN118075571B (en) * 2024-04-12 2024-06-18 北京搜狐新动力信息技术有限公司 Player multiplexing management method, device, equipment and readable storage medium
CN119851189A (en) * 2025-03-20 2025-04-18 杭州阿启视科技有限公司 Video tag sharing multiplexing method and device, electronic equipment and medium
CN119851189B (en) * 2025-03-20 2025-06-10 杭州阿启视科技有限公司 Video tag sharing and multiplexing method, device, electronic device and medium

Similar Documents

Publication Publication Date Title
CN107341018B (en) Method and device for continuously displaying view after page switching
CN110730387B (en) Video playing control method and device, storage medium and electronic device
US10271105B2 (en) Method for playing video, client, and computer storage medium
CN115802093A (en) Video playing method and device, electronic equipment and storage medium
US20170171274A1 (en) Method and electronic device for synchronously playing multiple-cameras video
CN106331877B (en) Barrage playback method and device
CN111596849B (en) Page processing method, device, equipment and storage medium
CN106210858B (en) Terminal interface switching method and device
KR102758490B1 (en) Live streaming video-based interaction method and device, and device and storage medium
CN108282683B (en) Video interface display method and device
KR20080082119A (en) How to Play Video on Webpage on Mobile Device and Mobile Device
KR20180006433A (en) Information processing method, terminal and computer storage medium
EP4564829A1 (en) Method for sending comment in live-streaming room, method for receiving comment in live-streaming room, and related device
CN110933496A (en) Image data frame interpolation processing method, device, electronic device and storage medium
US9996699B2 (en) Method, electronic device and computer program product for screen shield
CN111935527A (en) Information display method, video playing method and equipment
CN109358941B (en) Control method and electronic equipment
WO2024222443A1 (en) Multimedia resource processing method and apparatus, device, and storage medium
CN105122826B (en) System and method for displaying annotated video content by a mobile computing device
CN111818393A (en) Video progress adjusting method and device and electronic equipment
CN114173198B (en) Barrage rendering method and device, storage medium and electronic equipment
CN113923469B (en) Method, device, equipment and storage medium for processing continuous delivery of gift in live broadcast
CN111124338A (en) Screen control method and touch display device
KR101944454B1 (en) Information processing program and information processing method
CN112087546A (en) Message display method and electronic device

Legal Events

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