CN116264563A - 一种视频流转发方法、装置、存储介质及电子设备 - Google Patents

一种视频流转发方法、装置、存储介质及电子设备 Download PDF

Info

Publication number
CN116264563A
CN116264563A CN202111515181.8A CN202111515181A CN116264563A CN 116264563 A CN116264563 A CN 116264563A CN 202111515181 A CN202111515181 A CN 202111515181A CN 116264563 A CN116264563 A CN 116264563A
Authority
CN
China
Prior art keywords
video stream
forwarding
forwarding module
module
target video
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202111515181.8A
Other languages
English (en)
Inventor
张瑜凯
贾召飞
林杰
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Zhejiang Uniview Technologies Co Ltd
Original Assignee
Zhejiang Uniview Technologies Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Zhejiang Uniview Technologies Co Ltd filed Critical Zhejiang Uniview Technologies Co Ltd
Priority to CN202111515181.8A priority Critical patent/CN116264563A/zh
Publication of CN116264563A publication Critical patent/CN116264563A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/12Shortest path evaluation
    • H04L45/125Shortest path evaluation based on throughput or bandwidth
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/10Architectures or entities
    • H04L65/1013Network architectures, gateways, control or user entities

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Multimedia (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)

Abstract

本申请实施例公开了一种视频流转发方法、装置、存储介质及电子设备。该方法包括:采用视频流发送端的第一转发模块接收目标视频流;采用所述第一转发模块将接收的目标视频流发送到视频流接收端的第二转发模块,以使得视频流接收端从第二转发模块获取目标视频流;其中,所述第一转发模块与所述第二转发模块通过转发函数建立模块绑定。本技术方案,可以通过模块间绑定灵活控制实现视频流转发,节省网络带宽资源和节省本地采集编码能力。

Description

