Faits: Faits: A. Le 7 février 1996, le Tribunal de district de Lausanne a désigné M._, administrateur de la société Fiduciaire O._ S.A. (ci-après: la Fiduciaire), comme curateur de la société C._ S.A. (ci-après: C._). Lors de l'assemblée générale tenue le 9 mars 1998, E._ et D._ ont été élus comme administrateurs de C._. Le 26 mars 1998, le Tribunal du district de Lausanne comme autorité de première instance en matière sommaire de poursuites a pris acte du retrait par C._ de sa requête de mise en faillite et relevé M._ de son mandat. Le 25 septembre 2001, E._ en tant que liquidateur de C._, a notifié à M._ un commandement de payer le montant de 1'000'000 fr. avec intérêts à 5% dès le 14 septembre 2001. Au titre de la créance, ce document portait la mention suivante: « Affaire C._: falsification des faits, complicité de gestion déloyale et d'escroquerie; copinage avec des hommes de loi. Complicité de destruction de preuves au dossier pénal. Fautes professionnelles graves ». A raison de cette mention, M._ et C._ ont, le 26 octobre 2001, déposé plainte pénale pour calomnie, subsidiairement diffamation et injures. Entendus le 17 décembre 2001 par le Juge d'instruction de l'arrondissement de Lausanne, les plaignants ont contesté les motifs du commandement de payer et se sont déclarés prêts à renoncer à leur plainte si E._ retirait le commandement de payer et prenait en charge les frais de la procédure, y compris les honoraires de leur défenseur. Entendu le 23 août 2003, E._ a refusé de s'exprimer sur l'affaire et de prendre position sur les conditions du retrait de la plainte. Le 12 janvier 2004, M._ et C._ ont retiré leur plainte, par gain de paix. Le 16 février 2004, le Juge d'instruction a prononcé un non-lieu. Il a mis les frais, par 825 fr., à la charge de E._ au motif que celui-ci avait eu un comportement contraire aux règles du droit civil, en portant sur le commandement de payer des propos attentatoires à l'honneur des plaignants. Le 24 mars 2004, le Tribunal d'accusation du Tribunal cantonal du canton de Vaud a rejeté le recours formé par E._ contre cette décision, qu'il a confirmée. Le 24 mars 2004, le Tribunal d'accusation du Tribunal cantonal du canton de Vaud a rejeté le recours formé par E._ contre cette décision, qu'il a confirmée. B. Agissant par la voie du recours de droit public, E._ demande au Tribunal fédéral d'annuler la décision du 24 mars 2004. Il invoque les art. 9 Cst. et 6 par. 2 CEDH. Le Tribunal d'accusation se réfère à sa décision. Le Ministère public conclut au rejet du recours. 