рд╡рд┐рдВрдбреЛрдЬ рдХреЗ рд▓рд┐рдП рдЗрдВрдЯреЗрд▓ рдЖрдИрдкреАрдкреА рдирдореВрдиреЗ - рддреНрд░реБрдЯрд┐ рд╕реЗ рдирд┐рдкрдЯрдиреЗ

рд╡рд┐рдВрдбреЛрдЬ рдХреЗ рд▓рд┐рдП рдЗрдВрдЯреЗрд▓ рдЖрдИрдкреАрдкреА рдирдореВрдиреЗ рдХрд╛ рд╕рддреНрдпрд╛рдкрди

рдпрд╣ рдореЗрд░рд╛ рдЕрдЧрд▓рд╛ рд▓реЗрдЦ рд╣реИ рдХрд┐ рдХреИрд╕реЗ рдкреАрд╡реАрдПрд╕-рд╕реНрдЯреВрдбрд┐рдпреЛ рдХрд╛рд░реНрдпрдХреНрд░рдореЛрдВ рдХреЛ рдЕрдзрд┐рдХ рд╡рд┐рд╢реНрд╡рд╕рдиреАрдп рдмрдирд╛рддрд╛ рд╣реИред рдпрд╣ рдХрд╣рд╛рдБ рд╣реИ, рдФрд░ рдпрд╣ рдХрд┐рди рддреНрд░реБрдЯрд┐рдпреЛрдВ рдХрд╛ рдкрддрд╛ рд▓рдЧрд╛рддрд╛ рд╣реИред рдЗрд╕ рдмрд╛рд░ рд╣рдереМрдбрд╝рд╛ рдЙрджрд╛рд╣рд░рдгреЛрдВ рдХреЗ рддрд╣рдд рдЬреЛ рдЖрдИрдкреАрдкреА 7.0 рд▓рд╛рдЗрдмреНрд░реЗрд░реА (рдЗрдВрдЯреЗрд▓ рдкрд░рдлреЙрд░реНрдореЗрдВрд╕ рдкреНрд░рд╛рдЗрдореЗрдЯрд┐рд╡реНрд╕ рд▓рд╛рдЗрдмреНрд░реЗрд░реА) рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░ рд░рд╣рд╛ рд╣реИ, рд╣рдереМрдбрд╝рд╛ рдХреЗ рдиреАрдЪреЗ рдЧрд┐рд░ рдЧрдпрд╛ред рдкрд╣рд▓реЗ, рдореИрдВ рдЗрд╕ рдкреЛрд╕реНрдЯ рдХреЛ рдЗрдВрдЯреЗрд▓ рдмреНрд▓реЙрдЧ рдкрд░ рдкреЛрд╕реНрдЯ рдХрд░рдирд╛ рдЪрд╛рд╣рддрд╛ рдерд╛, рд▓реЗрдХрд┐рди рдлрд┐рд░ рдореИрдВрдиреЗ рдлреИрд╕рд▓рд╛ рдХрд┐рдпрд╛ рдХрд┐ рдпрд╣ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рд╣реЛрдЧрд╛ ...



рдЗрдВрдЯреЗрд▓ рд╕рдорд╛рдирд╛рдВрддрд░ рд╕реНрдЯреВрдбрд┐рдпреЛ 2011 рдореЗрдВ рдкреНрд░рджрд░реНрд╢рди рдкреНрд░рд┐рдорд┐рдЯрд┐рд╡ рд▓рд╛рдЗрдмреНрд░реЗрд░реА рд╢рд╛рдорд┐рд▓ рд╣реИред рдЗрд╕ рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдореЗрдВ рдмрдбрд╝реА рд╕рдВрдЦреНрдпрд╛ рдореЗрдВ рдкреНрд░рд╛рдЗрдорд░реА рд╢рд╛рдорд┐рд▓ рд╣реИрдВ рдЬреЛ рдЖрдкрдХреЛ рдкреНрд░рднрд╛рд╡реА рд╡реАрдбрд┐рдпреЛ рдФрд░ рдСрдбрд┐рдпреЛ рдХреЛрдбреЗрдХреНрд╕, рд╕рд┐рдЧреНрдирд▓ рдкреНрд░реЛрд╕реЗрд╕рд┐рдВрдЧ рдкреНрд░реЛрдЧреНрд░рд╛рдо, рдЗрдореЗрдЬ рд░реЗрдВрдбрд░рд┐рдВрдЧ рдореИрдХреЗрдирд┐рдЬреНрдо, рдЖрд░реНрдХрд╛рдЗрд╡ рдФрд░ рдмрд╣реБрдд рдХреБрдЫ рдмрдирд╛рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддреЗ рд╣реИрдВред рд╕реНрд╡рд╛рднрд╛рд╡рд┐рдХ рд░реВрдк рд╕реЗ, рдРрд╕реЗ рдкреБрд╕реНрддрдХрд╛рд▓рдп рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдирд╛ рдЖрд╕рд╛рди рдирд╣реАрдВ рд╣реИред рдЗрд╕рд▓рд┐рдП, рдЗрдВрдЯреЗрд▓ рдиреЗ рдЗрд╕ рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдХреЗ рдЖрдзрд╛рд░ рдкрд░ рдмрдбрд╝реА рд╕рдВрдЦреНрдпрд╛ рдореЗрдВ рдбреЗрдореЛ рдкреНрд░реЛрдЧреНрд░рд╛рдо рддреИрдпрд╛рд░ рдХрд┐рдП рд╣реИрдВред рдЖрдк рд╕реНрд╡рдпрдВ рдХреЛ рдЙрджрд╛рд╣рд░рдгреЛрдВ рдХреЗ рд╡рд┐рд╡рд░рдг рд╕реЗ рдкрд░рд┐рдЪрд┐рдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рдЙрдиреНрд╣реЗрдВ рдирд┐рдореНрди рд▓рд┐рдВрдХ рдкрд░ рдбрд╛рдЙрдирд▓реЛрдб рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ:



рд╕рднреА рдЙрджрд╛рд╣рд░рдгреЛрдВ рдХреЛ рдЪрд╛рд░ рд╕рдореВрд╣реЛрдВ рдореЗрдВ рдмрд╛рдВрдЯрд╛ рдЧрдпрд╛ рд╣реИ:



рдкреНрд░рддреНрдпреЗрдХ рд╕реЗрдЯ рдореЗрдВ рдмрдбрд╝реА рд╕рдВрдЦреНрдпрд╛ рдореЗрдВ рдкрд░рд┐рдпреЛрдЬрдирд╛рдПрдВ рд╣реЛрддреА рд╣реИрдВ, рдЗрд╕рд▓рд┐рдП рд╢реБрд░реБрдЖрдд рдХреЗ рд▓рд┐рдП рдореИрдВрдиреЗ рд╡рд┐рдВрдбреЛрдЬ рдХреЗ рд▓рд┐рдП рдЖрдИрдкреАрдкреА рдирдореВрдиреЗ рдХреЗ рдкрд╣рд▓реЗ рд╕реЗрдЯ рдХрд╛ рдкрд░реАрдХреНрд╖рдг рдХрд┐рдпрд╛ред рдореИрдВрдиреЗ рдкреАрд╡реАрдПрд╕-рд╕реНрдЯреВрдбрд┐рдпреЛ рд╕рдВрд╕реНрдХрд░рдг 4.10 рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдЬрд╛рдВрдЪ рдХреА ред



рдЗрд╕ рдкреЛрд╕реНрдЯ рдореЗрдВ рдореИрдВ рдмрддрд╛рдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВ рдХрд┐ рдкреНрд░реЛрдЧреНрд░рд╛рдорд░реНрд╕ рдХреА рд╡реНрдпрд╛рд╡рд╕рд╛рдпрд┐рдХрддрд╛ рдФрд░ рд╡рд┐рдХрд╕рд┐рдд рдХрд┐рдП рдЬрд╛ рд░рд╣реЗ рд╕рдорд╛рдзрд╛рди рдХреЗ рд╕реНрддрд░ рдХреА рдкрд░рд╡рд╛рд╣ рдХрд┐рдП рдмрд┐рдирд╛ рд╕реНрдереИрддрд┐рдХ рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдЙрдкрдпреЛрдЧреА рд╣реИред "рдкреЗрд╢реЗрд╡рд░реЛрдВ рдХреЛ рд▓реЗрдиреЗ рдФрд░ рддреНрд░реБрдЯрд┐рдпреЛрдВ рдХреЗ рдмрд┐рдирд╛ рддреБрд░рдВрдд рд▓рд┐рдЦрдиреЗ" рдХрд╛ рд╡рд┐рдЪрд╛рд░ рдХрд╛рдо рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИред рдпрд╣рд╛рдВ рддрдХ тАЛтАЛрдХрд┐ рдЕрддреНрдпрдзрд┐рдХ рдпреЛрдЧреНрдп рдбреЗрд╡рд▓рдкрд░реНрд╕ рднреА рдХреЛрдбрд┐рдВрдЧ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдореЗрдВ рддреНрд░реБрдЯрд┐рдпреЛрдВ рдФрд░ рдЯрд╛рдЗрдкреЛрд╕ рдХреЗ рдкреНрд░рддрд┐ рдкреНрд░рддрд┐рд░рдХреНрд╖рд╛ рдирд╣реАрдВ рд╣реИрдВред IPP рдХреЗ рдЙрджрд╛рд╣рд░рдгреЛрдВ рдореЗрдВ рддреНрд░реБрдЯрд┐рдпрд╛рдВ рдЗрд╕реЗ рдмрд╣реБрдд рдЕрдЪреНрдЫреА рддрд░рд╣ рд╕реЗ рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░рддреА рд╣реИрдВред



рдореИрдВ рдЗрд╕ рдмрд╛рдд рдкрд░ рдЬреЛрд░ рджреЗрддрд╛ рд╣реВрдВ рдХрд┐ рд╡рд┐рдВрдбреЛрдЬ рдХреЗ рд▓рд┐рдП рдЖрдИрдкреАрдкреА рдирдореВрдиреЗ рдПрдХ рдЙрдЪреНрдЪ рдЧреБрдгрд╡рддреНрддрд╛ рд╡рд╛рд▓реА рдкрд░рд┐рдпреЛрдЬрдирд╛ рд╣реИред рд╣рд╛рд▓рд╛рдВрдХрд┐, рдЗрд╕рдХреЗ 1.6 рдорд┐рд▓рд┐рдпрди рд▓рд╛рдЗрдиреЛрдВ рдХреЗ рдЖрдХрд╛рд░ рдХреЗ рдХрд╛рд░рдг, рдЗрд╕рдореЗрдВ рдЕрдирд┐рд╡рд╛рд░реНрдп рд░реВрдк рд╕реЗ рдХрдИ рдкреНрд░рдХрд╛рд░ рдХреА рддреНрд░реБрдЯрд┐рдпрд╛рдВ рд╣реИрдВред рдЖрдЗрдП рдЙрдирдореЗрдВ рд╕реЗ рдХреБрдЫ рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░реЗрдВред



рд╕рд░рдгреА рд╕реВрдЪрдХрд╛рдВрдХреЛрдВ рдХреЛ рдмрджрд▓рдиреЗ рдореЗрдВ рд╡рд┐рдлрд▓



