Partager via


Fonction Int64x32Div32

[La fonctionnalité associée à cette page, DirectShow, est une fonctionnalité héritée. Il a été remplacé par MediaPlayer, IMFMediaEngine et Audio/Video Capture dans Media Foundation. Ces fonctionnalités ont été optimisées pour Windows 10 et Windows 11. Microsoft recommande vivement au nouveau code d’utiliser MediaPlayer, IMFMediaEngine et La capture audio/vidéo dans Media Foundation au lieu de DirectShow, lorsque cela est possible. Microsoft suggère que le code existant qui utilise les API héritées soit réécrit pour utiliser les nouvelles API si possible.]

La Int64x32Div32 fonction implémente la formule ((a*b)+rnd)/ca est une valeur 64 bits et b, c et rnd sont des valeurs 32 bits.

Syntaxe

LONGLONG WINAPI Int64x32Div32(
   LONGLONG a,
   LONG     b,
   LONG     c,
   LONG     rnd
);

Paramètres

a

Multiplicand.

b

Multiplicateur.

c

Diviseur.

Rnd

Facteur d’arrondi.

Valeur renvoyée

Retourne le (a * b + rnd)/c calcul ou l’une des valeurs suivantes.

Code de retour Description
0x7FFFFFFFFFFFFFFF
Un dépassement de capacité s’est produit parce que le résultat est trop volumineux (positif).
0x8000000000000000
Un dépassement de capacité s’est produit parce que le résultat est trop volumineux (négatif).

 

Notes

Arrondir la division est vers zéro. La division par zéro est comptabilisée comme condition de dépassement de capacité.

Les horodatages et les heures de recherche étant des valeurs 64 bits, cette fonction est utile pour effectuer des conversions sur des systèmes 32 bits. Par exemple, dans MPEG-1, la référence d’horloge système est de 90 kHz, soit 90 000 graduations par seconde. La formule pour convertir cette valeur en temps de référence (unités de 100 nanosecondes) est

(timestamp * 1000) / 9

qui peut être calculé en tant que Int64x32Div32(timestamp, 1000, 9, 0). Utilisez le paramètre rnd comme facteur d’arrondi.

Configuration requise

Condition requise Valeur
En-tête
Wxutil.h (include Streams.h)
Bibliothèque
Strmbase.lib (builds de vente au détail) ;
Strmbasd.lib (builds de débogage)

Voir aussi

Fonctions d’assistance diverses

llMulDiv