本技术涉及视频信号源的处理技术,尤其涉及用于处理视频信号源的移动处理设备、处理方法及系统。
背景技术:
1、在现有技术中,装有android操作系统的移动处理设备,如手机,通常只具有microusb接口,type-c接口,没有hdmi接口。而且,现有的android tv工具包虽然可以提供对硬件设备hdmi-in接口的操作功能,例如读取通过hdmi-in接入的信号源,但android tv工具包提供的相关api中,能且仅能对hdmi-in接口进行媒体播放功能,不支持其它操作。而且它是闭源类api,开发者无法看到源代码,对其进行封装和扩展。如开发者需要同时对hdmi-in接口或接入的信号源进行多项操作(包括以信号源原始数据为基础,进行后续的编码和推流操作)时,android现有技术无法实现此类功能。
技术实现思路
1、针对以上现有技术中的缺陷或不足,本技术提出一种用于处理视频信号源的移动处理设备,所述移动处理设备装有android操作系统;所述移动处理设备包括hdmi-in接口,所述hdmi-in接口用于接入视频信号源;所述移动处理设备基于v4l框架,在android的native层打开hdmi-in接口的设备文件,以采集视频信号源的原始数据。
2、根据本发明的一些实施例,所述移动处理设备将原始数据转码为rgb格式,并将转码后的数据提供给显示输出设备用于显示;和/或,所述移动处理设备将原始数据编码为网络流数据,以用于网络传输。
3、根据本发明的一些实施例,所述移动处理设备利用libyuv图像处理库将原始数据转码为rgb格式,并将转码后的数据提供给显示输出设备用于显示;和/或,所述移动处理设备利用mediacodec编解码库将原始数据压制为h264格式,以用于网络传输。
4、根据本发明的一些实施例,所述移动处理设备将原始数据转码为rgb格式,以及对转码后的数据进行处理,所述处理包括:
5、s21,把一帧图像的rgb数据按照单字节块的数据,通过libyuv图像处理库的scaleplane函数进行缩小一半的处理,所述缩小一半包括仅隔行保留像素点的数据,以及取保留的像素点中的一个像素点的rgb三位数据中的目标位数据,以及取所述图像中与所述像素点相邻的一个像素点的rgb数据中与所述目标位互补的另外两位数据;
6、s22,将所述目标位数据和所述另外两位数据重新组合形成图像的一个像素点的rgb数据;
7、s23,通过opengl的着色器脚本功能,根据重新组合形成的像素点的rgb数据位置和组合前的像素点的rgb数据位置之间的相对位置关系,调整重新组合形成的像素点的rgb数据位置,以使重新组合形成的像素点的rgb数据位置和组合前的像素点的rgb数据位置分别一一对应。
8、根据本发明的一些实施例,在android的native层打开hdmi-in接口的设备文件,以采集视频信号源的原始数据,包括:
9、通过hdmi-in接口名字打开hdmi-in接口对应的文件句柄;
10、依据所述文件句柄,通过ioctl接口获得hdmi-in接口的相关参数;
11、对相关参数进行选取并根据选取的相关参数对hdmi-in接口进行设置;
12、依据设置,采集视频信号源的原始数据。
13、根据本发明的一些实施例,所述移动处理设备包括移动通信处理设备;移动通信处理设备包括手机。
14、根据本发明的一些实施例,所述移动处理设备将处理后的rgb数据提供给显示输出设备用于显示,或将处理后的rgb数据编码为网络流数据,以用于网络传输。
15、本技术还提出一种基于所述移动处理设备的视频信号源处理方法,包括:
16、通过hdmi-in接口接入视频信号源;
17、基于v4l框架在android的native层打开hdmi-in接口的设备文件,以采集视频信号源的原始数据。
18、根据本发明的一些实施例,所述的方法还包括将原始数据转码为rgb格式,并将转码后的数据提供给显示输出设备用于显示;和/或,将原始数据编码为网络流数据,以用于网络传输。
19、根据本发明的一些实施例,所述的方法还包括将原始数据转码为rgb格式,以及对转码后的数据进行处理,所述处理包括:
20、s21,把一帧图像的rgb数据按照单字节块的数据,通过libyuv图像处理库的scaleplane函数进行缩小一半的处理,所述缩小一半包括仅隔行保留像素点的数据,以及取保留的像素点中的一个像素点的rgb三位数据中的目标位数据,以及取所述图像中与所述像素点相邻的一个像素点的rgb数据中与所述目标位互补的另外两位数据;
21、s22,将所述目标位数据和所述另外两位数据重新组合形成图像的一个像素点的rgb数据;
22、s23,通过opengl的着色器脚本功能,根据重新组合形成的像素点的rgb数据位置和组合前的像素点的rgb数据位置之间的相对位置关系,调整重新组合形成的像素点的rgb数据位置,以使重新组合形成的像素点的rgb数据位置和组合前的像素点的rgb数据位置分别一一对应。
23、根据本发明的一些实施例,在android的native层打开hdmi-in接口的设备文件,以采集视频信号源的原始数据,包括:
24、通过hdmi-in接口名字打开hdmi-in接口对应的文件句柄;
25、依据所述文件句柄,通过ioctl接口获得hdmi-in接口的相关参数;
26、对相关参数进行选取并根据选取的相关参数对hdmi-in接口进行设置;
27、依据设置,采集视频信号源的原始数据。
28、根据本发明的一些实施例,所述的方法还包括将处理后的rgb数据提供给显示输出设备用于显示,或将处理后的rgb数据编码为网络流数据,将所述网络流数据发送至一个终端,供终端将所述网络流数据解码后输出至屏幕。
29、本技术还提出一种用于处理视频信号源的系统,包括用于处理视频信号源的移动处理设备和一个终端;移动处理设备响应输入的转发请求,将采集到的视频信号源的原始数据编码为和一个终端的接收模式匹配的格式,发送至所述终端。
30、根据本发明的一些实施例,移动处理设备响应输入的转发请求,将视频信号源的原始数据编码为网络流数据发送至所述终端,由所述终端将其输出至屏幕。
31、根据本发明的一些实施例,移动处理设备响应输入的转发请求,将处理后的rgb数据提供给显示输出设备用于显示,或将处理后的rgb数据编码为网络流数据发送至所述终端,由所述终端将其输出至屏幕。
32、本发明的上述实施例克服了本领域技术人员对于android操作系统下的移动处理设备的常见认知偏见,在其中反常地引入hdmi-in接口,并成功采集了对应的原始数据,从而使得该移动处理设备一方面可以快速获取接入的视频信号源,另一方面使得该移动处理设备可通过对采集到的原始数据的进一步编码等处理,作为一个视频数据中转设备,将信号源数据进一步传输出去,例如包括将一个没有配备显示设备的主机的内容通过移动处理设备直接推送到一个带有显示设备的终端上,如网络终端,或者可以在移动处理设备上直接查看该视频信号源。