рдпрд╣ рдЙрджрд╛рд╣рд░рдг рдЙрд▓реНрд▓реЗрдЦрдиреАрдп рд░реВрдк рд╕реЗ рдореЗрд░реЗ рдкрд┐рдЫрд▓реЗ рд▓реЗрдЦ " рдХреЙрдкреА-рдкреЗрд╕реНрдЯ рддрдХрдиреАрдХ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХрд╛ рдкрд░рд┐рдгрд╛рдо рдЬрдм C ++ рдореЗрдВ рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ рдХрд░ рд░рд╣рд╛ рд╣реИ рдФрд░ рдЗрд╕рд╕реЗ рдХреИрд╕реЗ рдирд┐рдкрдЯрдирд╛ рд╣реИ ":

  рд╕рдВрд░рдЪрдирд╛ AVS_MB_INFO
 {
   ...
   Ipp8u refIdx [AVS_DIRECTIONS] [4];
   ...
 };

 рд╢реВрдиреНрдп AVSCompressor :: GetRefInduritiesBSlice (void) {
   ...
   рдЕрдЧрд░ (m_pMbInfo-> predType [0] рдФрд░ predType)
   {
     m_refIdx [iRefNum] = m_pMbInfo-> refIdx [dir] [0];
     iRefNum + = 1;
   }
   рдЕрдЧрд░ (m_pMbInfo-> predType [1] рдФрд░ predType)
   {
     m_refIdx [iRefNum] = m_pMbInfo-> refIdx [dir] [1];
     iRefNum + = 1;
   }
   рдЕрдЧрд░ (m_pMbInfo-> predType [2] рдФрд░ predType)
   {
     m_refIdx [iRefNum] = m_pMbInfo-> refIdx [dir] [2];
     iRefNum + = 1;
   }
   рдЕрдЧрд░ (m_pMbInfo-> predType [3] рдФрд░ predType)
   {
     m_refIdx [iRefNum] = m_pMbInfo-> refIdx [dir] [30];
     iRefNum + = 1;
   }
   ...
 } 


рдкреАрд╡реАрдПрд╕-рд╕реНрдЯреВрдбрд┐рдпреЛ рдбрд╛рдпрдЧреНрдиреЛрд╕реНрдЯрд┐рдХ рд╕рдВрджреЗрд╢: рд╡реА 557 рдРрд░реЗ рдУрд╡рд░рд░рди рд╕рдВрднрд╡ рд╣реИред '30' рдЗрдВрдбреЗрдХреНрд╕ рд╕рд░рдгреА рдмрд╛рдЙрдВрдб рд╕реЗ рдкрд░реЗ рдЗрдВрдЧрд┐рдд рдХрд░ рд░рд╣рд╛ рд╣реИред avs_enc umc_avs_enc_compressor_enc_b.cpp 495



рдкреНрд░реЛрдЧреНрд░рд╛рдорд░ рдиреЗ рдХреЛрдб рдХреЗ рдЯреБрдХрдбрд╝реЗ рдХреЛ рдХрдИ рдмрд╛рд░ рдХреЙрдкреА рдХрд┐рдпрд╛ рдФрд░ рд╕рд░рдгреА рд╕реВрдЪрдХрд╛рдВрдХреЛрдВ рдХреЗ рдореВрд▓реНрдп рдХреЛ рдмрджрд▓ рджрд┐рдпрд╛ред рд▓реЗрдХрд┐рди рдЕрдВрдд рдореЗрдВ рдЙрд╕рдХрд╛ рд╣рд╛рде рдХрд╛рдВрдк рдЧрдпрд╛ред рдЙрд╕рдиреЗ рдирдВрдмрд░ 3 рдореЗрдВ рдкреНрд░рд╡реЗрд╢ рдХрд┐рдпрд╛, рд▓реЗрдХрд┐рди рдирдВрдмрд░ 0 рдХреЛ рдирд╣реАрдВ рд╣рдЯрд╛рдпрд╛ред рдирддреАрдЬрддрди, рд╕реВрдЪрдХрд╛рдВрдХ 30 рдкреНрд░рд╛рдкреНрдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛, рдФрд░ рдЬрдм рдХреЛрдб рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рддреЛ рдкрд╣реБрдВрдЪ рд╕рд░рдгреА рдХреА рд╕реАрдорд╛рдУрдВ рд╕реЗ рдмрд╣реБрдд рдЖрдЧреЗ рдирд┐рдХрд▓ рдЬрд╛рдПрдЧреАред



рд╕рдорд╛рди рдХреЛрдб рд╢рд╛рдЦрд╛рдПрдБ



рдЪреВрдВрдХрд┐ рд╣рдордиреЗ рдХреЛрдб рдХреА рдкреНрд░рддрд┐рд▓рд┐рдкрд┐ рдмрдирд╛рдХрд░ рд╢реБрд░реБрдЖрдд рдХреА рдереА, рдЗрд╕рд▓рд┐рдП рдЗрд╕ рд╡рд┐рд╖рдп рдкрд░ рдПрдХ рдФрд░ рдЙрджрд╛рд╣рд░рдг рджрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ:

  AACStatus anacencGetFrame (...)
 {
   ...
   рдЕрдЧрд░ (рдЕрдзрд┐рдХрддрдо [0]> рдЕрдзрд┐рдХрддрдо [1]) {
     ics [1] .num_window_groups = ics [0] .num_window_groups;
     for (g = 0; g <ics [0] .num_window_groups; g ++) {
       ics [1] .len_window_group [g] = ics [0] .len_window_group [рдЬреА];
     }
   } {
     ics [1] .num_window_groups = ics [0] .num_window_groups;
     for (g = 0; g <ics [0] .num_window_groups; g ++) {
       ics [1] .len_window_group [g] = ics [0] .len_window_group [рдЬреА];
     }
   }
   ...
 } 


рдкреАрд╡реАрдПрд╕-рд╕реНрдЯреВрдбрд┐рдпреЛ рдбрд╛рдпрдЧреНрдиреЛрд╕реНрдЯрд┐рдХ рд╕рдВрджреЗрд╢: V523 'рддрдм' рдХрдерди 'рдФрд░' рдХрдерди рдХреЗ рдмрд░рд╛рдмрд░ рд╣реИред aac_enc anac_enc_api_fp.c 1379



рд▓реЗрдХрд┐рди рдЗрд╕ рдмрд╛рд░, рдЗрд╕рдХреЗ рд╡рд┐рдкрд░реАрдд, рд╡реЗ рдХреЙрдкреА рдХрд┐рдП рдЧрдП рдХреЛрдб рдХреЛ рд╕рдВрдкрд╛рджрд┐рдд рдХрд░рдирд╛ рднреВрд▓ рдЧрдПред "рдпрджрд┐" рд╕рд╢рд░реНрдд рдСрдкрд░реЗрдЯрд░ рдХреА рджреЛрдиреЛрдВ рд╢рд╛рдЦрд╛рдПрдВ рд╕рдорд╛рди рдХрд╛рд░реНрдп рдХрд░рддреА рд╣реИрдВред



рдбрд┐рдХреНрд░рд┐рдкреНрд╢рди рдСрдкрд░реЗрд╢рди рдкреНрд░рд╛рдердорд┐рдХрддрд╛ рдХреЗ рд╕рд╛рде рднреНрд░рдо "-" рдФрд░ рдбреАрдлреНрд░реЗрдиреНрд╕рд┐рдВрдЧ рдкреЙрдЗрдВрдЯрд░ "*"



  рд╕реНрдерд┐рд░ рд╢реВрдиреНрдп
 sbrencConflictResolution (..., Ipp32s * nLeftBord)
 {
   ...
   * nLeftBord = nBordNext - 1;
   ...
   рдЕрдЧрд░ (* lenBordNext> 1) {
     ...
     * nLeftBord--;
   }
   ...
 } 


рдкреАрд╡реАрдПрд╕-рд╕реНрдЯреВрдбрд┐рдпреЛ рдбрд╛рдпрдЧреНрдиреЛрд╕реНрдЯрд┐рдХ рд╕рдВрджреЗрд╢: V532 '* рдкреЙрдЗрдВрдЯрд░--' рдкреИрдЯрд░реНрди рдХреЗ рдХрдерди рдХрд╛ рдирд┐рд░реАрдХреНрд╖рдг рдХрд░рдиреЗ рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░реЗрдВред рд╢рд╛рдпрдж рдЗрд╕рдХрд╛ рдорддрд▓рдм рд╣реИ: '(* рд╕реВрдЪрдХ) -'ред aac_enc sbr_enc_frame_gen.c 428



NLeftBord рдкреЙрдЗрдВрдЯрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ sbrencConflictResolution рдлрд╝рдВрдХреНрд╢рди рд╕реЗ рдорд╛рди рд╡рд╛рдкрд╕ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рд╕рдмрд╕реЗ рдкрд╣рд▓реЗ, рдореВрд▓реНрдп "nBordNext - 1" рдХреЛ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдкрддреЗ рдкрд░ рд▓рд┐рдЦрд╛ рдЬрд╛рддрд╛ рд╣реИред рдХреБрдЫ рд╢рд░реНрддреЛрдВ рдХреЗ рддрд╣рдд, рдЗрд╕ рдореВрд▓реНрдп рдореЗрдВ рдПрдХ рдХреА рдХрдореА рд╣реЛрдиреА рдЪрд╛рд╣рд┐рдПред рдорд╛рди рдХреЛ рдХрдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдкреНрд░реЛрдЧреНрд░рд╛рдорд░ рдиреЗ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдХреЛрдб рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛:

  * nLeftBord--; 


рддреНрд░реБрдЯрд┐ рдпрд╣ рд╣реИ рдХрд┐ рдореВрд▓реНрдп рдХреЗ рдмрдЬрд╛рдп, рд╕реВрдЪрдХ рд╕реНрд╡рдпрдВ рдХрдо рд╣реЛ рдЬрд╛рддрд╛ рд╣реИред рд╕рд╣реА рдХреЛрдб рдЗрд╕ рддрд░рд╣ рджрд┐рдЦрдирд╛ рдЪрд╛рд╣рд┐рдП:

  (* nLeftBord) -; 


рд╡реЗрддрди рд╡реГрджреНрдзрд┐ рдСрдкрд░реЗрдЯрд░ "++" рдФрд░ рдбреАрдлреНрд░реЗрдВрд╕рд┐рдВрдЧ рдкреЙрдЗрдВрдЯрд░ "*" рдХреЗ рд╕рд╛рде рдПрдХ рдФрд░ рднреА рднреНрд░рд╛рдордХ рд╕реНрдерд┐рддрд┐



рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдХреЛрдб рдореЗрд░реЗ рд▓рд┐рдП рдкреВрд░реА рддрд░рд╣ рд╕реЗ рд╕рдордЭ рд╕реЗ рдмрд╛рд╣рд░ рд╣реИред рдореБрдЭреЗ рдирд╣реАрдВ рдкрддрд╛ рдХрд┐ рдЗрд╕реЗ рдХреИрд╕реЗ рдареАрдХ рдХрд░рдирд╛ рд╣реИ рддрд╛рдХрд┐ рдпрд╣ рд╕рдордЭ рдореЗрдВ рдЖрдПред рд╢рд╛рдпрдж рдпрд╣рд╛рдБ рдХреБрдЫ рдпрд╛рдж рдЖ рд░рд╣рд╛ рд╣реИред

  рд╕реНрдерд┐рд░ IppStatus mp2_HuffmanTableInitAlloc (Ipp32s * tbl, ...)
 {
   ...
   рдХреЗ рд▓рд┐рдП (i = 0; рдореИрдВ <num_tbl; i ++) {
     * tbl ++;
   }
   ...
 } 


рдкреАрд╡реАрдПрд╕-рд╕реНрдЯреВрдбрд┐рдпреЛ рдбрд╛рдпрдЧреНрдиреЛрд╕реНрдЯрд┐рдХ рд╕рдВрджреЗрд╢: V532 '* рдкреЙрдЗрдВрдЯрд░ ++' рдкреИрдЯрд░реНрди рдХреЗ рдХрдерди рдХрд╛ рдирд┐рд░реАрдХреНрд╖рдг рдХрд░рдиреЗ рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░реЗрдВред рд╢рд╛рдпрдж рдЗрд╕рдХрд╛ рдорддрд▓рдм рд╣реИ: '(* рд╕реВрдЪрдХ) ++'ред mpeg2_dec umc_mpeg2_dec.cpp 59



рдЕрдм, рдЙрджрд╛рд╣рд░рдг рдореЗрдВ рджрд┐рдЦрд╛рдпрд╛ рдЧрдпрд╛ рд▓реВрдк рдирд┐рдореНрди рдХреЛрдб рдХреЗ рдмрд░рд╛рдмрд░ рд╣реИ:

  tbl + = num_tbl; 


рдкреАрд╡реАрдПрд╕-рд╕реНрдЯреВрдбрд┐рдпреЛ рд╡рд┐рд╢реНрд▓реЗрд╖рдХ рдиреЗ рд╕реБрдЭрд╛рд╡ рджрд┐рдпрд╛ рдХрд┐ рд╢рд╛рдпрдж рдХреЛрд╖реНрдардХ рдпрд╣рд╛рдВ рднреВрд▓ рдЧрдП рд╣реИрдВ рдФрд░ рдЖрдкрдХреЛ "(* tbl) ++" рд▓рд┐рдЦрдирд╛ рдЪрд╛рд╣рд┐рдПред рд▓реЗрдХрд┐рди рдЗрд╕ рдХреЛрдб рдХрд╛ рдХреЛрдИ рдорддрд▓рдм рдирд╣реАрдВ рд╣реИред рдлрд┐рд░ рд▓реВрдк рдмрд░рд╛рдмрд░ рд╣реЛрдЧрд╛:

  * tbl + = num_tbl; 


рд╕рд╛рдорд╛рдиреНрдп рддреМрд░ рдкрд░, рдПрдХ рдмрд╣реБрдд рд╣реА рдЕрдЬреАрдм рддрд░рд╣ рдХрд╛ рдЪрдХреНрд░ред рдПрдХ рддреНрд░реБрдЯрд┐ рд╣реИ, рд▓реЗрдХрд┐рди рд╕реНрдкрд╖реНрдЯ рд░реВрдк рд╕реЗ рдХреЗрд╡рд▓ рдХреЛрдб рдХреЗ рд▓реЗрдЦрдХ рд╣реА рдЗрд╕реЗ рдареАрдХ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред



рдПрдХ рддреНрд░реБрдЯрд┐ рд╣реБрдИ рд╣реИ рдХрд┐ рд╕рдВрдХреЗрдд рдХрд╛ рдиреБрдХрд╕рд╛рди



рдХреЛрдб рдореЗрдВ рдПрдХ рдлрд╝рдВрдХреНрд╢рди "GetTrackByPidOrCreateNew" рд╣реИ, рдЬреЛ рдпрджрд┐ рдХреЛрдИ рддреНрд░реБрдЯрд┐ рд╣реЛрддреА рд╣реИ, рддреЛ "-1" рдорд╛рди рд▓реМрдЯрд╛рддрд╛ рд╣реИред

  typedef рдиреЗ int Ipp32s рдкрд░ рд╣рд╕реНрддрд╛рдХреНрд╖рд░ рдХрд┐рдП;
 typedef рдЕрд╣рд╕реНрддрд╛рдХреНрд╖рд░рд┐рдд int Ipp32u;

 Ipp32s StreamParser :: GetTrackByPidOrCreateNew (Ipp32s iPid, bool * pIsNew)
 {
   ...
   рдФрд░ рдЕрдЧрд░ (pIsNew || m_uiTracks> = MAX_TRACK)
     рд╡рд╛рдкрд╕реА -1;
   ...
 } 


"GetTrackByPidOrCreateNew" рдлрд╝рдВрдХреНрд╢рди рдХреЗ рд╕рд╛рде рд╕рдм рдХреБрдЫ рдареАрдХ рд╣реИред рд▓реЗрдХрд┐рди рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╕рдордп рдПрдХ рддреНрд░реБрдЯрд┐ рд╣реИ:

  рд╕реНрдерд┐рддрд┐ рд╕реНрдЯреНрд░реАрдорд░рд╕рд░ :: GetNextData (MediaData * pData, Ipp32u * pTrack)
 {
   ...
   * pTrack = GetTrackByPidOrCreateNew (m_pPacket-> iPid, NULL);

   рдЕрдЧрд░ (* pTrack> = 0 && TRACK_LPCM == m_pInfo [* pTrack] -> m_Type)
     ippsSwapBytes_16u_I ((Ipp16u *) pData-> GetDataPointer (),
                         m_pPacket-> uiSize / 2);
   ...
 } 


рдкреАрд╡реАрдПрд╕-рд╕реНрдЯреВрдбрд┐рдпреЛ рдбрд╛рдпрдЧреНрдиреЛрд╕реНрдЯрд┐рдХ рд╕рдВрджреЗрд╢: V547 рдПрдХреНрд╕рдкреНрд░реЗрд╢рди '* pTrack> = 0' рд╣рдореЗрд╢рд╛ рд╕рдЪ рд╣реЛрддрд╛ рд╣реИред рдЕрд╣рд╕реНрддрд╛рдХреНрд╖рд░рд┐рдд рдкреНрд░рдХрд╛рд░ рдХрд╛ рдорд╛рди рд╣рдореЗрд╢рд╛> = 0. рдбрд┐рдореНрдпреВрд╕рд░ umc_stream_parser.cpp 179 рд╣реИ



рдорд╛рди рдЬреЛ GetTrackByPidOrCreateNew рдлрд╝рдВрдХреНрд╢рди рджреЗрддрд╛ рд╣реИ, рд╡рд╣ рдЕрд╣рд╕реНрддрд╛рдХреНрд╖рд░рд┐рдд рдкреНрд░рд╛рд░реВрдк (рдЕрд╣рд╕реНрддрд╛рдХреНрд╖рд░рд┐рдд int) рдореЗрдВ рд╕рдВрдЧреНрд░рд╣реАрдд рд╣реЛрддрд╛ рд╣реИред рдЗрд╕рдХрд╛ рдорддрд▓рдм рдпрд╣ рд╣реИ рдХрд┐ "-1" "4294967295" рдореЗрдВ рдмрджрд▓ рдЬрд╛рдПрдЧрд╛, рдФрд░ рд╣рд╛рд▓рдд "* pTrack> = 0" рд╣рдореЗрд╢рд╛ рд╕рдЪ рд╣реИред



рдкрд░рд┐рдгрд╛рдорд╕реНрд╡рд░реВрдк, рдпрджрд┐ рдлрд╝рдВрдХреНрд╢рди "GetTrackByPidOrCreateNew" рдорд╛рди "-1" рд▓реМрдЯрд╛рддрд╛ рд╣реИ, рддреЛ рдПрдХреНрд╕реЗрд╕ рдЙрд▓реНрд▓рдВрдШрди рддрдм рд╣реЛрдЧрд╛ рдЬрдм рдХреЛрдб "m_pInfo [* pTrack] -> m_Type рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред



рдХреЙрдкреА-рдкреЗрд╕реНрдЯ рдФрд░ рднреВрд▓ рдЧрдП +1



  рд╢реВрдиреНрдп H264SegmentDecoder :: ResetDeblockingVariablesMBAFF ()
 {
   ...
   рдЕрдЧрд░ (GetMBFieldDecodingFlag (m_gmbinfo-> mbs [m_CurMBAadr) 
                                             - mb_width * 2]))
     m_deblockingParams.nNeighbor [HORIZONTAL_DEBLOCKING] =
       m_CurMBAddr - mb_width * 2;
   рдЕрдиреНрдпрдерд╛
     m_deblockingParams.nNeighbor [HORIZONTAL_DEBLOCKING] =
       m_CurMBAddr - mb_width * 2;
   ...
 } 


рдкреАрд╡реАрдПрд╕-рд╕реНрдЯреВрдбрд┐рдпреЛ рдбрд╛рдпрдЧреНрдиреЛрд╕реНрдЯрд┐рдХ рд╕рдВрджреЗрд╢: V523 'рддрдм' рдХрдерди 'рдФрд░' рдХрдерди рдХреЗ рдмрд░рд╛рдмрд░ рд╣реИред h264_dec umc_h264_segment_decoder_deblocking_mbaff.cpp 340



рдпрджрд┐ рдЖрдк рдкрд╛рд╕ рдХреЗ рдХреЛрдб рдХреЛ рджреЗрдЦрддреЗ рд╣реИрдВ, рддреЛ рдпрд╣ рд╕реНрдкрд╖реНрдЯ рд╣реЛ рдЬрд╛рддрд╛ рд╣реИ рдХрд┐ рд╡реЗ рдкреНрд░рддрд┐рд▓рд┐рдкрд┐ рдХреА рдЧрдИ рдкрдВрдХреНрддрд┐ рдореЗрдВ рдПрдХ рдЬреЛрдбрд╝рдирд╛ рднреВрд▓ рдЧрдП рдереЗред рд╕рд╣реА рдХреЛрдб рдЗрд╕ рддрд░рд╣ рджрд┐рдЦрдирд╛ рдЪрд╛рд╣рд┐рдП:

  рдЕрдЧрд░ (GetMBFieldDecodingFlag (m_gmbinfo-> mbs [m_CurMBAadr) 
                                           - mb_width * 2]))
   m_deblockingParams.nNeighbor [HORIZONTAL_DEBLOCKING] =
     m_CurMBAddr - mb_width * 2;
 рдЕрдиреНрдпрдерд╛
   m_deblockingParams.nNeighbor [HORIZONTAL_DEBLOCKING] =
     m_CurMBAddr - mb_width * 2 + 1; 


"H264CoreEncoder_ResetDeblockingVariablesMBAFF" рдлрд╝рдВрдХреНрд╢рди рдореЗрдВ рдкрд╛рд╕ рдореЗрдВ рднреВрд▓ рдЧрдП "+ 1" рдХреЗ рд╕рд╛рде рдЕрднреА рднреА рд╡рд╣реА рддреНрд░реБрдЯрд┐ рд╣реИред



