我正试图将mkv文件(见下面的属性)发送到Kinesis视频流。我想有10-15帧每秒的FPS。
> ffprobe testvideo02.mkv
...
Input #0, matroska,webm, from 'testvideo02.mkv':
Metadata:
ENCODER : Lavf57.56.101
Duration: 02:37:57.02, start: -0.007000, bitrate: 457 kb/s
Stream #0:0: Video: h264 (Main), yuv420p(progressive), 488x360 [SAR 1:1 DAR 61:45], 25 fps, 25 tbr, 1k tbn, 50 tbc (default)
Metadata:
HANDLER_NAME : VideoHandler
DURATION : 02:37:57.000000000
Stream #0:1(eng): Audio: opus, 48000 Hz, stereo, fltp (default)
Metadata:
DURATION : 02:37:57.021000000
gst-launch-1.0 filesrc location=testvideo02.mkv do-timestamp=TRUE \
! matroskademux ! decodebin \
! videorate drop-only=true ! video/x-raw,framerate=15/1,max-rate=15/1 \
! videoconvert \
! x264enc bframes=0 key-int-max=45 bitrate=2048 \
! video/x-h264,framerate=15/1 \
! kvssink stream-name=$STREAM_NAME framerate=15 \
access-key=$AWS_ACCESS_KEY secret-key=$AWS_SECRET_KEY
[DEBUG][2019-04-22 19:22:44] Kinesis Video client and stream metrics
>> Overall storage byte size: 134217728
>> Available storage byte size: 133001418
>> Allocated storage byte size: 1216310
>> Total view allocation byte size: 86472
>> Total streams frame rate (fps): 163
>> Total streams transfer rate (bps): 25683152 (25081 Kbps)
>> Current view duration (ms): 720
>> Overall view duration (ms): 6000
>> Current view byte size: 187371
>> Overall view byte size: 1211851
>> Current frame rate (fps): 163.493
>> Current transfer rate (bps): 25683152 (25081 Kbps)
[DEBUG][2019-04-22 19:22:44] Curl post body write function for stream: bc-test1 and upload handle: 0 returned: {"EventType":"PERSISTED","FragmentTimecode":21600,"FragmentNumber":"91343852333182571337132286426569376608263492193"}
如果您希望像实时源一样流式传输文件,可以将“identity sync=true”元素添加到管道中。这意味着你将不得不等待15分钟来流一个15分钟的文件。上传文件的最佳方法是在脱机模式下配置kvssink插件,如下所示:
gst-launch-1.0 filesrc location=testvideo02.mkv do-timestamp=TRUE \
! matroskademux ! decodebin \
! videoconvert \
! x264enc bframes=0 key-int-max=45 bitrate=2048 \
! kvssink stream-name=$STREAM_NAME streaming-type=offline \
access-key=$AWS_ACCESS_KEY secret-key=$AWS_SECRET_KEY
之所以看到高fps是因为没有标识sync=true元素,管道以全速运行,将帧转储到插件中。
我试图从覆盆子派流视频使用aws kinesis视频流。我们在Aws站点上使用了C++sdk(https://github.com/awslabs/amazon-kinesis-video-streams-producer-sdk-cpp) [错误][19-04-2020 19:20:33:859.598 GMT]createKinesisVideoStreamSync():未能创建Kinesis
我需要将4个RTSP流记录到Kinesis视频流的单个流中。流必须像这样放置在视频中: 我可以使用下面的命令插入一个流并使其完美地工作: 然而,我的目标是在Kinesis视频流中的同一流中插入一组流。为此,我找到了的示例,如下所示: 我将该示例修改为两个流,并使用如下命令使其在容器中工作: 然而,当我登录到Kinesis视频流并尝试下载getClip时,在这两种情况下我都得到了这个错误: Miss
设置ARN所需的细节,得到一个设置给帧查看器的视频流。然后尝试将Kinesis视频流与Rekognition集成。
我可以从我的机器发送一个RTSP视频流到亚马逊Kinesis视频流。我想知道是否有可能从一个边缘设备发送多个RTSP视频流(多个生产者)?目前我关注的文档是https://docs.aws.amazon.com/kinesisvideostreams/latest/dg/examples-gstreamer-plugin.html#examples-gstreamer-plugin-docker。
我的计算图的一个阶段是类型的流。显然,这个阶段应该为每个请求分配一个响应,并在所有请求都被解决后发出seq。 现在,底层API有一个苛刻的速率限制策略,所以我每秒只能激发一个请求。如果我有一个的单个,我可以使用每秒发出单个元素的来这个流(如何限制Akka流每秒只执行和发送一个消息一次?),但在这种情况下我没有看到类似的解决方案。 有什么好的表达方式吗?我想到的想法是使用低层图DSL并在那里使用一秒