【发布时间】:2019-03-07 11:51:30
【问题描述】:
我面临的问题是,我需要将视频(例如 .mp4 格式)转换为 .bin,以便这些臭名昭著的 3D 全息风扇之一可以读取它。目前我正在使用 C# 这样做。
private async Task<bool> convertToBin(string file)
{
byte[] bytes = System.IO.File.ReadAllBytes(file);
string path = Path.GetFullPath(file) + ".bin";
string str = System.Text.Encoding.UTF8.GetString(bytes);
System.IO.File.WriteAllText(path, str);
return true;
}
但是,生成的 .bin 可以被风扇识别,但播放时 LED 全部变为白色。此外,如果我打开一个用粉丝软件生成的 .bin,格式似乎完全不同,因为正确 .bin 的前 8.000 行只是 0000 0000 0000 0000。
知道如何做到这一点吗?
【问题讨论】:
-
你没有转换任何东西,你只是而且只是在假设原始文件是用 UTF8 编码的情况下更改文件的扩展名。我非常怀疑这是否适用于任何类型的视频。
-
您使用的是哪种视频格式?什么编码?无论如何 - 正确的方法是读取它的字节,然后将它们写入一个新的 .bin 文件
-
您尝试过使用 Unity 吗?检查这个:How to compress and decompress binary streams in Unity
-
你能把像this one这样的测试图像转换成
.bin吗?分享转换后的 bin 文件的链接并告诉我们预期(3D 粉丝)显示分辨率的详细信息?.bin可能只是 RGB 数据。 -
我也一直在尝试实现类似的目标。显然,我不太担心将文件扩展名更改为
.bin,但是很高兴知道这些东西需要使用什么确切的视频编解码器,所以我可以使用 ffmpeg 而不是他们提供的愚蠢软件对视频进行编码(仅限 Windows,糟糕)。当然,似乎没有适当的文档可用。