рдкреАрд╡реАрдПрд╕-рд╕реНрдЯреВрдбрд┐рдпреЛ рдбрд╛рдпрдЧреНрдиреЛрд╕реНрдЯрд┐рдХ рд╕рдВрджреЗрд╢: V523 'рддрдм' рдХрдерди 'рдФрд░' рдХрдерди рдХреЗ рдмрд░рд╛рдмрд░ рд╣реИред h264_enc umc_h264_deblocking_mbaff_tmpl.cpp.h 366



рдирд┐рдХрд╛рд▓реЗрдВ, рдЬреЛ рдХреБрдЫ рднреА рдирд╣реАрдВ рдирд┐рдХрд╛рд▓рддрд╛ рд╣реИред



  void H264ThreadGroup :: RemoveThread (H264Thread * рдереНрд░реЗрдб)
 {
     AutomaticUMCMutex рдЧрд╛рд░реНрдб (m_mGuard);
     std :: remove (m_threads.begin (), m_threads.end (), thread);
 } 


рдкреАрд╡реАрдПрд╕-рд╕реНрдЯреВрдбрд┐рдпреЛ рдбрд╛рдпрдЧреНрдиреЛрд╕реНрдЯрд┐рдХ рд╕рдВрджреЗрд╢: V530 рдлрд╝рдВрдХреНрд╢рди 'рд╡рд╛рдкрд╕реА' рдХреЗ рд░рд┐рдЯрд░реНрди рдореВрд▓реНрдп рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред h264_dec umc_h264_thread.cpp 226



рдПрдХ рджрд┐рд▓рдЪрд╕реНрдк рд╕рдВрдпреЛрдЬрдиред рдПрдХ рддрд░рдл, рд╕рдм рдХреБрдЫ рдареЛрд╕ рд╣реИред рдореНрдпреВрдЯреЗрдХреНрд╕ рджреНрд╡рд╛рд░рд╛ рдмрд╣реБ-рдереНрд░реЗрдбреЗрдб рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдореЗрдВ рдХрд┐рд╕реА рдЖрдЗрдЯрдо рдХреЛ рд╕рд╣реА рдврдВрдЧ рд╕реЗ рд╣рдЯрд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдФрд░ рджреВрд╕рд░реА рдУрд░, рд╡реЗ рднреВрд▓ рдЧрдП рд╣реИрдВ рдХрд┐ рд╕реНрдЯреАрдбреА :: рд╣рдЯрд╛рдиреЗ рдХрд╛ рдХрд╛рд░реНрдп рд╕рд░рдгреА рд╕реЗ рддрддреНрд╡реЛрдВ рдХреЛ рдирд╣реАрдВ рд╣рдЯрд╛рддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдХреЗрд╡рд▓ рдЙрдирдХреЗ рдХреНрд░рдо рдХреЛ рдмрджрд▓рддрд╛ рд╣реИред рдЗрд╕реЗ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдЗрд╕ рддрд░рд╣ рд▓рд┐рдЦрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП:

  m_threads .erase (
   std :: remove (m_threads.begin (), m_threads.end (), thread),
   m_threads.end ()); 


рд╕реНрд╡рдпрдВ рдХреЗ рд╕рд╛рде рд╕рдВрд░рдЪрдирд╛ рдХреНрд╖реЗрддреНрд░реЛрдВ рдХреА рддреБрд▓рдирд╛



рдореИрдВ рддреНрд░реБрдЯрд┐рдпреЛрдВ рдХреЛ рджреЗрдЦрддрд╛ рд╣реВрдВ рдФрд░ рджреЗрдЦрд╛ рд╣реИ рдХрд┐ H264 рд╡реАрдбрд┐рдпреЛ рд╕рдВрдкреАрдбрд╝рди рдорд╛рдирдХ рдХрд╛ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдХрд┐рд╕реА рднреА рддрд░рд╣ рд╕реЗ рдЫреЛрдЯреА рдЧрд╛рдбрд╝реА рд╣реИред рдЗрд╕ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдореЗрдВ рдХрд╛рдлреА рдмрдбрд╝реА рд╕рдВрдЦреНрдпрд╛ рдореЗрдВ рддреНрд░реБрдЯрд┐рдпрд╛рдВ рдкрд╛рдИ рдЧрдИ рд╣реИрдВред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдХреЛрдИ рд╡реНрдпрдХреНрддрд┐ рдЬрд▓реНрджреА рдореЗрдВ рдерд╛ рдЬрдм рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ рдФрд░ рддреБрд░рдВрдд рджреЛ рдЧрд▓рдд рдЪрд░ рдирд╛рдореЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ред

  рдмреВрд▓ H264_AU_Stream :: IsPictureSame (H264SliceHeaderParse & p_newHeader)
 {
   рдЕрдЧрд░ ((p_newHeader.frame_num! = m_lastSlice.frame_num) ||
       (p_newHeader.pic_parameter_set_id! =
        p_newHeader.pic_parameter_set_id) ||
       (p_newHeader.field_pic_flag! = p_newHeader.field_pic_flag) ||
       (p_newHeader.bottom_field_flag! = m_lastSlice.bottom_field_flag)
       ) {
       рдЭреВрдареЗ рд▓реМрдЯрдирд╛;
   }
   ...
 } 


рдкреАрд╡реАрдПрд╕-рд╕реНрдЯреВрдбрд┐рдпреЛ рдиреИрджрд╛рдирд┐рдХ тАЛтАЛрд╕рдВрджреЗрд╢:



V501 рд╕рдорд╛рди рдЙрдк-рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐рдпрд╛рдБ рд╣реИрдВ 'p_newHeader.pic_parameter_set_id' рдмрд╛рдИрдВ рдУрд░ рдФрд░ '=!' рд╕рдВрдЪрд╛рд▓рдХ рдХреЗ рджрд╛рдИрдВ рдУрд░ред h264_spl umc_h264_au_stream.cpp 478



V501 рд╕рдорд╛рди рдЙрдк-рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐рдпрд╛рдБ рд╣реИрдВ 'p_newHeader.field_pic_flag' рдмрд╛рдИрдВ рдУрд░ рдФрд░ '! =' рд╕рдВрдЪрд╛рд▓рдХ рдХреЗ рджрд╛рдИрдВ рдУрд░ред h264_spl umc_h264_au_stream.cpp 479



рддреБрд▓рдирд╛ рдлрд╝рдВрдХреНрд╢рди рдХрд╛рдо рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рд╕рдВрд░рдЪрдирд╛ рдХреЗ рдХреБрдЫ рд╕рджрд╕реНрдпреЛрдВ рдХреА рддреБрд▓рдирд╛ рд╕реНрд╡рдпрдВ рдХреЗ рд╕рд╛рде рдХреА рдЬрд╛рддреА рд╣реИред рдпрд╣рд╛рдБ рджреЛ рд╕рд╣реА рд▓рд╛рдЗрдиреЗрдВ рд╣реИрдВ:

  (p_newHeader.pic_parameter_set_id! = m_lastSlice.pic_parameter_set_id)
 ||
 (p_newHeader.field_pic_flag! = m_lastSlice.field_pic_flag) || 


рдЧрд▓рдд рдбреЗрдЯрд╛ рдХреЙрдкреА



рдЧрд▓рдд рд╡рд╕реНрддреБрдУрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдореЗрдВ рддреНрд░реБрдЯрд┐рдпрд╛рдВ рд╣реИрдВ, рди рдХреЗрд╡рд▓ рддреБрд▓рдирд╛ рдХрд░рддреЗ рд╕рдордп, рдмрд▓реНрдХрд┐ рд╡рд╕реНрддреБрдУрдВ рдХреА рд╕реНрдерд┐рддрд┐ рдХреА рдирдХрд▓ рдХрд░рддреЗ рд╕рдордп рднреА:

  Ipp32s ippVideoEncoderMPEG4 :: Init (mp4_Param * рдмрд░рд╛рдмрд░)
 {
   ...
   VOL.sprite_width = par-> sprite_width;
   VOL.sprite_height = par-> sprite_height;
   VOL.sprite_left_coordinate = par-> sprite_left_coordinate;
   VOL.sprite_top_coordinate = par-> sprite_left_coordinate;
   ...
 } 


PVS- рд╕реНрдЯреВрдбрд┐рдпреЛ рдбрд╛рдпрдЧреНрдиреЛрд╕реНрдЯрд┐рдХ рд╕рдВрджреЗрд╢: V537 'sprite_left_coordinate' рдЖрдЗрдЯрдо рдХреЗ рдЙрдкрдпреЛрдЧ рдХреА рд╢реБрджреНрдзрддрд╛ рдХреА рд╕рдореАрдХреНрд╖рд╛ рдХрд░рдиреЗ рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░реЗрдВред mpeg4_enc mp4_enc_misc.cpp 387



рдЕрдорд╛рдиреНрдп рдорд╛рди VOL.sprite_top_coordinate рдореЗрдВ рд░рдЦрд╛ рдЧрдпрд╛ рд╣реИред рд╕рд╣реА рдЕрд╕рд╛рдЗрдирдореЗрдВрдЯ рдЗрд╕ рддрд░рд╣ рджрд┐рдЦрдирд╛ рдЪрд╛рд╣рд┐рдП:

  VOL.sprite_top_coordinate = par-> sprite_top_coordinate; 


