Java:编写自定义视频编解码器的指南
我有一个很奇怪的问题,但这里是: <> P>是否有可能,在C++或java?< /P>中有没有编写自定义视频编解码器的指南? 这里有一个奇怪的部分:我不需要钻研那些我不懂的音频和电影的大量信息。我真正需要的是如何在电影播放器和电影文件之间创建软件层背后的技术知识Java:编写自定义视频编解码器的指南,java,c++,codec,video-player,Java,C++,Codec,Video Player,我有一个很奇怪的问题,但这里是: P>是否有可能,在C++或java?< /P>中有没有编写自定义视频编解码器的指南? 这里有一个奇怪的部分:我不需要钻研那些我不懂的音频和电影的大量信息。我真正需要的是如何在电影播放器和电影文件之间创建软件层背后的技术知识 这就是为什么:我想在C++/java中创建一个库或最终2个函数-编码/解码C++,它将接受任何类型的文件的原始二进制输入,并根据给定的密码或类似的东西对其进行编码/解码。然后我需要把这个处理放在电影播放器和电影文件之间。最终的结果将是一个受
这就是为什么:我想在C++/java中创建一个库或最终2个函数-编码/解码C++,它将接受任何类型的文件的原始二进制输入,并根据给定的密码或类似的东西对其进行编码/解码。然后我需要把这个处理放在电影播放器和电影文件之间。最终的结果将是一个受密码保护的mp4/avi/mpeg/wmv(其实并不重要)文件,它只能用这个“编解码器”播放。编解码器的内部逻辑现在不是问题
我想象它就像一个流,电影播放器请求文件并调用我的encode()
函数,它获取文件的一块,对其进行解码(它以前已经编码过),然后以wmv/mp4等格式返回正确的字节
这是否可能以及如何实现?编解码器通常会获取图像块和上下文信息,转换和量化数据,应用预测,然后使用任意数量的编码方案之一对产生的错误流进行编码 API通常很简单。对于encode,您将图像数据块(帧)发送到编码器,编码器生成一个比特流。您可能负责自己编写容器(文件格式)。对于解码,您可以流式传输位并输出帧 这些都是绝对没有标准的——编解码器中使用的技术有时是标准化的,但确切的接口却不是 MediaTool简介是一个简单的应用程序编程接口(API),用于在Java中解码、编码和修改视频: Java媒体框架教程:
也许对你有帮助 我知道这是很久以前的事了,但我也想实现同样的目标,所以你在这件事上找到了方法或取得了任何进展吗?