Summary of the invention
In order to solve the above-mentioned technical problem, the purpose of the present invention is to provide a kind of video progress bar display methods, device
And storage medium.
On the one hand, the embodiment of the present invention includes a kind of video progress bar display methods, comprising the following steps:
Obtain plot information relevant to video;
Visualization conversion is carried out to the plot information;
According to the visualization conversion as a result, corresponding position on a progress bar is shown.
Further, it the step for acquisition plot information relevant to video, specifically includes:
Obtain the scoring carried out at least one segment in the video;
Scoring obtained by each segment is summarized respectively;It is the plot to be obtained letter by the scoring summarized
Breath.
Further, it the step for acquisition plot information relevant to video, specifically includes:
Recognition of face is carried out to each frame at least one segment in the video;The recognition of face goes out to regard for identification
Role in frequency or its segment;
According to the recognition result of the recognition of face, the frequency of occurrence of each role in each segment is counted respectively;
According to the frequency of occurrence of each role and preset role's weighted value, it is corresponding to calculate separately each segment
Role's score value;Role's score value is the plot information to be obtained.
Further, it described the step for visualization conversion is carried out to the plot information, specifically includes:
According to the plot information, corresponding numerical chracter is generated;
The size adjusting of the numerical chracter is extremely matched with the progress bar.
Further, it described the step for visualization conversion is carried out to the plot information, specifically includes:
According to the plot information, lookup obtains corresponding color;
Generate the color lump with the color;
The size adjusting of the color lump is extremely matched with the progress bar.
Further, it described the step for visualization conversion is carried out to the plot information, specifically includes:
According to the plot information, lookup obtains corresponding shape;
Generate the pattern with the shape;
The size adjusting of the pattern is extremely matched with the progress bar.
Further, it is described according to it is described visualization conversion as a result, corresponding position on a progress bar carries out showing this
One step, specifically includes:
Generate progress bar profile;The progress bar contoured interior has fillable position;
The result of the visualization conversion is filled to the corresponding position of the progress bar contoured interior;
The progress bar profile of the display by filling.
Further, it is described according to it is described visualization conversion as a result, corresponding position on a progress bar carries out showing this
One step, specifically includes:
Set arragement direction;
According to corresponding position of the corresponding plot information in the video, determine that the result of the visualization conversion exists
Distributing order on the arragement direction;
According to the arragement direction and distributing order, arrange to the result of the visualization conversion;
Using the result of the arrangement as progress bar;
Show the progress bar.
On the other hand, the embodiment of the invention also includes a kind of video progress bar display device, including memory and processor,
The memory is for storing at least one program, and the processor is for loading at least one described program to execute the present invention
Embodiment the method.
On the other hand, the embodiment of the invention also includes a kind of storage mediums, with store function, wherein being stored with processing
The executable instruction of device, the executable instruction of the processor are used to execute the method for the present invention when executed by the processor.
The beneficial effects of the present invention are: carrying the progress bar of plot information by display, may be implemented to plot information
Normalization is shown, intuitively shows the situation of change of the plot information of entire video, and the user that is more convenient for is accurately from progress bar
Middle oneself interested playing time of selection, and jump to selected playing time and play out.With pass through in the prior art
Preview video shows that the technological means of plot information is compared, and the method in the embodiment of the present invention is more intuitive and efficient, and right
The result that the plot information carries out visualization conversion usually only needs lesser data volume to go to indicate, therefore when using this implementation
Example in method when, less occupy user network flow, mitigate the burden of internet.
Specific embodiment
In the present embodiment, be illustrated by scene used below to the method for the present invention: user uses television set, notes
The equipment such as this computer, desktop computer, tablet computer and mobile phone are connected to internet, access video playback website, pass through browsing
Video reproduction program or dedicated video jukebox software on device, the equipment of user get the view from video playback website
The data of frequency carry out the processing such as transcoding to data by the equipment of user, and are shown by display screen.
The progress bar in the present embodiment refers to that the one group of dynamic shown on the display interface of video jukebox software becomes
The figure of change, by the situation of change of progress bar, user is known that the total duration and playback progress of current video, can be with
By movements such as dragging progress bars, selection is played since the picture that current picture jumps to given time, and carries out F.F.
With the play operation such as rewind.
In the present embodiment, referring to Fig.1, the video progress bar display methods the following steps are included:
S1. plot information relevant to video is obtained;
S2. visualization conversion is carried out to the plot information;
S3. according to the visualization conversion as a result, corresponding position on a progress bar is shown.
Plot information described in step S1, refers to the information for describing or evaluating the plot that video content is shown,
The form of expression of the plot information can be text, picture, sound and video etc..The plot information can be the system of video
The information such as official's introduction, trailer or synopsis that work side issues are also possible to by carrying out questionnaire survey institute to spectators
Role likes evil degree perhaps plot comments grading information to can also be through big data or artificial intelligence in the impression of view of acquisition, play
The related evaluation index that the technologies such as energy are obtained after analyzing video.
In step S2, plot information is subjected to visualization conversion, so that can be by the result of visualization conversion in step S3
It is shown on the corresponding position of display interface, to be superimposed upon on original progress bar, or itself becomes progress bar
A part.
By execution step S1-S3, shown progress bar carries plot information on display interface.Since progress bar is
What normalization was shown, and be usually integrally shown when progress bar, therefore by executing progress shown by step S1-S3
Item intuitively shows the situation of change of the plot information of entire video, and the user that is more convenient for accurately selects certainly from progress bar
Oneself interested playing time, and jump to selected playing time and play out.With pass through preview video in the prior art
Show that the technological means of plot information is compared, the method in the present embodiment is more intuitive and efficient, and to the plot information
The result for carrying out visualization conversion usually only needs lesser data volume to go to indicate, therefore when using the method in the present embodiment
When, the network flow of user is less occupied, the burden of internet is mitigated.
It is further used as preferred embodiment, the step S1, i.e. acquisition this step of plot information relevant to video
Suddenly, it specifically includes:
S101A. the scoring carried out at least one segment in the video is obtained;
S102A. scoring obtained by each segment is summarized respectively;It to be obtained by the scoring summarized
Plot information.
The step S1 can be made of step S101A and S102A, at this point, acquired plot information refer to it is multiple not
Scoring with user to video or its segment.
Before executing step S101A and S102A, segment processing first is carried out to the video.For example, long for one section
The video of 80min can be divided into the segment that 16 segment length such as 0-4min59s, 5min0s-9min59s is 5min, then to this
Processing is numbered in a little segments respectively, such as successively compiling is No. 1, No. 2 etc..The segment processing is executed on backstage, is only needed
The boundary moment between segment two neighboring in video is marked on backstage, it is not necessary to by display interface by segment processing
It comes out as the result is shown.
In step S101A, the scoring refers to video production quotient or video playing service provider to this video of viewing
All user investigations obtain score.For example, video jukebox software may be set in the process that any user watches this video
In, scoring input frame is shown by way of pop-up or using wicket, guidance watches the user of this video to this view
The plot of segment (No. 3 segment) in frequency between 10min0s-14min59s is evaluated, so that user regards according to its viewing
It is formed by subjective feeling after frequency and provides scoring, and is input in scoring input frame and is uploaded.Code of points can be set as
0-9 points of scoring is provided according to the excellent degree of plot, wherein 9 points indicate excellent degree highest.
The process that scoring is obtained above by scoring input frame, can also carry out after user has watched this video.
After video production quotient or video playing service provider get scoring, scoring is stored, and with each view
Frequency segment establishes mapping relations.
The process of scoring is obtained by executing a large amount of different users above by scoring input frame, it is available right
Multiple scorings of No. 1-No. 16 equal 16 segments.In step S102A, scoring obtained is summarized, it is described summarize refer to
For each segment, its resulting scoring is added up to obtain a total score, or total score is right divided by this segment institute
That answers is scored number, to obtain an average mark.The total score or average mark are exactly the play to be obtained in step S1
Feelings information.
For example, the scoring of available No. 1-No. 16 equal 16 segments is respectively as follows: by way of calculating average mark
No. 1 segment: 2 points;
No. 2 segment: 1 point;
No. 3 segment: 2 points;
No. 4 segment: 3 points,
No. 5 segment: 3 points;
No. 6 segment: 4 points;
No. 7 segment: 5 points;
No. 8 segment: 8 points;
No. 9 segment: 9 points;
No. 10 segment: 6 points;
O.11 segment: 5 points;
No. 12 segment: 5 points;
No. 13 segment: 4 points;
No. 14 segment: 3 points;
No. 15 segment: 3 points;
No. 16 segment: 1 point.
By executing the resulting plot information of step S101A-S102A, spectators group is reflected to the authentic assessment of video,
It can objectively reflect video and the wherein excellent degree of plot and pouplarity of each segment, it can be for as the present embodiment
The user of method service object provides good reference.
It is further used as preferred embodiment, the step S1, i.e. acquisition this step of plot information relevant to video
Suddenly, it specifically includes:
S101B. recognition of face is carried out to each frame at least one segment in the video;The recognition of face is for knowing
It Chu not role in video or its segment;
S102B. according to the recognition result of the recognition of face, the occurrence out of each role in each segment is counted respectively
Number;
S103B. according to the frequency of occurrence of each role and preset role's weighted value, each segment is calculated separately
Corresponding role's score value;Role's score value is the plot information to be obtained.
The step S1 can be made of step S101B-S103B, at this point, acquired plot information refers to role point
Value.
First the video is carried out as segment processing with before executing step S101A and S102A, is executing step
Before S101B-S103B, identical segment processing first also is carried out to the video, that is: for example, 80min long for one section
Video can be divided into the segment that 16 segment length such as 0-4min59s, 5min0s-9min59s is 5min, then to these segments
Processing is numbered respectively, such as successively compiling is No. 1, No. 2 etc..The segment processing is executed on backstage, only need to be on backstage
Boundary moment between segment two neighboring in video is marked, it is not necessary to be shown the result of segment processing by display interface
It shows and.
In step S101B, recognition of face is carried out for each frame in each segment respectively, to identify in each frame whether wrap
Contain specific role.
In step S102B, " female No.1 role is comprised in a frame " is defined as " female's No.1 role in the segment go out
It is now primary ", recognition of face is carried out to all frames of the segment and number is accumulative, appearance of the available role A in the segment
Number.The recognition of face of all frames is carried out for all roles occurred in play and number adds up, and available each role exists
Frequency of occurrence in the segment.
In step S103B, mode as shown in Table 1 is referred to set role's weighted value, and calculate role's score value,
Role's score value is weighted sum result of frequency of occurrence of the role in segment according to corresponding role's weighted value.
Table 1
The plot content for being included by video is all carried out around dominant role, if a segment is included
The scene of key player is more, then the excellent degree of the plot of the segment is higher.It is resulting by executing step S101B-S103B
Plot information can reflect the excellent degree of plot of each segment from objective level, avoid passing through and investigate spectators group
Brought subjective assessment influences, can be to provide objective reference as the user of the present embodiment method service object.
Since in most of video jukebox software, the progress that progress bar is shown is the variation with video playing duration
And linear change, no matter progress bar is to be indicated by the color lump length of strip plane pattern, or pass through container-like calculating
Visual effects such as " having occupied volume " of figure indicate to indicate, or by other visual effects, when carrying out to video
When segment processing, it is also desirable to carry out corresponding segment processing to progress bar, such as the progress bar of strip plane pattern form is divided
At isometric 16 sections.In the present embodiment, need to get by step S101A-S102A or step S101B-S103B 16
The corresponding plot information of a video clip, is shown respectively by this 16 sections of progress bar, or according to this 16 piece of video
The corresponding plot information of section generates corresponding 16 visual effects, so that this 16 visual effects form progress bar, to realize
The display of progress bar and plot information.
It is further used as preferred embodiment, the step S2 carries out visualization to the plot information and converts this
One step, specifically includes:
S201A. according to the plot information, corresponding numerical chracter is generated;
S202A. the size adjusting of the numerical chracter is extremely matched with the progress bar.
The step S2 can be made of step S201A-S202A.
In the present embodiment, it is illustrated using the implementing result of step S101A-S102A.As previously mentioned, step
The implementing result of S101A-S102A are as follows: No. 1 segment: 2 points;No. 2 segment: 1 point;No. 3 segment: 2 points;No. 4 segment: 3
Point, No. 5 segment: 3 points;No. 6 segment: 4 points;No. 7 segment: 5 points;No. 8 segment: 8 points;No. 9 segment: 9 points;10th
Number segment: 6 points;O.11 segment: 5 points;No. 12 segment: 5 points;No. 13 segment: 4 points;No. 14 segment: 3 points;No. 15
Segment: 3 points;No. 16 segment: 1 point.
In step S201A, according to the scoring, generate corresponding numerical chracter, specifically generate with each segment
Divide corresponding numerical chracter, such as No. 1 segment for being 2 points for scoring, generate numerical chracter " 2 ", is 8 points for scoring
No. 8 segment generates numerical chracter " 8 ".
In step S202A, the size of each numerical chracter generated is adjusted to the progress bar and is matched, is made
Obtaining each numerical chracter can be shown in the corresponding position of progress bar.
As shown in Fig. 2, wherein the progress bar is divided into 16 sections, every section respectively corresponds the display effect of the numerical chracter
No. 1 segment and No. 2 segment in video etc., when user drags on the progress bar, video reproduction program meeting
The final stop place for detecting dragging, to play the video since corresponding video clip.Each section in the progress bar
Position is displayed for corresponding numerical chracter respectively, and user is allowed to know each segment in video according to numerical chracter
Scoring is plot information.
It is further used as preferred embodiment, the step S2 carries out visualization to the plot information and converts this
One step, specifically includes:
S201B. according to the plot information, lookup obtains corresponding color;
S202B. the color lump with the color is generated;
S203B. the size adjusting of the color lump is extremely matched with the progress bar.
The step S2 can be made of step S201B-S203B.
In the present embodiment, it is illustrated using the implementing result of step S101A-S102A.As previously mentioned, step
The implementing result of S101A-S102A are as follows: No. 1 segment: 2 points;No. 2 segment: 1 point;No. 3 segment: 2 points;No. 4 segment: 3
Point, No. 5 segment: 3 points;No. 6 segment: 4 points;No. 7 segment: 5 points;No. 8 segment: 8 points;No. 9 segment: 9 points;10th
Number segment: 6 points;O.11 segment: 5 points;No. 12 segment: 5 points;No. 13 segment: 4 points;No. 14 segment: 3 points;No. 15
Segment: 3 points;No. 16 segment: 1 point.
In step S201B, the corresponding color of each segment is searched according to following rule: being scored corresponding green for 1-3 points, is commented
It is divided into 4-6 points of corresponding blues, scores corresponding red for 7-9 points.
In step S202B, respectively each segment generates green, blue and red color lump.
In step S203B, by the size adjusting of the color lump to matching with the progress bar, each color lump is existed
The corresponding position of progress bar is shown.
For the display effect of the color lump as shown in figure 3, wherein the progress bar is divided into 16 sections, every section respectively corresponds video
In No. 1 segment and No. 2 segment etc., when user drags on the progress bar, video reproduction program can be detected
The final stop place of dragging, to play the video since corresponding video clip.In the progress bar where each section
Position is displayed for corresponding color lump respectively, and user is allowed to know the scoring of each segment in video i.e. according to the color of color lump
Plot information.
It should be noted that, although the color of each color lump is to be indicated with Chinese characters such as " green ", but these Chinese characters are used only as in Fig. 3
Relevant colors are illustrated, these chinese displies must be gone out when being not offered as method in embodiment in which that present invention is implemented
Come.
It is further used as preferred embodiment, the step S2 carries out visualization to the plot information and converts this
One step, specifically includes:
S201C. according to the plot information, lookup obtains corresponding shape;
S202C. the pattern with the shape is generated;
S203C. the size adjusting of the pattern is extremely matched with the progress bar.
The step S2 can be made of step S201C-S203C.
In the present embodiment, it is illustrated using the implementing result of step S101A-S102A.As previously mentioned, step
The implementing result of S101A-S102A are as follows: No. 1 segment: 2 points;No. 2 segment: 1 point;No. 3 segment: 2 points;No. 4 segment: 3
Point, No. 5 segment: 3 points;No. 6 segment: 4 points;No. 7 segment: 5 points;No. 8 segment: 8 points;No. 9 segment: 9 points;10th
Number segment: 6 points;O.11 segment: 5 points;No. 12 segment: 5 points;No. 13 segment: 4 points;No. 14 segment: 3 points;No. 15
Segment: 3 points;No. 16 segment: 1 point.
In step S201C, the corresponding shape of each segment is searched according to following rule: being scored rectangular for 1-3 points of correspondences, is commented
It is divided into 4-6 points of corresponding triangles, scores corresponding round for 7-9 points.
In step S202C, respectively each segment generates rectangular, triangle and circular pattern.
In step S203C, by the size adjusting of the pattern to matching with the progress bar, each pattern is existed
The corresponding position of progress bar is shown.
For the display effect of the pattern as shown in figure 4, wherein the progress bar is divided into 16 sections, every section respectively corresponds video
In No. 1 segment and No. 2 segment etc., when user drags on the progress bar, video reproduction program can be detected
The final stop place of dragging, to play the video since corresponding video clip.In the progress bar where each section
Position is displayed for corresponding pattern respectively, and user is allowed to know the scoring of each segment in video i.e. according to the shape of pattern
Plot information.
It is further used as preferred embodiment, the step S3, i.e., according to the visualization conversion as a result, in progress
The step for corresponding position on item is shown, specifically includes:
S301A. progress bar profile is generated;The progress bar contoured interior has fillable position;
S302A. the result by the visualization conversion is filled to the corresponding position of the progress bar contoured interior;
S303A. the progress bar profile by filling is shown.
The step S3 can be made of step S301A-S303A.
Step S301A-S303A is one of technology for realizing Fig. 2-each progress bar visual effect shown in Fig. 4
Means.In step S301A, video reproduction program can call graphics processor to generate progress bar profile, the progress bar profile
Can be as shown in Figures 2 and 3 having, multiple inner parts are rectangular every the strip of line segment, and each inner part is rectangular by strip every line segment
It is divided into 16 fillable rectangular fritters.
It, will be in filling to each rectangular fritter such as numerical chracters such as " 2 " or green color lump in step S302A.
In step S303A, the progress bar profile by filling is shown, to obtain the effect such as Fig. 2 and Fig. 3
Fruit.
It is further used as preferred embodiment, the step S3, i.e., according to the visualization conversion as a result, in progress
The step for corresponding position on item is shown, specifically includes:
S301B. arragement direction is set;
S302B. the corresponding position according to corresponding plot information in the video determines the visualization conversion
As a result the distributing order on the arragement direction;
S303B. it according to the arragement direction and distributing order, arranges to the result of the visualization conversion;
S304B. using the result of the arrangement as progress bar;
S305B. the progress bar is shown.
The step S3 can be made of step S301B-S305B.
Step S301B-S305B is another technological means for realizing each progress bar visual effect shown in Fig. 2-4.
In step S301B, set along display interface horizontal direction from left to right as arragement direction.
In step S302B, distributing order of the result of the visualization conversion on the arragement direction is determined.Specifically
To determine numerical chracter corresponding to each segment, color lump or pattern according to the number order of segment each in video.For example, this reality
Apply numerical chracter corresponding to No. 1-the No. 16 video clip in example be respectively 2,1,2,3,3,4,5,8,9,6,5,5,4,3,
3,1;The color of corresponding color lump respectively green, green, green, green, green, blue, blue, red, red, indigo plant
Color, blue, blue, blue, green, green, green;The shape of corresponding pattern is respectively rectangular, it is rectangular, rectangular, rectangular,
It is rectangular, triangle, triangle, circle, circle, triangle, triangle, triangle, triangle, rectangular, rectangular, rectangular.
In step S303B, by numerical chracter, color lump or pattern respectively according to identified sequence in step S302B, from
It arranges on the arragement direction of right-to-left.The resulting figure that will arrange in step S304B is integrally used as progress bar.When executing step
When rapid S305B shows these progress bars, effect shown in Fig. 2-4 just can be respectively obtained.
The present embodiment further includes a kind of video progress bar display device, including memory and processor, and the memory is used
In storing at least one program, the processor is for loading at least one described program to execute side described in the embodiment of the present invention
Method.
The video play device, including can be used to execute the television set of the present embodiment the method, laptop,
The user equipmenies such as desktop computer, tablet computer and mobile phone.The present embodiment the method can pass through corresponding computer program
It executes, no matter the user equipment is to be preinstalled such computer program in production, or be mounted after factory
Such computer program belongs to video play device described in the present embodiment.
The present embodiment further includes a kind of storage medium, wherein being stored with the executable instruction of processor, the processor can
The instruction of execution is used to execute when executed by the processor video progress bar display methods of the present invention.
It is aobvious can to execute video progress bar of the invention for video progress bar display device and storage medium in the present embodiment
Show that method, any combination implementation steps of executing method embodiment have the corresponding function of this method and beneficial effect.
It should be noted that unless otherwise specified, when a certain feature referred to as " fixation ", " connection " are in another feature,
It can directly fix, be connected to another feature, and can also fix, be connected to another feature indirectly.In addition, this
The descriptions such as the upper and lower, left and right used in open are only the mutual alignment pass relative to each component part of the disclosure in attached drawing
For system.The "an" of used singular, " described " and "the" are also intended to including most forms in the disclosure, are removed
Non- context clearly expresses other meaning.In addition, unless otherwise defined, all technology and science used in the present embodiment
Term is identical as the normally understood meaning of those skilled in the art.This example demonstrates that term used in book is
In order to describe specific embodiment, it is not intended to be limiting of the invention.Term "and/or" used in the present embodiment includes one
Or the arbitrary combination of multiple relevant listed items.
It will be appreciated that though various elements, but this may be described using term first, second, third, etc. in the disclosure
A little elements should not necessarily be limited by these terms.These terms are only used to for same type of element being distinguished from each other out.For example, not departing from
In the case where disclosure range, first element can also be referred to as second element, and similarly, second element can also be referred to as
One element.The use of any and all example or exemplary language provided by the present embodiment (" such as ", " such as ") is only anticipated
The embodiment of the present invention is better described in figure, and unless the context requires otherwise, otherwise will not apply to the scope of the present invention and limit.
It should be appreciated that the embodiment of the present invention can be by computer hardware, the combination of hardware and software or by depositing
The computer instruction in non-transitory computer-readable memory is stored up to be effected or carried out.Standard volume can be used in the method
Journey technology-includes that the non-transitory computer-readable storage media configured with computer program is realized in computer program,
In configured in this way storage medium computer is operated in a manner of specific and is predefined --- according in a particular embodiment
The method and attached drawing of description.Each program can with the programming language of level process or object-oriented come realize with department of computer science
System communication.However, if desired, the program can be realized with compilation or machine language.Under any circumstance, which can be volume
The language translated or explained.In addition, the program can be run on the specific integrated circuit of programming for this purpose.
In addition, the operation of the process of the present embodiment description can be performed in any suitable order, unless the present embodiment is another
It is outer instruction or otherwise significantly with contradicted by context.The process (or modification and/or combination thereof) of the present embodiment description can
Configured with executable instruction one or more computer systems control under execute, and can be used as jointly at one or
The code (for example, executable instruction, one or more computer program or one or more application) that is executed on multiple processors,
It is realized by hardware or combinations thereof.The computer program includes the multiple instruction that can be performed by one or more processors.
Further, the method can be realized in being operably coupled to suitable any kind of computing platform, wrap
Include but be not limited to PC, mini-computer, main frame, work station, network or distributed computing environment, individual or integrated
Computer platform or communicated with charged particle tool or other imaging devices etc..Each aspect of the present invention can be to deposit
The machine readable code on non-transitory storage medium or equipment is stored up to realize no matter be moveable or be integrated to calculating
Platform, such as hard disk, optical reading and/or write-in storage medium, RAM, ROM, so that it can be read by programmable calculator, when
Storage medium or equipment can be used for configuration and operation computer to execute process described herein when being read by computer.This
Outside, machine readable code, or part thereof can be transmitted by wired or wireless network.When such media include combining microprocessor
Or other data processors are when realizing the instruction or program of steps described above, invention described in the present embodiment include these and its
His different types of non-transitory computer-readable storage media.When methods and techniques according to the present invention programming, this
Invention further includes computer itself.
Computer program can be applied to input data to execute function described in the present embodiment, to convert input data
It is stored with generating to the output data of nonvolatile memory.Output information can also be applied to one or more output equipments such as
Display.In the preferred embodiment of the invention, the data of conversion indicate physics and tangible object, including generate on display
Physics and physical objects particular visual describe.
The above, only presently preferred embodiments of the present invention, the invention is not limited to above embodiment, as long as
It reaches technical effect of the invention with identical means, all within the spirits and principles of the present invention, any modification for being made,
Equivalent replacement, improvement etc., should be included within the scope of the present invention.Its technical solution within the scope of the present invention
And/or embodiment can have a variety of different modifications and variations.