рдПрдХ рдЪрд░ рдкрд░ рджреЛ рдЫреЛрд░реЛрдВ



  JERRCODE CJPEGDecoder :: DecodeScanBaselineNI (рд╢реВрдиреНрдп)
 {
   ...
   рдХреЗ рд▓рд┐рдП (c = 0; c <m_scan_ncomps; c ++)
   {
     рдмреНрд▓реЙрдХ = m_block_buffer + (DCTSIZE2 * m_nblock * (j + (i * m_numxMCU)));

     // рдХрд┐рд╕реА рднреА рдкреНрд░рд╛рд╕рдВрдЧрд┐рдХ рдШрдЯрдХреЛрдВ рдХреЛ рдЫреЛрдбрд╝реЗрдВ
     for (c = 0; c <m_ccomp [m_curr_comp_no] .m_comp_no; c c)
     {
       рдмреНрд▓реЙрдХ + = (DCTSIZE2 * m_ccomp [c] .m_nblocks);
     }
   ...
 } 


рдкреАрд╡реАрдПрд╕-рд╕реНрдЯреВрдбрд┐рдпреЛ рдбрд╛рдпрдЧреНрдиреЛрд╕реНрдЯрд┐рдХ рд╕рдВрджреЗрд╢: V535 рдЪрд░ 'c' рдХрд╛ рдЙрдкрдпреЛрдЧ рдЗрд╕ рд▓реВрдк рдХреЗ рд▓рд┐рдП рдФрд░ рдмрд╛рд╣рд░реА рд▓реВрдк рдХреЗ рд▓рд┐рдП рдХрд┐рдпрд╛ рдЬрд╛ рд░рд╣рд╛ рд╣реИред jpegcodec jpegdec.cpp 4652



рджреЛ рдЫреЛрд░реЛрдВ рдХреЛ рдПрдХ рджреВрд╕рд░реЗ рдХреЗ рднреАрддрд░ рдШреЛрдВрд╕рд▓реЗ рдХреЗ рд▓рд┐рдП, рдПрдХ рдЪрд░ 'рдЧ' рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдЗрд╕ рддрд░рд╣ рдХреЗ рдбрд┐рдХреЛрдбрд┐рдВрдЧ рдлрд╝рдВрдХреНрд╢рди рдХреЗ рд╕рдВрдЪрд╛рд▓рди рдХрд╛ рдкрд░рд┐рдгрд╛рдо рдмрд╣реБрдд рдЕрдЬреАрдм рдФрд░ рдЕрдкреНрд░рддреНрдпрд╛рд╢рд┐рдд рд╣реЛ рд╕рдХрддрд╛ рд╣реИред



рдЕрдзрд┐рдХ рд╡рд┐рд╢реНрд╡рд╕рдиреАрдпрддрд╛ рдХреЗ рд▓рд┐рдП рдбрдмрд▓ рдЕрд╕рд╛рдЗрдирдореЗрдВрдЯ



  H264EncoderFrameType *
 H264ENC_MAKE_NAME (H264EncoderFrameList_findOldestToEncode) (...)
 {
   ...
   MaxBrefPOC = 
     H264ENC_MAKE_NAME (H264EncoderFrame_PicOrderCnt) (pCurr, 0, 3);
   MaxBrefPOC = 
     H264ENC_MAKE_NAME (H264EncoderFrame_PicOrderCnt) (pCurr, 0, 3);
   ...
 } 


PVS-Studio рдиреИрджрд╛рдирд┐рдХ тАЛтАЛрд╕рдВрджреЗрд╢: V519 'MaxBrefPOC' рдСрдмреНрдЬреЗрдХреНрдЯ рдХреЛ рджреЛ рдмрд╛рд░ рдХреНрд░рдорд┐рдХ рд░реВрдк рд╕реЗ рдЕрд╕рд╛рдЗрди рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред рд╢рд╛рдпрдж рдпрд╣ рдПрдХ рдЧрд▓рддреА рд╣реИред h264_enc umc_h264_enc_cpb_tmpl.cpp.h 784



рдЬрдм рдореИрдВрдиреЗ рдЗрд╕ рдХреЛрдб рдХреЛ рджреЗрдЦрд╛, рддреЛ рдореБрдЭреЗ рдкреБрд░рд╛рдиреА рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ рдордЬрд╛рдХ рдпрд╛рдж рдЖрдИ:



- рдФрд░ рдЖрдкрдХреЗ рдкрд╛рд╕ рдЕрдкрдиреЗ рдХреЛрдб рдореЗрдВ рдПрдХ рдкрдВрдХреНрддрд┐ рдореЗрдВ рджреЛ рд╕рдорд╛рди GOTO рдХреНрдпреЛрдВ рд╣реИрдВ?



- рдЕрдЧрд░ рдкрд╣рд▓рд╛ рдХрд╛рдо рди рдХрд░реЗ рддреЛ рдХреНрдпрд╛ рд╣реЛрдЧрд╛!



рдпрд╣ рддреНрд░реБрдЯрд┐ рд╢рд╛рдпрдж рдорд╣рддреНрд╡рдкреВрд░реНрдг рдирд╣реАрдВ рд╣реИ, рд▓реЗрдХрд┐рди рдлрд┐рд░ рднреА рдпрд╣ рдПрдХ рдЧрд▓рддреА рд╣реИред



рдХреЛрдб рд╣реИ рдХрд┐ рдЦрддрд░рдирд╛рдХ рд╣реИ



  AACStatus sbrencResampler_v2_32f (Ipp32f * pSrc, Ipp32f * pDst)
 {
   ...
   k = nCoef-1;
   k = nCoef;
   ...
 } 


PVS- рд╕реНрдЯреВрдбрд┐рдпреЛ рдбрд╛рдпрдЧреНрдиреЛрд╕реНрдЯрд┐рдХ рд╕рдВрджреЗрд╢: V519 'k' рдСрдмреНрдЬреЗрдХреНрдЯ рдХреЛ рдХреНрд░рдорд┐рдХ рд░реВрдк рд╕реЗ рджреЛ рдмрд╛рд░ рдорд╛рди рджрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред рд╢рд╛рдпрдж рдпрд╣ рдПрдХ рдЧрд▓рддреА рд╣реИред anac_enc sbr_enc_resampler_fp.c 90



рдпрд╣ рдбрдмрд▓ рдЕрд╕рд╛рдЗрдирдореЗрдВрдЯ рдкрд┐рдЫрд▓реЗ рдЙрджрд╛рд╣рд░рдг рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рдмрд╣реБрдд рдЕрдзрд┐рдХ рдЦрддрд░рдирд╛рдХ рд╣реИред рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдкреНрд░реЛрдЧреНрд░рд╛рдорд░ рдХреЛ рдЦреБрдж рдкрд░ рднрд░реЛрд╕рд╛ рдирд╣реАрдВ рдерд╛ред рдпрд╛ рдЙрдиреНрд╣реЛрдВрдиреЗ рд╢реБрд░реБрдЖрдд рдореЗрдВ "nCoef-1" рдФрд░ рдлрд┐рд░ "nCoef" рдХреЛ рдЖрдЬрдорд╛рдиреЗ рдХрд╛ рдлреИрд╕рд▓рд╛ рдХрд┐рдпрд╛ред рдЗрд╕реЗ "рдкреНрд░рд╛рдпреЛрдЧрд┐рдХ рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ" рднреА рдХрд╣рд╛ рдЬрд╛рддрд╛ рд╣реИред рдФрд░ рдХрд┐рд╕реА рднреА рдорд╛рдорд▓реЗ рдореЗрдВ, рдпрд╣ рдХреЛрдб рдореЗрдВ рдмрд┐рд▓реНрдХреБрд▓ рд╡рд╣реА рдЬрдЧрд╣ рд╣реИ, рдЬрд┐рд╕ рдкрд░ рдЖрдкрдХреЛ рд╡рд┐рдЪрд╛рд░ рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП рдФрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдПред



рдиреНрдпреВрдирддрдо рдореВрд▓реНрдп рдЬреЛ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдиреНрдпреВрдирддрдо рдирд╣реАрдВ рд╣реИ



  рд╢реВрдиреНрдп MeBase :: MakeVlcTableDecision ()
 {
   ...
   Ipp32s BestMV = IPP_MIN (IPP_MIN (m_cur.MvRate [0], m_cur.MvRate [1]))
                          IPP_MIN (m_cur.MvRate [2], m_cur.MvRate [3]));
   Ipp32s BestAC = IPP_MIN (IPP_MIN (m_cur.AcRate [0], m_cur.AcRate [1]),
                          IPP_MIN (m_cur.AcRate [2], m_cur.AcRate [2]));
   ...
 } 


PVS-Studio рдбрд╛рдпрдЧреНрдиреЛрд╕реНрдЯрд┐рдХ рд╕рдВрджреЗрд╢: V501 рдмрд╛рдИрдВ рдФрд░ '<' рдСрдкрд░реЗрдЯрд░ рдХреЗ рджрд╛рдИрдВ рдУрд░ рд╕рдорд╛рди рдЙрдк-рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐рдпрд╛рдБ рд╣реИрдВ: (m_cur.AcRate [2]) <(m_cur.AcRate [2]) me umc_me.cpp 898