一种视频流转发方法、装置、存储介质及电子设备
技术领域
本申请实施例涉及视频数据发送技术领域,尤其涉及一种视频流转发方法、装置、存储介质及电子设备。
背景技术
随着物联网技术和网络技术的发展,当前解码拼控设备实现的功能越来越多,需要的视频流数量也越来越多。其中,解码拼控设备用于接入多台摄像机、连接多块大屏,共同实现监控拼装。
在解码拼控设备中,可以通过终端设备向前端视频采集设备请求视频流,前端视频采集设备接收到请求报文时,可以向请求发起方设备传输视频流。在进行视频传输过程中需要对视频流进行编码。
解码拼控设备中存在多个设备,同一路视频流需要多次转发,转发过程中需要多次发起请求和多次编码,占用了较多的网络带宽资源和本地采集编码能力。
发明内容
本申请实施例提供一种视频流转发方法、装置、存储介质及电子设备,可以通过模块间绑定灵活控制实现视频流转发,节省网络带宽资源和节省本地采集编码能力。
第一方面,本申请实施例提供了一种视频流转发方法,该方法包括:
采用视频流发送端的第一转发模块接收目标视频流;
采用所述第一转发模块将接收的目标视频流发送到视频流接收端的第二转发模块,以使得视频流接收端从第二转发模块获取目标视频流;
其中,所述第一转发模块与所述第二转发模块通过转发函数建立模块绑定。
第二方面,本申请实施例提供了一种视频流转发装置,该装置包括:
目标视频流接收单元,用于采用视频流发送端的第一转发模块接收目标视频流;
目标视频流转发单元,用于采用所述第一转发模块将接收的目标视频流发送到视频流接收端的第二转发模块,以使得视频流接收端从第二转发模块获取目标视频流;
其中,所述第一转发模块与所述第二转发模块通过转发函数建立模块绑定。
第三方面,本申请实施例提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如本申请实施例所述的视频流转发方法。
第四方面,本申请实施例提供了一种电子设备,包括存储器,处理器及存储在存储器上并可在处理器运行的计算机程序,所述处理器执行所述计算机程序时实现如本申请实施例所述的视频流转发方法。
本申请实施例所提供的技术方案,采用视频流发送端的第一转发模块接收目标视频流,并采用第一转发模块将接收的目标视频流发送到视频流接收端的第二转发模块,以使得视频流接收端从第二转发模块获取目标视频流;其中,第一转发模块与第二转发模块通过转发函数建立模块绑定。本技术方案,可以通过模块间绑定灵活控制实现视频流转发,节省网络带宽资源和节省本地采集编码能力。
附图说明
图1是本申请实施例一提供的视频流转发方法的流程图;
图2是本申请实施例一提供的视频流转发的示意图;
图3是本申请实施例一提供的模块间绑定的示意图;
图4是本申请实施例二提供的视频流转发过程的示意图;
图5是本申请实施例二提供的添加转发关系的流程图;
图6是本申请实施例三提供的又一视频流转发过程的示意图;
图7是本申请实施例三提供的设备间实现流转发的流程图;
图8是本申请实施例三提供的模块间转发的流程图;
图9是本申请实施例四提供的视频流转发装置的结构示意图;
图10是本申请实施例六提供的一种电子设备的结构示意图。
具体实施方式
下面结合附图和实施例对本申请作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释本申请,而非对本申请的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本申请相关的部分而非全部结构。
在更加详细地讨论示例性实施例之前应当提到的是,一些示例性实施例被描述成作为流程图描绘的处理或方法。虽然流程图将各步骤描述成顺序的处理,但是其中的许多步骤可以被并行地、并发地或者同时实施。此外,各步骤的顺序可以被重新安排。当其操作完成时所述处理可以被终止,但是还可以具有未包括在附图中的附加步骤。所述处理可以对应于方法、函数、规程、子例程、子程序等等。
实施例一
图1是本申请实施例一提供的视频流转发方法的流程图,本实施例可适用于控制视频流转发的情况,该方法可以由本申请实施例所提供的视频流转发装置执行,该装置可以由软件和/或硬件的方式来实现,并可集成于用于数据发送的智能终端等设备中。
如图1所示,所述视频流转发方法包括:
S110、采用视频流发送端的第一转发模块接收目标视频流;
在本方案中,解码拼控设备用于接入多台设备,实现监控拼装。当解码拼控设备接收一路视频流时,会将视频流转发到其他中央处理器,或者转发到其他设备、客户端等。其中,客户端主要用于回显预览,设备内或者设备间转发主要用于解码输出显示。在进行视频流转发过程中通过一种模块间的绑定,经过内部模块转发实现视频流的一转多。
示例性的,图2是本申请实施例一提供的视频流转发的示意图,如图2所示,设备1接收到目标视频流后,通过内部网络可以将目标视频流发送到其他从CPU,也可以通过外部网络将目标视频流发送到客户端或者其他设备,其他设备接收到将目标视频流后,同样可以将目标视频流发送到其他从CPU(central processing unit,中央处理器)。同一路视频流转发多次,只需要请流1次或者编码1次。
其中,目标视频流可以是网络流或者本地流,可以通过网络发送到视频流接收端。
在本实施例中,转发模块包括转发函数、通道标识、链表节点等信息,用于将视频流进行转发。
在本方案中,视频流发送端包括至少一个转发模块,用于接收目标视频流,并将接收到的目标视频流发送到视频流接收端,用于视频流的解码显示。其中,视频流接收端可以与视频流发送端所属同一设备,也可以与视频流发送端所属不同设备。
在本技术方案中,可选的,采用视频流发送端的第一转发模块接收目标视频流,包括:
若所述目标视频流为网络流,则基于视频流发送端的数据接收模块获取所述网络流,并将所述网络流发送到第一转发模块;
若所述目标视频流为本地流,则基于频流发送端的第一转发模块获取所述本地流。
在本方案中,若目标视频流是网络流,即目标视频流由外部设备产生,则由视频发送端的数据接收模块接收网络流,并将接收到的网络流发送给第一转发模块。其中,将接收到的网络流发送给第一转发模块之前,还可以将网络流发送给第一存储模块,并由第一存储模块将网络流发送给第一转发模块。
在本实施例中,若目标视频流是本地流,即目标视频流由当前设备产生,则可以直接基于频流发送端的第一转发模块获取本地流。也可以基于视频流发送端的第一存储模块获取本地流,并将本地流发送给第一转发模块。
通过获取目标视频流,可以通过模块间绑定实现转发,可灵活控制实现视频流转发,节省网络带宽资源和节省本地采集编码能力。
S120、采用所述第一转发模块将接收的目标视频流发送到视频流接收端的第二转发模块,以使得视频流接收端从第二转发模块获取目标视频流;
其中,所述第一转发模块与所述第二转发模块通过转发函数建立模块绑定。
在本实施例中,第一转发模块接收到目标视频流后,可以通过内部网络将目标视频流发送给同一设备的视频流接收端的第二转发模块;也可以通过外部网络将目标视频流发送给其他设备的视频流接收端的第二转发模块。同一路目标视频流在进行多次转发时,不需要请求多次或者编码多次,只需要经过第一转发模块和第二转发模块即可实现目标视频流的转发。
示例性的,图3是本申请实施例一提供的模块间绑定的示意图,如图3所示,模块2为第一转发模块,模块3和模块5分别为第二转发模块。可以将模块3,模块5分别与模块2建立连接,实现模块之间的绑定。
本申请实施例所提供的技术方案,采用视频流发送端的第一转发模块接收目标视频流,并采用第一转发模块将接收的目标视频流发送到视频流接收端的第二转发模块,以使得视频流接收端从第二转发模块获取目标视频流;其中,第一转发模块与第二转发模块通过转发函数建立模块绑定。通过执行本技术方案,可以通过模块间绑定实现转发,可灵活控制实现视频流转发,节省网络带宽资源和节省本地采集编码能力。
实施例二
图4是本申请实施例二提供的视频流转发过程的示意图,本实施例二在实施例一的基础上进行进一步地优化。具体优化为:采用所述第一转发模块将接收的目标视频流发送到视频流接收端的第二转发模块,包括:在所述第一转发模块和第二转发模块所属同一设备的情况下,遍历所述第一转发模块的控制块链表头,确定通道信息;其中,所述通道信息包括转发函数和通道标识;若所述转发函数不为空,则根据所述通道标识,采用所述第一转发模块将接收的目标视频流发送到视频流接收端的第二转发模块。其中,未在本实施例中详尽描述的内容详见实施例一。如图4所示,该方法包括以下步骤:
S410、采用视频流发送端的第一转发模块接收目标视频流;
S420、在所述第一转发模块和第二转发模块所属同一设备的情况下,遍历所述第一转发模块的控制块链表头,确定通道信息;其中,所述通道信息包括转发函数和通道标识;
其中,转发函数用于实现视频流的转发;通道标识用于区分模块所属的中央处理器。
在本方案中,在第一转发模块和第二转发模块所属同一设备的情况下,此时目标视频流在设备内进行转发,则遍历第一转发模块的控制块链表头,获取通道信息,以用于基于该通道信息实现设备内目标视频流的转发。
在本技术方案中,可选的,在遍历所述第一转发模块的控制块链表头,确定通道信息之前,所述方法还包括:
将所述第一转发模块和所述第二转发模块建立连接;
判断所述第二转发模块的通道标识是否满足预设标识约束条件;
若满足,则将所述第二转发模块的通道信息添加至所述第一转发模块的控制块链表头。
其中,预设标识约束条件可以根据中央处理器的编号进行设置。例如,可以设置标识约束条件为1,即第二转发模块的通道标识为1时,满足预设标识约束条件。
在本实施例中,将第一转发模块的通道发送到第二转发模块,第一转发模块绑定第二转发模块的通道,并判断第二转发模块的通道是否是本地CPU通道,即若第二转发模块的通道标识满足预设标识约束条件,则第二转发模块的通道为本地CPU通道,此时,将第二转发模块的通道信息添加至第一转发模块的控制块链表头。
通过将第二转发模块的通道信息添加至第一转发模块的控制块链表头中,可以通过模块间的绑定实现目标视频流在本地CPU内的转发。
在本技术方案中,可选的,判断所述第二转发模块的通道标识是否满足预设标识约束条件,包括:
若不满足,则将网络模块的通道信息添加至所述第一转发模块的控制块链表头;
相应的,若所述转发函数不为空,则根据所述通道标识,采用所述第一转发模块将接收的目标视频流发送到视频流接收端的第二转发模块,包括:
若所述网络模块的转发函数不为空,则根据所述网络模块的通道标识,采用所述第一转发模块将接收的目标视频流发送到所述网络模块,并基于所述网络模块将接收到的目标视频流发送到视频流接收端的第二转发模块。
在本实施例中,若第二转发模块的通道标识不满足预设标识约束条件,即第二转发模块的通道为非本地CPU通道,此时目标视频流的转发为跨CPU转发,则将网络模块的通道信息添加至第一转发模块的控制块链表头,由第一转发模块将接收的目标视频流发送到网络模块,然后由网络模块将接收到的目标视频流发送到视频流接收端的第二转发模块。其中,网络模块中存储有第二转发模块的通道信息,可以直接通过网络将目标视频流发送到第二转发模块
通过将网络模块的通道信息添加至第一转发模块的控制块链表头中,可以通过模块间的绑定实现目标视频流跨CPU的转发。
示例性的,图5是本申请实施例二提供的添加转发关系的流程图,如图5所示,第一转发模块通道转发到第二转发模块通道,第一转发模块通道先绑定第二转发模块通道,判断第二转发模块通道是否是本地CPU,如果是本地CPU则将第二转发模块的通道信息添加到第一转发模块的控制块链表头中,反之获取一个网络模块的通道信息并添加到第一转发模块的控制块链表头中。
S430、若所述转发函数不为空,则根据所述通道标识,采用所述第一转发模块将接收的目标视频流发送到视频流接收端的第二转发模块。
在本实施例中,在设备启动时,预先为需要进行目标视频流转发的通道的转发函数进行赋值。在进行目标视频流转发时,判断第二转发模块的转发函数是否为空,若不为空,则可以基于通道标识,将目标视频流从第一转发模块转发到第二转发模块。
本申请实施例所提供的技术方案,采用视频流发送端的第一转发模块接收目标视频流,在第一转发模块和第二转发模块所属同一设备的情况下,遍历第一转发模块的控制块链表头,确定通道信息;其中,通道信息包括转发函数和通道标识;若转发函数不为空,则根据通道标识,采用第一转发模块将接收的目标视频流发送到视频流接收端的第二转发模块。通过执行本技术方案,通过模块间绑定可以实现设备内视频流的转发,可实现一转多,解码同一路网络流只需要请流一次,节省网络带宽和节省本地采集编码能力。
实施例三
图6是本申请实施例三提供的又一视频流转发过程的示意图,本实施例三在实施例一的基础上进行进一步地优化。具体优化为:采用所述第一转发模块将接收的目标视频流发送到视频流接收端的第二转发模块,还包括:在所述第一转发模块和第二转发模块所属不同设备的情况下,遍历所述第一转发模块的控制块链表头,确定节点信息;其中,所述节点信息包括设备地址和设备端口;根据所述节点信息,采用所述第一转发模块将接收的目标视频流发送到视频流接收端的第二转发模块。其中,未在本实施例中详尽描述的内容详见实施例一。
如图6所示,该方法包括以下步骤:
S610、采用视频流发送端的第一转发模块接收目标视频流;
S620、在所述第一转发模块和第二转发模块所属不同设备的情况下,遍历所述第一转发模块的控制块链表头,确定节点信息;其中,所述节点信息包括设备地址和设备端口;
在本实施例中,在第一转发模块和第二转发模块所属不同设备的情况下,此时,目标视频流在设备间的转发,包括发送到客户端,则调用第一转发模块的转发函数,基于转发函数遍历第一转发模块的控制块控制块链表头,获取到第二转发模块的节点信息。
在本技术方案中,可选的,在遍历所述第一转发模块的控制块链表头,确定节点信息之前,所述方法还包括:
将所述节点信息添加至所述第一转发模块的控制块链表头。
其中,可以响应于客户端或者目标设备的输入操作,将节点信息添加到第一转发模块的控制块链表头。
通过将节点信息添加至第一转发模块的控制块链表头,可以基于模块间的绑定,实现设备间的目标视频流的转发。
S630、根据所述节点信息,采用所述第一转发模块将接收的目标视频流发送到视频流接收端的第二转发模块。
在本方案中,获得设备地址和设备端口后,可以通过外部网络将接收到的目标视频流发送到视频流接收端的第二转发模块。
示例性的,图7是本申请实施例三提供的设备间实现流转发的流程图,如图7所示,将节点信息添加到第一转发模块的通道的控制块链表头中,流转发调用第一转发模块的转发函数,转发函数实现实际就是遍历第一转发模块通道的控制块链表头,获取到第二转发模块的节点信息,通过网络发送函数将目标视频流发送到目的IP和端口。
本申请实施例所提供的技术方案,采用视频流发送端的第一转发模块接收目标视频流,在述第一转发模块和第二转发模块所属不同设备的情况下,遍历第一转发模块的控制块链表头,确定节点信息;其中,节点信息包括设备地址和设备端口;根据节点信息,采用第一转发模块将接收的目标视频流发送到视频流接收端的第二转发模块。通过执行本技术方案,通过模块间绑定可以实现设备间视频流的转发,可实现一转多,解码同一路网络流只需要请流一次,节省网络带宽和节省本地采集编码能力。
示例性的,图8是本申请实施例三提供的模块间转发的流程图,如图8所示,模块间转发过程包括:
若目标视频流为网络流,则由视频流发送端的数据接收模块接收网络流数据;数据接收模块将接收到的目标视频流转发给模块1,模块1用于存储目标视频流;模块1将接收到目标视频流转发给模块2;若目标视频流为本地流,则将目标视频流发送到模块4,由模块4将数据转发到模块2。
若为设备内的转发,则模块2判断将目标视频流转发到模块3时是否需要跨CPU;若否,则直接转发到模块3;若否,则通过网络模块转发到模块3;
若为设备间的转发,则目标视频流需要从模块2转发到模块5,模块5通过调用数据转发模块的发送函数将目标视频流发送到对应设备;客户端收到目标视频流后,直接解码显示。
其中,在其他设备接收到目标视频流后,同样按照上述过程将目标视频流在设备内进行转发。
实施例四
图9是本申请实施例四提供的视频流转发装置的结构示意图,如图9所示,视频流转发装置包括:
目标视频流接收单元910,用于采用视频流发送端的第一转发模块接收目标视频流;
目标视频流转发单元920,用于采用所述第一转发模块将接收的目标视频流发送到视频流接收端的第二转发模块,以使得视频流接收端从第二转发模块获取目标视频流;
其中,所述第一转发模块与所述第二转发模块通过转发函数建立模块绑定。
在本技术方案中,可选的,目标视频流转发单元920,包括:
通道信息确定子单元,用于在所述第一转发模块和第二转发模块所属同一设备的情况下,遍历所述第一转发模块的控制块链表头,确定通道信息;其中,所述通道信息包括转发函数和通道标识;
目标视频流转发子单元,用于若所述转发函数不为空,则根据所述通道标识,采用所述第一转发模块将接收的目标视频流发送到视频流接收端的第二转发模块。
在本技术方案中,可选的,目标视频流转发单元920,还包括:
连接建立子单元,用于将所述第一转发模块和所述第二转发模块建立连接;
通道标识判断子单元,用于判断所述第二转发模块的通道标识是否满足预设标识约束条件;
第二转发模块的通道信息添加子单元,用于若满足,则将所述第二转发模块的通道信息添加至所述第一转发模块的控制块链表头。
在本技术方案中,可选的,通道标识判断子单元,具体用于:
若不满足,则将网络模块的通道信息添加至所述第一转发模块的控制块链表头;
相应的,目标视频流转发子单元,具体用于:
若所述网络模块的转发函数不为空,则根据所述网络模块的通道标识,采用所述第一转发模块将接收的目标视频流发送到所述网络模块,并基于所述网络模块将接收到的目标视频流发送到视频流接收端的第二转发模块。
在本技术方案中,可选的,目标视频流转发单元920,还包括:
节点信息确定子单元,用于在所述第一转发模块和第二转发模块所属不同设备的情况下,遍历所述第一转发模块的控制块链表头,确定节点信息;其中,所述节点信息包括设备地址和设备端口;
目标视频流发送子单元,用于根据所述节点信息,采用所述第一转发模块将接收的目标视频流发送到视频流接收端的第二转发模块。
在本技术方案中,可选的,目标视频流转发单元920,还包括:
节点信息添加子单元,用于将所述节点信息添加至所述第一转发模块的控制块链表头。
在本技术方案中,可选的,目标视频流接收单元910,包括:
网络流获取子单元,用于若所述目标视频流为网络流,则基于视频流发送端的数据接收模块获取所述网络流,并将所述网络流发送到第一转发模块;
本地流获取子单元,用于若所述目标视频流为本地流,则基于频流发送端的第一转发模块获取所述本地流。
上述产品可执行本申请实施例所提供的方法,具备执行方法相应的功能模块和有益效果。
实施例五
本申请实施例还提供一种包含计算机可执行指令的存储介质,所述计算机可执行指令在由计算机处理器执行时用于执行一种视频流转发方法,该方法包括:
采用视频流发送端的第一转发模块接收目标视频流;
采用所述第一转发模块将接收的目标视频流发送到视频流接收端的第二转发模块,以使得视频流接收端从第二转发模块获取目标视频流;
其中,所述第一转发模块与所述第二转发模块通过转发函数建立模块绑定。
存储介质——任何的各种类型的存储器设备或存储设备。术语“存储介质”旨在包括:安装介质,例如CD-ROM、软盘或磁带装置;计算机系统存储器或随机存取存储器,诸如DRAM、DDR RAM、SRAM、EDO RAM,兰巴斯(Rambus)RAM等;非易失性存储器,诸如闪存、磁介质(例如硬盘或光存储);寄存器或其它相似类型的存储器元件等。存储介质可以还包括其它类型的存储器或其组合。另外,存储介质可以位于程序在其中被执行的计算机系统中,或者可以位于不同的第二计算机系统中,第二计算机系统通过网络(诸如因特网)连接到计算机系统。第二计算机系统可以提供程序指令给计算机用于执行。术语“存储介质”可以包括可以驻留在不同位置中(例如在通过网络连接的不同计算机系统中)的两个或更多存储介质。存储介质可以存储可由一个或多个处理器执行的程序指令(例如具体实现为计算机程序)。
当然,本申请实施例所提供的一种包含计算机可执行指令的存储介质,其计算机可执行指令不限于如上所述的视频流转发操作,还可以执行本申请任意实施例所提供的视频流转发方法中的相关操作。
实施例六
本申请实施例提供了一种电子设备,该电子设备中可集成本申请实施例提供的视频流转发装置。图10是本申请实施例六提供的一种电子设备的结构示意图。如图10所示,本实施例提供了一种电子设备1000,其包括:一个或多个处理器1020;存储装置1010,用于存储一个或多个程序,当所述一个或多个程序被所述一个或多个处理器1020执行,使得所述一个或多个处理器1020实现本申请实施例所提供的视频流转发方法,该方法包括:
采用视频流发送端的第一转发模块接收目标视频流;
采用所述第一转发模块将接收的目标视频流发送到视频流接收端的第二转发模块,以使得视频流接收端从第二转发模块获取目标视频流;
其中,所述第一转发模块与所述第二转发模块通过转发函数建立模块绑定。
当然,本领域技术人员可以理解,处理器1020还实现本申请任意实施例所提供的视频流转发方法的技术方案。
图10显示的电子设备1000仅仅是一个示例,不应对本申请实施例的功能和使用范围带来任何限制。
如图10所示,该电子设备1000包括处理器1020、存储装置1010、输入装置1030和输出装置1040;电子设备中处理器1020的数量可以是一个或多个,图10中以一个处理器1020为例;电子设备中的处理器1020、存储装置1010、输入装置1030和输出装置1040可以通过总线或其他方式连接,图10中以通过总线1050连接为例。
存储装置1010作为一种计算机可读存储介质,可用于存储软件程序、计算机可执行程序以及模块单元,如本申请实施例中的视频流转发方法对应的程序指令。
存储装置1010可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序;存储数据区可存储根据终端的使用所创建的数据等。此外,存储装置1010可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他非易失性固态存储器件。在一些实例中,存储装置1010可进一步包括相对于处理器1020远程设置的存储器,这些远程存储器可以通过网络连接。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
输入装置1030可用于接收输入的数字、字符信息或语音信息,以及产生与电子设备的用户设置以及功能控制有关的键信号输入。输出装置1040可包括显示屏、扬声器等电子设备。
本申请实施例提供的电子设备,可以达到通过模块间绑定实现转发,可灵活控制实现视频流转发,节省网络带宽资源和节省本地采集编码能力的目的。
上述实施例中提供的视频流转发装置、存储介质及电子设备可执行本申请任意实施例所提供的视频流转发方法,具备执行该方法相应的功能模块和有益效果。未在上述实施例中详尽描述的技术细节,可参见本申请任意实施例所提供的视频流转发方法。
注意,上述仅为本申请的较佳实施例及所运用技术原理。本领域技术人员会理解,本申请不限于这里所述的特定实施例,对本领域技术人员来说能够进行各种明显的变化、重新调整和替代而不会脱离本申请的保护范围。因此,虽然通过以上实施例对本申请进行了较为详细的说明,但是本申请不仅仅限于以上实施例,在不脱离本申请构思的情况下,还可以包括更多其他等效实施例,而本申请的范围由所附的权利要求范围决定。

