首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何使用Kafka流式播放视频文件?

如何使用Kafka流式播放视频文件?
EN

Stack Overflow用户
提问于 2019-03-18 23:11:13
回答 2查看 6.3K关注 0票数 3

我正在尝试以kafka流消息的形式发送多个.mp4文件。

我尝试使用与处理文本消息相同的方法,但不起作用。

这是否意味着我在生产和消费时需要一个特殊的编码器/解码器/序列化器/反序列化器。我如何配置我的生产者和消费者?

EN

回答 2

Stack Overflow用户

发布于 2019-03-19 00:16:34

创建类似于文本文件创建的文件

通过这样做,我假设您遵循的是设置生产者和消费者的示例,通过kafka发送文本/json消息。

在您的例子中,您需要将您的视频文件/块/块序列化为字节,将原始字节发送到kafka,在消费者中读取这些字节,然后将您的视频文件/块/块反序列化回

要通过kafka发送原始字节,需要在生产者中使用ByteArraySerializer,在消费者中使用ByteArrayDeserializer

请参阅:https://kafka.apache.org/20/javadoc/index.html?org/apache/kafka/common/serialization/ByteArrayDeserializer.html https://kafka.apache.org/20/javadoc/org/apache/kafka/common/serialization/ByteArraySerializer.html

因此,在您的配置中,您需要指定属性(假设您不使用键,只使用值):生产者:

代码语言:javascript
运行
复制
"key.serializer":"org.apache.kafka.common.serialization.StringSerializer"
"value.serializer":"org.apache.kafka.common.serialization.ByteArraySerializer"

消费者:

代码语言:javascript
运行
复制
"key.deserializer":"org.apache.kafka.common.serialization.StringDeserializer"
"value.deserializer":"org.apache.kafka.common.serialization.ByteArrayDeserializer"

如果您只想发送一个mp4文件,请像这样(在java中)将其读取为字节:File to byte[] in Java

代码语言:javascript
运行
复制
byte[] array = Files.readAllBytes(new File("/path/to/file").toPath());

另一方面,在consumer中,您接收该字节数组并将其保存到文件中。

票数 1
EN

Stack Overflow用户

发布于 2020-06-20 18:10:19

我有一个使用JS的例子。

你可以访问:https://gitlab.com/dimimpov/streaming-video-apache-kafka

基本上,您读取一个文件到字节数组,然后通过kafka,然后您流式传输字节数组到一个视频播放器,它可以播放块。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/55224467

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档