Faits :
A.
Le 25 février 2013, l'avocat X._ a été désigné en qualité de conseil juridique gratuit de la partie plaignante A._, dans la cause pénale dirigée contre B._.
Par jugement du 14 juin 2016, le Tribunal correctionnel de l'arrondissement de Lausanne a condamné par défaut B._, notamment pour lésions corporelles simples qualifiées, mise en danger de la vie d'autrui, tentative de viol et actes d'ordre sexuel commis sur une personne incapable de discernement ou de résistance. Il a par ailleurs arrêté l'indemnité due à l'avocat X._ à 6'465 fr. 45, débours et TVA compris, dont à déduire les avances sur indemnité de 3'412 fr. 50 et de 1'976 fr. 60 déjà perçues, et a laissé celle-ci à la charge de l'Etat.
B.
L'avocat X._ a recouru contre ce jugement, en concluant à sa réforme en ce sens qu'une indemnité de 7'405 fr. 05, dont à déduire les avances sur indemnité de 3'412 fr. 50 et de 1'976 fr. 60, lui est allouée. Par arrêt du 12 août 2016, la Chambre des recours pénale du Tribunal cantonal vaudois a rejeté ce recours et a confirmé le montant de l'indemnité fixé par le tribunal de première instance.
C.
X._ forme un recours en matière pénale au Tribunal fédéral contre cet arrêt en concluant, avec suite de frais et dépens, à son annulation et au renvoi de la cause à l'autorité cantonale pour nouvelle décision.

Considérant en droit :
1.
L'indemnité litigieuse a été fixée par une autorité de première instance dont la décision a ensuite fait l'objet d'un recours au plan cantonal. On ne se trouve donc pas dans l'hypothèse visée par l'<ref-law>, applicable par le renvoi de l'<ref-law>. Le recours en matière pénale est ouvert.
2.
Le recours en matière pénale est une voie de réforme (<ref-law>). Le recourant ne peut se borner à demander l'annulation de la décision et le renvoi de la cause à l'autorité cantonale, mais doit également, sous peine d'irrecevabilité, prendre des conclusions sur le fond du litige. Il n'est fait exception à ce principe que lorsque le Tribunal fédéral, s'il admettait le recours, ne serait pas en mesure de statuer lui-même sur le fond et ne pourrait que renvoyer la cause à l'autorité cantonale (<ref-ruling> consid. 1.3 p. 317 et les références citées). En l'occurrence, le recourant n'a pris aucune conclusion sur le fond, mais a uniquement sollicité l'annulation de l'arrêt attaqué et le renvoi de la cause à l'autorité précédente. Une telle manière de faire est cependant admissible s'agissant du grief de violation du droit d'être entendu, respectivement de déni de justice (arrêt 6B_868/2016 du 9 juin 2017 consid. 2 et la référence citée). Le recours est ainsi recevable.
3.
Le recourant se plaint d'un déni de justice, en relation avec la violation de son droit d'être entendu (art. 29 al. 2 Cst.).
3.1. L'obligation de motiver, telle qu'elle découle du droit d'être entendu (art. 29 al. 2 Cst.; cf. aussi art. 3 al. 2 let. c et 107 CPP), est respectée lorsque le juge mentionne, au moins brièvement, les motifs qui l'ont guidé et sur lesquels il a fondé sa décision, de manière à ce que l'intéressé puisse se rendre compte de la portée de celle-ci et l'attaquer en connaissance de cause (<ref-ruling> consid. 2.2 p. 183; <ref-ruling> consid. 5.1 p. 237). Selon la jurisprudence rendue en matière de dépens, la garantie du droit d'être entendu implique que lorsque le juge statue sur la base d'une liste de frais, il doit, s'il entend s'en écarter, au moins brièvement indiquer les raisons pour lesquelles il tient certaines prétentions pour injustifiées, afin que son destinataire puisse attaquer la décision en connaissance de cause (arrêt 6B_796/2016 du 15 mai 2017 consid. 1 et les références citées).
Le droit d'être entendu est une garantie de nature formelle, dont la violation entraîne en principe l'annulation de la décision attaquée, indépendamment des chances de succès du recours sur le fond. Selon la jurisprudence, sa violation peut cependant être réparée lorsque la partie lésée a la possibilité de s'exprimer devant une autorité de recours jouissant d'un plein pouvoir d'examen. Toutefois, une telle réparation doit rester l'exception et n'est admissible, en principe, que dans l'hypothèse d'une atteinte qui n'est pas particulièrement grave aux droits procéduraux de la partie lésée; cela étant, une réparation de la violation du droit d'être entendu peut également se justifier, même en présence d'un vice grave, lorsque le renvoi constituerait une vaine formalité et aboutirait à un allongement inutile de la procédure, ce qui serait incompatible avec l'intérêt de la partie concernée à ce que sa cause soit tranchée dans un délai raisonnable (<ref-ruling> consid. 2.8.1 p. 226 et les références citées).
3.2. La cour cantonale a retenu que le jugement du 14 juin 2016 était insuffisamment motivé concernant l'indemnité allouée au recourant, mais qu'il n'y avait cependant pas lieu de l'annuler pour violation du droit d'être entendu, dès lors que ce grief n'avait pas été soulevé. Le recourant avait d'ailleurs été en mesure d'attaquer cette décision en connaissance de cause. En outre, cette irrégularité pouvait être réparée dans le cadre de la procédure de deuxième instance, au cours de laquelle le recourant avait eu la possibilité de s'exprimer et au terme de laquelle il recevrait une décision motivée rendue par une autorité disposant d'un plein pouvoir d'examen en fait et en droit.
3.3. Le recourant fait grief à l'autorité précédente d'avoir considéré que le défaut de motivation qui affectait le jugement du 14 juin 2016 pouvait être réparé dans le cadre de la procédure de recours.
En l'occurrence, comme l'a constaté la cour cantonale, l'autorité de première instance n'a pas motivé sa décision concernant l'indemnité allouée au recourant et n'a, en particulier, nullement précisé quelles opérations figurant sur la liste du 10 mai 2016 étaient tenues pour injustifiées. A la suite de la réception du jugement motivé de première instance, le recourant s'est vu impartir un délai afin de déposer un éventuel mémoire complétif, ce qu'il a fait le 3 août 2016. Faute de pouvoir critiquer les motifs qui avaient poussé l'autorité de première instance à s'écarter de sa liste des opérations, il a uniquement fait grief à celle-ci d'avoir violé son droit d'être entendu (<ref-law>; pièce 127 du dossier cantonal). Par la suite, la cour cantonale s'est livrée à sa propre appréciation de la liste des opérations du 10 mai 2016, en détaillant celles qu'elle considérait comme adéquates et celles qu'elle estimait au contraire excessives ou injustifiées, sans toutefois donner la possibilité au recourant de se déterminer à cet égard. Ainsi, bien que l'autorité précédente disposât d'un plein pouvoir d'examen en fait et en droit (cf. <ref-law>) et ne fût pas liée par les motifs invoqués par les parties (cf. <ref-law>), elle ne pouvait réparer la violation du droit d'être entendu du recourant sans permettre à ce dernier de s'exprimer sur les éventuels motifs permettant de s'écarter de sa liste des opérations. Il lui appartenait dès lors d'annuler le jugement de première instance sur ce point et de renvoyer le dossier à l'autorité précédente en lui enjoignant de motiver sa décision, ou, si elle entendait réparer le vice elle-même, à tout le moins d'interpeller le recourant sur les opérations qu'elle tenait pour excessives ou injustifiées avant d'arrêter l'indemnité litigieuse. Le Tribunal fédéral ne dispose pas du même pouvoir d'examen que l'autorité précédente (<ref-law>) et ne saurait ainsi réparer la violation du droit d'être entendu par la cour cantonale. Partant, le grief de violation du droit d'être entendu doit être admis.
4.
Le recours est admis. L'arrêt du 12 août 2016 doit être annulé et la cause renvoyée à l'autorité précédente pour nouvelle décision dans le sens des considérants. Dans la mesure où l'objet du litige s'est limité à une question de nature purement procédurale et que le Tribunal fédéral n'a pas traité la cause sur le fond, ne préjugeant ainsi pas de l'issue de celle-ci, il peut être procédé au renvoi sans ordonner préalablement un échange d'écritures (<ref-ruling> consid. 3.4.2 p. 296).
Il ne sera pas perçu de frais judiciaires (<ref-law>). Le recourant, même s'il a plaidé sa propre cause, a, eu égard à l'objet du litige (cf. <ref-ruling> consid. 5b pp. 519 s.; arrêt 6B_659/2016 du 6 mars 2017 consid. 4), droit à des dépens à la charge du canton de Vaud pour la procédure devant le Tribunal fédéral (art. 68 al. 1 et 2 LTF).

Par ces motifs, le Tribunal fédéral prononce :
1.
Le recours est admis, l'arrêt attaqué est annulé et la cause est renvoyée à l'autorité précédente pour nouvelle décision.
2.
Il n'est pas perçu de frais judiciaires.
3.
Le canton de Vaud versera au recourant une indemnité de 1'000 fr. à titre de dépens pour la procédure devant le Tribunal fédéral.
4.
Le présent arrêt est communiqué aux parties et au Tribunal cantonal du canton de Vaud, Chambre des recours pénale.
Lausanne, le 19 juillet 2017
Au nom de la Cour de droit pénal
du Tribunal fédéral suisse
Le Président : Denys
Le Greffier : Graa