рдлрд┐рд░ рд╕реЗ рдПрд░реЗ рдЗрдВрдбреЗрдХреНрд╕ рдореЗрдВ рдЯрд╛рдЗрдкреЛред рдЕрдВрддрд┐рдо рдЗрдВрдбреЗрдХреНрд╕ 3 рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП, рди рдХрд┐ 2. рдХреЛрдб рдХрд╛ рд╕рд╣реА рд╕рдВрд╕реНрдХрд░рдг:

  Ipp32s BestAC = IPP_MIN (IPP_MIN (m_cur.AcRate [0], m_cur.AcRate [1]),
                        IPP_MIN (m_cur.AcRate [2], m_cur.AcRate [3]); 


рдРрд╕реА рддреНрд░реБрдЯрд┐рдпрд╛рдВ рдЕрдкреНрд░рд┐рдп рд╣реИрдВ рдХрд┐ рдХреЛрдб "рд▓рдЧрднрдЧ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИред" рддреНрд░реБрдЯрд┐ рддрднреА рдкреНрд░рдХрдЯ рд╣реЛрдЧреА рдЬрдм рдиреНрдпреВрдирддрдо рддрддреНрд╡ "m_cur.AcRate [3]" рдореЗрдВ рд╕рдВрдЧреНрд░рд╣реАрдд рд╣реЛред рдЗрд╕ рддрд░рд╣ рдХреА рддреНрд░реБрдЯрд┐рдпрд╛рдВ рдкрд░реАрдХреНрд╖рдг рдХреЗ рджреМрд░рд╛рди рдЦреБрдж рдХреЛ рд╕рд╛рдмрд┐рдд рдХрд░рдирд╛ рдкрд╕рдВрдж рдХрд░рддреА рд╣реИрдВ, рд▓реЗрдХрд┐рди рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреЛ рдЙрдирдХреЗ рдЗрдирдкреБрдЯ рдбреЗрдЯрд╛ рд╕реЗрдЯ рдкрд░ред



рдЕрдзрд┐рдХрддрдо рдореВрд▓реНрдп, рдЬреЛ рдХрд╛рдлреА рдЕрдзрд┐рдХрддрдо рдирд╣реАрдВ рд╣реИ



рдЕрдзрд┐рдХрддрдо рдореВрд▓реНрдпреЛрдВ рдХреЗ рд╕рд╛рде, рдпрд╣ рд╣рдореЗрд╢рд╛ рдЕрдЪреНрдЫрд╛ рдирд╣реАрдВ рд╣реЛрддрд╛ рд╣реИ:

  Ipp32s ippVideoEncoderMPEG4 :: Init (mp4_Param * рдмрд░рд╛рдмрд░)
 {
   ...
   i = IPP_MAX (mBVOPsearchHorBack, mBVOPsearchHorBack);
   ...
 } 


рдкреАрд╡реАрдПрд╕-рд╕реНрдЯреВрдбрд┐рдпреЛ рдбрд╛рдпрдЧреНрдиреЛрд╕реНрдЯрд┐рдХ рд╕рдВрджреЗрд╢: V501 рд╕рдорд╛рди рдЙрдк-рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐рдпрд╛рдБ рд╣реИрдВ (mBVOPsearchHorBack) 'рдмрд╛рдИрдВ рдУрд░ рдФрд░'> 'рдСрдкрд░реЗрдЯрд░ рдХреЗ рджрд╛рдИрдВ рдУрд░ред mpeg4_enc mp4_enc_misc.cpp 547



MBVOPsearchHorBack рдЪрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рджреЛ рдмрд╛рд░ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдпрд╣ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ mBVOPsearchHorBack рдФрд░ mBVOPsearchVerBack рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреА рдпреЛрдЬрдирд╛ рдмрдирд╛рдИ рдЧрдИ рдереА:

  i = IPP_MAX (mBVOPsearchHorBack, mBVOPsearchVerBack); 


рд╣рдордиреЗ рдЖрдХрд╛рд╢ рдХреЛ рдЙрдВрдЧрд▓реА рд╕реЗ рдорд╛рд░рд╛



  рдЯрд╛рдЗрдкреНрдбрд┐рдлрд╝ рд╕рдВрд░рдЪрдирд╛
 {
   ...
   VM_ALIGN16_DECL (Ipp32f) nb_short [2] [3] [__ ALIGNED (MAX_PPT_SHORT)];
   ...
 } mpaPsychoacousticBlock;

 рд╕реНрдерд┐рд░ рд╢реВрдиреНрдп mp3encPsy_short_window (...)
 {
   ...
   рдЕрдЧрд░ (win_counter == 0) {
     nb_s = pBlock-> nb_short [0] [3];
   }
   ...
 } 


рдкреАрд╡реАрдПрд╕-рд╕реНрдЯреВрдбрд┐рдпреЛ рдбрд╛рдпрдЧреНрдиреЛрд╕реНрдЯрд┐рдХ рд╕рдВрджреЗрд╢: рд╡реА 557 рдРрд░реЗ рдУрд╡рд░рд░рди рд╕рдВрднрд╡ рд╣реИред '3' рд╕реВрдЪрдХрд╛рдВрдХ рд╕рд░рдгреА рдмрд╛рдЙрдВрдб рд╕реЗ рдкрд░реЗ рдЗрдВрдЧрд┐рдд рдХрд░ рд░рд╣рд╛ рд╣реИред mp3_enc mp3enc_psychoacoustic_fp.c 726



рдЬрд╛рд╣рд┐рд░рд╛ рддреМрд░ рдкрд░ рдПрдХ рд╕рд░рд▓ рдЯрд╛рдЗрдкреЛ рд╣реИред рдЧрд▓рддреА рд╕реЗ '2' рдХреЗ рдмрдЬрд╛рдп рдЗрдВрдбреЗрдХреНрд╕ '3' рдХрд╛ рдЗрд╕реНрддреЗрдорд╛рд▓ рдХрд┐рдпрд╛ред рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдкрд░рд┐рдгрд╛рдо, рд╕рдордЭрдиреЗ рдпреЛрдЧреНрдп рд╣реИрдВред



рдХрд╛рдо рдХреА рдЧрддрд┐ рдХреЛ рдзреАрдорд╛ рдХрд░рдиреЗ рдореЗрдВ рддреНрд░реБрдЯрд┐



  рд╢реВрдиреНрдп lNormalizeVector_32f_P3IM (Ipp32f * vec [3], Ipp32f * рдорд╛рд╕реНрдХ, 
                                Ippps рд▓реЗрди) {
   Ipp32s i;
   Ipppf рдорд╛рдирджрдВрдб;

   рдХреЗ рд▓рд┐рдП (i = 0; рдореИрдВ <рд▓реЗрди; рдореИрдВ ++) {
     рдЕрдЧрд░ (рдореБрдЦреМрдЯрд╛ <0) рдЬрд╛рд░реА рд╣реИ;
     norm = 1.0f / sqrt (vec [0] [i] * vec [0] [i] +
            vec [рез] [i] * vec [рез] [i] +
            vec [2] [i] * vec [реи] [i]);
            vec [0] [i] * = рдорд╛рдирджрдВрдб;  vec [1] [i] * = рдорд╛рдирджрдВрдб;  vec [2] [i] * = рдорд╛рдирджрдВрдб;
   }
 } 


PVS- рд╕реНрдЯреВрдбрд┐рдпреЛ рдиреИрджрд╛рдирд┐рдХ тАЛтАЛрд╕рдВрджреЗрд╢: V503 рдпрд╣ рдПрдХ рдирд┐рд░рд░реНрдердХ рддреБрд▓рдирд╛ рд╣реИ: рд╕реВрдЪрдХ <0ред ipprsample ippr_sample.cpp 501



рдпрд╣ рдХреЛрдб рдХрд╛ рдПрдХ рд╕реБрдВрджрд░ рдЙрджрд╛рд╣рд░рдг рд╣реИ, рдЬреЛ рдПрдХ рддреНрд░реБрдЯрд┐ рдХреЗ рдХрд╛рд░рдг, рдзреАрд░реЗ-рдзреАрд░реЗ рдЕрдзрд┐рдХ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИред рдПрд▓реНрдЧреЛрд░рд┐рдереНрдо рдХреЛ рдХреЗрд╡рд▓ рдЙрди рддрддреНрд╡реЛрдВ рдХреЛ рд╕рд╛рдорд╛рдиреНрдп рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП рдЬреЛ рдореБрдЦреМрдЯрд╛ рд╕рд░рдгреА рдореЗрдВ рдЪрд┐рд╣реНрдирд┐рдд рд╣реИрдВред рд▓реЗрдХрд┐рди рдЙрдкрд░реЛрдХреНрдд рдХреЛрдб рд╕рднреА рддрддреНрд╡реЛрдВ рдХрд╛ рд╕рд╛рдорд╛рдиреНрдпреАрдХрд░рдг рдХрд░рддрд╛ рд╣реИред рддреНрд░реБрдЯрд┐ рд╕реНрдерд┐рддрд┐ рдореЗрдВ рд╣реИ "рдЕрдЧрд░ (рдореБрдЦреМрдЯрд╛ <0)"ред рдпрд╣рд╛рдВ рд╡реЗ "i" рдЗрдВрдбреЗрдХреНрд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рднреВрд▓ рдЧрдПред рдорд╛рд╕реНрдХ рдкреЙрдЗрдВрдЯрд░ рд▓рдЧрднрдЧ рд╣рдореЗрд╢рд╛ рд╢реВрдиреНрдп рд╕реЗ рдЕрдзрд┐рдХ рдпрд╛ рдмрд░рд╛рдмрд░ рд╣реЛрдЧрд╛, рдЬрд┐рд╕рдХрд╛ рдЕрд░реНрде рд╣реИ рдХрд┐ рд╣рдо рд╕рднреА рддрддреНрд╡реЛрдВ рдХреЛ рд╕рдВрд╕рд╛рдзрд┐рдд рдХрд░реЗрдВрдЧреЗред



рд╕рд╣реА рдЬрд╛рдВрдЪ:

  рдЕрдЧрд░ (рдореБрдЦреМрдЯрд╛ [i] <0) рдЬрд╛рд░реА рд╣реИ; 


рдШрдЯрд╛рд╡ рдХрд╛ рдкрд░рд┐рдгрд╛рдо рд╣рдореЗрд╢рд╛ 0 рд╣реЛрддрд╛ рд╣реИ



  int ec_fb_GetSubbandNum (рд╢реВрдиреНрдп * рд╕реНрдЯреЗрдЯ)
 {
     _fbECState * state = (_ fbECState *) рд╕реНрдЯреЗрдЯ;
     рд╡рд╛рдкрд╕реА (рд░рд╛рдЬреНрдп-> рдлреНрд░реАрдХ-рд╕реНрдЯреЗрдЯ-> рдлреНрд░реАрдХ);
 } 


PVS-Studio рдбрд╛рдпрдЧреНрдиреЛрд╕реНрдЯрд┐рдХ рд╕рдВрджреЗрд╢: V501 рдмрд╛рдИрдВ рдФрд░ 'рджрд╛рдИрдВ рдУрд░' рдХреЗ рд╕рдорд╛рди рдЙрдк-рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐рдпрд╛рдБ рд╣реИрдВ - 'рдСрдкрд░реЗрдЯрд░': рд░рд╛рдЬреНрдп-> freq - рд░рд╛рдЬреНрдп-> freq рд╡рд╛рдХ ec_fb.c 250



рдпрд╣рд╛рдВ, рдПрдХ рдЯрд╛рдЗрдкреЛ рдХреЗ рдХрд╛рд░рдг, рдлрд╝рдВрдХреНрд╢рди рд╣рдореЗрд╢рд╛ рдорд╛рди рд╡рд╛рдкрд╕ рдХрд░ рджреЗрдЧрд╛ 0. рдХреБрдЫ рдЧрд▓рдд рд╣реИ, рд╣рдо рдпрд╣рд╛рдВ рдШрдЯрд╛рддреЗ рд╣реИрдВред рдЖрдкрдХреЛ рдХреНрдпрд╛ рдШрдЯрд╛рдирд╛ рд╣реИ, рдореБрдЭреЗ рдирд╣реАрдВ рдкрддрд╛ред



рдмрдлрд░ рдХреА рдХрдореА рдХреА рдЧрд▓рдд рд╣реИрдВрдбрд▓рд┐рдВрдЧ



  typedef рдЕрд╣рд╕реНрддрд╛рдХреНрд╖рд░рд┐рдд int Ipp32u;

 UMC :: рд╕реНрдерд┐рддрд┐ Init (..., Ipp32u рдпрд╛рдж рд░рдЦреЗрдВ, ...)
 {
   ...
   memSize - = UMC :: align_value <Ipp32u> (m_nFrames * sizeof (рдлреНрд░реЗрдо));
   рдЕрдЧрд░ (рдпрд╛рдж рд░рдЦреЗрдВ <0)
       рд╡рд╛рдкрд╕реА UMC :: UMC_ERR_NOT_ENOUGH_BUFFER;
   ...
 } 


рдкреАрд╡реАрдПрд╕-рд╕реНрдЯреВрдбрд┐рдпреЛ рдбрд╛рдпрдЧреНрдиреЛрд╕реНрдЯрд┐рдХ рд╕рдВрджреЗрд╢: V547 рдПрдХреНрд╕рдкреНрд░реЗрд╢рди 'рдореЗрдорд╕реНрд▓рд╛рдЗрдЬ <0' рд╣рдореЗрд╢рд╛ рдЧрд▓рдд рд╣реЛрддрд╛ рд╣реИред рдЕрд╣рд╕реНрддрд╛рдХреНрд╖рд░рд┐рдд рдкреНрд░рдХрд╛рд░ рдХрд╛ рдорд╛рди рдХрднреА рдирд╣реАрдВ рд╣реИ <0ред Vc1_enc umc_vc1_enc_planes.h 200



рдЧрд▓рдд рддрд░реАрдХреЗ рд╕реЗ, рд╕реНрдерд┐рддрд┐ рдХреЛ рд╕рдВрднрд╛рд▓рд╛ рдЬрд╛ рд░рд╣рд╛ рд╣реИ рдЬрдм рдСрдкрд░реЗрд╢рди рдХреЗ рд▓рд┐рдП рдмрдлрд░ рдЖрдХрд╛рд░ рдЕрдкрд░реНрдпрд╛рдкреНрдд рд╣реИред рддреНрд░реБрдЯрд┐ рдХреЛрдб рд╡рд╛рдкрд╕ рдХрд░рдиреЗ рдХреЗ рдмрдЬрд╛рдп, рдХрд╛рд░реНрдпрдХреНрд░рдо рдХрд╛рдо рдХрд░рдирд╛ рдЬрд╛рд░реА рд░рдЦреЗрдЧрд╛ рдФрд░ рд╕рдмрд╕реЗ рдЕрдзрд┐рдХ рд╕рдВрднрд╛рд╡рдирд╛ рджреБрд░реНрдШрдЯрдирд╛рдЧреНрд░рд╕реНрдд рд╣реЛ рдЬрд╛рдПрдЧреАред рддрдереНрдп рдпрд╣ рд╣реИ рдХрд┐ рдЪрд░ "рдореЗрдореЗрд╕рд╛рдЗрдЬ" рдкреНрд░рдХрд╛рд░ рдХрд╛ "рдЕрд╣рд╕реНрддрд╛рдХреНрд╖рд░рд┐рдд рдЗрдВрдЯ" рд╣реИред рдЗрд╕рд▓рд┐рдП, рд╕реНрдерд┐рддрд┐ "рдореЗрдорд╕реНрд▓рд╛рдЗрдЬрд╝ <0" рд╣рдореЗрд╢рд╛ рдЭреВрдареА рд╣реЛрддреА рд╣реИ рдФрд░ рд╣рдо рдЕрдкрд░реНрдпрд╛рдкреНрдд рдЖрдХрд╛рд░ рдХреЗ рдмрдлрд░ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдирд╛ рдЬрд╛рд░реА рд░рдЦрддреЗ рд╣реИрдВред



рдпрд╣ рд╢рд╛рдпрдж рдХрд┐рд╕реА рдХрд╛рд░реНрдпрдХреНрд░рдо рдХреА рд╣рдорд▓рд╛ рдХрд░рдиреЗ рдХреА рднреЗрджреНрдпрддрд╛ рдХрд╛ рдПрдХ рдЕрдЪреНрдЫрд╛ рдЙрджрд╛рд╣рд░рдг рд╣реИред рдЧрд▓рдд рдбреЗрдЯрд╛ рдЦрд┐рд╕рдХрдиреЗ рд╕реЗ рдЖрдк рдмрдлрд░ рдХреЛ рдУрд╡рд░рдлреНрд▓реЛ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рдЙрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рд╡реИрд╕реЗ, рд▓рдЧрднрдЧ 10 рдРрд╕реА рдХрдордЬреЛрд░рд┐рдпрд╛рдВ рдереАрдВред рдореИрдВ рдЙрдиреНрд╣реЗрдВ рдкрд╛рда рдХреЛ рдЕрд╡реНрдпрд╡рд╕реНрдерд┐рдд рдирд╣реАрдВ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдирд╣реАрдВ рд▓рд╛рдКрдВрдЧрд╛ред



рдЧрд▓рдд рдЪреЗрдХ рдФрд░, рдкрд░рд┐рдгрд╛рдорд╕реНрд╡рд░реВрдк, рд╕рд░рдгреА рдХреА рд╕реАрдорд╛ рд╕реЗ рдмрд╛рд╣рд░ рдЬрд╛рдирд╛



  Ipp32u m_iCurrMBIndex;
 VC1EncoderMBInfo * VC1EncoderMBs :: GetPevMBInfo (Ipp32s x, Ipp32s y)
 {
   Ipp32s рдкрдВрдХреНрддрд┐ = (y> 0)?  m_iPrevRowIndex: m_iCurrRowIndex;
   рд╡рд╛рдкрд╕реА ((m_iCurrMBIndex - x <0 || row <0)? 0?)
     & m_MBInfo [рдкрдВрдХреНрддрд┐] [m_iCurrMBIndex - x]);
 } 


