Abstract
In general techniques are described for performing motion vector prediction for video coding. A video coding device comprising a processor may perform the techniques. The processor may be configured to determine a plurality of candidate motion vectors for a current block of the video data so as to perform the motion vector prediction process and scale one or more of the plurality of candidate motion vectors determined for the current block of the video data to generate one or more scaled candidate motion vectors. The processor may then be configured to modify the scaled candidate motion vectors to be within a specified range.
In general techniques are described for performing motion vector prediction for video coding. A video coding device comprising a processor may perform the techniques. The processor may be configured to determine a plurality of candidate motion vectors for a current block of the video data so as to perform the motion vector prediction process and scale one or more of the plurality of candidate motion vectors determined for the current block of the video data to generate one or more scaled candidate motion vectors. The processor may then be configured to modify the scaled candidate motion vectors to be within a specified range.
Technology | Declaration Information | Specification Information | Explicitly Disclosed | Patent Type | |||||
---|---|---|---|---|---|---|---|---|---|
Declaration Date | Declaration Reference | Declaring Company | Specification Number | ||||||
Not Available | 27/03/2018 | ISLD-201806-033 | QUALCOMM INC | No | Family Member |
Specification Information
Specification Information
Technologies
Family Information
All Granted Patents In Patent Family : | ---- |
All Pending Patents In Patent Family : | ---- |
Publication No | Technology | Declaration Information | Specification Information | Explicitly Disclosed | Patent Type | |||||
---|---|---|---|---|---|---|---|---|---|---|
Declaration Date | Declaration Reference | Declaring Company | Specification Number | |||||||
US2013163668A1 | Not Available | 27/03/2018 | ISLD-201806-033 | QUALCOMM INC | Yes | Basis Patent | ||||
US9762904B2 | Not Available | 27/03/2018 | ISLD-201806-033 | QUALCOMM INC | Yes | Basis Patent | ||||
AU2012355669A1 | Not Available | 27/03/2018 | ISLD-201806-033 | QUALCOMM INC | No | Family Member | ||||
AU2012355669B2 | Not Available | 27/03/2018 | ISLD-201806-033 | QUALCOMM INC | No | Family Member | ||||
BR112014015056A2 | Not Available | 27/03/2018 | ISLD-201806-033 | QUALCOMM INC | No | Family Member | ||||
BR112014015056A8 | Not Available | 27/03/2018 | ISLD-201806-033 | QUALCOMM INC | No | Family Member | ||||
CA2858979A1 | Not Available | 27/03/2018 | ISLD-201806-033 | QUALCOMM INC | No | Family Member | ||||
CN104012096A | Not Available | 27/03/2018 | ISLD-201806-033 | QUALCOMM INC | No | Family Member | ||||
HK1197330A1 | Not Available | 27/03/2018 | ISLD-201806-033 | QUALCOMM INC | No | Family Member | ||||
IL232776A | Not Available | 27/03/2018 | ISLD-201806-033 | QUALCOMM INC | No | Family Member | ||||
JP2015506606A | Not Available | 27/03/2018 | ISLD-201806-033 | QUALCOMM INC | No | Family Member | ||||
JP2018050308A | Not Available | 27/03/2018 | ISLD-201806-033 | QUALCOMM INC | No | Family Member | ||||
KR20140110957A | Not Available | 27/03/2018 | ISLD-201806-033 | QUALCOMM INC | No | Family Member | ||||
PH12014501244A1 | Not Available | 27/03/2018 | ISLD-201806-033 | QUALCOMM INC | No | Family Member | ||||
PH12014501244B1 | Not Available | 27/03/2018 | ISLD-201806-033 | QUALCOMM INC | No | Family Member | ||||
RU2573227C1 | Not Available | 27/03/2018 | ISLD-201806-033 | QUALCOMM INC | No | Family Member | ||||
SG11201402601SA | Not Available | 27/03/2018 | ISLD-201806-033 | QUALCOMM INC | No | Family Member | ||||
SG10201605087YA | Not Available | 27/03/2018 | ISLD-201806-033 | QUALCOMM INC | No | Family Member | ||||
TW201334552A | Not Available | 27/03/2018 | ISLD-201806-033 | QUALCOMM INC | No | Family Member | ||||
TWI535269B | Not Available | 27/03/2018 | ISLD-201806-033 | QUALCOMM INC | No | Family Member | ||||
UA114617C2 | Not Available | 27/03/2018 | ISLD-201806-033 | QUALCOMM INC | No | Family Member | ||||
WO2013096018A1 | Not Available | 27/03/2018 | ISLD-201806-033 | QUALCOMM INC | No | Family Member | ||||
CA2858979C | ----- | ----- | ----- | ----- | ----- | ----- | ----- | |||
KR102057350B1 | ----- | ----- | ----- | ----- | ----- | ----- | ----- | |||
MY167467A | ----- | ----- | ----- | ----- | ----- | ----- | ----- |
Publication No | Technology | Declaration Information | Specification Information | Explicitly Disclosed | Patent Type | Status | National Phase Entries | |||||
---|---|---|---|---|---|---|---|---|---|---|---|---|
Declaration Date | Declaration Reference | Declaring Company | Specification Information | |||||||||
----- | ----- | ----- | ----- | ----- |
S1
|
----- | ----- | ----- | ----- |
Technologies

