CN114339396A - 基于Linux的音视频处理方法、系统、装置和介质 - Google Patents
基于Linux的音视频处理方法、系统、装置和介质 Download PDFInfo
- Publication number
- CN114339396A CN114339396A CN202111530603.9A CN202111530603A CN114339396A CN 114339396 A CN114339396 A CN 114339396A CN 202111530603 A CN202111530603 A CN 202111530603A CN 114339396 A CN114339396 A CN 114339396A
- Authority
- CN
- China
- Prior art keywords
- audio
- operation request
- user space
- kernel
- video file
- 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
Links
- 238000003672 processing method Methods 0.000 title claims abstract description 55
- 238000012545 processing Methods 0.000 claims abstract description 181
- 238000000034 method Methods 0.000 claims abstract description 85
- 230000008569 process Effects 0.000 claims abstract description 64
- 238000006243 chemical reaction Methods 0.000 claims abstract description 57
- 238000004590 computer program Methods 0.000 claims description 13
- 230000004048 modification Effects 0.000 description 17
- 238000012986 modification Methods 0.000 description 17
- 238000010586 diagram Methods 0.000 description 8
- 238000004891 communication Methods 0.000 description 5
- 230000003993 interaction Effects 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000011664 signaling Effects 0.000 description 2
- 230000007547 defect Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Images
Landscapes
- Stored Programmes (AREA)
Abstract
本发明提供一种基于Linux的音视频处理方法、系统、装置和介质,该方法包括:获取APP的音视频文件操作请求,并将所述音视频文件操作请求发送至内核端,以供所述内核端将所述音视频文件操作请求转发至所述用户空间端;通过所述用户空间端的转换守护进程,接收所述内核端转发的所述音视频文件操作请求,并对所述音视频文件操作请求进行处理,得到处理结果。本发明通过转换守护进程,接收内核端转发的音视频文件操作请求,进而对音视频文件操作请求进行处理,实现了APP能够处理Linux系统中的音视频文件的目的。
Description
技术领域
本发明涉及计算机技术领域,尤其涉及一种基于Linux的音视频处理方法、系统、装置和介质。
背景技术
Linux系统是一套免费使用和自由传播的类Unix操作系统,其具备多用户、多任务、多线程、多CPU和高安全性的特点,因此,Linux系统受到了广泛应用。另外,伴随着软件技术的发展,越来越多的应用程序APP诞生,而各APP大多需要访问音视频数据并进行相应处理,以实现APP自身功能。
然而,若音视频数据以文件形式存储于Linux系统中时,APP如何处理Linux系统中的音视频文件,是目前业界亟需解决的重要课题。
发明内容
本发明提供一种基于Linux的音视频处理方法、系统、装置和介质,用以解决现有技术中APP无法处理Linux系统中的音视频文件的缺陷,实现APP能够处理Linux系统中的音视频文件。
本发明提供一种基于Linux的音视频处理方法,应用于Linux的用户空间端,所述方法包括:
获取APP的音视频文件操作请求,并将所述音视频文件操作请求发送至内核端,以供所述内核端将所述音视频文件操作请求转发至所述用户空间端;
通过所述用户空间端的转换守护进程,接收所述内核端转发的所述音视频文件操作请求,并对所述音视频文件操作请求进行处理,得到处理结果。
根据本发明提供的一种基于Linux的音视频处理方法,所述对所述音视频文件操作请求进行处理,得到处理结果之后,还包括:
将所述处理结果返回至所述内核端,以供所述内核端将所述处理结果返回至所述用户空间端;
接收所述内核端返回的所述处理结果,并将所述处理结果返回至所述APP。
根据本发明提供的一种基于Linux的音视频处理方法,所述对所述音视频文件操作请求进行处理,得到处理结果,包括:
通过所述转换守护进程,基于所述音视频文件操作请求对应的目标虚拟文件,确定目标原始文件,所述目标虚拟文件是基于所述目标原始文件进行挂载得到的;
通过所述转换守护进程,对所述原始文件执行所述音视频文件操作请求对应的操作,得到处理结果。
根据本发明提供的一种基于Linux的音视频处理方法,所述获取APP的音视频文件操作请求之前,还包括:
将各原始文件在所述用户空间端挂载成各虚拟文件,以供所述APP基于所述各虚拟文件确定访问文件,并基于所述访问文件生成所述音视频文件操作请求。
本发明还提供一种基于Linux的音视频处理方法,应用于Linux的内核端,所述方法包括:
通过所述内核端中的VFS模块,接收用户空间端发送的音视频文件操作请求;
通过所述内核端中的FUSE文件系统,将所述音视频文件操作请求从所述VFS模块转发至所述用户空间端,以供所述用户空间端对所述音视频文件操作请求进行处理。
根据本发明提供的一种基于Linux的音视频处理方法,所述通过所述内核端中的FUSE文件系统,将所述音视频文件操作请求从所述VFS模块转发至所述用户空间端之后,还包括:
通过所述FUSE文件系统,将所述用户空间端的处理结果转发至所述VFS模块,所述处理结果为所述用户空间端对所述音视频文件操作请求进行处理得到的结果;
通过所述VFS模块,将所述处理结果返回至所述用户空间端。
本发明还提供一种基于Linux的音视频处理系统,所述系统包括:Linux的用户空间端和Linux的内核端,所述用户空间端和所述内核端相互通信;
所述用户空间端,用于获取APP的音视频文件操作请求,并将所述音视频文件操作请求发送至内核端;
所述内核端,用于通过所述内核端中的VFS模块,接收所述音视频文件操作请求;
所述内核端,还用于通过所述内核端中的FUSE文件系统,将所述音视频文件操作请求从所述VFS模块转发至所述用户空间端;
所述用户空间端,还用于通过所述用户空间端的转换守护进程,接收所述音视频文件操作请求,并对所述音视频文件操作请求进行处理,得到处理结果。
本发明还提供一种基于Linux的音视频处理装置,包括:
发送模块,用于获取APP的音视频文件操作请求,并将所述音视频文件操作请求发送至内核端,以供所述内核端将所述音视频文件操作请求转发至所述用户空间端;
处理模块,用于通过用户空间端的转换守护进程,接收所述内核端转发的所述音视频文件操作请求,并对所述音视频文件操作请求进行处理,得到处理结果。
本发明还提供一种基于Linux的音视频处理装置,包括:
接收模块,用于通过内核端中的VFS模块,接收用户空间端发送的音视频文件操作请求;
转发模块,用于通过所述内核端中的FUSE文件系统,将所述音视频文件操作请求从所述VFS模块转发至所述用户空间端,以供所述用户空间端对所述音视频文件操作请求进行处理。
本发明还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现如上述任一种所述应用于Linux的用户空间端的基于Linux的音视频处理方法的步骤,或,实现如上述任一种所述应用于Linux的内核端的基于Linux的音视频处理方法的步骤。
本发明还提供一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如上述任一种所述应用于Linux的用户空间端的基于Linux的音视频处理方法的步骤,或,实现如上述任一种所述应用于Linux的内核端的基于Linux的音视频处理方法的步骤。
本发明还提供一种计算机程序产品,包括计算机程序,所述计算机程序被处理器执行时实现如上述任一种所述应用于Linux的用户空间端的基于Linux的音视频处理方法的步骤,或,实现如上述任一种所述应用于Linux的内核端的基于Linux的音视频处理方法的步骤。
本发明提供的基于Linux的音视频处理方法、系统、装置和介质,该方法应用于Linux的用户空间端,获取APP的音视频文件操作请求,并将音视频文件操作请求发送至内核端,以供内核端将音视频文件操作请求转发至用户空间端;通过用户空间端的转换守护进程,接收内核端转发的音视频文件操作请求,并对音视频文件操作请求进行处理,得到处理结果。通过上述方式,本发明通过转换守护进程,接收内核端转发的音视频文件操作请求,进而对音视频文件操作请求进行处理,实现了APP能够处理Linux系统中的音视频文件的目的。
附图说明
为了更清楚地说明本发明或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明提供的基于Linux的音视频处理方法的流程示意图之一;
图2为本发明提供的基于Linux的音视频处理方法的架构示意图;
图3为本发明提供的基于Linux的音视频处理方法的流程示意图之二;
图4为本发明提供的基于Linux的音视频处理方法的流程示意图之三;
图5为本发明提供的基于Linux的音视频处理方法的流程示意图之四;
图6为本发明提供的基于Linux的音视频处理方法的流程示意图之五;
图7为本发明提供的基于Linux的音视频处理系统的结构意图;
图8为本发明提供的基于Linux的音视频处理装置的结构意图之一;
图9为本发明提供的基于Linux的音视频处理装置的结构意图之二;
图10为本发明提供的电子设备的结构示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合本发明中的附图,对本发明中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
为便于理解以下各实施例,下面对本发明的应用场景做举例说明。
具体地,在终端设备中安装Linux系统,该Linux系统中安装了应用程序APP,该APP需要对Linux系统中的音视频文件进行处理。此外,Linux系统包括用户空间端和内核端。其中,该终端设备可以为手机、平板电脑、笔记本电脑、台式电脑、服务器、嵌入式系统等等,此处不作具体限定。
本发明提供了一种应用于Linux的用户空间端的基于Linux的音视频处理方法。
图1为本发明提供的基于Linux的音视频处理方法的流程示意图之一,如图1所示,本发明提供的基于Linux的音视频处理方法,包括以下步骤110-120:
步骤110,获取APP的音视频文件操作请求,并将所述音视频文件操作请求发送至内核端,以供所述内核端将所述音视频文件操作请求转发至所述用户空间端;
其中,音视频文件操作请求中包括所需访问的文件信息,该文件信息可以包括文件路径和文件名等。
在一实施例中,首先,确定APP待访问的访问文件,然后,基于该访问文件,生成APP的音视频文件操作请求。
在另一实施例中,首先,从各虚拟文件中确定APP待访问的访问文件,然后,基于该访问文件,生成APP的音视频文件操作请求。
各虚拟文件的获取方式为:首先,将各原始文件(原始音视频文件)在用户空间端挂载成各虚拟文件。例如,将原始文件“/tmp/infile”挂载成虚拟文件“/tmp/outfile”。
可以理解的是,将原始文件挂载成虚拟文件,可以让APP像操作本地文件一样去操作原始文件,从而提升APP端的智能性,进而实现APP能够处理Linux系统中的音视频文件。
其中,用户空间端用于运行应用程序。该用户空间端可以包括但不限于:各APP应用程序、转换守护进程(convert daemon)程序。
其中,内核端用于运行Linux操作系统和驱动程序。该内核端可以包括但不限于:VFS、FUSE文件系统。
需要说明的是,用户空间端通过系统调用,将APP的音视频文件操作请求发送至内核端。
此外,还需要说明的是,所述用户空间端在将所述音视频文件操作请求发送至内核端之后,所述内核端执行下述步骤:
通过所述内核端中的VFS模块,接收用户空间端发送的音视频文件操作请求;通过所述内核端中的FUSE文件系统,将所述音视频文件操作请求从所述VFS模块转发至所述用户空间端。具体的执行过程见下述应用于Linux的内核端的基于Linux的音视频处理方法的实施例,此处不再赘述。
步骤120,通过所述用户空间端的转换守护进程,接收所述内核端转发的所述音视频文件操作请求,并对所述音视频文件操作请求进行处理,得到处理结果。
其中,转换守护进程用于对音视频文件操作请求做转换处理。具体地,转换守护进程根据用户态配置,处理虚拟文件的各音视频文件操作请求,以访问对应的原始文件,进而实现对应的操作请求。
此外,转换守护进程还用于在请求和返回结果的过程中,完成对应的格式转换处理。
具体地,用户空间端通过转换守护进程,基于音视频文件操作请求对应的目标虚拟文件,确定目标原始文件;然后,通过转换守护进程,对原始文件执行音视频文件操作请求对应的操作,得到处理结果。
在一具体实施例中,用户空间端得到处理结果之后,还需要将处理结果返回至内核端,以供内核端将处理结果返回至用户空间端中的APP。
在一具体实施例中,在所述对所述音视频文件操作请求进行处理,得到处理结果的步骤之后,对所述音视频文件操作请求操作的文件进行关闭。即完成相应操作处理之后就关闭文件。
为便于理解,对具体实施方式进行举例说明。在用户空间端基于APP应用程序,生成音视频文件操作请求,然后,将APP的音视频文件操作请求从用户空间端发送至内核端的VFS模块,VFS模块通过内核端的FUSE文件系统,将音视频文件操作请求转发至用户空间端的转换守护进程,转换守护进程对音视频文件操作请求进行处理,得到处理结果。具体可参见图2,在图2中对本发明进行了端的划分,APP、转换守护进程属于用户空间端,VFS、FUSE属于内核端。
其中,音视频文件操作请求包括但不限于:open请求(访问文件请求)、read请求(读取文件数据请求)、write请求(修改文件数据请求)、close请求(关闭文件请求)等等。
在一实施例中,获取APP的open请求,并将所述open请求发送至内核端,通过所述用户空间端的转换守护进程,接收所述内核端转发的所述open请求,并对所述open请求进行处理,得到是否访问成功的处理结果。该是否访问成功的处理结果包括访问成功标识和访问失败标识。
在另一实施例中,获取APP的read请求,并将所述read请求发送至内核端,通过所述用户空间端的转换守护进程,接收所述内核端转发的所述read请求,并对所述read请求进行处理,得到处理结果。该处理结果为从文件中读取得到的数据。
在另一实施例中,获取APP的write请求,并将所述write请求发送至内核端,通过所述用户空间端的转换守护进程,接收所述内核端转发的所述write请求,并对所述write请求进行处理,得到处理结果。该处理结果可以为是否修改成功的标识信息,其包括修改成功标识和修改不成功标识。
其中,write请求可以用于插入数据至文件,还可以用于修改文件中数据,还可以用于删除文件中数据。
在另一实施例中,获取APP的close请求,并将所述close请求发送至内核端,通过所述用户空间端的转换守护进程,接收所述内核端转发的所述close请求,并对所述close请求进行处理,得到处理结果。该处理结果可以为是否关闭成功的标识信息,其包括关闭成功标识和关闭不成功标识。
根据本发明实施例的基于Linux的音视频处理方法,该方法应用于Linux的用户空间端,获取APP的音视频文件操作请求,并将音视频文件操作请求发送至内核端,以供内核端将音视频文件操作请求转发至用户空间端;通过用户空间端的转换守护进程,接收内核端转发的音视频文件操作请求,并对音视频文件操作请求进行处理,得到处理结果。通过上述方式,本发明实施例通过转换守护进程,接收内核端转发的音视频文件操作请求,进而对音视频文件操作请求进行处理,实现了APP能够处理Linux系统中的音视频文件的目的。
进一步地,基于上述实施例,提出本发明应用于Linux的用户空间端的基于Linux的音视频处理方法的另一实施例。图3为本发明提供的基于Linux的音视频处理方法的流程示意图之二,如图3所示,在本实施例中,上述步骤120中,对所述音视频文件操作请求进行处理,得到处理结果,之后还包括以下步骤130-140:
步骤130,将所述处理结果返回至所述内核端,以供所述内核端将所述处理结果返回至所述用户空间端;
其中,处理结果包括但不限于:open请求(访问文件请求)的处理结果、read请求(读取文件数据请求)的处理结果、write请求(修改文件数据请求)、close请求(关闭文件请求)的处理结果等等。
在一实施例中,将是否访问成功的处理结果返回至所述内核端,以供所述内核端将所述处理结果返回至所述用户空间端。该是否访问成功的处理结果包括访问成功标识和访问失败标识。
在另一实施例中,将从文件中读取数据得到的处理结果返回至所述内核端,以供所述内核端将所述处理结果返回至所述用户空间端。
在另一实施例中,将修改文件的处理结果返回至所述内核端,以供所述内核端将所述处理结果返回至所述用户空间端。该修改文件的处理结果可以为是否修改成功的标识信息,其包括修改成功标识和修改不成功标识。
其中,是否修改成功的标识信息可以为插入数据是否成功标识,还可以为修改文件中数据是否成功标识,还可以为删除文件中数据是否成功标识。
在另一实施例中,将是否关闭成功的处理结果返回至所述内核端,以供所述内核端将所述处理结果返回至所述用户空间端。该是否关闭成功的处理结果包括关闭成功标识和关闭失败标识。
步骤140,接收所述内核端返回的所述处理结果,并将所述处理结果返回至所述APP。
在一实施例中,接收所述内核端返回的是否访问成功的处理结果,并将所述处理结果返回至所述APP。该是否访问成功的处理结果包括访问成功标识和访问失败标识。
在另一实施例中,接收所述内核端返回的从文件中读取数据得到的处理结果,并将所述处理结果返回至所述APP。
在另一实施例中,接收所述内核端返回的修改文件的处理结果,并将所述处理结果返回至所述APP。该修改文件的处理结果可以为是否修改成功的标识信息,其包括修改成功标识和修改不成功标识。
其中,是否修改成功的标识信息可以为插入数据是否成功标识,还可以为修改文件中数据是否成功标识,还可以为删除文件中数据是否成功标识。
在另一实施例中,接收所述内核端返回的是否关闭成功的处理结果,并将所述处理结果返回至所述APP。该是否关闭成功的处理结果包括关闭成功标识和关闭失败标识。
根据本发明实施例的基于Linux的音视频处理方法,该方法应用于Linux的用户空间端,将处理结果返回至内核端,以供内核端将处理结果返回至用户空间端;接收内核端返回的处理结果,并将处理结果返回至APP。通过上述方式,将处理结果通过内核端进行转发,以使APP能够接收到返回的处理结果,实现了APP能够处理Linux系统中的音视频文件,并返回处理结果的目的。
进一步地,基于上述任一实施例,提出本发明应用于Linux的用户空间端的基于Linux的音视频处理方法的另一实施例。在本实施例中,上述步骤120中,对所述音视频文件操作请求进行处理,得到处理结果,包括以下步骤121-122:
步骤121,通过所述转换守护进程,基于所述音视频文件操作请求对应的目标虚拟文件,确定目标原始文件,所述目标虚拟文件是基于所述目标原始文件进行挂载得到的;
步骤122,通过所述转换守护进程,对所述原始文件执行所述音视频文件操作请求对应的操作,得到处理结果。
具体地,转换守护进程根据用户态配置,处理目标虚拟文件的音视频文件操作请求,访问对应的目标原始文件,进而实现音视频文件操作请求对应的操作请求。
此外,转换守护进程还用于在请求和返回结果的过程中,完成对应的格式转换处理。
其中,目标虚拟文件的获取步骤为:将目标原始文件(原始音视频文件)在用户空间端挂载成目标虚拟文件。例如,将目标原始文件“/tmp/infile”挂载成目标虚拟文件“/tmp/outfile”。
相应的,在上述步骤110之前,还包括:
步骤150,将各原始文件在所述用户空间端挂载成各虚拟文件,以供所述APP基于所述各虚拟文件确定访问文件,并基于所述访问文件生成所述音视频文件操作请求。
其中,各虚拟文件的获取方式为:首先,将各原始文件(原始音视频文件)在用户空间端挂载成各虚拟文件。例如,将原始文件“/tmp/infile”挂载成虚拟文件“/tmp/outfile”。
可以理解的是,将原始文件挂载成虚拟文件,可以让APP像操作本地文件一样去操作原始文件,从而提升APP端的智能性,进而实现APP能够处理Linux系统中的音视频文件。
根据本发明实施例的基于Linux的音视频处理方法,该方法应用于Linux的用户空间端,本发明实施例中APP可以像操作本地文件一样去操作目标原始文件,即只需操作目标虚拟文件就可以实现对目标原始文件的操作,进而实现APP能够处理Linux系统中的音视频文件的目的。
本发明还提供了一种应用于Linux的内核端的基于Linux的音视频处理方法。
图4为本发明提供的基于Linux的音视频处理方法的流程示意图之三,如图4所示,本发明提供的基于Linux的音视频处理方法,包括以下步骤410-420:
步骤410,通过所述内核端中的VFS模块,接收用户空间端发送的音视频文件操作请求;
其中,音视频文件操作请求中包括所需访问的文件信息,该文件信息可以包括文件路径和文件名等。
其中,内核端用于运行Linux操作系统和驱动程序。该内核端可以包括但不限于:VFS、FUSE文件系统。
其中,用户空间端用于运行应用程序。该用户空间端可以包括但不限于:各APP应用程序、转换守护进程(convert daemon)程序。
需要说明的是,用户空间端通过系统调用,将APP的音视频文件操作请求发送至内核端。
步骤420,通过所述内核端中的FUSE文件系统,将所述音视频文件操作请求从所述VFS模块转发至所述用户空间端,以供所述用户空间端对所述音视频文件操作请求进行处理。
其中,音视频文件操作请求包括但不限于:open请求(访问文件请求)、read请求(读取文件数据请求)、write请求(修改文件数据请求)、close请求(关闭文件请求)等等。
在一实施例中,通过所述内核端中的VFS模块,接收用户空间端发送的open请求;通过所述内核端中的FUSE文件系统,将所述open请求从所述VFS模块转发至所述用户空间端,以供所述用户空间端对所述open请求进行处理。
在另一实施例中,通过所述内核端中的VFS模块,接收用户空间端发送的read请求;通过所述内核端中的FUSE文件系统,将所述read请求从所述VFS模块转发至所述用户空间端,以供所述用户空间端对所述read请求进行处理。
在另一实施例中,通过所述内核端中的VFS模块,接收用户空间端发送的write请求;通过所述内核端中的FUSE文件系统,将所述write请求从所述VFS模块转发至所述用户空间端,以供所述用户空间端对所述write请求进行处理。
其中,write请求可以用于插入数据至文件,还可以用于修改文件中数据,还可以用于删除文件中数据。
在另一实施例中,通过所述内核端中的VFS模块,接收用户空间端发送的close请求;通过所述内核端中的FUSE文件系统,将所述close请求从所述VFS模块转发至所述用户空间端,以供所述用户空间端对所述close请求进行处理。
为便于理解,对具体实施方式进行举例说明。在用户空间端基于APP应用程序,生成音视频文件操作请求,然后,将APP的音视频文件操作请求从用户空间端发送至内核端的VFS模块,VFS模块通过内核端的FUSE文件系统,将音视频文件操作请求转发至用户空间端的转换守护进程,转换守护进程对音视频文件操作请求进行处理,得到处理结果。具体可参见图2,在图2中对本发明进行了端的划分,APP、转换守护进程属于用户空间端,VFS、FUSE属于内核端。
在一具体实施例中,在上述步骤420之后,还包括以下步骤430-440:
步骤430,通过所述FUSE文件系统,将所述用户空间端的处理结果转发至所述VFS模块,所述处理结果为所述用户空间端对所述音视频文件操作请求进行处理得到的结果;
步骤440,通过所述VFS模块,将所述处理结果返回至所述用户空间端。
其中,处理结果包括但不限于:open请求(访问文件请求)的处理结果、read请求(读取文件数据请求)的处理结果、write请求(修改文件数据请求)、close请求(关闭文件请求)的处理结果等等。
在一实施例中,通过所述FUSE文件系统,将所述用户空间端的是否访问成功的处理结果转发至所述VFS模块;通过所述VFS模块,将所述是否访问成功的处理结果返回至所述用户空间端。该是否访问成功的处理结果包括访问成功标识和访问失败标识。
在另一实施例中,通过所述FUSE文件系统,将所述用户空间端的从文件中读取数据得到的处理结果转发至所述VFS模块;通过所述VFS模块,将所述从文件中读取数据得到的处理结果返回至所述用户空间端。
在另一实施例中,通过所述FUSE文件系统,将所述用户空间端的修改文件的处理结果转发至所述VFS模块;通过所述VFS模块,将所述修改文件的处理结果返回至所述用户空间端。该修改文件的处理结果可以为是否修改成功的标识信息,其包括修改成功标识和修改不成功标识。
其中,是否修改成功的标识信息可以为插入数据是否成功标识,还可以为修改文件中数据是否成功标识,还可以为删除文件中数据是否成功标识。
在另一实施例中,通过所述FUSE文件系统,将所述用户空间端的是否关闭成功的处理结果转发至所述VFS模块;通过所述VFS模块,将所述是否关闭成功的处理结果返回至所述用户空间端。该是否关闭成功的处理结果包括关闭成功标识和关闭失败标识。
可以理解的是,将处理结果通过内核端中的VFS模块进行转发,以使APP能够接收到返回的处理结果,实现了APP能够处理Linux系统中的音视频文件,并返回处理结果的目的。
为便于理解,首先,音视频文件操作请求以open请求为例进行说明,APP、VFS、FUSE、转换守护进程的信令交互图如图5所示:
S501,APP向VFS发送open请求;
S502,VFS向FUSE发送open请求;
S503,FUSE向转换守护进程转发open请求;
S504,转换守护进程向FUSE返回处理结果;
S505,FUSE向VFS转发处理结果;
S506,VFS向APP返回处理结果;
其中,处理结果以访问成功标识为例进行说明,之后,音视频文件操作请求以read请求为例进行说明;
S507,APP向VFS发送read请求;
S508,VFS向FUSE发送read请求;
S509,FUSE向转换守护进程转发read请求;
S510,转换守护进程向FUSE返回处理结果;
S511,FUSE向VFS转发处理结果;
S512,VFS向APP返回处理结果;
其中,处理结果以读取的音视频数据为例进行说明。
为便于理解,首先,音视频文件操作请求以open请求为例进行,APP、VFS、FUSE、转换守护进程的信令交互图如图6所示:
S601,APP向VFS发送open请求;
S602,VFS向FUSE发送open请求;
S603,FUSE向转换守护进程转发open请求;
S604,转换守护进程向FUSE返回处理结果;
S605,FUSE向VFS转发处理结果;
S606,VFS向APP返回处理结果;
其中,处理结果以访问成功标识为例进行说明,之后,音视频文件操作请求以write请求为例进行说明;
S607,APP向VFS发送write请求;
S608,VFS向FUSE发送write请求;
S609,FUSE向转换守护进程转发write请求;
S610,转换守护进程向FUSE返回处理结果;
S611,FUSE向VFS转发处理结果;
S612,VFS向APP返回处理结果;
其中,处理结果以修改成功标识为例进行说明。
根据本发明实施例的基于Linux的音视频处理方法,该方法应用于Linux的内核端,通过内核端中的VFS模块,接收用户空间端发送的音视频文件操作请求;通过内核端中的FUSE文件系统,将音视频文件操作请求从VFS模块转发至用户空间端,以供用户空间端对音视频文件操作请求进行处理。通过上述方式,本发明实施例通过VFS模块和FUSE文件系统,对用户空间端的音视频文件操作请求进行转发,以使用户空间端可对音视频文件操作请求进行处理,实现了APP能够处理Linux系统中的音视频文件的目的。
下面对本发明提供的基于Linux的音视频处理系统进行描述,下文描述的基于Linux的音视频处理系统与上文描述的基于Linux的音视频处理方法可相互对应参照,重复之处不再赘述,具体如图7所示,该基于Linux的音视频处理系统包括:Linux的用户空间端701和Linux的内核端702,所述用户空间端701和所述内核端702相互通信;
所述用户空间端701,用于获取APP的音视频文件操作请求,并将所述音视频文件操作请求发送至内核端702;
所述内核端702,用于通过所述内核端702中的VFS模块,接收所述音视频文件操作请求;
所述内核端702,还用于通过所述内核端702中的FUSE文件系统,将所述音视频文件操作请求从所述VFS模块转发至所述用户空间端701;
所述用户空间端701,还用于通过所述用户空间端701的转换守护进程,接收所述音视频文件操作请求,并对所述音视频文件操作请求进行处理,得到处理结果。
进一步地,所述用户空间端701,还用于将所述处理结果返回至所述内核端702,以供所述内核端702将所述处理结果返回至所述用户空间端701;接收所述内核端702返回的所述处理结果,并将所述处理结果返回至所述APP。
进一步地,所述用户空间端701,还用于通过所述转换守护进程,基于所述音视频文件操作请求对应的目标虚拟文件,确定目标原始文件,所述目标虚拟文件是基于所述目标原始文件进行挂载得到的;通过所述转换守护进程,对所述原始文件执行所述音视频文件操作请求对应的操作,得到处理结果。
进一步地,所述用户空间端701,还用于将各原始文件在所述用户空间端701挂载成各虚拟文件,以供所述APP基于所述各虚拟文件确定访问文件,并基于所述访问文件生成所述音视频文件操作请求。
进一步地,所述内核端702,还用于通过所述FUSE文件系统,将所述用户空间端701的处理结果转发至所述VFS模块,所述处理结果为所述用户空间端701对所述音视频文件操作请求进行处理得到的结果;通过所述VFS模块,将所述处理结果返回至所述用户空间端701。
下面对本发明提供的基于Linux的音视频处理装置进行描述,下文描述的基于Linux的音视频处理装置与上文描述的基于Linux的音视频处理方法可相互对应参照,重复之处不再赘述,具体如图8所示,该基于Linux的音视频处理装置包括:
发送模块801,用于获取APP的音视频文件操作请求,并将所述音视频文件操作请求发送至内核端,以供所述内核端将所述音视频文件操作请求转发至所述用户空间端;
处理模块802,用于通过用户空间端的转换守护进程,接收所述内核端转发的所述音视频文件操作请求,并对所述音视频文件操作请求进行处理,得到处理结果。
下面对本发明提供的另一基于Linux的音视频处理装置进行描述,下文描述的基于Linux的音视频处理装置与上文描述的基于Linux的音视频处理方法可相互对应参照,重复之处不再赘述,具体如图9所示,该基于Linux的音视频处理装置包括:
接收模块901,用于通过内核端中的VFS模块,接收用户空间端发送的音视频文件操作请求;
转发模块902,用于通过所述内核端中的FUSE文件系统,将所述音视频文件操作请求从所述VFS模块转发至所述用户空间端,以供所述用户空间端对所述音视频文件操作请求进行处理。
图10示例了一种电子设备的实体结构示意图,如图10所示,该电子设备可以包括:处理器(processor)1010、通信接口(Communications Interface)1020、存储器(memory)1030和通信总线1040,其中,处理器1010,通信接口1020,存储器1030通过通信总线1040完成相互间的通信。处理器1010可以调用存储器1030中的逻辑指令,以执行应用于Linux的用户空间端的基于Linux的音视频处理方法,该方法包括:获取APP的音视频文件操作请求,并将所述音视频文件操作请求发送至内核端,以供所述内核端将所述音视频文件操作请求转发至所述用户空间端;通过所述用户空间端的转换守护进程,接收所述内核端转发的所述音视频文件操作请求,并对所述音视频文件操作请求进行处理,得到处理结果。或,执行应用于Linux的内核端的基于Linux的音视频处理方法,该方法包括:通过所述内核端中的VFS模块,接收用户空间端发送的音视频文件操作请求;通过所述内核端中的FUSE文件系统,将所述音视频文件操作请求从所述VFS模块转发至所述用户空间端,以供所述用户空间端对所述音视频文件操作请求进行处理。
此外,上述的存储器1030中的逻辑指令可以通过软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
另一方面,本发明还提供一种计算机程序产品,所述计算机程序产品包括计算机程序,计算机程序可存储在非暂态计算机可读存储介质上,所述计算机程序被处理器执行时,计算机能够执行上述各方法所提供的应用于Linux的用户空间端的基于Linux的音视频处理方法,该方法包括:获取APP的音视频文件操作请求,并将所述音视频文件操作请求发送至内核端,以供所述内核端将所述音视频文件操作请求转发至所述用户空间端;通过所述用户空间端的转换守护进程,接收所述内核端转发的所述音视频文件操作请求,并对所述音视频文件操作请求进行处理,得到处理结果。或,应用于Linux的内核端的基于Linux的音视频处理方法,该方法包括:通过所述内核端中的VFS模块,接收用户空间端发送的音视频文件操作请求;通过所述内核端中的FUSE文件系统,将所述音视频文件操作请求从所述VFS模块转发至所述用户空间端,以供所述用户空间端对所述音视频文件操作请求进行处理。
又一方面,本发明还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现以执行上述各方法提供的应用于Linux的用户空间端的基于Linux的音视频处理方法,该方法包括:获取APP的音视频文件操作请求,并将所述音视频文件操作请求发送至内核端,以供所述内核端将所述音视频文件操作请求转发至所述用户空间端;通过所述用户空间端的转换守护进程,接收所述内核端转发的所述音视频文件操作请求,并对所述音视频文件操作请求进行处理,得到处理结果。或,应用于Linux的内核端的基于Linux的音视频处理方法,该方法包括:通过所述内核端中的VFS模块,接收用户空间端发送的音视频文件操作请求;通过所述内核端中的FUSE文件系统,将所述音视频文件操作请求从所述VFS模块转发至所述用户空间端,以供所述用户空间端对所述音视频文件操作请求进行处理。
以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
Claims (10)
1.一种基于Linux的音视频处理方法,其特征在于,应用于Linux的用户空间端,所述方法包括:
获取APP的音视频文件操作请求,并将所述音视频文件操作请求发送至内核端,以供所述内核端将所述音视频文件操作请求转发至所述用户空间端;
通过所述用户空间端的转换守护进程,接收所述内核端转发的所述音视频文件操作请求,并对所述音视频文件操作请求进行处理,得到处理结果。
2.根据权利要求1所述的基于Linux的音视频处理方法,其特征在于,所述对所述音视频文件操作请求进行处理,得到处理结果之后,还包括:
将所述处理结果返回至所述内核端,以供所述内核端将所述处理结果返回至所述用户空间端;
接收所述内核端返回的所述处理结果,并将所述处理结果返回至所述APP。
3.根据权利要求1所述的基于Linux的音视频处理方法,其特征在于,所述对所述音视频文件操作请求进行处理,得到处理结果,包括:
通过所述转换守护进程,基于所述音视频文件操作请求对应的目标虚拟文件,确定目标原始文件,所述目标虚拟文件是基于所述目标原始文件进行挂载得到的;
通过所述转换守护进程,对所述原始文件执行所述音视频文件操作请求对应的操作,得到处理结果。
4.根据权利要求1所述的基于Linux的音视频处理方法,其特征在于,所述获取APP的音视频文件操作请求之前,还包括:
将各原始文件在所述用户空间端挂载成各虚拟文件,以供所述APP基于所述各虚拟文件确定访问文件,并基于所述访问文件生成所述音视频文件操作请求。
5.一种基于Linux的音视频处理方法,其特征在于,应用于Linux的内核端,所述方法包括:
通过所述内核端中的VFS模块,接收用户空间端发送的音视频文件操作请求;
通过所述内核端中的FUSE文件系统,将所述音视频文件操作请求从所述VFS模块转发至所述用户空间端,以供所述用户空间端对所述音视频文件操作请求进行处理。
6.根据权利要求5所述的基于Linux的音视频处理方法,其特征在于,所述通过所述内核端中的FUSE文件系统,将所述音视频文件操作请求从所述VFS模块转发至所述用户空间端之后,还包括:
通过所述FUSE文件系统,将所述用户空间端的处理结果转发至所述VFS模块,所述处理结果为所述用户空间端对所述音视频文件操作请求进行处理得到的结果;
通过所述VFS模块,将所述处理结果返回至所述用户空间端。
7.一种基于Linux的音视频处理系统,其特征在于,所述系统包括:Linux的用户空间端和Linux的内核端,所述用户空间端和所述内核端相互通信;
所述用户空间端,用于获取APP的音视频文件操作请求,并将所述音视频文件操作请求发送至内核端;
所述内核端,用于通过所述内核端中的VFS模块,接收所述音视频文件操作请求;
所述内核端,还用于通过所述内核端中的FUSE文件系统,将所述音视频文件操作请求从所述VFS模块转发至所述用户空间端;
所述用户空间端,还用于通过所述用户空间端的转换守护进程,接收所述音视频文件操作请求,并对所述音视频文件操作请求进行处理,得到处理结果。
8.一种基于Linux的音视频处理装置,其特征在于,包括:
发送模块,用于获取APP的音视频文件操作请求,并将所述音视频文件操作请求发送至内核端,以供所述内核端将所述音视频文件操作请求转发至所述用户空间端;
处理模块,用于通过用户空间端的转换守护进程,接收所述内核端转发的所述音视频文件操作请求,并对所述音视频文件操作请求进行处理,得到处理结果。
9.一种基于Linux的音视频处理装置,其特征在于,包括:
接收模块,用于通过内核端中的VFS模块,接收用户空间端发送的音视频文件操作请求;
转发模块,用于通过所述内核端中的FUSE文件系统,将所述音视频文件操作请求从所述VFS模块转发至所述用户空间端,以供所述用户空间端对所述音视频文件操作请求进行处理。
10.一种非暂态计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至4任一项所述应用于Linux的用户空间端的基于Linux的音视频处理方法的步骤,或,实现如权利要求5或6所述应用于Linux的内核端的基于Linux的音视频处理方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111530603.9A CN114339396A (zh) | 2021-12-14 | 2021-12-14 | 基于Linux的音视频处理方法、系统、装置和介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111530603.9A CN114339396A (zh) | 2021-12-14 | 2021-12-14 | 基于Linux的音视频处理方法、系统、装置和介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114339396A true CN114339396A (zh) | 2022-04-12 |
Family
ID=81050258
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111530603.9A Pending CN114339396A (zh) | 2021-12-14 | 2021-12-14 | 基于Linux的音视频处理方法、系统、装置和介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114339396A (zh) |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111339034A (zh) * | 2020-05-18 | 2020-06-26 | 湖南天琛信息科技有限公司 | 一种密文存储明文访问的系统、密文存储和明文访问方法 |
CN113760852A (zh) * | 2020-09-18 | 2021-12-07 | 北京沃东天骏信息技术有限公司 | 网络文件系统和基于网络文件系统的请求处理方法 |
-
2021
- 2021-12-14 CN CN202111530603.9A patent/CN114339396A/zh active Pending
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111339034A (zh) * | 2020-05-18 | 2020-06-26 | 湖南天琛信息科技有限公司 | 一种密文存储明文访问的系统、密文存储和明文访问方法 |
CN113760852A (zh) * | 2020-09-18 | 2021-12-07 | 北京沃东天骏信息技术有限公司 | 网络文件系统和基于网络文件系统的请求处理方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP2948846B1 (en) | Resource calling for hybrid applications | |
US10042664B2 (en) | Device remote access method, thin client, and virtual machine | |
US11853767B2 (en) | Inter-core data processing method, system on chip and electronic device | |
CN108287708B (zh) | 一种数据处理方法、装置、服务器及计算机可读存储介质 | |
CN109145238B (zh) | 一种卡片显示方法、装置及移动设备 | |
CN113990354B (zh) | 基于Linux的音频控制方法、装置、设备和存储介质 | |
US20170163787A1 (en) | Method and electronic device for upgrading or downgrading system | |
CN110007936B (zh) | 数据处理方法和装置 | |
US20150256605A1 (en) | Information processing system, an information processing apparatus and a medium storing an information processing program | |
CN109218393B (zh) | 一种推送的实现方法、装置、设备和计算机存储介质 | |
WO2021179156A1 (zh) | 消息处理方法、装置、系统以及服务器 | |
CN108459910A (zh) | 一种删除资源的方法及设备 | |
CN109347899B (zh) | 在分布式存储系统中写入日志数据的方法 | |
CN108170537B (zh) | 游戏api实现方法、装置、接口服务器及可读存储介质 | |
CN112818270A (zh) | 数据跨域传递方法、装置及计算机设备 | |
CN110708238B (zh) | 用于处理信息的方法和装置 | |
CN114339396A (zh) | 基于Linux的音视频处理方法、系统、装置和介质 | |
CN107168648B (zh) | 文件存储方法、装置及终端 | |
CN111459819B (zh) | 软件测试方法及装置、电子设备、计算机可读介质 | |
CN110460512B (zh) | 系统消息生成方法、装置、服务器及存储介质 | |
CN111274176A (zh) | 一种信息处理方法、电子设备、系统及存储介质 | |
CN114237758B (zh) | 通信连接方法、装置、电子设备及计算机可读存储介质 | |
CN114237509B (zh) | 数据访问方法及装置 | |
US12001450B2 (en) | Distributed table storage processing method, device and system | |
CN115687714A (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 | ||
TA01 | Transfer of patent application right | ||
TA01 | Transfer of patent application right |
Effective date of registration: 20220421 Address after: 100041 B-0035, 2 floor, 3 building, 30 Shixing street, Shijingshan District, Beijing. Applicant after: BEIJING BYTEDANCE NETWORK TECHNOLOGY Co.,Ltd. Address before: 2005, floor 2, No. 39, West Street, Haidian District, Beijing 100080 Applicant before: Beijing jingling Information System Technology Co.,Ltd. |