En Fait
Le Ministère public du canton de Soleure a condamné le recourant par ordonnance pénale du 22 mars 2011 pour plusieurs infractions à la loi sur les stupéfiants (LStup) à une amende de 200 fr. Le recourant a formé opposition.
Le substitut du juge de district de Soleure-Lebern a acquitté le recourant le 7 septembre 2011 de l'accusation de plusieurs infractions à la LStup. Le Ministère public a interjeté appel de cette décision.
Le Tribunal cantonal de Soleure a rejeté le 8 mai 2012 la demande de récusation du recourant à l'encontre du juge d'instruction et du greffier, la déclarant irrecevable. Par jugement du 10 mai 2012, il a déclaré le recourant coupable de plusieurs infractions à la LStup (art. 19a ch. 1 LStup), commises du 10 mai au 3 août 2009. Il a renoncé à le sanctionner. Pour la période allant de février 2009 au 9 mai 2009, il a prononcé un acquittement en raison de la prescription.
Le Tribunal cantonal a reproché au substitut du juge de district une constatation arbitraire des faits et a retenu comme établi que le recourant avait acquis et consommé de la cocaïne à usage personnel une fois par mois entre le 10 mai et juillet 2009. Il aurait en outre, le 3 août 2009, pris des dispositions pour acheter de la cocaïne à usage personnel pour 50 fr.
Le recourant a demandé, par recours en matière pénale et subsidiairement par recours constitutionnel, l'annulation de la décision du 8 mai 2012 et du jugement du 10 mai 2012, la confirmation du jugement du substitut du juge de district du 7 septembre 2011 ainsi que le renvoi de l'affaire au Tribunal cantonal pour une nouvelle fixation des frais de procédure et de partie. Il a sollicité l'effet suspensif du recours.
En Droit
Le Tribunal fédéral a d'abord examiné l'admissibilité du recours. Il a constaté que le recours en matière pénale englobe également la contestation du droit constitutionnel (art. 95 LTF), alors qu'il n'y a pas lieu de statuer sur le recours constitutionnel subsidiaire (art. 113 LTF). De nouvelles demandes de preuve du recourant, comme la consultation des dossiers administratifs du contrôle des véhicules automobiles du canton de Soleure ou des dossiers militaires de l'DDPS, ont été déclarées irrecevables, celles-ci n'étant pas motivées par la décision de l'instance précédente (art. 99 al. 1 LTF, art. 42 al. 2 LTF).
Sur la partialité du greffier : Le recourant a reproché la partialité du greffier [Y.] , qui se serait exprimé de manière désobligeante à l'égard de l'affaire lors d'une conversation téléphonique avec son épouse. Le Tribunal fédéral a indiqué que la partialité devait s'apprécier objectivement et ne pouvait reposer sur des sentiments subjectifs. Comme le greffier incriminé n'avait pas participé à la prise de décision et que les actes reprochés avaient eu lieu avant son intervention, il n'y avait pas de motif de récusation. En outre, l'instance précédente n'était pas tenue de « décontaminer » les actes de procédure déjà accomplis (art. 60 al. 1 CPP). L'indication de la prescription imminente ne créait pas d'apparence de partialité, cette tâche relevant des attributions du tribunal de veiller au bon déroulement de la procédure. Une violation de l'art. 30 al. 1 Cst., de l'art. 32 al. 1 Cst. ou de l'art. 6 par. 1 CEDH a été écartée.
Sur la conduite de la procédure par le Tribunal cantonal : Le recourant a reproché au Tribunal cantonal d'avoir statué sur l'affaire sans attendre l'autorité de la chose jugée de la décision intermédiaire du 8 mai 2012. Le Tribunal fédéral a rejeté cette réclamation, les recours contre des décisions intermédiaires n'ayant pas d'effet suspensif (art. 103 al. 1 LTF). En outre, la réclamation de violation de l'art. 403 al. 1 CPP a été écartée, l'instance précédente ayant traité formellement correctement l'appel du Ministère public. Le Ministère public avait reproché à la décision de première instance d'être arbitraire, ce qui constituait une motivation suffisante. L'examen de l'arbitraire dans la procédure d'appel n'était pas contestable, l'instance précédente n'ayant pas dû remplacer les constatations des faits de l'instance de première instance par les siennes propres, mais seulement vérifier leur absence d'arbitraire (art. 398 al. 4 CPP, art. 97 al. 1 LTF).
Sur la tenue d'une procédure d'appel écrite : Le recourant a reproché au Tribunal cantonal d'avoir renoncé à une procédure écrite sans justification suffisante, violant ainsi son droit à une audience publique et à la publication du jugement (art. 6 par. 1 CEDH, art. 30 al. 3 Cst.). Le Tribunal fédéral a indiqué que la procédure d'appel devait en principe se dérouler oralement, les procédures écrites n'étant admises qu'à titre exceptionnel (art. 406 CPP). En l'espèce, seules des infractions étaient en cause et les questions à trancher étaient de portée limitée. En outre, le recourant n'avait pas fait valoir que l'audience de première instance n'avait pas…