我正在写一个自定义视频格式的解码器和编码器(QTC)。解码过程包括多个阶段,其中,每个级的输出被传递到下一级的:推荐方法来并行化多通道算法
- 反序列化输入流
- 生成符号序列具有一定范围编码器
- 产生的一个流从所述符号流
- 图像序列化图像流转换为输出格式
步骤三和四占用几乎全部的处理时间,步骤3需要大约35%,第一ep四大约需要60%,第一步和最后一步都是微不足道的。
什么是平行运行四个步骤的推荐和意识形态方法?我最感兴趣的是如何处理部件之间的沟通。我打算使用一个Goroutine进行第二步,一个进行第三步,例程与缓冲通道连接。这是正确的方式吗?
我会说你的计划是好的!这也意味着你可以通过让步骤3和步骤4中的多个独立工作人员(如果算法允许)通过增加更多日常工作来加快速度。所有的并行工作人员都可以从同一个通道读取并写入同一个通道。 – 2013-04-08 18:31:10
@Nick算法对视频数据进行编码。这尤其意味着每帧的编码取决于前一帧,因此必须等待一帧完成编码以处理下一帧。 – fuz 2013-04-08 19:09:13