Другим способом было бы, чтобы все инструменты читали текстовые или двоичные представления, возможно, обозначенные магическим числом в начале файла. И опция командной строки может выбрать выходной формат.
В зависимости от использования может быть предпочтительным сделать двоичный файл значением «по умолчанию» и выбрать вывод текста с параметром.
prog0 -binout <input.file | prog1 -binout | prog2 >output.file
против
prog0 <input.file | prog1 | prog2 -txtout >output.file
Вам не нужно магическое число для текстового формата, если двоичное магическое число состоит из байтов не ASCII.