рдкреАрд╡реАрдПрд╕-рд╕реНрдЯреВрдбрд┐рдпреЛ рдбрд╛рдпрдЧреНрдиреЛрд╕реНрдЯрд┐рдХ рд╕рдВрджреЗрд╢: V547 рдПрдХреНрд╕рдкреНрд░реЗрд╢рди 'm_iCurrMBIndex - x <0' рд╣рдореЗрд╢рд╛ рдЧрд▓рдд рд╣реЛрддрд╛ рд╣реИред рдЕрд╣рд╕реНрддрд╛рдХреНрд╖рд░рд┐рдд рдкреНрд░рдХрд╛рд░ рдХрд╛ рдорд╛рди рдХрднреА <0ред Vc1_enc umc_vc1_enc_mb.cpp 188 рдирд╣реАрдВ рд╣реИ



рдЪрд░ "m_iCurrMBIndex" рдкреНрд░рдХрд╛рд░ рдХрд╛ "рдЕрд╣рд╕реНрддрд╛рдХреНрд╖рд░рд┐рдд" рд╣реИред рдЗрд╕ рд╡рдЬрд╣ рд╕реЗ, рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐ "m_iCurrMBIndex - x" рднреА "рдЕрд╣рд╕реНрддрд╛рдХреНрд╖рд░рд┐рдд" рдкреНрд░рдХрд╛рд░ рдХрд╛ рд╣реИред рдЗрд╕рд▓рд┐рдП, рд╕реНрдерд┐рддрд┐ "m_iCurrMBIndex - x <0" рд╣рдореЗрд╢рд╛ рдЭреВрдареА рд╣реЛрддреА рд╣реИред рдкрд░рд┐рдгрд╛рдореЛрдВ рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░реЗрдВред



рдЪрд▓реЛ рдЪрд░ "m_iCurrMBIndex" 5 рд╣реИ, рдФрд░ рдЪрд░ "x" 10 рд╣реИред



рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐ "m_iCurrMBIndex - x" 5u - 10i = 0xFFFFFFFBu рд╣реИред



"M_iCurrMBIndex - x <0" рд╕реНрдерд┐рддрд┐ рдЭреВрдареА рд╣реИред



рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐ "m_MBInfo [рдкрдВрдХреНрддрд┐] [0xFFFFFFFBu]" рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХреА рдЧрдИ рд╣реИ рдФрд░ рд╕рд░рдгреА рдкрд╛рд░ рд╣реЛ рдЧрдИ рд╣реИред



рдЯрд░реНрдиреЗрд░реА рд╕рдВрдЪрд╛рд▓рдХ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдореЗрдВ рддреНрд░реБрдЯрд┐ '?:'ред



рдЯрд░реНрдирд░реА рдСрдкрд░реЗрдЯрд░ рдХрд╛рдлреА рдЦрддрд░рдирд╛рдХ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рдЧрд▓рддреА рдХрд░рдирд╛ рдЖрд╕рд╛рди рд╣реИред рд╣рд╛рд▓рд╛рдВрдХрд┐, рдкреНрд░реЛрдЧреНрд░рд╛рдорд░ рдХреЛ рдХрдо рд▓рд┐рдЦрдирд╛ рдФрд░ рдПрдХ рджрд┐рд▓рдЪрд╕реНрдк рднрд╛рд╖рд╛ рдирд┐рд░реНрдорд╛рдг рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдкрд╕рдВрдж рд╣реИред C ++ рднрд╛рд╖рд╛ рдЗрд╕реЗ рд╕рдЬрд╛ рджреЗрддреА рд╣реИред

  vm_file * vm_file_fopen (...)
 {
   ...
   mds [3] = FILE_ATTRIBUTE_NORMAL |
            (islog == 0)?  0: FILE_FLAG_NO_BUFFERING;
   ...
 } 


PVS- рд╕реНрдЯреВрдбрд┐рдпреЛ рдбрд╛рдпрдЧреНрдиреЛрд╕реНрдЯрд┐рдХ рд╕рдВрджреЗрд╢: V502 рд╢рд╛рдпрдж '?' 'рдСрдкрд░реЗрдЯрд░ рдЕрдкреЗрдХреНрд╖рд╛ рдХреЗ рдЕрдиреБрд░реВрдк рдХрд╛рдо рдХрд░рддрд╛ рд╣реИред '?:' рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рдСрдкрд░реЗрдЯрд░ рдХреА рдкреНрд░рд╛рдердорд┐рдХрддрд╛ рдХрдо рд╣реИред рдСрдкрд░реЗрдЯрд░ред vm vm_file_win.c 393



рдХреЛрдб FILE_ATTRIBUTE_NORMAL рдФрд░ FILE_FLAG_NO_BUFFERING рдЭрдВрдбреЗ рдХрд╛ рд╕рдВрдпреЛрдЬрди рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред рд▓реЗрдХрд┐рди рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ, "mds [3]" рддрддреНрд╡ рдХреЛ рд╣рдореЗрд╢рд╛ рдорд╛рди 0 рджрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред



рдкреНрд░реЛрдЧреНрд░рд╛рдорд░ рднреВрд▓ рдЧрдпрд╛ рдХрд┐ рдСрдкрд░реЗрдЯрд░ | "?:" рдСрдкрд░реЗрдЯрд░ рдХреА рдкреНрд░рд╛рдердорд┐рдХрддрд╛ рд╕реЗ рдЕрдзрд┐рдХ рд╣реИред рдпрд╣ рдкрддрд╛ рдЪрд▓рд╛ рд╣реИ рдХрд┐ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐ рдХреЛрдб рдореЗрдВ рд▓рд┐рдЦреА рдЧрдИ рд╣реИ (рдХреЛрд╖реНрдардХ рдкрд░ рдзреНрдпрд╛рди рджреЗрдВ):



(FILE_ATTRIBUTE_NORMAL | (islog == 0))?



0: FILE_FLAG_NO_BUFFERING;



рд╢рд░реНрдд FILE_ATTRIBUTE_NORMAL | (.log == 0) "рд╣рдореЗрд╢рд╛ рд╕рддреНрдп рд╣реЛрддрд╛ рд╣реИ рдФрд░ рд╣рдо рддрддреНрд╡" mds [3] "рдХреЛ 0 рдкрд░ рд╕реЗрдЯ рдХрд░рддреЗ рд╣реИрдВред



рд╕рд╣реА рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐ рдЗрд╕ рддрд░рд╣ рджрд┐рдЦрдиреА рдЪрд╛рд╣рд┐рдП (рдлрд┐рд░ рд╕реЗ, рдХреЛрд╖реНрдардХ рдкрд░ рдзреНрдпрд╛рди рджреЗрдВ):

  FILE_ATTRIBUTE_NORMAL |
   ((islog == 0))?  0: FILE_FLAG_NO_BUFFERING); 


рдПрдХ рд╕рд░рдгреА рдХреЗ рд╕рд╛рде рдЕрдЬреАрдм рдХрд╛рдо



  AACStatus alsdecGetFrame (...)
 {
   ...
   рдХреЗ рд▓рд┐рдП (i = 0; рдореИрдВ <num; рдореИрдВ ++) {
     ...
     * tmpPtr = (Ipp32s) ((tmp << 24) + ((tmp & 0xff00) << t)
                       ((tmp >> 8) & 0xff00) + (tmp >> 24));
     * tmpPtr = * srcPrt;
     ...
   }
   ...
 } 


PVS- рд╕реНрдЯреВрдбрд┐рдпреЛ рдбрд╛рдпрдЧреНрдиреЛрд╕реНрдЯрд┐рдХ рд╕рдВрджреЗрд╢: V519 '* tmpPtr' рдСрдмреНрдЬреЗрдХреНрдЯ рдХреЛ рдХреНрд░рдорд┐рдХ рд░реВрдк рд╕реЗ рджреЛ рдмрд╛рд░ рдорд╛рди рджрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред рд╢рд╛рдпрдж рдпрд╣ рдПрдХ рдЧрд▓рддреА рд╣реИред aac_dec als_dec_api.c 928



рдореИрдВ рдкрд╛рдардХ рдХреЛ рдХреЛрдб рдХрд╛ рдЕрдзреНрдпрдпрди рдХрд░рдиреЗ рдФрд░ рдирд┐рд╖реНрдХрд░реНрд╖ рдирд┐рдХрд╛рд▓рдиреЗ рдХрд╛ рд╕реБрдЭрд╛рд╡ рджреЗрддрд╛ рд╣реВрдВред рдореИрдВ рдЗрд╕ рдХреЛрдб рдХрд╛ рд╡рд░реНрдгрди рд╕рд┐рд░реНрдл рдПрдХ рд╢рдмреНрдж рдореЗрдВ рдХрд░реВрдВрдЧрд╛ - "рдореВрд▓"ред



рдкреИрд░рд╛рдиреЙрд░реНрдорд▓ рдЕрд╕рд╛рдЗрдирдореЗрдВрдЯреНрд╕



  рд╕реНрдерд┐рд░
 IPLStatus ownRemap8u_Pixel (...) {
   ...
   saveXMask = xMap-> рдорд╛рд╕реНрдХрд░реА;
   saveXMask = NULL;
   saveYMask = yMap-> рдорд╛рд╕реНрдХрд░реА;
   saveYMask = NULL;  
   ...
 } 


рдкреАрд╡реАрдПрд╕-рд╕реНрдЯреВрдбрд┐рдпреЛ рдиреИрджрд╛рдирд┐рдХ тАЛтАЛрд╕рдВрджреЗрд╢:



V519 'saveXMask' рдСрдмреНрдЬреЗрдХреНрдЯ рдХреЛ рдХреНрд░рдорд┐рдХ рд░реВрдк рд╕реЗ рджреЛ рдмрд╛рд░ рдорд╛рди рдЕрд╕рд╛рдЗрди рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред рд╢рд╛рдпрдж рдпрд╣ рдПрдХ рдЧрд▓рддреА рд╣реИред ipl iplremap.c 36



V519 'saveYMask' рдСрдмреНрдЬреЗрдХреНрдЯ рдХреЛ рдХреНрд░рдорд┐рдХ рд░реВрдк рд╕реЗ рджреЛ рдмрд╛рд░ рдорд╛рди рджрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред рд╢рд╛рдпрдж рдпрд╣ рдПрдХ рдЧрд▓рддреА рд╣реИред ipl iplremap.c 38



рдЗрд╕ рддрд░рд╣ рдХреЗ рдПрдХ рдЕрдЬреАрдм рдХреЛрдб рдХреА рдЙрдкрд╕реНрдерд┐рддрд┐ рдХрд╛ рдХрд╛рд░рдг рдореЗрд░реЗ рд▓рд┐рдП рд╕реНрдкрд╖реНрдЯ рдирд╣реАрдВ рд╣реИред рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдПрдХ рд╕рдорд╛рди рдмреНрд▓реЙрдХ 8 рдХрд╛рд░реНрдпреЛрдВ рдореЗрдВ рджреЛрд╣рд░рд╛рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ!



рдПрдХ рдЪрд░ рдХреЗ рдЕрдиреНрдп рд╕рдВрджрд┐рдЧреНрдз рдХрд╛рд░реНрдп рд╣реИрдВ:

  Ipp32s ippVideoEncoderMPEG4 :: Init (mp4_Param * рдмрд░рд╛рдмрд░)
 {
   ...
   mNumOfFrames = par-> NumOfFrames;
   mNumOfFrames = -1;
   ...
 } 


PVS- рд╕реНрдЯреВрдбрд┐рдпреЛ рдбрд╛рдпрдЧреНрдиреЛрд╕реНрдЯрд┐рдХ рд╕рдВрджреЗрд╢: V519 'mNumOfFrames' рдСрдмреНрдЬреЗрдХреНрдЯ рдХреЛ рдХреНрд░рдорд┐рдХ рд░реВрдк рд╕реЗ рджреЛ рдмрд╛рд░ рдорд╛рди рджрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред рд╢рд╛рдпрдж рдпрд╣ рдПрдХ рдЧрд▓рддреА рд╣реИред mpeg4_enc mp4_enc_misc.cpp 276



рдирд┐рд╖реНрдХрд░реНрд╖



рдпрд╣ рдЖрд▓реЗрдЦ рдХреЗрд╡рд▓ рдХреБрдЫ рддреНрд░реБрдЯрд┐рдпреЛрдВ рдХреЛ рд╕реВрдЪреАрдмрджреНрдз рдХрд░рддрд╛ рд╣реИ рдЬреЛ рдореБрдЭреЗ рд╡рд┐рдВрдбреЛрдЬ рдХреЗ рд▓рд┐рдП рдЖрдИрдкреАрдкреА рдирдореВрдиреЗ рдореЗрдВ рдорд┐рд▓реА рдереАрдВред рдореИрдВрдиреЗ рдХреБрдЫ рддреНрд░реБрдЯрд┐рдпреЛрдВ рдХрд╛ рд╣рд╡рд╛рд▓рд╛ рдирд╣реАрдВ рджрд┐рдпрд╛, рдХреНрдпреЛрдВрдХрд┐ рд╡реЗ рдЙрди рдЙрджрд╛рд╣рд░рдгреЛрдВ рдХреЗ рдЬреБрдбрд╝рд╡рд╛рдВ рднрд╛рдИ рд╣реИрдВ, рдЬрд┐рдирдХреА рдореИрдВрдиреЗ рд▓реЗрдЦ рдореЗрдВ рдЬрд╛рдВрдЪ рдХреА рдереА, рдФрд░ рдЙрдирдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдкрдврд╝рдирд╛ рджрд┐рд▓рдЪрд╕реНрдк рдирд╣реАрдВ рд╣реЛрдЧрд╛ред рдореИрдВрдиреЗ рдпрд╣рд╛рдВ рдЫреЛрдЯреА-рдореЛрдЯреА рддреНрд░реБрдЯрд┐рдпреЛрдВ рдХрд╛ рд╣рд╡рд╛рд▓рд╛ рдирд╣реАрдВ рджрд┐рдпрд╛ред рдПрдХ рдЙрджрд╛рд╣рд░рдг рдореБрдЦрд░ рд╣реИ (), рдЬреЛ рдПрдХ рдЯрд╛рдЗрдкреЛ рдХреЗ рдХрд╛рд░рдг рд╣рдореЗрд╢рд╛ рд╕рдЪ рд╣реЛрддрд╛ рд╣реИред рдореИрдВрдиреЗ рдХреЛрдб рдХреЗ рдХрдИ рдЦрдВрдбреЛрдВ рдХреЛ рдпрд╛рдж рдХрд┐рдпрд╛ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рдореБрдЭреЗ рдирд╣реАрдВ рдкрддрд╛ рдХрд┐ рдХреНрдпрд╛ рдпрд╣ рдПрдХ рдЧрд▓рддреА рд╣реИ рдпрд╛ рдпрд╣ рдХреЗрд╡рд▓ рдмрджрд╕реВрд░рдд рд▓рд┐рдЦрд╛ рд╣реИред рд╣рд╛рд▓рд╛рдВрдХрд┐, рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рд╡рд░реНрдгрд┐рдд рджреЛрд╖ рдкреЗрд╢реЗрд╡рд░ рдбреЗрд╡рд▓рдкрд░реНрд╕ рджреНрд╡рд╛рд░рд╛ рднреА рдмрдбрд╝реА рдкрд░рд┐рдпреЛрдЬрдирд╛рдУрдВ рдХреЛ рд▓рд┐рдЦрдиреЗ рдХреА рдХрдард┐рдирд╛рдИ рдХреЛ рджрд┐рдЦрд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдкрд░реНрдпрд╛рдкреНрдд рд╣реИрдВред



рдПрдХ рдмрд╛рд░ рдлрд┐рд░ рдореИрдВ рд▓реЗрдЦ рдХреА рд╢реБрд░реБрдЖрдд рдореЗрдВ рд╡реНрдпрдХреНрдд рдХрд┐рдП рдЧрдП рд╡рд┐рдЪрд╛рд░ рдХреЛ рддреИрдпрд╛рд░ рдХрд░реВрдВрдЧрд╛ред рдпрд╣рд╛рдВ рддрдХ тАЛтАЛрдХрд┐ рдПрдХ рдЕрдЪреНрдЫрд╛ рдкреНрд░реЛрдЧреНрд░рд╛рдорд░ рдЯрд╛рдЗрдкреЛрд╕, рднреВрд▓рдиреЗ рдХреА рдмреАрдорд╛рд░реА, рдХреЙрдкреА-рдкреЗрд╕реНрдЯ рдХрд░рдиреЗ рдХреА рдЗрдЪреНрдЫрд╛ рдФрд░ рддрд░реНрдХ рдореЗрдВ рддреНрд░реБрдЯрд┐рдпреЛрдВ рд╕реЗ рдкреНрд░рддрд┐рд░рдХреНрд╖рд╛ рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИред рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рднрд╡рд┐рд╖реНрдп рдореЗрдВ, рдЗрд╕ рд▓реЗрдЦ рдХрд╛ рдПрдХ рд▓рд┐рдВрдХ рдЙрди рд▓реЛрдЧреЛрдВ рдХреЗ рд▓рд┐рдП рдПрдХ рдЕрдЪреНрдЫрд╛ рдЬрд╡рд╛рдм рд╣реЛрдЧрд╛ рдЬреЛ рдпрд╣ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░рддреЗ рд╣реИрдВ рдХрд┐ рд╡рд╛рдХреНрдпрд╛рдВрд╢ рдХрд╛ рдЙрдЪреНрдЪрд╛рд░рдг "рдЖрдкрдХреЛ рдХреЛрдб рдХреЛ рд╕рд╣реА рдврдВрдЧ рд╕реЗ рд▓рд┐рдЦрдирд╛ рд╣реЛрдЧрд╛" рдЙрдиреНрд╣реЗрдВ рдХрд┐рд╕реА рднреА рддреНрд░реБрдЯрд┐ рд╕реЗ рдмрдЪрд╛рдПрдЧрд╛ред



рдЖрдкрдХреЗ C / C ++ / C ++ 0x рдкреНрд░реЛрдЬреЗрдХреНрдЯреНрд╕ рдореЗрдВ рд╕рднреА рдХреЛ рд╢реБрднрдХрд╛рдордирд╛рдПрдБред рдФрд░ рдореИрдВ рдЪрд╛рд╣рддрд╛ рд╣реВрдВ рдХрд┐ рдореЗрд░реЗ рджреНрд╡рд╛рд░рд╛ рд╕реНрдереИрддрд┐рдХ рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдкрджреНрдзрддрд┐ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реБрдП рдФрд░ рдЕрдзрд┐рдХ рддреНрд░реБрдЯрд┐рдпрд╛рдВ рдорд┐рд▓реЗрдВред



All Articles