Claims (10)

1.一种视频流转发方法,其特征在于,包括:
采用视频流发送端的第一转发模块接收目标视频流;
采用所述第一转发模块将接收的目标视频流发送到视频流接收端的第二转发模块,以使得视频流接收端从第二转发模块获取目标视频流;
其中,所述第一转发模块与所述第二转发模块通过转发函数建立模块绑定。
2.根据权利要求1所述的方法,其特征在于,采用所述第一转发模块将接收的目标视频流发送到视频流接收端的第二转发模块,包括:
在所述第一转发模块和第二转发模块所属同一设备的情况下,遍历所述第一转发模块的控制块链表头,确定通道信息;其中,所述通道信息包括转发函数和通道标识;
若所述转发函数不为空,则根据所述通道标识,采用所述第一转发模块将接收的目标视频流发送到视频流接收端的第二转发模块。
3.根据权利要求2所述的方法,其特征在于,在遍历所述第一转发模块的控制块链表头,确定通道信息之前,所述方法还包括:
将所述第一转发模块和所述第二转发模块建立连接;
判断所述第二转发模块的通道标识是否满足预设标识约束条件;
若满足,则将所述第二转发模块的通道信息添加至所述第一转发模块的控制块链表头。
4.根据权利要求3所述的方法,其特征在于,判断所述第二转发模块的通道标识是否满足预设标识约束条件,包括:
若不满足,则将网络模块的通道信息添加至所述第一转发模块的控制块链表头;
相应的,若所述转发函数不为空,则根据所述通道标识,采用所述第一转发模块将接收的目标视频流发送到视频流接收端的第二转发模块,包括:
若所述网络模块的转发函数不为空,则根据所述网络模块的通道标识,采用所述第一转发模块将接收的目标视频流发送到所述网络模块,并基于所述网络模块将接收到的目标视频流发送到视频流接收端的第二转发模块。
5.根据权利要求1所述的方法,其特征在于,采用所述第一转发模块将接收的目标视频流发送到视频流接收端的第二转发模块,还包括:
在所述第一转发模块和第二转发模块所属不同设备的情况下,遍历所述第一转发模块的控制块链表头,确定节点信息;其中,所述节点信息包括设备地址和设备端口;
根据所述节点信息,采用所述第一转发模块将接收的目标视频流发送到视频流接收端的第二转发模块。
6.根据权利要求5所述的方法,其特征在于,在遍历所述第一转发模块的控制块链表头,确定节点信息之前,所述方法还包括:
将所述节点信息添加至所述第一转发模块的控制块链表头。
7.根据权利要求1所述的方法,其特征在于,采用视频流发送端的第一转发模块接收目标视频流,包括:
若所述目标视频流为网络流,则基于视频流发送端的数据接收模块获取所述网络流,并将所述网络流发送到第一转发模块;
若所述目标视频流为本地流,则基于频流发送端的第一转发模块获取所述本地流。
8.一种视频流转发装置,其特征在于,包括:
目标视频流接收单元,用于采用视频流发送端的第一转发模块接收目标视频流;
目标视频流转发单元,用于采用所述第一转发模块将接收的目标视频流发送到视频流接收端的第二转发模块,以使得视频流接收端从第二转发模块获取目标视频流;
其中,所述第一转发模块与所述第二转发模块通过转发函数建立模块绑定。
9.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现如权利要求1-7中任一项所述的视频流转发方法。
10.一种电子设备,包括存储器,处理器及存储在存储器上并可在处理器运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如权利要求1-7中任一项所述的视频流转发方法。
CN202111515181.8A 2021-12-13 2021-12-13 一种视频流转发方法、装置、存储介质及电子设备 Pending CN116264563A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202111515181.8A CN116264563A (zh) 2021-12-13 2021-12-13 一种视频流转发方法、装置、存储介质及电子设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202111515181.8A CN116264563A (zh) 2021-12-13 2021-12-13 一种视频流转发方法、装置、存储介质及电子设备

Publications (1)

Publication Number Publication Date
CN116264563A true CN116264563A (zh) 2023-06-16

Family

ID=86721783

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202111515181.8A Pending CN116264563A (zh) 2021-12-13 2021-12-13 一种视频流转发方法、装置、存储介质及电子设备

Country Status (1)

Country Link
CN (1) CN116264563A (zh)

Similar Documents

Publication Publication Date Title
RU2595752C2 (ru) Многоканальные соединения в сеансах файловой системы
CN109450948B (zh) 数据传输方法和装置
US20220209878A1 (en) Method, system and device for pushing information, and storage medium thereof
JPWO2006080403A1 (ja) 通信機器、通信システム、通信方法、通信プログラム、通信回路
CN109547524B (zh) 基于物联网的用户行为存储方法、装置、设备及存储介质
US8352619B2 (en) Method and system for data processing
CN112367259B (zh) 物联网数据报文分发方法及装置
CN109818905B (zh) 一种传输层协议适配的方法、网元设备及系统
CN113301299B (zh) 一种多通道视频传输方法、系统、终端以及存储介质
WO2021042612A1 (zh) 无线投屏方法、装置、设备及存储介质
CN112395242B (zh) 多芯片控制方法、装置、电子设备和计算机可读存储介质
WO2017045454A1 (zh) 一种实现终端接入的方法、装置和系统
CN116264563A (zh) 一种视频流转发方法、装置、存储介质及电子设备
CN113992740B (zh) 一种基于自主可控的中间件及数据传输方法
EP3065445A1 (en) Method, cse, and system for transmitting m2m application request
CN112468886B (zh) 组播数据转发方法、装置、设备及可读存储介质
CN115086617A (zh) 视频流存储方法、装置、系统、设备及介质
JP2006185095A (ja) サーバ選択方法およびサーバ選択方式およびサーバおよびクライアント端末
CN111338747A (zh) 一种数据通信方法、装置、终端设备和存储介质
JPH11331220A (ja) データ転送方法
WO2020044091A1 (zh) 近场数据传输方法及其装置
CN115002081B (zh) 媒体流传输方法及相关装置
CN117527458B (zh) 一种多播数据分发方法、装置、电子设备及存储介质
CN112055083B (zh) 请求处理方法、装置、电子设备和介质
CN114051047B (zh) 一种会话消息的备份方法、装置、网络设备和存储介质

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination