![如何在 Linux 中将传真传输的音频文件转换为图像?](https://linux22.com/image/1258231/%E5%A6%82%E4%BD%95%E5%9C%A8%20Linux%20%E4%B8%AD%E5%B0%86%E4%BC%A0%E7%9C%9F%E4%BC%A0%E8%BE%93%E7%9A%84%E9%9F%B3%E9%A2%91%E6%96%87%E4%BB%B6%E8%BD%AC%E6%8D%A2%E4%B8%BA%E5%9B%BE%E5%83%8F%EF%BC%9F.png)
我有一些从模拟 (POTS) 电话线录制的未压缩音频文件,这些文件是传真传输的。有没有办法将这些文件转换为它们所包含的传真图像(在 Linux 中)?
我并不想通过调制解调器发送/接收传真,而只是想“重放”通信音调并解析传真消息。我知道存在双工问题,并且不知道对话的哪一端发送了什么。
答案1
有一个名为 fax_decode 的测试工具,它接收单通道音频波形文件,并将传真位图解码为 tiff 图像文件。这正是您所要求的。
此工具是软交换项目的 SpanDSP 库的一部分。您可以从以下位置下载https://www.soft-switch.org/downloads/spandsp/并使用 --enable-tests 进行配置。源代码位于 tests/fax_decode.c 文件中。
我在传真录音的右声道上测试了它http://goughlui.com/2013/02/13/sounds-of-fax-modes-and-ecm/并且运行良好。
答案2
过去十年的大多数传真都是 CCITT Group 3 或 4,包含 image/g3fax 或 image/g4fax 数据,这些数据以 V.27、V.29、V.17、V.34 或 V.34bis 之一进行封装(或者说调制)。
请注意,传真传输并不是真正的传输,而是一种双向通信。因此,您不能简单地将音频播放回传真机并期望它能正常工作。不过,幸运的是,传真图像数据传输本身是不间断,因此可以过滤掉不必要的数据。
您需要做的是解调内容以检索二进制传真会话并过滤出并提取 image/g3fax 或 image/g4fax 数据。
已故的 Tony Fischer 为 V.34 编写了一个软件传真解调器。它只适用于 Irix,因此您需要移植它。曾经有一个 Linux 端口,但我找不到任何有效的链接。http://www-users.cs.york.ac.uk/~fisher/software/modem/current/
还有 Linmodem 项目。
通过这些资源和一些 C 编程,您应该能够提取传真...如果数据对您如此重要,这并非易事,但如果数据对您如此重要,那么这是可能的。
答案3
您的录音可能包含足够的信息来重新组合这些信息。但是我不知道在 Linux 或任何其他操作系统中是否有现成的方法可以做到这一点。
您可能想看看软调制解调器或业余无线电软件调制解调器 - 您可能能够通过环回或类似方式播放它。
或者 - 查看标准并自己实现。最好先热身一下你的 DSP 编程技能。:)
答案4
根据 Jasen 的说法,您可以设置 Linux 机器来接收传真,然后通过线路播放声音,将其传送到计算机。如果您的录音涉及发送的铃声,那么它应该可以工作。