Product
Use Cases

Services
Claim
1. A method of coding video data, the method comprising:', 'determining a plurality of candidate motion vectors for a current block of the video data so as to perform a motion vector prediction process;', 'scaling one or more of the plurality of candidate motion vectors determined for the current block of the video data to generate one or more scaled candidate motion vectors;', 'modifying the scaled candidate motion vectors to be within a specified range; selecting one of the plurality of candidate motion vectors as a motion vector predictor for the current block of the video data; and', 'coding the current block of video data based on motion vector predictor.
2. The method of claim 1, wherein modifying the scaled candidate motion vectors comprises modifying the scaled candidate motion vectors without modifying any of the other candidate motion vectors that have not been scaled.
3. The method of claim 1, wherein modifying the scaled candidate motion vectors comprises clipping the scaled candidate motion vectors prior to selecting one of the plurality of candidate motion vectors as a motion vector predictor for the current block of the video data.
4. The method of claim 1 , wherein the motion vector prediction process is one of a merge mode and an advanced motion vector prediction mode.
5. The method of claim 1, wherein the specified range is defined by a video coding profile or level.
6. The method of claim 1, wherein the specified range is fixed and hard-coded in one or more of a video decoder and a video encoder.
7. The method of claim 1, wherein the specified range is specified as', '-32768, 32767 in quarter pixel units.
8. The method of claim 1 , wherein modifying the scaled motion vectors includes: clipping a vertical component of the scaled candidate motion vectors to be within a vertical specified range; and', 'clipping a horizontal component of the scaled candidate motion vectors to be within a horizontal specified range.
9. The method of claim 1,', 'wherein the specified range specifies a motion vector displacement limit that includes a vertical displacement limit,', 'wherein the scaled candidate motion vectors extends beyond the vertical displacement limit, and', 'wherein modifying the scaled candidate motion vectors further comprises clipping a vertical component of the scaled candidate motion vectors such that the vertical component of the scaled candidate motion vectors is within the vertical displacement limit
10. The method of claim 1,', 'wherein the specified range specifies a motion vector displacement limit that includes a horizontal displacement limit,', 'wherein the scaled candidate motion vectors extends beyond the horizontal displacement limit, and', 'wherein modifying the scaled candidate motion vectors further comprises clipping a horizontal component of the scaled candidate motion vectors such that the horizontal component of the scaled candidate motion vectors is within the horizontal displacement limit
11. The method of claim 1 , wherein modifying the scaled candidate motion vectors comprises scaling the scaled candidate motion vectors such that the scaled candidate motion vectors is bounded by the one or more motion vector displacement limits
12. The method of claim 1, further comprising determining a motion vector for the current block of video data based on the selected one of the plurality of candidate motion vectors for the current block of video data, wherein the determined motion vector identifies a prediction block of video data, wherein coding the current block of video data comprises decoding the current block of video data with respect to the prediction block of video data
13. The method of claim 1, further comprising determining a motion vector for the current block of video data based on the selected one of the plurality of candidate motion vectors for the current block of video data, wherein the determined motion vector identifies a prediction block of video data and,', 'wherein coding the current block of video data comprises encoding the current block of video data with respect to the prediction block of video data
14. The method of claim 1, further comprising:', 'decoding a motion vector predictor index to identify the selected one of the plurality of candidate motion vectors for the current block of video data so as to perform an advanced motion vector prediction mode of the motion vector prediction process; and', 'decoding a motion vector difference between the selected one of the plurality of candidate motion vectors and a motion vector for the current block of video data to determine a motion vector for the current block of video data,', 'wherein coding the current block of video data comprises decoding the current block of video data using the determined motion vector for the current block of video data
15. The method of claim 1, further comprising:', 'decoding an index to identify the selected one of the plurality of candidate motion vectors for the current block of video data so as to perform a merge mode of the motion vector prediction process; and', 'determining a motion vector for the current block of video data to be equivalent to the selected one of the plurality of candidate motion vectors,', 'wherein coding the current block of video data comprises decoding the current block of video data using the determined motion vector for the current block of the video data
16. A video coding device configured to perform a motion vector prediction process to code video data, the video coding device comprising: a processor configured to determine a plurality of candidate motion vectors for a current block of the video data so as to perform the motion vector prediction process, scale one or more of the plurality of candidate motion vectors determined for the current block of the video data to generate one or more scaled candidate motion vectors, modify the scaled candidate motion vectors to be within a specified range, select one of the plurality of candidate motion vectors as a motion vector predictor for the current block of the video data and code the current block of video data based on motion vector predictor
17. The video coding device of claim 16, wherein the processor is further configured to, when modifying the scaled candidate motion vectors, modify the scaled candidate motion vectors without modifying any of the other candidate motion vectors that have not been scaled
18. The video coding device of claim 16, wherein the processor is further configured to, when modifying the scaled candidate motion vectors, clip the scaled candidate motion vectors prior to selecting one of the plurality of candidate motion vectors as a motion vector predictor for the current block of the video data
19. The video coding device of claim 16, wherein the motion vector prediction process is one of a merge mode and an advanced motion vector prediction mode.
20. The video coding device of claim 16, wherein the specified range is defined by a video coding profile or level.
21. The video coding device of claim 16, wherein the specified range is fixed and hard-coded in one or more of a video decoder and a video encoder.
22. The video coding device of claim 16, wherein the specified range is specified as -32768, 32767 in quarter pixel units.
23. The video coding device of claim 16, wherein the processor is further configured to, when modifying the scaled motion vectors, clip a vertical component of the scaled candidate motion vectors to be within a vertical specified range and clip a horizontal component of the scaled candidate motion vectors to be within a horizontal specified range.
24. The video coding device of claim 16,', 'wherein the specified range specifies a motion vector displacement limit that includes a vertical displacement limit,', 'wherein the scaled candidate motion vectors extends beyond the vertical displacement limit, and', 'wherein the processor is further configured to, when modifying the scaled candidate motion vectors, clip a vertical component of the scaled candidate motion vectors such that the vertical component of the scaled candidate motion vectors is within the vertical displacement limit.
25. The video coding device of claim 16,', 'wherein the specified range specifies a motion vector displacement limit that includes a horizontal displacement limit,', 'wherein the scaled candidate motion vectors extends beyond the horizontal displacement limit, and', 'wherein the processor is further configured to, when modifying the scaled candidate motion vectors, clip a horizontal component of the scaled candidate motion vectors such that the horizontal component of the scaled candidate motion vectors is within the horizontal displacement limit.
26. The video coding device of claim 16, wherein the processor is further configured to, when modifying the scaled candidate motion vectors, scale the scaled candidate motion vectors such that the scaled candidate motion vectors is bounded by the one or more motion vector displacement limits.
27. The video coding device of claim 16,', 'wherein the processor is further configured to determine a motion vector for the current block of video data based on the selected one of the plurality of candidate motion vectors for the current block of video data,', 'wherein the determined motion vector identifies a prediction block of video data and wherein the processor is further configured to, when coding the current block of video data, decode the current block of video data with respect to the prediction block of video data.
28. The video coding device of claim 16,', 'wherein the processor is further configured to determine a motion vector for the current block of video data based on the selected one of the plurality of candidate motion vectors for the current block of video data,', 'wherein the determined motion vector identifies a prediction block of video data and;', 'wherein the processor is further configured to, when coding the current block of video data, encode the current block of video data with respect to the prediction block of video data.
29. The video coding device of claim 16, wherein the processor is further configured to decode a motion vector predictor index to identify the selected one of the plurality of candidate motion vectors for the current block of video data so as to perform an advanced motion vector prediction mode of the motion vector prediction process, decode a motion vector difference between the selected one of the plurality of candidate motion vectors and a motion vector for the current block of video data to determine a motion vector for the current block of video data, and, when coding the current block of video data, decode the current block of video data using the determined motion vector for the current block of video data.
30. The video coding device of claim 16, wherein the processor is further configured to decode an index to identify the selected one of the plurality of candidate motion vectors for the current block of video data so as to perform a merge mode of the motion vector prediction process, determine a motion vector for the current block of video data to be equivalent to the selected one of the plurality of candidate motion vectors, and, when coding the current block of video data, decoding the current block of video data using the determined motion vector for the current block of the video data.
31. A video coding device configured to perform a motion vector prediction process to code video data, the video coding device comprising: means for determining a plurality of candidate motion vectors for a current block of the video data so as to perform the motion vector prediction process;', 'means for scaling one or more of the plurality of candidate motion vectors determined for the current block of the video data to generate one or more scaled candidate motion vectors;', 'means for modifying the scaled candidate motion vectors to be within a specified range;', 'means for selecting one of the plurality of candidate motion vectors as a motion vector predictor for the current block of the video data; and', 'means for coding the current block of video data based on motion vector predictor.
32. The video coding device of claim 31 , wherein the means for modifying the scaled candidate motion vectors means for comprises modifying the scaled candidate motion vectors without modifying any of the other candidate motion vectors that have not been scaled.
33. The video coding device of claim 31 , wherein the means for modifying the scaled candidate motion vectors comprises means for clipping the scaled candidate motion vectors prior to selecting one of the plurality of candidate motion vectors as a motion vector predictor for the current block of the video data.
34. The video coding device of claim 31 , wherein the specified range is defined by a video coding profile or level.
35. The video coding device of claim 31 , wherein the specified range is fixed and hard-coded in one or more of a video decoder and a video encoder.
36. The video coding device of claim 31 , wherein the specified range is specified as -32768, 32767 in quarter pixel units.
37. The video coding device of claim 31 , wherein the means for modifying the scaled motion vectors includes: means for clipping a vertical component of the scaled candidate motion vectors to be within a vertical specified range; and', 'means for clipping a horizontal component of the scaled candidate motion vectors to be within a horizontal specified range.
38. The video coding device of claim 31 ,', 'wherein the specified range specifies a motion vector displacement limit that includes a vertical displacement limit,', 'wherein the scaled candidate motion vectors extends beyond the vertical displacement limit, and', 'wherein the means for modifying the scaled candidate motion vectors further comprises means for clipping a vertical component of the scaled candidate motion vectors such that the vertical component of the scaled candidate motion vectors is within the vertical displacement limit.
39. The video coding device of claim 31 ,', 'wherein the specified range specifies a motion vector displacement limit that includes a horizontal displacement limit,', 'wherein the scaled candidate motion vectors extends beyond the horizontal displacement limit, and', 'wherein the means for modifying the scaled candidate motion vectors further comprises means for clipping a horizontal component of the scaled candidate motion vectors such that the horizontal component of the scaled candidate motion vectors is within the horizontal displacement limit.
40. A non-transitory computer-readable storage medium having instruction stored thereon that, when executed, cause one or more processors to:', 'determine a plurality of candidate motion vectors for a current block of the video data so as to perform a motion vector prediction process;', 'scale one or more of the plurality of candidate motion vectors determined for the current block of the video data to generate one or more scaled candidate motion vectors; modify the scaled candidate motion vectors to be within a specified range;', 'select one of the plurality of candidate motion vectors as a motion vector predictor for the current block of the video data; and code the current block of video data based on motion vector predictor.
41. The non-transitory computer-readable storage medium of claim 40, wherein the instructions, when executed, cause the one or more processors to, when modifying the scaled candidate motion vectors, modify the scaled candidate motion vectors without modifying any of the other candidate motion vectors that have not been scaled.
42. The non-transitory computer-readable storage medium of claim 40, wherein the instructions, when executed, cause the one or more processors to, when modifying the scaled candidate motion vectors, clip the scaled candidate motion vectors prior to selecting one of the plurality of candidate motion vectors as a motion vector predictor for the current block of the video data.
43. The non-transitory computer-readable storage medium of claim 40, further having stored thereon instructions that, when executed cause the one or more processors to:', 'select one of the plurality of candidate motion vectors as a motion vector predictor for the current block of the video data; and', 'code the current block of video data based on motion vector predictor.
44. The non-transitory computer-readable storage medium of claim 40, wherein the specified range is defined by a video coding profile or level.
45. The non-transitory computer-readable storage medium of claim 40, wherein the specified range is fixed and hard-coded in one or more of a video decoder and a video encoder.
46. The non-transitory computer-readable storage medium of claim 40, wherein the specified range is specified as -32768, 32767 in quarter pixel units.
47. The non-transitory computer-readable storage medium of claim 40, wherein the instructions, when executed, cause the one or more processors, when modifying the scaled motion vectors, to: clip a vertical component of the scaled candidate motion vectors to be within a vertical specified range; and', 'clip a horizontal component of the scaled candidate motion vectors to be within a horizontal specified range.
48. The non-transitory computer-readable storage medium of claim 40,', 'wherein the specified range specifies a motion vector displacement limit that includes a vertical displacement limit,', 'wherein the scaled candidate motion vectors extends beyond the vertical displacement limit, and', 'wherein the instructions, when executed, cause the one or more processors to, when modifying the scaled candidate motion vectors, clip a vertical component of the scaled candidate motion vectors such that the vertical component of the scaled candidate motion vectors is within the vertical displacement limit.
49. The non-transitory computer-readable storage medium of claim 40,', 'wherein the specified range specifies a motion vector displacement limit that includes a horizontal displacement limit,', 'wherein the scaled candidate motion vectors extends beyond the horizontal displacement limit, and', 'wherein the instructions, when executed, cause the one or more processors to, when modifying the scaled candidate motion vectors, clip a horizontal component of the scaled candidate motion vectors such that the horizontal component of the scaled candidate motion vectors is within the horizontal displacement limit.']
Associated Portfolios

![]() |
![]() |
![]() |
![]() |
---|---|---|---|
Claim charts will soon be available!
|
SUMMARY
ClaimChart-EP2795900A1-STO
Patent number:EP2795900A1
Claim Chart Type : SEP Claim Chart
Price: 200 €
To view claim charts you must become a Gold or Platinum Member.
Upgrade your subscriptionYou have reached the maximum number of patents which can be associated to your account per your subscription. If you wish to associate more patents
Please upgrade your subscription.Note:
The information in blue was extracted from the third parties (Standard Setting Organisation, Espacenet)
The information in grey was provided by the patent holder
The information in purple was extracted from the FrandAvenue
Explicitly disclosed patent:openly and comprehensibly describes all details of the invention in the patent document.
Implicitly disclosed patent:does not explicitly state certain aspects of the invention, but still allows for these to be inferred from the information provided.
Basis patent:The core patent in a family, outlining the fundamental invention from which related patents or applications originate.
Family member:related patents or applications that share a common priority or original filing.