You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
In C++ we currently have a parent abstract Consumer class and then SimpleConsumer, SimulcastConsumer, SvcConsumer and PipeConsumer that inherit from Consumer.
Those classes are intended to handle different producing scenarios and associated codecs.
For example a video transmission could use VP8 in single stream mode so it would use SingleConsumer.
Or with N streams in simulcast mode so it would use SimulcastConsumer.
Problems
Those classes do not represent real scenarios.
For example, a producer may perfectly use VP8 with a single stream (so this is not simulcast) and temporal layers. We currently manage it in SimulcastConsumer since it's the one ready for VP8 codec, but this is SVC.
Have a single Consumer class ready to deal with all use cases and all supported codecs.
This would also help in the future when we implement the ability to switch from a producer to another in the same consumer.
We should also reconsider those producer.type and consumer.type ("single", "simulcast", "svc" and "pipe") since they don't make any sense. However this would introduce breaking changes. Let's see how to do it.
The text was updated successfully, but these errors were encountered:
Details
Consumer
class and thenSimpleConsumer
,SimulcastConsumer
,SvcConsumer
andPipeConsumer
that inherit fromConsumer
.SingleConsumer
.SimulcastConsumer
.Problems
SimulcastConsumer
since it's the one ready for VP8 codec, but this is SVC.Proposal
Consumer
class ready to deal with all use cases and all supported codecs.producer.type
andconsumer.type
("single", "simulcast", "svc" and "pipe") since they don't make any sense. However this would introduce breaking changes. Let's see how to do it.The text was updated successfully, but these errors were encountered: