KR102660883B1 - A method for testing media processing on embedded devices and computing devices using the process - Google Patents

A method for testing media processing on embedded devices and computing devices using the process Download PDF

Info

Publication number
KR102660883B1
KR102660883B1 KR1020230172361A KR20230172361A KR102660883B1 KR 102660883 B1 KR102660883 B1 KR 102660883B1 KR 1020230172361 A KR1020230172361 A KR 1020230172361A KR 20230172361 A KR20230172361 A KR 20230172361A KR 102660883 B1 KR102660883 B1 KR 102660883B1
Authority
KR
South Korea
Prior art keywords
playback
test
signal
video signal
result
Prior art date
Application number
KR1020230172361A
Other languages
Korean (ko)
Inventor
이진석
임정현
김민경
윤석원
Original Assignee
주식회사 테스트웍스
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 주식회사 테스트웍스 filed Critical 주식회사 테스트웍스
Priority to KR1020230172361A priority Critical patent/KR102660883B1/en
Application granted granted Critical
Publication of KR102660883B1 publication Critical patent/KR102660883B1/en

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0706Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment
    • G06F11/0736Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment in functional embedded systems, i.e. in a data processing system designed as a combination of hardware and software dedicated to performing a certain function
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0706Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment
    • G06F11/0712Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment in a virtual computing platform, e.g. logically partitioned systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/22Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
    • G06F11/2263Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing using neural networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/22Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
    • G06F11/2273Test methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/22Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
    • G06F11/26Functional testing
    • G06F11/263Generation of test inputs, e.g. test vectors, patterns or sequences ; with adaptation of the tested hardware for testability with external testers
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/22Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
    • G06F11/26Functional testing
    • G06F11/273Tester hardware, i.e. output processing circuits
    • G06F11/277Tester hardware, i.e. output processing circuits with comparison between actual response and known fault-free response
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/32Monitoring with visual or acoustical indication of the functioning of the machine
    • G06F11/321Display for diagnostics, e.g. diagnostic result display, self-test user interface
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/096Transfer learning

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Quality & Reliability (AREA)
  • Computer Hardware Design (AREA)
  • Mathematical Physics (AREA)
  • Artificial Intelligence (AREA)
  • Evolutionary Computation (AREA)
  • Human Computer Interaction (AREA)
  • Health & Medical Sciences (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Biomedical Technology (AREA)
  • Biophysics (AREA)
  • Computational Linguistics (AREA)
  • Data Mining & Analysis (AREA)
  • General Health & Medical Sciences (AREA)
  • Molecular Biology (AREA)
  • Computing Systems (AREA)
  • Software Systems (AREA)
  • Debugging And Monitoring (AREA)

Abstract

본 발명은 계층적 호스트 구조를 갖는 임베디드 장치의 테스트 방법에 있어서, 메인 호스트가 대상 장치의 실행 환경의 설정 정보를 입력 받는 단계; 상기 설정 정보에 따라 가상화된 실행 환경을 서브 호스트에 구축하는 단계; 상기 구축된 실행 환경에서 하나 이상의 테스트 케이스를 수행하는 단계; 및 상기 수행 결과를 모니터링하는 단계를 포함하고, 상기 테스트 케이스를 수행하는 단계는, 상기 대상 장치와 상기 서브 호스트 간 물리적인 연결 동작을 테스트하는 단계를 포함한다.The present invention provides a testing method for an embedded device with a hierarchical host structure, comprising: receiving, by a main host, setting information of an execution environment of a target device; Building a virtualized execution environment on a subhost according to the configuration information; performing one or more test cases in the constructed execution environment; and monitoring the execution result, and performing the test case includes testing a physical connection operation between the target device and the subhost.

Description

임베디드 장치의 미디어 프로세싱 테스트 방법 및 이를 수행하는 컴퓨팅 장치{A method for testing media processing on embedded devices and computing devices using the process}A method for testing media processing on embedded devices and computing devices using the process}

본 발명은 임베디드 장치의 테스트 방법에 관한 것이다. 바람직하게는 특정 기능 수행을 위해 설계된 임베디드 장치의 미디어 프로세싱 테스트를 위한 방법에 관한 것이다.The present invention relates to a testing method for embedded devices. Preferably, it relates to a method for testing media processing of an embedded device designed to perform a specific function.

종래에는 임베디드 장치를 테스트하기 위해서는 각각의 호스트 장치에 테스트하기 위한 임베디드 장치와 관련된 모든 하드웨어 환경을 구축한후에 해당 임베디드 장치에 소프트웨어를 다운로드해서 테스트를 진행하고 있다.Conventionally, in order to test an embedded device, all hardware environments related to the embedded device for testing are established in each host device, and then software is downloaded to the embedded device and testing is performed.

이때 같은 환경에서 같은 임베디드 장치를 동시에 여러 대 테스트하기 위해서는 하나의 호스트에 여러 개의 임베디드 장치를 연결해서 동시에 여러 대를 테스트할 수도 있다.At this time, in order to test multiple embedded devices at the same time in the same environment, you can connect multiple embedded devices to one host and test multiple devices at the same time.

사용자는 해당 테스트장비를 갖추고 있어야 하며, 본인이 원하는 환경에 따라서 해당 하드웨어 구성과 소프트웨어를 변경하면서 테스트를 진행해야 한다.The user must be equipped with the relevant test equipment and must proceed with the test while changing the hardware configuration and software according to the user's desired environment.

따라서 하나의 하드웨어 장비를 여러 사용자가 공유하면서 테스트를 진행한다면 그때마다 본인이 원하는 환경을 다시 구성하고 테스트를 진행해야 하는 비효율적인 반복 작업이 필요하다.Therefore, if multiple users share a single hardware device and conduct testing, it is necessary to reconfigure the desired environment each time and conduct testing, which is an inefficient repetitive task.

또한 모든 사용자에게 해당 테스트 장비를 배포하기 위해서는 개발 초기에는 높은 제작비용이 요구되며 잦은 하드웨어 변경으로 비용적으로도 쉽지 않은 단점이 있다.In addition, in order to distribute the test equipment to all users, high production costs are required in the early stages of development, and frequent hardware changes have the disadvantage of being difficult in terms of cost.

특히, 현재는 멀티미디어 등의 미디어 프로세싱 장비의 테스트의 경우, 음원이나 동영상의 미디어를 재생하고 실제 해당 미디어가 정상적으로 재생되는지, 재생도중 끊김이나 지연 등의 현상이 있는지, 노이즈가 있는지 등을 사람이 직접 해당 수행 과정을 보면서 판단해 입력하고 있다. 이런 경우 자동화를 통해서 대량의 장치를 테스트할 수 없이 모든 과정과 장치를 사람이 관여하게 되어 원격, 대량 및 자동화 테스트를 진행할 수 없는 문제점이 있다.In particular, in the case of testing media processing equipment such as multimedia, a person plays back media such as a sound source or video and determines whether the media is actually played normally, whether there are interruptions or delays during playback, and whether there is noise. I am making judgments and inputting them while watching the execution process. In this case, there is a problem that remote, large-scale and automated testing cannot be conducted because humans are involved in all processes and devices without being able to test large quantities of devices through automation.

또한, 미디어 프로세싱 테스트 장치는 항상 검사자 주변에 놓여야 하며, 계속 사람이 이를 수행하고 판단하기 위해서 검사자도 테스트 장치 주변에 계속 있어야 하기 때문에, 동시에 여러 장치에 대해 같은 테스트를 진행하기 어렵고, 모든 장치마다 같은 작업을 반복함에 따라, 시간 및 비용적으로 매우 비효율적인 테스트가 수행되는 문제점이 있다.In addition, the media processing test device must always be placed near the tester, and the tester must also remain near the test device for a person to continuously perform and judge it. Therefore, it is difficult to conduct the same test on multiple devices at the same time, and each device must be tested separately. As the same task is repeated, there is a problem in that very inefficient testing is performed in terms of time and cost.

본 발명은 개발 초기에는 개발 단가가 높거나, 지속적으로 개선이 되는 임베디드 장치의 제한된 수량의 장치를 효율적으로 테스트하기 위한 방법을 제안하는 것을 목적으로 한다.The purpose of the present invention is to propose a method for efficiently testing a limited number of embedded devices that have high development costs in the early stages of development or are constantly being improved.

또한, 본 발명은 소프트웨어 개발되는 과정에서 다양한 환경에서 테스트를 진행하기 위한 환경과 조합에 따라서 하드웨어를 구성하고 소프트웨어를 설치할 수 있는 환경을 구성하는 방법을 제안하는 것을 목적으로 한다.In addition, the purpose of the present invention is to propose a method of configuring hardware and configuring an environment in which software can be installed according to the environment and combination for testing in various environments during the software development process.

구체적으로 본 발명은 예상되는 환경이나 조건을 가상화한 해당 환경에서 소프트웨어를 선택하여 미리 설정된 모든 환경이나 조건에서 해당 소프트웨어를 테스트할 수 있는 환경을 제안하는 것을 목적으로 한다.Specifically, the purpose of the present invention is to propose an environment in which software can be tested in all preset environments or conditions by selecting software in an environment that virtualizes expected environments or conditions.

또한, 본 발명은 임베디드 장치의 미디어 프로세싱 수행 과정을 기록하고, 이를 원본 미디어와 비교 검증하는 방식을 이용하여, 원격 또는 자동으로 해당 테스트의 수행 결과를 판단하게 하며, 개발 단계에서의 미디어 프로세싱 테스트 효율성을 향상시키는 것을 목적으로 한다.In addition, the present invention records the media processing performance of the embedded device and verifies it by comparing it with the original media to determine the results of the test remotely or automatically, and improves media processing test efficiency at the development stage. The purpose is to improve.

또한, 본 발명은 테스트 장치별 미디어 프로세싱 테스트 수행 상태를 원격 및 실시간으로 모니터링할 수 있고, 이에 기반하여 테스트의 오류 검출 성능을 향상시키는 것을 목적으로 한다.In addition, the present invention aims to enable remote and real-time monitoring of the media processing test performance status for each test device and improve error detection performance of the test based on this.

상술한 목적을 달성하기 위한 본 발명의 일 실시 예에 따른 방법은, 임베디드 장치의 테스트 방법에 있어서, 대상 장치의 실행 환경에 대한 설정 정보에 따라, 가상화된 실행 환경을 서브 호스트에 구축하는 단계; 상기 구축된 실행 환경에서 하나 이상의 테스트 케이스를 수행하는 단계; 및 상기 수행 결과를 모니터링하는 단계를 포함하고, 상기 테스트 케이스를 수행하는 단계는, 상기 대상 장치의 멀티미디어 재생 동작을 테스트하는 단계를 포함하고, 상기 멀티미디어는 오디오 신호를 포함한다.A method according to an embodiment of the present invention for achieving the above-described object is a method for testing an embedded device, comprising: building a virtualized execution environment in a subhost according to setting information about the execution environment of the target device; performing one or more test cases in the constructed execution environment; and monitoring the execution result, wherein performing the test case includes testing a multimedia playback operation of the target device, and the multimedia includes an audio signal.

또한, 상술한 목적을 달성하기 위한 본 발명의 일 실시 예에 따른 장치는, 프로세서, 및 상기 프로세서와 통신하는 메모리를 포함하고, 상기 메모리는 상기 프로세서로 하여금 동작들을 수행하게 하는 명령들을 저장하고, 상기 동작들은, 대상 장치의 실행 환경에 대한 설정 정보에 따라, 가상화된 실행 환경을 서브 호스트에 구축하는 동작; 상기 구축된 실행 환경에서 하나 이상의 테스트 케이스를 수행하는 동작; 및 상기 수행 결과를 모니터링하는 동작을 포함하고, 상기 테스트 케이스를 수행하는 동작은, 상기 대상 장치의 멀티미디어 재생 동작을 테스트하는 동작을 포함하고, 상기 멀티미디어는 오디오 신호를 포함한다.In addition, a device according to an embodiment of the present invention for achieving the above-described object includes a processor and a memory that communicates with the processor, wherein the memory stores instructions that cause the processor to perform operations, The operations include: building a virtualized execution environment in a subhost according to setting information about the execution environment of the target device; An operation of performing one or more test cases in the constructed execution environment; and an operation of monitoring the performance result, wherein the operation of performing the test case includes an operation of testing a multimedia playback operation of the target device, and the multimedia includes an audio signal.

한편, 상술한 목적을 달성하기 위한 본 발명의 일 실시 예에 따른 컴퓨터 판독 가능한 기록 매체에 저장된 컴퓨터프로그램은 상술한 연산 방법을 실행하기 위한 프로그램 코드를 포함할 수 있다.Meanwhile, a computer program stored in a computer-readable recording medium according to an embodiment of the present invention to achieve the above-described object may include program code for executing the above-described calculation method.

본 발명에 따르면 임베디드 장치의 개발 및 테스트 과정에서 물리적인 하드웨어 자원을 매번 새롭게 구성하고 준비할 필요가 없기 때문에 자원을 효율적으로 활용할 수 있다.According to the present invention, resources can be utilized efficiently because there is no need to newly configure and prepare physical hardware resources every time during the development and testing of embedded devices.

또한, 본 발명은 실제 하드웨어를 매번 구매하지 않아도 되므로 초기 비용과 유지 보수 비용을 크게 줄일 수 있다.Additionally, the present invention can greatly reduce initial and maintenance costs by eliminating the need to purchase actual hardware each time.

또한, 본 발명은 미리 설정된 다양한 가상화 환경을 이용하므로 다양한 테스트 케이스와 조건에 쉽게 대응할 수 있다.Additionally, since the present invention uses various preset virtualization environments, it can easily respond to various test cases and conditions.

또한, 본 발명은 하드웨어를 물리적으로 준비하는 시간을 단축시킬 수 있으며 필요한 환경을 빠르게 복제하거나 스케일링 할 수 있다.Additionally, the present invention can shorten the time to physically prepare hardware and can quickly replicate or scale the required environment.

또한, 본 발명은 동일한 테스트 환경을 쉽게 복제할 수 있으므로 테스트의 정확성과 신뢰성을 높일 수 있다.Additionally, the present invention can easily replicate the same test environment, thereby increasing the accuracy and reliability of testing.

또한, 본 발명은 자동화와 표준화가 쉽게 이루어져, 사람에 의한 오류를 줄이고, 테스트 결과의 일관성을 유지할 수 있다.In addition, the present invention can be easily automated and standardized, reducing human errors and maintaining consistency of test results.

또한, 본 발명은 중앙 집중형의 메인 호스트에서 모든 가상화된 환경을 중앙에서 관리할 수 있으므로, 복잡성을 크게 줄이고 관리가 용이하다.Additionally, the present invention can centrally manage all virtualized environments from a centralized main host, greatly reducing complexity and making management easier.

또한, 본 발명은 메인 호스트로 사용자별로 원하는 장치, 환경, TC 등을 관리할 수 있으므로, 여러 개발자나 팀이 동시에 효율적으로 작업을 수행할 수 있다.Additionally, the present invention allows the main host to manage desired devices, environments, TCs, etc. for each user, allowing multiple developers or teams to work efficiently at the same time.

또한, 본 발명은 임베디드 장치의 미디어 프로세싱 수행 과정을 기록하고, 이를 원본 미디어와 비교 검증하는 방식을 이용하여, 원격 또는 자동으로 해당 테스트의 수행 결과를 판단하게 하며, 개발 단계에서의 미디어 프로세싱 테스트 효율성을 향상시킬 수 있다.In addition, the present invention records the media processing performance of the embedded device and verifies it by comparing it with the original media to determine the results of the test remotely or automatically, and improves media processing test efficiency at the development stage. can be improved.

또한, 본 발명은 테스트 장치별 미디어 프로세싱 테스트 수행 상태를 원격 및 실시간으로 모니터링할 수 있고, 이에 기반하여 테스트의 오류 검출 성능을 향상시킬 수 있다.In addition, the present invention can monitor the performance status of media processing tests for each test device remotely and in real time, and based on this, the error detection performance of the test can be improved.

도 1은 본 발명의 일 실시예에 따른 컴퓨팅 장치의 테스트 시스템의 구성을 개념적으로 나타내는 예시도이다.
도 2은 본 발명의 일 실시예에 따른 임베디드 장치의 테스트 방법의 프로세스를 나타낸 흐름도이다.
도 3은 본 발명의 일 실시예에 따른 테스트를 위한 컴퓨팅 장치의 메인 호스트 구성을 예시하는 도이다.
도 4 내지 5는 본 발명의 일 실시예에 따른 임베디드 장치의 테스트 방법의 세부 프로세스를 나타낸 흐름도이다.
도 6 내지 8은 본 발명의 일 실시예에 따른 테스트를 위한 컴퓨팅 장치의 서브 호스트 구성을 예시하는 도이다.
도 9는 본 발명의 다른 일 실시예에 따른 컴퓨팅 장치의 테스트 시스템의 구성을 개념적으로 나타내는 예시도이다.
도 10은 본 발명의 일 실시예에 따른 임베디드 장치의 미디어 프로세싱 테스트 방법의 프로세스를 나타낸 흐름도이다.
도 11 내지 도 13은 본 발명의 실시 예에 따른 오디오 신호 처리 및 검증방식을 설명하기 위한 예시도이다.
도 14는 본 발명의 일 실시예에 따른 임베디드 장치의 미디어 프로세싱 테스트 방법의 영상 검증 프로세스를 나타낸 흐름도이다.
도 15는 본 발명의 실시 예에 따른 영상 신호 처리 및 검증방식을 설명하기 위한 예시도이다.
도 16은 본 발명의 일 실시예에 따른 테스트를 위한 컴퓨팅 장치의 하드웨어 구현을 나타낸 예시도이다.
1 is an exemplary diagram conceptually showing the configuration of a testing system for a computing device according to an embodiment of the present invention.
Figure 2 is a flowchart showing the process of a testing method for an embedded device according to an embodiment of the present invention.
Figure 3 is a diagram illustrating the main host configuration of a computing device for testing according to an embodiment of the present invention.
4 to 5 are flowcharts showing detailed processes of a testing method for an embedded device according to an embodiment of the present invention.
6 to 8 are diagrams illustrating a subhost configuration of a computing device for testing according to an embodiment of the present invention.
Figure 9 is an exemplary diagram conceptually showing the configuration of a testing system for a computing device according to another embodiment of the present invention.
Figure 10 is a flowchart showing the process of a media processing test method for an embedded device according to an embodiment of the present invention.
11 to 13 are exemplary diagrams for explaining audio signal processing and verification methods according to an embodiment of the present invention.
Figure 14 is a flowchart showing an image verification process of a media processing test method for an embedded device according to an embodiment of the present invention.
Figure 15 is an example diagram for explaining an image signal processing and verification method according to an embodiment of the present invention.
Figure 16 is an exemplary diagram showing the hardware implementation of a computing device for testing according to an embodiment of the present invention.

이하의 내용은 단지 발명의 원리를 예시한다. 그러므로 당업자는 비록 본 명세서에 명확히 설명되거나 도시 되지 않았지만 발명의 원리를 구현하고 발명의 개념과 범위에 포함된 다양한 장치를 발명할 수 있는 것이다. 또한, 본 명세서에 열거된 모든 조건부 용어 및 실시 예들은 원칙적으로, 발명의 개념이 이해되도록 하기 위한 목적으로만 명백히 의도되고, 이외같이 특별히 열거된 실시 예들 및 상태들에 제한적이지 않는 것으로 이해되어야 한다. The following merely illustrates the principles of the invention. Therefore, a person skilled in the art can invent various devices that embody the principles of the invention and are included in the concept and scope of the invention, although not clearly described or shown herein. In addition, all conditional terms and embodiments listed in this specification are, in principle, clearly intended only for the purpose of ensuring that the inventive concept is understood, and should be understood as not limiting to the specifically listed embodiments and states. .

상술한 목적, 특징 및 장점은 첨부된 도면과 관련한 다음의 상세한 설명을 통하여 보다 분명해질 것이며, 그에 따라 발명이 속하는 기술분야에서 통상의 지식을 가진 자가 발명의 기술적 사상을 용이하게 실시할 수 있을 것이다. The above-mentioned purpose, features and advantages will become clearer through the following detailed description in relation to the attached drawings, and accordingly, those skilled in the art in the technical field to which the invention pertains will be able to easily implement the technical idea of the invention. .

또한, 발명을 설명함에 있어서 발명과 관련된 공지 기술에 대한 구체적인 설명이 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에 그 상세한 설명을 생략하기로 한다. 이하에는 첨부한 도면을 참조하여 본 발명의 바람직한 실시 예에 대해 상세하게 설명한다.Additionally, when describing the invention, if it is determined that a detailed description of the known technology related to the invention may unnecessarily obscure the gist of the invention, the detailed description will be omitted. Hereinafter, preferred embodiments of the present invention will be described in detail with reference to the attached drawings.

도 1은 본 발명에 따른 계층적 호스트 구조를 갖는 테스트 시스템을 나타내는 예시도이다.Figure 1 is an exemplary diagram showing a test system with a hierarchical host structure according to the present invention.

도 1을 참조하면 본 실시예에 따른 시스템은 테스트를 위한 설정 정보를 입력하는 사용자(10)와 사용자(10)의 설정 정보에 따른 환경을 구축하고 테스트를 수행하는 테스트 장치(100) 및 테스트 대상인 대상 장치(200)로 구성될 수 있다.Referring to FIG. 1, the system according to this embodiment includes a user 10 who inputs setting information for testing, a test device 100 that builds an environment according to the setting information of the user 10 and performs a test, and a test subject. It may be configured as a target device 200.

사용자(10)는 테스트 장치(100)에서 제공하는 인터페이스를 이용하여 테스트 설정 정보를 입력할 수 있다.The user 10 may input test setting information using the interface provided by the test device 100.

이때, 사용자(10)는 원격으로 테스트 장치(100)에 접속하여 설정 정보를 입력할 수 있다. 또한 사용자(10)는 복수의 사용자 그룹으로 구성될 수 있으며 각각의 사용자(10)가 원격에서 테스트 장치(100)에 접속하여 테스트하고자 하는 대상 장치(200)에 대한 설정 정보를 입력할 수 있으며 테스트 장치(100)는 사용자(10)들의 테스트 스케쥴을 관리할 수 있다.At this time, the user 10 can remotely access the test device 100 and input setting information. In addition, the user 10 may be composed of a plurality of user groups, and each user 10 can remotely access the test device 100 and enter setting information for the target device 200 to be tested. The device 100 can manage the test schedules of users 10.

테스트 장치(100)는 메인 호스트(110)와 서브 호스트(120)의 계층 구조로 구성될 수 있다.The test device 100 may be configured in a hierarchical structure of a main host 110 and a sub host 120.

메인 호스트(110)는 연결된 모든 장치와 환경 및 사용자(10), TC(Test Case)등을 관리한다. 서브 호스트(120)는 각각의 임베디드 대상 장치(200)가 연결되어 있는 실제 테스트를 진행한다.The main host 110 manages all connected devices, environments, users 10, and TC (Test Case). The subhost 120 performs actual tests where each embedded target device 200 is connected.

사용자(10)가 메인 호스트(110)에서 테스트할 대상 장치(200) 및 환경을 선택하면 해당 환경이 서브 호스트(120) 장치 상에 가상화 되어 설정되고 소프트웨어들은 설치될 수 있다.When the user 10 selects a target device 200 and an environment to be tested on the main host 110, the corresponding environment is virtualized and set on the sub-host 120 device, and software can be installed.

설치된 가상환경(1250)은 테스트를 진행할 대상 장치(200)와 연결되어 있어 사용자(10)가 원하는 장치 및 환경이 가변적으로 구축될 수 있으며 사용자(10)가 선택한 소프트웨어나 TC가 수행된다.The installed virtual environment 1250 is connected to the target device 200 for testing, so the device and environment desired by the user 10 can be variably constructed, and software or TC selected by the user 10 is performed.

서브 호스트(120)는 하드웨어나 소프트웨어적으로 다양한 환경을 가상화된 환경에 설정한 후 필요에 따라서 설치해서 다양한 환경의 테스트를 가변적으로 수행할 수 있도록 한다.The subhost 120 sets up various environments in terms of hardware or software in a virtualized environment and then installs them as needed to variably perform tests in various environments.

본 실시예에서 메인 호스트(110)와 서브 호스트(120)는 물리적으로 분리될 수 있으며 따라서 추후 대상 장치(200)가 추가될 때 다양한 서브 호스트(120)와 논리적인 결합을 통해 테스트 장치(100)를 구성할 수 있다.In this embodiment, the main host 110 and the sub-host 120 can be physically separated, and therefore, when the target device 200 is added later, the test device 100 is connected through logical combination with various sub-hosts 120. can be configured.

이하, 도 2를 참고하여 구체적인 테스트 방법을 설명한다.Hereinafter, a specific test method will be described with reference to FIG. 2.

도 2는 본 발명의 일 실시예에 따른 테스트 방법을 나타내는 흐름도이다.Figure 2 is a flowchart showing a testing method according to an embodiment of the present invention.

메인 호스트(110)가 대상 장치(200)의 실행 환경의 설정 정보를 입력 받는다.The main host 110 receives setting information for the execution environment of the target device 200.

설정 정보의 입력은 테스트 장치(100)에서 제공하는 인터페이스를 통하여 사용자(10)가 입력할 수 있다.Setting information can be input by the user 10 through an interface provided by the test device 100.

메인 호스트(110)는 사용자(10)에게 다양한 테스트 환경을 제공한다. 여기서 사용자(10)는 테스트할 장치와 실행할 소프트웨어, 그리고 이들이 동작할 환경을 선택할 수 있다.The main host 110 provides various test environments to the user 10. Here, the user 10 can select the device to be tested, the software to be executed, and the environment in which they will operate.

사용자(10)는 GUI (Graphical User Interface)나 텍스트 기반의 사용자 인터페이스 CLI (Command Line Interface)를 통해 원하는 설정을 선택한다.The user 10 selects desired settings through a GUI (Graphical User Interface) or a text-based user interface CLI (Command Line Interface).

도 3은 본 발명의 일 실시예에 따른 메인 호스트(110)의 구성을 나타낸다.Figure 3 shows the configuration of the main host 110 according to an embodiment of the present invention.

본 실시예에 따른 대상 장치(200)를 테스트하기 위한 메인 호스트(110)는 다양한 구성을 포함할 수 있다.The main host 110 for testing the target device 200 according to this embodiment may include various configurations.

예를 들어 웹서버(Web Server)(112)는 사용자(10)가 테스트 환경을 쉽게 설정하고 관리할 수 있는 웹 기반 인터페이스를 제공할 수 있으며 사용자(10)는 원격으로 접속하여 테스트를 요청할 수 있다. For example, the web server 112 can provide a web-based interface that allows the user 10 to easily set up and manage the test environment, and the user 10 can remotely access and request testing. .

또한 웹 서버(112)는 외부 시스템이나 서비스가 호스트 시스템과 상호작용할 수 있도록 API 엔드포인트를 제공함으로써 외부의 정보를 요청하거나 사용자(10)의 장치에 처리 결과를 제공해 줄 수 있다.Additionally, the web server 112 may request external information or provide processing results to the device of the user 10 by providing an API endpoint so that external systems or services can interact with the host system.

또한 웹 서버(112)는 사용자의 클라이언트와 메인 호스트(110) 간에 HTTP/HTTPS 프로토콜을 사용하여 데이터를 전송할 수 있도록 지원하며 사용자(10)는 데이터를 메인 호스트(110)에 전송하고 메인 호스트(110)가 데이터를 참고하여 테스트를 수행할 수 있도록 한다.In addition, the web server 112 supports transmitting data using the HTTP/HTTPS protocol between the user's client and the main host 110, and the user 10 transmits data to the main host 110 and the main host 110 ) allows you to perform tests by referring to the data.

잡 매니저(Job Manager) (114)는 테스트가 언제, 어떤 장치에서 실행될지 관리하며, 테스트에 필요한 컴퓨팅 리소스와 장치를 동적으로 할당할 수 있다.Job Manager (114) manages when and on what device tests will be run, and can dynamically allocate computing resources and devices required for testing.

또한, 여러 테스트 작업 중 어떤 것이 먼저 실행되어야 하는지 우선순위를 결정한다. It also determines the priority of which of several test tasks should be executed first.

구체적으로 도 4를 참고하면 메인 호스트(110)는 사용자(10)의 테스트 요청을 스케쥴링한다(S10).Specifically, referring to FIG. 4, the main host 110 schedules the test request of the user 10 (S10).

다음, 메인 호스트(110)는 스케쥴링된 스케쥴에 따라 상기 사용자(10)의 대상 장치(200)와 실행 환경이 사용 가능해지면 상기 서브 호스트(120)를 할당한다(S20).Next, the main host 110 allocates the sub host 120 when the target device 200 and execution environment for the user 10 become available according to the scheduled schedule (S20).

디바이스 매니저(116)는 테스트되는 대상 장치(200)들을 관리하고, 장치의 현재 상태를 실시간으로 모니터링한다. 또한, 잡 매니저(114)에 따라 테스트를 실행할 적절한 장치를 선택하고 리소스들을 할당하는 것도 가능하다.The device manager 116 manages the target devices 200 to be tested and monitors the current status of the devices in real time. Additionally, it is possible to select an appropriate device to run the test and allocate resources according to the job manager 114.

로그 매니저(Log Manager) (118)는 장치의 테스트에서 발생하는 로그 및 사용자(10)의 요청이나 피드백을 수집하고 문제 진단이나 성능 모니터링을 위해 로그 데이터를 저장할 수 있다.Log Manager 118 collects logs generated from device testing and requests or feedback from users 10 and can store log data for problem diagnosis or performance monitoring.

도 5를 참고하면, 본 실시예에서 메인 호스트(110)는 메인 호스트(110)가 상기 테스트 케이스 및 상기 테스트 케이스의 수정 이력을 저장한다(S30). 저장된 이력을 통해 테스트 케이스를 재사용하거나 이력들을 통하여 대상 장치(200)의 성능 이력을 확인할 수 있도록 한다(S40).Referring to FIG. 5, in this embodiment, the main host 110 stores the test case and the revision history of the test case (S30). It is possible to reuse test cases through the saved history or check the performance history of the target device 200 through the history (S40).

이어서 메인 호스트(110)는 설정 정보의 이력에 따라 기 구축된 실행 환경을 재사용할 수 있도록 한다.Next, the main host 110 allows the previously built execution environment to be reused according to the history of the configuration information.

나아가 ML Perf (Machine Learning Performance) (119)는 대상 장치(200)가 머신러닝을 포함하는 경우 머신러닝 모델의 성능을 측정하고, 성능 데이터를 분석하여 최적화 포인트를 찾거나 이후에 AutoML 을 이용한 하이퍼파라미터들의 조절에 이용될 수 있도록 한다. 또한, AutoML 기반의 성능 측정 결과를 요약하여 리포트를 생성하여 제공할 수 있다.Furthermore, ML Perf (Machine Learning Performance) 119 measures the performance of the machine learning model when the target device 200 includes machine learning, analyzes performance data to find optimization points, or later hyperparameters using AutoML. so that it can be used for their control. Additionally, a report can be generated and provided by summarizing AutoML-based performance measurement results.

TC 매니저 (Test Case Manager) (115)는 테스트에 사용할 테스트 케이스의 목록과 속성을 관리하고 각 테스트 케이스의 실행 결과를 테스트 단위로 추적하고 분석한다. 또한 테스트 케이스의 변경 이력을 추적하고 버전으로 관리한다.TC Manager (Test Case Manager) 115 manages the list and properties of test cases to be used for testing, and tracks and analyzes the execution results of each test case by test unit. Additionally, the change history of test cases is tracked and managed as versions.

TC 매니저 (Test Case Manager) (115)는 축적된 정상/비정상 로그 및 결과를 AI기반으로 분석/학습하여 향후 수행시에 발생하는 로그를 기반으로 동작 중의 비정상 상태 및 원인을 파악하는데 활용할 수 있도록 하는 것도 가능하다.TC Manager (Test Case Manager) (115) analyzes/learns accumulated normal/abnormal logs and results based on AI and can be used to identify abnormal conditions and causes during operation based on logs generated during future execution. It is also possible.

즉, 이상의 구성들은 메인 호스트(110) 내에서 서로 연계되어 복잡한 테스트 환경에서도 효율적으로 대상 장치(200)의 테스트를 수행할 수 있게 도와줄 수 있다.In other words, the above configurations can be linked to each other within the main host 110 to help efficiently test the target device 200 even in a complex test environment.

다음 테스트 장치(100)는 설정 정보에 따라 가상화된 실행 환경을 서브 호스트(120)에 구축한다(S200).Next, the test device 100 builds a virtualized execution environment on the sub host 120 according to the setting information (S200).

본 실시예에서 시스템은 사용자(10)가 선택한 환경을 자동으로 도커 컨테이너나 가상 머신(VM)으로 서브 호스트(120)에 설정하며 가상 환경 내 필요한 소프트웨어와 라이브러리가 설치될 수 있다.In this embodiment, the system automatically sets the environment selected by the user 10 as a Docker container or a virtual machine (VM) on the subhost 120, and necessary software and libraries in the virtual environment can be installed.

본 실시예에서 시스템은 대상 장치(200)를 테스트하기 위한 OS(105) 상에 가상 환경을 하이퍼바이저(103)와 게스트 OS(107)를 활용한 VM(Virtual Machine) (109) 기반 구성과 도커 컨테이너(104) 기반 구성으로 특정 목적과 상황에 따라 결정할 수 있다.In this embodiment, the system configures a virtual environment on the OS 105 for testing the target device 200 based on a VM (Virtual Machine) 109 using a hypervisor 103 and a guest OS 107 and Docker. Container 104-based configuration can be determined according to specific purposes and situations.

먼저 도 6을 참조하면 본 실시예에 따른 시스템은 VM(Virtual Machine) 기반 가상 환경(125) 구성을 수행할 수 있다.First, referring to FIG. 6, the system according to this embodiment can configure a VM (Virtual Machine)-based virtual environment 125.

하이퍼바이저 (Hypervisor) (103)는 하드웨어를 에뮬레이션하여 여러 개의 독립적인 가상 머신을 실행할 수 있게 한다. Hypervisor 103 emulates hardware and allows running multiple independent virtual machines.

게스트 OS (Operating System) (107)는 가상 머신 위에서 돌아가는 운영체제로 전체 운영체제를 포함하므로 높은 수준의 격리와 복잡한 애플리케이션을 실행할 수 있도록 한다.The guest OS (Operating System) 107 is an operating system that runs on a virtual machine and includes the entire operating system, allowing a high level of isolation and complex applications to be executed.

예를 들어 테스트 케이스의 내용이 고도의 격리 필요하며, 다양한 OS 환경에서의 테스트가 필요할 때 VM 기반의 구성을 할 수 있다.For example, when the contents of a test case require a high degree of isolation and testing in various OS environments is required, a VM-based configuration can be performed.

또한, 복잡한 네트워크 토폴로지와 상호작용을 테스트해야 할 경우 가상 머신을 이용하여 서브 호스트 상에 환경을 구현할 수 있다. Additionally, if you need to test complex network topologies and interactions, you can implement the environment on a subhost using a virtual machine.

반면, 가상 머신은 리소스 사용량이 많고 느린 시작/종료 시간과 높은 오버헤드를 가지게 되므로 본 실시예에 따른 메인 호스트(110)는 잡 매니저(114)의 스케쥴을 참고하여 VM 구성 여부를 결정할 수 있다.On the other hand, since virtual machines have high resource usage, slow start/end times, and high overhead, the main host 110 according to this embodiment can determine whether to configure a VM by referring to the schedule of the job manager 114.

또한, 도 7을 참고하면 시스템은 도커 기반 가상 환경(125)을 통해 테스트 케이스를 수행하는 것도 가능하다.Additionally, referring to FIG. 7, the system is also capable of performing test cases through a Docker-based virtual environment 125.

도커 엔진(102)은 컨테이너화된 애플리케이션을 실행하고 관리한다.Docker Engine 102 runs and manages containerized applications.

컨테이너(104)는 애플리케이션과 그에 필요한 라이브러리, 설정 등을 하나의 패키지로 묶어 실행하는 단위로 구성하고, 빠른 배포와 확장성을 가지도록 한다.The container 104 configures the application, its necessary libraries, settings, etc. into a single package to execute, and ensures rapid deployment and scalability.

또한 본 실시예에 따른 시스템은 환경 일관성이 유지될 필요가 있는 테스트의 경우 개발부터 배포까지 환경을 도커를 통해 유지할 수 있다. Additionally, the system according to this embodiment can maintain the environment from development to distribution through Docker in the case of tests that require environmental consistency to be maintained.

다만, OS 수준에서의 격리가 가상 머신보다 약할 수 있고, 리눅스 커널을 공유하기 때문에 다양한 OS 환경에서의 테스트에 제약이 있을 수 있다.However, isolation at the OS level may be weaker than that of virtual machines, and because the Linux kernel is shared, testing in various OS environments may be limited.

즉, 본 실시예에 따른 시스템은 높은 수준의 격리와 다양한 OS 환경을 필요로 테스트르 수행할 때 가상 머신 기반으로 구성할 수 있으며 반대로 빠르고 효율적인 배포와 실행을 원할 때 도커 기반의 테스트 환경을 구성할 수 있다.In other words, the system according to this embodiment can be configured based on a virtual machine when performing tests that require a high level of isolation and various OS environments, and conversely, when fast and efficient deployment and execution is desired, a Docker-based test environment can be configured. You can.

따라서, 메인 호스트의 TC 매니저(115)에서 설정된 격리 수준을 정의하는 제1 임계값과, 배포 수준을 정의하는 제2 임계값을 테스트 케이스 별로 관리하며, 잡 매니저(114)는 서브 호스트 별 할당된 테스트 케이스의 격리 수준과 배포 수준을 통하여 서브 호스트를 결정하고 스케쥴링을 수행할 수 있다. Therefore, the first threshold defining the isolation level set in the TC manager 115 of the main host and the second threshold defining the distribution level are managed for each test case, and the job manager 114 manages the assigned isolation level for each subhost. Subhosts can be determined and scheduling performed through the isolation level and deployment level of the test case.

다음, 테스트 장치(100)는 구축된 실행 환경에서 특정 소프트웨어 또는 테스트 케이스를 수행한다(S300).Next, the test device 100 performs specific software or test cases in the built execution environment (S300).

이어서 테스트 장치(100)는 서브 호스트(120)의 테스트 케이스 수행 결과를 모니터링한다(S400).Next, the test device 100 monitors the test case execution results of the subhost 120 (S400).

상술한 바와 같이 로그 매니저(118)는 장치의 테스트에서 발생하는 로그 및 사용자(10)의 요청이나 피드백을 수집하고 문제 진단이나 성능 모니터링을 위해 로그 데이터를 저장할 수 있다.As described above, the log manager 118 collects logs generated from device testing, requests or feedback from the user 10, and stores log data for problem diagnosis or performance monitoring.

나아가, 본 실시예에서 시스템은 머신 러닝 기반의 테스트를 위하여 추가적으로 NPU 또는 GPU 드라이버(106)를 도커 상에 구성할 수 있다.Furthermore, in this embodiment, the system may additionally configure an NPU or GPU driver 106 on Docker for machine learning-based testing.

구체적으로 시스템은 컨테이너가 메인 호스트의 GPU 리소스를 사용할 수 있도록 서브 호스트에 연결되거나 장착된 GPU에 대한 GPU 드라이버를 설치하고, GPU를 컨테이너에 할당할 수 있다. 또한 드라이버 라이브러리와 유틸리티를 컨테이너에 마운트하여 컨테이너 내에서 사용할 수 있도록 한다.Specifically, the system can install GPU drivers for GPUs attached to or attached to the subhost so that the container can use the main host's GPU resources, and assign the GPU to the container. Additionally, driver libraries and utilities are mounted on the container so that they can be used within the container.

이때 ML Perf(119)는 성능 데이터를 분석하여 최적화 포인트를 찾거나 하이퍼파라미터들을 조절할 수 있도록 한다. 또한, AutoML 기반의 자동화된 테스트 결과를 요약하여 리포트를 생성하여 제공할 수 있다.At this time, ML Perf (119) analyzes performance data to find optimization points or adjust hyperparameters. Additionally, a report can be generated and provided by summarizing AutoML-based automated test results.

나아가 TC 매니저(115)는 테스트에 사용할 테스트 케이스의 목록과 속성을 관리하고 각 테스트 케이스의 실행 결과를 테스트 단위로 추적하고 분석한다. 또한 테스트 케이스의 변경 이력을 추적하고 버전으로 관리한다.Furthermore, the TC manager 115 manages the list and properties of test cases to be used for testing, and tracks and analyzes the execution results of each test case by test unit. Additionally, the change history of test cases is tracked and managed as versions.

상술한 바와 같이 메인 호스트(110)는 설정 정보의 이력에 따라 기 구축된 실행 환경을 재사용할 수 있도록 한다.As described above, the main host 110 allows reuse of a previously built execution environment according to the history of configuration information.

구체적으로 가상 머신을 재사용하기 위해 스냅샷 (Snapshot)을 이용할 수 있다.Specifically, snapshots can be used to reuse virtual machines.

가상 머신의 특정 상태를 스냅샷으로 저장하고 필요할 때 복원하여 사용하도록 한다. 스냅샷을 통해 테스트 전/후의 상태를 쉽게 비교할 수 있고, 오류 발생 시 원상복구가 가능하도록 한다.The specific state of the virtual machine can be saved as a snapshot and restored when necessary. Snapshots allow you to easily compare the status before and after testing, and enable restoration in the event of an error.

또는 특정 설정과 소프트웨어가 설치된 가상 머신을 템플릿으로 저장하며, 동일한 설정의 가상 머신이 여러 개 필요한 경우, 템플릿을 통해 빠르게 생성이 가능하도록 한다.Alternatively, a virtual machine with specific settings and software installed is saved as a template, and if multiple virtual machines with the same settings are needed, they can be quickly created through templates.

나아가, 실행 중인 가상 머신을 복제하여 동일한 환경을 생성하는 것도 가능하다. 즉 현재 상태가 유지된 채로 새 환경을 만들 수 있어, 동적인 테스트 조건 하에서 이용될 수 있다.Furthermore, it is also possible to create an identical environment by cloning a running virtual machine. In other words, a new environment can be created while maintaining the current state, so it can be used under dynamic test conditions.

반면, 도커를 재사용하기 위한 방법으로 도커 컨테이너의 상태를 이미지로 저장하고 이미지를 통해 새로운 컨테이너를 실행할 수 있도록 한다.On the other hand, as a way to reuse Docker, the state of the Docker container is saved as an image and a new container can be executed through the image.

이미지를 이용하여 빠른 환경 구성과 배포가 가능하며 이미지는 레지스트리에 업로드되어 여러 사람이 쉽게 접근할 수 있도록 함으로써 사용성을 높일 수 있다.Using images, quick environment configuration and distribution is possible, and usability can be improved by uploading images to the registry so that multiple people can easily access them.

또는 도커 이미지를 생성하기 위한 스크립트를 도커 파일에 작성하고 이를 통해 동일한 환경을 재생성할 수 있다. 이미지와 달리 코드를 통해 환경을 구성하기 때문에, 환경 설정이 명확하고, 버전 관리가 쉽다는 장점이 있다.Alternatively, you can write a script to create a Docker image in a Docker file and recreate the same environment through it. Unlike images, the environment is configured through code, so it has the advantage of clear environment settings and easy version management.

그외 데이터를 컨테이너 외부에 저장하여, 여러 컨테이너에서 동일한 데이터를 재사용할 수 있도록 하며 데이터의 영속성이 유지되며, 여러 컨테이너에서 쉽게 데이터를 공유할 수 있도록 한다.In addition, by storing data outside the container, the same data can be reused in multiple containers, data persistence is maintained, and data can be easily shared across multiple containers.

이때 재사용 되는 가상 머신 또는 도커 컨테이너의 격리 수준 및 배포 수준을 로그 매니저(118)를 통해 갱신할 수 있으며, 재사용 시 가상 환경을 결정할 수 있도록 한다.At this time, the isolation level and distribution level of the reused virtual machine or Docker container can be updated through the log manager 118, and the virtual environment can be determined when reused.

추가적으로 상기 메인 호스트(110)는 사용자(10)를 인증하고, 실행 환경의 설정 정보를 입력 받는 단계는 상기 인증된 사용자(10)의 접근 권한에 따른 설정 정보를 입력 받는 것도 가능하다.Additionally, the main host 110 authenticates the user 10, and in the step of receiving setting information of the execution environment, it is also possible to receive setting information according to the access rights of the authenticated user 10.

도 9는 본 발명의 다른 일 실시예에 따른 컴퓨팅 장치의 테스트 시스템의 구성을 개념적으로 나타내는 예시도이다.Figure 9 is an exemplary diagram conceptually showing the configuration of a testing system for a computing device according to another embodiment of the present invention.

도 9를 참조하면, 본 발명의 실시 예에 따른 테스트 시스템은, 도 1에서 설명된 시스템에 있어서, 미디어 장치의 미디어 프로세싱 테스트 케이스를 수행하기 위해, 각 서브 호스트(120)와 대상 장치(200)간 미디어 재생 동작 테스트를 처리하고, 처리 결과를 모니터링하는 미디어 프로세싱 테스트부(140)를 더 구비할 수 있다.Referring to FIG. 9, the test system according to an embodiment of the present invention includes each subhost 120 and a target device 200 to perform a media processing test case of a media device in the system described in FIG. 1. A media processing test unit 140 may be further provided to process a media playback operation test and monitor the processing results.

여기서, 미디어 프로세싱 테스트부(140)는 메인 호스트(110) 또는 서브 호스트(120)로부터 대상 장치(200)로 제공되는 미디어 재생 동작 테스트용 원본 미디어 신호를 획득하고, 대상 장치(200)의 재생 결과 신호를 획득하며, 원본 미디어 신호와 재생 결과 신호 간 비교에 따라, 정상 동작을 검증할 수 있다. 이를 위해, 미디어 프로세싱 테스트부(140)는 별도의 오디오 신호 캡쳐 모듈 및 영상 캡쳐 모듈을 포함할 수 있으며, 정밀한 영상 및 음성 재생 신호 획득을 위해 필요한 경우 하나 이상의 카메라 및 마이크를 더 구비할 수 있다.Here, the media processing test unit 140 obtains the original media signal for testing the media playback operation provided to the target device 200 from the main host 110 or the sub host 120, and obtains the playback result of the target device 200. The signal is acquired, and normal operation can be verified by comparing the original media signal and the playback result signal. To this end, the media processing test unit 140 may include a separate audio signal capture module and a video capture module, and may be further equipped with one or more cameras and microphones if necessary to obtain precise video and audio playback signals.

이러한 테스트 장치(100)는 미디어 프로세싱 테스트부(140)와 외부로 연결되거나, 미디어 프로세싱 테스트부(140)를 내부에 포함할 수 있으며, 검증 결과를 모니터링하고, 테스트 리포트를 구성하여 사용자에게 제공할 수 있다. 이를 위해, 미디어 프로세싱 테스트부(140)는 메인 호스트(110), 서브 호스트(120) 및 대상 장치(200)와 무선 또는 유선으로 연결될 수 있으며, 이를 위한 신호 전송 채널이 시스템 내에서 미리 구축될 수 있다.This test device 100 may be externally connected to the media processing test unit 140 or may include the media processing test unit 140 internally, and may monitor verification results, construct a test report, and provide it to the user. You can. To this end, the media processing test unit 140 may be connected wirelessly or wired to the main host 110, sub-host 120, and target device 200, and a signal transmission channel for this may be established in advance within the system. there is.

특히, 미디어 프로세싱 테스트부(140)는 상기 테스트 케이스를 수행함에 따른 대상 장치(200)의 미디어 재생 동작 테스트를 검증하되, 상기 미디어는 오디오 신호를 포함할 수 있는 바, 테스트 검증에는 실행 환경 별 노이즈 신호가 인공신경망 기반으로 사전 학습된 학습 모델이 이용될 수 있다. In particular, the media processing test unit 140 verifies the media playback operation test of the target device 200 according to the test case, and since the media may include an audio signal, the test verification involves noise according to the execution environment. A learning model in which signals are pre-trained based on an artificial neural network can be used.

보다 구체적으로, 미디어 프로세싱 테스트부(140)는 테스트 케이스 수행에 있어서, 원본 오디오 신호에 대한 상기 대상 장치(200)에서의 재생 결과를 획득할 수 있으며, 상기 재생 결과를, 대상 장치(200)에 대응하여 설정된 실행 환경과 함께, 인공신경망 기반으로 사전 학습된 학습 모델로 인가하여, 노이즈 신호를 도출할 수 있으며, 상기 노이즈 신호를 이용해 상기 재생 결과를 필터링할 수 있다.More specifically, when performing a test case, the media processing test unit 140 may obtain a playback result of the original audio signal in the target device 200, and send the playback result to the target device 200. A noise signal can be derived by applying a pre-trained learning model based on an artificial neural network, along with a correspondingly set execution environment, and the playback result can be filtered using the noise signal.

여기서, 상기 노이즈 신호는, 오디오 신호에 포함되는 화이트 노이즈, 핑크 노이즈, 브라운 노이즈 중 적어도 하나를 포함할 수 있으며, 미디어 프로세싱 테스트부(140)는, 상기 노이즈 신호를 도출하기 위해, 상기 재생 결과의 스펙트럼 변환을 수행하고, 상기 스펙트럼 변환된 재생 결과를, 실행 환경 정보와 함께 상기 학습 모델로 인가하여, 상기 학습 모델로부터 예측된 상기 화이트 노이즈, 상기 핑크 노이즈 또는 상기 브라운 노이즈 신호를 획득할 수 있다.Here, the noise signal may include at least one of white noise, pink noise, and brown noise included in the audio signal, and the media processing test unit 140 determines the playback result to derive the noise signal. Spectral conversion may be performed, and the spectrum converted playback result may be applied to the learning model along with execution environment information to obtain the white noise, pink noise, or brown noise signal predicted from the learning model.

예를 들어, 서브 호스트(120)는 테스트 케이스 수행에 있어서, 표준 오디오 테스트 신호(예: 1kHz 사인파, 음성 파일 등)를 대상 장치(200)에 입력하고, 미디어 프로세싱 테스트부(140) 대상 장치(200)의 스피커 출력을 마이크로 재녹음함으로써 재생 결과를 획득할 수 있다. 이 재생 결과에는 장치의 하드웨어 제한이나 알고리즘 기반 오류에서 기인한 잡음이 포함될 수 있는 바, 학습 모델은 학습용 재생 결과와 학습용 원본 오디오 신호를 인가받아 그 차이에서 기인한 노이즈 성분을 도출하는 학습 모델을 사전 구축할 수 있다.For example, when performing a test case, the subhost 120 inputs a standard audio test signal (e.g., 1 kHz sine wave, voice file, etc.) to the target device 200, and the media processing test unit 140 targets the target device ( The playback result can be obtained by re-recording the speaker output of 200) with a microphone. This playback result may include noise resulting from hardware limitations of the device or algorithm-based errors, so the learning model receives the playback result for learning and the original audio signal for learning and creates a learning model that derives noise components resulting from the difference. It can be built.

예컨대 구체적인 노이즈 유형으로는 하드웨어 잡음, 정량화 잡음, 알고리즘 기반 왜곡 등을 들 수 있는 바, 학습 모델은 이러한 노이즈로부터 상기 화이트 노이즈, 상기 핑크 노이즈 또는 상기 브라운 노이즈 신호를 예측할 수 있다. For example, specific noise types include hardware noise, quantification noise, and algorithm-based distortion, and the learning model can predict the white noise, pink noise, or brown noise signal from these noises.

여기서, 화이트 노이즈(white noise)는 주파수 대역 전체에 고르게 분포한 노이즈를 말하며, 모든 주파수 성분이 동일한 파워를 가지기 때문에 귀에는 잡음과 유사하게 들릴 수 있다.Here, white noise refers to noise evenly distributed throughout the frequency band, and because all frequency components have the same power, it may sound similar to noise to the ear.

그리고, 핑크 노이즈(pink noise)는 주파수가 높아질수록 파워가 1/f에 비례하여 감소하는 노이즈로서, 저주파 영역에서의 파워가 더 집중되어 있어 화이트 노이즈보다 부드러운 느낌의 소리가 나타난다.Additionally, pink noise is a noise whose power decreases in proportion to 1/f as the frequency increases, and the power in the low-frequency region is more concentrated, resulting in a softer sound than white noise.

한편, 브라운 노이즈(brown noise)는 주파수가 높아질수록 파워가 1/f^2에 비례하여 더욱 급격하게 감소하는 노이즈로서, 저주파 영역의 파워 집중 현상이 더욱 극명하여 크랙링 소리와 유사한 느낌을 나타낸다.Meanwhile, brown noise is noise whose power decreases more rapidly in proportion to 1/f^2 as the frequency increases, and the power concentration phenomenon in the low-frequency region is more pronounced, giving a feeling similar to a crackling sound.

그리고, 미디어 프로세싱 테스트부(140)는 이 노이즈 성분을 제거한 신호를 다시 재생 결과에 가산하는 필터링을 수행하여 향상된 오디오 품질을 얻을 수 있으며, 가산된 필터링 결과를 원본 오디오 신호와 비교함에 따라, 정상 동작을 검증할 수 있다.In addition, the media processing test unit 140 can obtain improved audio quality by performing filtering by adding the signal from which this noise component has been removed to the playback result, and by comparing the added filtering result with the original audio signal, normal operation is achieved. can be verified.

보다 구체적으로 예를 들어, 미디어 프로세싱 테스트부(140)는 상기 재생 결과의 파형에 대해, 상기 획득된 노이즈 신호를 차감 처리하여, 상기 필터링된 재생 결과를 획득할 수 있으며, 상기 필터링된 재생 결과로부터 시작음과 종료음을 기준으로 하는 검증 영역을 추출하고, 상기 원본 오디오 신호의 길이와, 상기 검증 영역간 길이를 비교하여, 딜레이 발생 여부를 검증하는 딜레이 검증을 수행할 수 있다.More specifically, for example, the media processing test unit 140 may obtain the filtered playback result by subtracting the obtained noise signal from the waveform of the playback result, and obtain the filtered playback result from the filtered playback result. Delay verification can be performed by extracting a verification area based on the start sound and end sound and comparing the length of the original audio signal with the length between the verification areas to verify whether a delay has occurred.

또한, 보다 구체적으로 예를 들어, 미디어 프로세싱 테스트부(140)는 상기 필터링된 재생 결과와, 상기 원본 오디오 신호의 각 파형을 동일 범위 내로 정규화하며, 상기 정규화된 각 파형 간 유사도에 기초하여, 오디오 컨텍스트의 차이 여부를 검증할 수 있다.In addition, more specifically, for example, the media processing test unit 140 normalizes the filtered playback result and each waveform of the original audio signal within the same range, and based on the similarity between each normalized waveform, audio You can verify whether there is a difference in context.

여기서, 미디어 프로세싱 테스트부(140)는 상기 오디오 컨텍스트의 차이 여부를 검증하기 위해 상기 각 파형 또는 상기 각 파형의 스펙트럼 변환 정보로부터 구간 별 패턴 정보를 추출할 수 있으며, 상기 구간 별 패턴 정보의 각 파형 간 코사인 유사도 연산에 따른 벡터 값을 획득할 수 있고, 상기 벡터 값이 임계치 이상 도출된 구간을 이상 구간으로 검출할 수 있다.Here, the media processing test unit 140 may extract pattern information for each section from each waveform or the spectrum conversion information of each waveform to verify whether there is a difference in the audio context, and each waveform of the pattern information for each section. A vector value according to the inter-cosine similarity calculation can be obtained, and a section in which the vector value is derived more than a threshold can be detected as an abnormal section.

한편, 상기 미디어는 영상 신호를 더 포함할 수 있으며, 미디어 프로세싱 테스트부(140)는 상기 오디오 신호에 대응하는 정상 동작결과를 이용하여, 정상 검증된 시작음과 종료음 사이 영상 구간에 대응하는 영상 검증을 더 수행할 수 있다. 이에 대하여는 보다 구체적으로 후술하도록 한다.Meanwhile, the media may further include a video signal, and the media processing test unit 140 uses the normal operation result corresponding to the audio signal to produce a video corresponding to the video section between the normally verified start sound and end sound. Further verification can be performed. This will be described in more detail later.

도 10은 본 발명의 일 실시예에 따른 임베디드 장치의 미디어 프로세싱 테스트 방법의 프로세스를 나타낸 흐름도이다.Figure 10 is a flowchart showing the process of a media processing test method for an embedded device according to an embodiment of the present invention.

도 10을 참조하면, 테스트 장치(100)를 포함하는 시스템은 먼저 미디어 프로세싱 테스트부(140)를 구동하여, 대상 장치(200)와 서브 호스트(120)간 오디오 신호를 포함하는 테스트 미디어의 재생 명령을 전달한다(S500).Referring to FIG. 10, the system including the test device 100 first drives the media processing test unit 140 to command playback of test media including an audio signal between the target device 200 and the sub host 120. Deliver (S500).

그리고, 미디어 프로세싱 테스트부(140)는, 대상 장치의 미디어 재생 결과를, 사전 학습된 학습 모델로 인가하여 노이즈 신호를 도출한다(S550).Then, the media processing test unit 140 applies the media playback results of the target device to a pre-trained learning model to derive a noise signal (S550).

이후, 미디어 프로세싱 테스트부(140)는, 상기 재생 결과에 상기 노이즈 신호를 차감 처리하여 필터링된 재생 결과를 획득한다(S600).Thereafter, the media processing test unit 140 obtains a filtered playback result by subtracting the noise signal from the playback result (S600).

그리고, 미디어 프로세싱 테스트부(140)는, 필터링된 재생 결과로부터 검증 영역을 추출하여, 테스트 미디어의 원본 미디어 신호와 동일 범위 내로 정규화 처리한다(S650).Then, the media processing test unit 140 extracts a verification area from the filtered playback result and normalizes it to within the same range as the original media signal of the test media (S650).

이후, 미디어 프로세싱 테스트부(140)는, 정규화 처리된 검증 영역의 파형과, 원본 미디어 신호 간 유사도에 기초하여, 미디어 컨텍스트의 차이를 검증한다(S700).Thereafter, the media processing test unit 140 verifies the difference in media context based on the similarity between the waveform of the normalized verification area and the original media signal (S700).

그리고, 미디어 프로세싱 테스트부(140)는, 테스트 케이스별 수행 결과를 모니터링하며, 모니터링 정보는 테스트 장치(100)에서 저장 및 리포팅하는 데 이용된다(S750).In addition, the media processing test unit 140 monitors the performance results for each test case, and the monitoring information is used to store and report in the test device 100 (S750).

이러한 방법을 수행함에 따라, 전술한 바와 같이, 본 발명의 실시 예에 따른 시스템은, 미디어의 음원 또는 영상을 테스트 대상 장치(200)에서 재생하며, 그 재생 결과와 원본 미디어를 비교하여, 해당 미디어의 재생이 각 장치에서 정상적으로 동작하는지를 검증하고, 모니터링할 수 있다.By performing this method, as described above, the system according to the embodiment of the present invention plays the sound source or image of the media on the device under test 200, compares the playback result with the original media, and You can verify and monitor whether playback operates normally on each device.

여기서, 테스트 케이스별 검증 성공 또는 실패의 기준은 아래와 같을 수 있다.Here, the criteria for verification success or failure for each test case may be as follows.

- 음원이나 영상의 소리가 작거나 들리지 않는 경우,- If the sound of the sound source or video is low or inaudible,

- 재생시에 음원이나 영상에 노이즈가 포함되는 경우,- If noise is included in the sound source or video during playback,

- 실제 재생이 정상적으로 되지 않는 경우, (화면이나 소리가 나오지 않는 경우)- If actual playback does not work properly (no screen or sound)

- 딜레이가 생기거나 속도가 정상적이지 않고 빠르거나 느리게 재생되는 경우- If there is a delay or the speed is not normal and the playback is fast or slow.

이러한 테스트 케이스들의 경우, 기존에는 사람이 직접 수행하고 직접 듣거나 보면서 동작의 성공/실패를 판단하여야 하나, 이는 원격으로 다수 장치를 테스트를 할 수 없는 문제가 있으며, 네트워크의 상태에 따라서 실제 재생되는 영상이나 음성의 품질을 정확히 판단하기는 어려운 경우가 있고, 집중력이 떨어지거나 주관적인 판단기준으로 오류가 발생될 수 있으며, 각 재생 환경에 따른 주변의 잡음이나 다른 소리들이 같이 녹음될 수 있어 동시에 같은 테스트를 진행할 수 없는 문제도 존재한다.In the case of these test cases, the success/failure of the operation must be judged by manually performing it and listening or watching it directly, but this has the problem of not being able to test multiple devices remotely, and the actual playback depending on the network status. It may be difficult to accurately judge the quality of video or audio, errors may occur due to lack of concentration or subjective judgment standards, and ambient noise or other sounds depending on each playback environment may be recorded together, so the same test is performed at the same time. There are also problems that prevent the process from proceeding.

이에 따라, 본 발명의 실시 예에 따른 테스트 장치(100)는 테스트 대상의 미디어의 특성에 따라서, 경우에 따라서는 미디어의 재생이 동시에 수행되지 않고 순차적으로 수행될 수 있도록 하는 스케줄링을 처리할 수 있다. 예를 들어, 테스트 대상 장치(200)에 요청된 미디어를 재생하는 TC에 대해, 모든 대상 장치(200)들의 재생 결과를 분석해야 하는 TC를 수행하는 경우, 대상 장치(200)가 할당된 서브 호스트(120)에서, 그 재생 순서가 중복되지 않도록 재생 명령 실행 순서를 순차적으로 조정하는 처리를 수행할 수도 있다.Accordingly, the test device 100 according to an embodiment of the present invention can process scheduling so that media playback can be performed sequentially rather than simultaneously, depending on the characteristics of the media being tested. . For example, when performing a TC that must analyze the playback results of all target devices 200 for a TC that plays media requested by the device under test 200, the subhost to which the target device 200 is assigned At 120, processing to sequentially adjust the playback command execution order so that the playback order does not overlap may be performed.

그리고, 미디어 프로세싱 테스트부(140)는, 테스트 대상 장치(200)에서 특정 음성 또는 영상을 재생하고 이를 모니터링해서 정상적으로 재생이 되는지를 자동으로 판별하기 위해서, 상기 특정 음성이나 영상의 재생 시작점과 종료점에 대응하는 특정 파형의 음원을 원본 미디어에 삽입 구성할 수 있다. 이에 따라, 미디어 프로세싱 테스트부(140)는, 녹음된 파일과 원래 음원을 비교하기 위한 영역을 상기 특정 파형의 시간 위치를 이용하여 정확하게 식별할 수 있다. 예를 들어, 이러한 특정 파형의 음원은 일정 시간 동안 특정 값을 갖는 고주파의 음원으로서, 시작음, 종료음과 같은 형태로 이용될 수 있다.In addition, the media processing test unit 140 plays a specific audio or video on the device under test 200 and monitors it to automatically determine whether the specific audio or video is played normally, at the playback start and end points of the specific audio or video. Sound sources of corresponding specific waveforms can be inserted into the original media. Accordingly, the media processing test unit 140 can accurately identify the area for comparing the recorded file and the original sound source using the time position of the specific waveform. For example, this specific waveform sound source is a high-frequency sound source that has a specific value for a certain period of time, and can be used in the form of a start sound or an end sound.

또한, 미디어 프로세싱 테스트부(140)는, 영상 또는 음성 신호의 시작 또는 종료에 대응하는 특정 시그널 또는 이벤트 동기화를 이용하여, 대상 장치(200)의 재생 결과를 정확하게 녹음하거나 녹화하여 획득할 수 있다. 이 경우, 미디어 내에는 별도의 추가적인 구분 정보가 필요 없지만, 동기화시에 약간의 오차가 발생할 수 있음을 감안하여 재생 결과를 처리할 필요가 있다.In addition, the media processing test unit 140 can accurately record or obtain the playback results of the target device 200 by using a specific signal or event synchronization corresponding to the start or end of a video or audio signal. In this case, there is no need for additional classification information within the media, but it is necessary to process the playback results taking into account that some errors may occur during synchronization.

한편, 도 11 내지 도 13은 본 발명의 실시 예에 따른 오디오 신호 처리 및 검증방식을 설명하기 위한 예시도이다.Meanwhile, Figures 11 to 13 are exemplary diagrams for explaining audio signal processing and verification methods according to an embodiment of the present invention.

먼저, 미디어 프로세싱 테스트부(140)의 정확한 음원 비교를 위해서는 장치에서 재생되어 녹음된 음원과 원본 음원 간의 차이가 거의 없어야 정확한 비교가 가능한다. 이를 위해, 도 11 내지 도 13을 참고하면, 미디어 프로세싱 테스트부(140)는 인공신경망 기반 학습 모델을 이용하여, 녹음된 음원에서 녹음시에 같이 섞여 있는 White/Pink/Brown 노이즈를 제거하여 더 좋은 비교를 수행할 수 있다.First, in order to accurately compare sound sources by the media processing test unit 140, there must be almost no difference between the sound source played and recorded in the device and the original sound source to enable accurate comparison. To this end, referring to FIGS. 11 to 13, the media processing test unit 140 uses an artificial neural network-based learning model to remove white/pink/brown noise mixed during recording from the recorded sound source to provide better sound quality. Comparisons can be performed.

도 11에 도시된 바와 같이, 각 대상 장비(200)는 그 설치 환경에 따라 발생하는 White/Pink/Brown Noise는 다르게 형성될 수 있다.As shown in FIG. 11, the White/Pink/Brown Noise generated by each target device 200 may be formed differently depending on its installation environment.

이에 따라, 본 발명의 실시 예에 따른 미디어 프로세싱 테스트부(140)는, 하나의 백그라운드 daemon 프로세서를 이용해 계속 발생하는 오디오 신호의 White/Pink/Brown 노이즈를 수집하고, 이를 스펙트로그램(Spectrogram)으로 변경하여 CNN기반의 학습 모델을 구축할 수 있다.Accordingly, the media processing test unit 140 according to an embodiment of the present invention collects the white/pink/brown noise of the continuously occurring audio signal using a single background daemon processor and changes it into a spectrogram. Thus, a CNN-based learning model can be built.

본 발명의 실시 예에 따른 미디어 프로세싱 테스트부(140)는, 지속적으로 발생하는 여러 환경이나 조건에 범용적으로 적용할 수 있는 노이즈를 발생시키기 위해, 알려진 CNN, RNN, DNN, LSTM 등의 딥러닝 기반 학습을 수행하며, 특정 장비가 설치되어 있는 실행 환경에서의 노이즈 값을 계속 예측하고, 실제 학습용 원본 미디어 및 학습용 재생 결과와 비교하여 성능을 향상시킬 수 있다.The media processing test unit 140 according to an embodiment of the present invention uses known deep learning techniques such as CNN, RNN, DNN, and LSTM to generate noise that can be universally applied to various continuously occurring environments or conditions. By performing base learning, the noise value in the execution environment where specific equipment is installed can be continuously predicted, and performance can be improved by comparing it with the actual original media for learning and playback results for learning.

이후 실제 노이즈를 제거하기 위해서, 미디어 프로세싱 테스트부(140)는, 획득된 재생 결과에 대응해 획득된 노이즈의 스펙트로그램(Spectrogram) 포맷을 다시 wave pulse 형식으로 변환할 수도 있다.Afterwards, in order to remove the actual noise, the media processing test unit 140 may convert the spectrogram format of the noise obtained in response to the acquired playback result back into a wave pulse format.

이에 따라, 도 12에 도시된 파형과 같이, 미디어 프로세싱 테스트부(140)는, 이후에 테스트가 수행되고 이를 검증하기 위해서 원본 미디어 음원과 비교하기 전에, 재생 결과의 녹음시에 섞여 있을 수 있는 노이즈를 제거할 수 있으며, 제거한 이후의 재생 결과 음원을 원본 미디어 음원과 비교할 수 있다.Accordingly, as shown in the waveform shown in FIG. 12, the media processing test unit 140 removes noise that may be mixed in when recording the playback result before the test is later performed and compared with the original media sound source to verify it. can be removed, and the playback result sound source after removal can be compared with the original media sound source.

한편, 도 13을 참조하면, 미디어 프로세싱 테스트부(140)는, 원본 미디어 음원과 노이즈 제거된 재생 결과 음원의 각 프레임에 대해 비교를 수행하되, 코사인 유사도가 사전 설정된 정상 범위를 벗어나는 구간을 비정상 구간으로 판별할 수 있다.Meanwhile, referring to FIG. 13, the media processing test unit 140 compares each frame of the original media sound source and the noise-removed playback result sound source, and defines a section in which the cosine similarity is outside the preset normal range as an abnormal section. It can be determined by:

예를 들어, 미디어 프로세싱 테스트부(140)는, 노이즈 제거된 재생 결과 음원과, 원본 미디어 음원에 대해, 각각 전술한 시작음과 종료음을 기준으로 하는 검증 구간 영역을 추출할 수 있다.For example, the media processing test unit 140 may extract a verification section area based on the above-described start sound and end sound for the noise-removed playback result sound source and the original media sound source, respectively.

그리고, 미디어 프로세싱 테스트부(140)는, 이 두가지 음원의 길이를 비교해서 재생시에 딜레이가 발생했는지를 먼저 판단할 수 있다(딜레이 테스트).Additionally, the media processing test unit 140 can first determine whether a delay has occurred during playback by comparing the lengths of these two sound sources (delay test).

그리고, 미디어 프로세싱 테스트부(140)는 정규화(Normalization)를 통해서 두 음원이 파형이 같은 범위 내로 정규화되도록 처리할 수 있으며, 두 오디오의 파형을 겹쳐서 어느정도 겹쳐지는 부분이나 존재하지 않는 부분이 있는지를 비교함에 따라, 두 오디오의 컨텍스트(Context) 비교를 수행할 수 있다(컨텍스트 테스트). 이러한 컨텍스트 비교를 위해, 파형 간 코사인 유사도(cosine similarity)가 이용될 수 있으며, 유사도가 일정 범위 이내인 경우 정상, 일정 범위를 벗어난 경우 비정상으로 판단할 수 있다. 이러한 비정상 구간의 비율 또는 시간이 임계치 또는 오차 범위 이상인 경우, 테스트는 실패로 판단될 수 있다.In addition, the media processing test unit 140 can process the waveforms of the two sound sources to be normalized within the same range through normalization, and compare the waveforms of the two audios to see how much they overlap or whether there are any nonexistent parts. Accordingly, a comparison of the contexts of the two audios can be performed (context test). For such context comparison, cosine similarity between waveforms can be used, and if the similarity is within a certain range, it can be judged as normal, and if it is outside a certain range, it can be judged as abnormal. If the rate or time of these abnormal sections is greater than a threshold or error range, the test may be judged to have failed.

한편, 도 14는 본 발명의 일 실시예에 따른 임베디드 장치의 미디어 프로세싱 테스트 방법의 영상 검증 프로세스를 나타낸 흐름도이며, 도 15는 본 발명의 실시 예에 따른 영상 신호 처리 및 검증방식을 설명하기 위한 예시도이다.Meanwhile, Figure 14 is a flowchart showing the video verification process of the media processing test method of an embedded device according to an embodiment of the present invention, and Figure 15 is an example for explaining the video signal processing and verification method according to an embodiment of the present invention. It is also a degree.

먼저, 도 14를 참조하면, 미디어 프로세싱 테스트부(140)는 대상 장치로부터, 멀티미디어 영상 신호 테스트 케이스에 대한 미디어 재생 결과를 획득한다(S800).First, referring to FIG. 14, the media processing test unit 140 obtains media playback results for a multimedia video signal test case from the target device (S800).

그리고, 미디어 프로세싱 테스트부(140)는 대상 장치의 미디어 재생 결과로부터 검증 구간을 식별하여, 원본 영상 신호와 동일 범위로 정규화를 수행한다(S850).Then, the media processing test unit 140 identifies a verification section from the media playback results of the target device and normalizes it to the same range as the original video signal (S850).

이후, 미디어 프로세싱 테스트부(140)는, 상기 정규화된 재생 영상 신호와 원본 영상 신호간 파형 비교 및 픽셀 변화량 비교 중 적어도 하나를 수행하여, 정상 동작 검증 처리를 수행한다(S900).Thereafter, the media processing test unit 140 performs normal operation verification processing by performing at least one of waveform comparison and pixel change amount comparison between the normalized reproduced video signal and the original video signal (S900).

보다 구체적으로, 상기 영상 재생의 정상 동작을 검증하는 단계는, 상기 정규화된 재생 영상 신호와 원본 영상 신호간 파형 비교 및 픽셀 변화량 비교 중 적어도 하나를 수행하여 검증하는 단계를 포함할 수 있는 바, 상기 정규화된 재생 영상 신호로부터 제1 의미 세그먼트 객체를 추출하는 단계와, 상기 정규화된 원본 영상 신호로부터 제2 의미 세그먼트 객체를 추출하는 단계와, 상기 제1 의미 세그먼트 객체와 상기 제2 의미 세그먼트 객체 간 겹칩의 정도를 나타내는 IoU(Intersection over Union)를 프레임별로 추출하는 단계와, 프레임 구간 별 상기 IoU의 유지 정도에 따라, 상기 영상 재생의 정상 동작을 검증하는 단계를 수행할 수 있다.More specifically, the step of verifying normal operation of the video playback may include verifying by performing at least one of waveform comparison and pixel change amount comparison between the normalized playback video signal and the original video signal, Extracting a first semantic segment object from a normalized reproduced video signal, extracting a second semantic segment object from the normalized original video signal, and overlapping between the first semantic segment object and the second semantic segment object A step of extracting an Intersection over Union (IoU) representing the degree of each frame for each frame, and a step of verifying normal operation of the video playback according to the degree of maintenance of the IoU for each frame section can be performed.

보다 구체적으로, 미디어 프로세싱 테스트부(140)는, 영상이 포함된 미디어의 경우 우선 음성에 대한 검증이 필요한 경우는 음성에 대한 검증을 진행하되, 음성 검증으로부터 시작음과 종료음을 기준으로 검증 구간을 정확히 추출할 수 있다.More specifically, the media processing test unit 140 performs audio verification if audio verification is required in the case of media containing video, but the verification section is based on the start sound and end sound from the audio verification. can be extracted accurately.

다만, 음성이 아닌 영상만을 검증하는 경우를 위해, 테스트 영상 미디어에는 시작점 화면과 종료점 화면이 포함되어 있을 수 있다. 예를 들어, 시작점 화면은 빨간색 배경과 특별한 와일드카드(wildcard) 형식의 패턴을 표시하도록 구성될 수 있으며, 종료점 화면은 파란색 배경과 특별한 와일드카드(wildcard) 형식의 패턴을 표시하도록 구성될 수 있다. 미디어 프로세싱 테스트부(140)는 각 화면을 식별하여 영상의 시작점과 종료점을 식별하고, 검증 구간 영역만 정확히 추출하여 검증을 수행할 수 있다.However, in cases where only video and not audio are verified, the test video media may include a start point screen and an end point screen. For example, an entry point screen may be configured to display a red background and a special wildcard format pattern, and an end point screen may be configured to display a blue background and a special wildcard format pattern. The media processing test unit 140 can identify each screen, identify the start and end points of the image, and perform verification by accurately extracting only the verification section area.

그리고, 미디어 프로세싱 테스트부(140)는, 원본 미디어의 영상 신호와, 재생된 영상 신호로부터 추출된 재생 결과를 비교하여, 영상 재생의 정상여부를 판단할 수 있다.In addition, the media processing test unit 140 can determine whether video playback is normal by comparing the video signal of the original media and the playback result extracted from the reproduced video signal.

먼저, 미디어 프로세싱 테스트부(140)는, 파일의 재생시간을 비교하여 정확한 재생여부와 딜레이 여부를 판단할 수 있다(딜레이 테스트).First, the media processing test unit 140 can determine whether the file is played accurately and whether there is a delay by comparing the playback time of the file (delay test).

또한, 미디어 프로세싱 테스트부(140)는, 두 영상을 파형 신호로 변환한 후 정규화를 통해 색상 범위를 일치시킨 후에, 음성과 마찬가지로 두 파일의 파형을 비교해서 1차 비교를 수행할 수 있다(파형 비교 테스트).In addition, the media processing test unit 140 can convert the two images into waveform signals and match the color range through normalization, and then perform a first comparison by comparing the waveforms of the two files as with audio (waveform comparison test).

이후, 미디어 프로세싱 테스트부(140)는, 프레임별로 각각의 픽셀의 변화량을 비교할 수 있다. 예를 들어, 미디어 프로세싱 테스트부(140)는, 같은 이미지의 픽셀 값들의 변화에 대한 비교를 수행하여, 같은 영상이 유지되는 지를 판단할 수 있다(픽셀 비교 테스트).Thereafter, the media processing test unit 140 may compare the amount of change in each pixel for each frame. For example, the media processing test unit 140 may determine whether the same image is maintained by comparing changes in pixel values of the same image (pixel comparison test).

마지막으로, 도 15를 참조하면, 미디어 프로세싱 테스트부(140)는, 영상 전체중에서 의미적인 내용이 유지가 되고 있는지를 판단하기 위해서, 재생 결과 영상과 원본 미디어 영상에 대해서 의미 세그먼트화(Semantic Segmentation)를 수행할 수 있다. 그리고, 미디어 프로세싱 테스트부(140)는, 추출된 의미 세그먼트 객체별로 겹침의 정도를 나타내는 IoU(Intersection over Union)를 산출하며, IoU를 비교해서, 각 프레임이 진행됨에 따라 프레임 별 IoU가 어느정도 유지되는지와, 그 IoU의 변화량을 측정해서, 원본 미디어 영상대비 재생 결과 영상과의 의미 차이를 구할 수 있다. 여기서, 미디어 프로세싱 테스트부(140)는, 처음 시작점을 기준으로 1 내지 5초 정도의 프레임 윈도우를 구성하고, 프레임 윈도우를 시간에 따라 슬라이딩하면서, 가장 IoU가 높은 프레임을 기준 프레임으로 정할 수 있다.Lastly, referring to FIG. 15, the media processing test unit 140 performs semantic segmentation on the playback result video and the original media video in order to determine whether semantic content is maintained in the entire video. can be performed. In addition, the media processing test unit 140 calculates an Intersection over Union (IoU) indicating the degree of overlap for each extracted semantic segment object, and compares the IoU to determine to what extent the IoU for each frame is maintained as each frame progresses. Wow, by measuring the change in IoU, you can find the difference in meaning between the original media video and the resulting playback video. Here, the media processing test unit 140 configures a frame window of about 1 to 5 seconds based on the initial starting point, slides the frame window over time, and sets the frame with the highest IoU as the reference frame.

이와 같은 구성에 따라, 사용자는 직접 대상 장치(200)들의 미디어 재생을 실시간으로 원격 모니터링할 수 있을 뿐만 아니라, 원격으로 대상 장치(200)의 미디어 모듈(카메라, 스피커, 마이크 등)을 제어함으로써, 테스트 중에 음성이나 영상을 재생하면서 직접 검수할 수 있고, 수행중의 입력으로 음성인식이나 특정한 음원 환경이 필요한 경우에는, 해당 음성을 직접 말하거나, 필요한 음원을 원경에서 재생하면서 테스트를 진행할 수도 있게 된다.According to this configuration, the user can not only directly remotely monitor media playback of the target device 200 in real time, but also remotely control the media modules (camera, speaker, microphone, etc.) of the target device 200, During the test, you can directly inspect while playing audio or video, and if voice recognition or a specific sound source environment is required as an input during performance, you can conduct the test by speaking the voice directly or playing the necessary sound source in the distance. .

이에 따라, 본 발명을 통해서 다양한 장치에서 다양한 미디어 재생 테스트를 동시에 진행할 수 있으며, 또한 검증자의 집중력이 떨어지거나 미디어의 변화량이 미세한 경우 실수로 오류를 놓치는 상황을 방지할 수 있고, 사람의 주관적인 판단기준으로 인해 명확하지 않은 검증 기준을 수치적으로 표현할 수 있어 검증 결과를 객관화 할 수 있다.Accordingly, through the present invention, various media playback tests can be performed simultaneously on various devices, and it is also possible to prevent a situation where errors are accidentally missed when the verifier's concentration is low or the amount of change in the media is small, and a person's subjective judgment standard can be prevented. As a result, unclear verification criteria can be expressed numerically, making verification results objective.

한편, 도 16을 참조하면, 본 발명의 몇몇 실시예들에서 서비스 서버(300)는 컴퓨팅 장치의 형태로 구현될 수 있다. 서비스 서버(300)를 구성하는 각각의 모듈 중 하나 이상은 범용 컴퓨팅 프로세서 상에서 구현되며 따라서 프로세서(processor)(388), 입출력 I/O(382), 메모리 (memory)(384), 인터페이스(interface)(386) 및 버스(, bus)(385)를 포함할 수 있다. 프로세서(388), 입출력 장치(382), 메모리 (384) 및/또는 인터페이스(386)는 버스(385)를 통하여 서로 결합될 수 있다. 버스(385)는 데이터들이 이동되는 통로(path)에 해당한다.Meanwhile, referring to FIG. 16, in some embodiments of the present invention, the service server 300 may be implemented in the form of a computing device. One or more of each module constituting the service server 300 is implemented on a general-purpose computing processor, and therefore includes a processor 388, input/output I/O 382, memory 384, and interface. It may include (386) and bus (, bus) (385). The processor 388, input/output device 382, memory 384, and/or interface 386 may be coupled to each other through a bus 385. The bus 385 corresponds to a path through which data moves.

구체적으로, 프로세서(388)는 CPU(Central Processing Unit), MPU(Micro Processor Unit), MCU(Micro Controller Unit), GPU(Graphic Processing Unit), 마이크로프로세서, 디지털 신호 프로세스, 마이크로컨트롤러, 어플리케이션 프로세서(AP, application processor) 및 이들과 유사한 기능을 수행할 수 있는 논리 소자들 중에서 적어도 하나를 포함할 수 있다.Specifically, the processor 388 includes a Central Processing Unit (CPU), Micro Processor Unit (MPU), Micro Controller Unit (MCU), Graphic Processing Unit (GPU), microprocessor, digital signal processor, microcontroller, and application processor (AP). , application processor) and logic elements capable of performing similar functions.

입출력 I/O(382)는 키패드(keypad), 키보드, 터치스크린 및 디스플레이 장치 중 적어도 하나를 포함할 수 있다. 메모리 장치(384)는 데이터 및/또는 프로그램 등을 저장할 수 있다.The input/output I/O 382 may include at least one of a keypad, keyboard, touch screen, and display device. The memory device 384 may store data and/or programs.

인터페이스(386)는 통신 네트워크로 데이터를 전송하거나 통신 네트워크로부터 데이터를 수신하는 기능을 수행할 수 있다. 인터페이스(386)는 유선 또는 무선 형태일 수 있다. 예컨대, 인터페이스(386)는 안테나 또는 유무선 트랜시버 등을 포함할 수 있다. 메모리 (384)는 프로세서(388)의 동작을 향상시키되, 개인정보의 보호를 위한 휘발성의 동작 메모리로서, 고속의 디램 및/또는 에스램 등을 더 포함할 수도 있다. The interface 386 may perform a function of transmitting data to or receiving data from a communication network. Interface 386 may be wired or wireless. For example, the interface 386 may include an antenna or a wired or wireless transceiver. The memory 384 is a volatile operating memory that improves the operation of the processor 388 and protects personal information, and may further include high-speed DRAM and/or SRAM.

또한, 메모리(384) 내에는 여기에 설명된 일부 또는 모든 모듈의 기능을 제공하는 프로그래밍 및 데이터 구성을 저장한다. 예를 들어, 상술한 학습 방법의 선택된 양태들을 수행하도록 하는 로직을 포함할 수 있다.Additionally, memory 384 stores programming and data configurations that provide the functionality of some or all of the modules described herein. For example, it may include logic to perform selected aspects of the learning method described above.

메모리 (384)에 저장된 상술한 학습 방법을 수행하는 각 동작을 포함하는 명령어들의 집합으로 프로그램 또는 어플리케이션을 로드하고 프로세서가 각 동작을 수행할 수 있도록 한다.A program or application is loaded with a set of instructions including each operation for performing the above-described learning method stored in the memory 384 and allows the processor to perform each operation.

이상 여기에 설명되는 다양한 실시예는 예를 들어, 소프트웨어, 하드웨어 또는 이들의 조합된 것을 이용하여 컴퓨터 또는 이와 유사한 장치로 읽을 수 있는 기록매체 내에서 구현될 수 있다.Various embodiments described herein may be implemented, for example, in a recording medium readable by a computer or similar device using software, hardware, or a combination thereof.

하드웨어적인 구현에 의하면, 여기에 설명되는 실시예는 ASICs (application specific integrated circuits), DSPs (digital signal processors), DSPDs (digital signal processing devices), PLDs (programmable logic devices), FPGAs (field programmable gate arrays, 프로세서(processors), 제어기(controllers), 마이크로 컨트롤러(micro-controllers), 마이크로 프로세서(microprocessors), 기타 기능 수행을 위한 전기적인 유닛 중 적어도 하나를 이용하여 구현될 수 있다. 일부의 경우에 본 명세서에서 설명되는 실시예들이 제어 모듈 자체로 구현될 수 있다.According to hardware implementation, the embodiments described herein include application specific integrated circuits (ASICs), digital signal processors (DSPs), digital signal processing devices (DSPDs), programmable logic devices (PLDs), and field programmable gate arrays (FPGAs). In some cases, it may be implemented using at least one of processors, controllers, micro-controllers, microprocessors, and other electrical units for performing functions. The described embodiments may be implemented as a control module itself.

소프트웨어적인 구현에 의하면, 본 명세서에서 설명되는 절차 및 기능과 같은 실시예들은 별도의 소프트웨어 모듈들로 구현될 수 있다. 상기 소프트웨어 모듈들 각각은 본 명세서에서 설명되는 하나 이상의 기능 및 작동을 수행할 수 있다. 적절한 프로그램 언어로 쓰여진 소프트웨어 어플리케이션으로 소프트웨어 코드가 구현될 수 있다. 상기 소프트웨어 코드는 메모리 모듈에 저장되고, 제어모듈에 의해 실행될 수 있다.According to software implementation, embodiments such as procedures and functions described in this specification may be implemented as separate software modules. Each of the software modules may perform one or more functions and operations described herein. Software code can be implemented as a software application written in an appropriate programming language. The software code may be stored in a memory module and executed by a control module.

이상의 설명은 본 발명의 기술 사상을 예시적으로 설명한 것에 불과한 것으로서, 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자라면 본 발명의 본질적인 특성에서 벗어나지 않는 범위 내에서 다양한 수정, 변경 및 치환이 가능할 것이다. The above description is merely an illustrative explanation of the technical idea of the present invention, and various modifications, changes, and substitutions can be made by those skilled in the art without departing from the essential characteristics of the present invention. will be.

따라서, 본 발명에 개시된 실시 예 및 첨부된 도면들은 본 발명의 기술 사상을 한정하기 위한 것이 아니라 설명하기 위한 것이고, 이러한 실시 예 및 첨부된 도면에 의하여 본 발명의 기술 사상의 범위가 한정되는 것은 아니다. 본 발명의 보호 범위는 아래의 청구 범위에 의하여 해석되어야 하며, 그와 동등한 범위 내에 있는 모든 기술 사상은 본 발명의 권리 범위에 포함되는 것으로 해석되어야 할 것이다.Accordingly, the embodiments disclosed in the present invention and the accompanying drawings are not intended to limit the technical idea of the present invention, but are for illustrative purposes, and the scope of the technical idea of the present invention is not limited by these embodiments and the attached drawings. . The scope of protection of the present invention should be interpreted in accordance with the claims below, and all technical ideas within the equivalent scope should be construed as being included in the scope of rights of the present invention.

Claims (15)

임베디드 장치의 테스트 방법에 있어서,
대상 장치의 실행 환경에 대한 설정 정보에 따라, 가상화된 실행 환경을 서브 호스트에 구축하는 단계;
상기 구축된 실행 환경에서 하나 이상의 테스트 케이스를 수행하는 단계; 및
상기 수행 결과를 모니터링하는 단계를 포함하고,
상기 테스트 케이스를 수행하는 단계는,
상기 대상 장치의 미디어 재생 동작을 테스트하는 단계를 포함하고, 상기 미디어는 오디오 신호를 포함하고,
상기 테스트하는 단계는,
상기 오디오 신호에 대한 상기 대상 장치에서의 재생 결과를 획득하는 단계;
상기 재생 결과를, 상기 실행 환경에 대응하여 인공신경망 기반으로 사전 학습된 학습 모델로 인가하여, 노이즈 신호를 도출하는 단계;
상기 노이즈 신호를 이용해 상기 재생 결과를 필터링하는 단계; 및
상기 오디오 신호에 대응하는 원본 오디오 신호와, 상기 필터링된 재생 결과를 비교하여 정상 동작을 검증하는 단계를 포함하며,
상기 검증하는 단계는,
상기 필터링된 재생 결과로부터 시작음과 종료음을 기준으로 하는 검증 영역을 추출하는 단계; 및
상기 원본 오디오 신호의 길이와, 상기 검증 영역간 길이를 비교하여, 딜레이 발생 여부를 검증하는 단계를 포함하는
임베디드 장치의 테스트 방법.
In a test method for an embedded device,
Building a virtualized execution environment on a subhost according to setting information about the execution environment of the target device;
performing one or more test cases in the constructed execution environment; and
Including monitoring the performance results,
The steps for performing the test case are:
testing media playback operation of the target device, wherein the media includes an audio signal,
The testing step is,
Obtaining a playback result on the target device for the audio signal;
applying the playback result to a pre-trained learning model based on an artificial neural network corresponding to the execution environment, thereby deriving a noise signal;
filtering the playback result using the noise signal; and
Verifying normal operation by comparing the original audio signal corresponding to the audio signal and the filtered playback result,
The verification step is,
extracting a verification area based on the start sound and end sound from the filtered playback result; and
Comprising the step of verifying whether a delay occurs by comparing the length of the original audio signal and the length between the verification areas.
Test methods for embedded devices.
삭제delete 제1항에 있어서,
상기 노이즈 신호는, 오디오 신호에 포함되는 화이트 노이즈, 핑크 노이즈, 브라운 노이즈 중 적어도 하나를 포함하는
임베디드 장치의 테스트 방법.
According to paragraph 1,
The noise signal includes at least one of white noise, pink noise, and brown noise included in the audio signal.
Test methods for embedded devices.
제3항에 있어서,
상기 노이즈 신호를 도출하는 단계는,
상기 재생 결과의 스펙트럼 변환을 수행하는 단계; 및
상기 스펙트럼 변환된 재생 결과를 상기 학습 모델로 인가하여, 상기 학습 모델로부터 예측된 상기 화이트 노이즈, 상기 핑크 노이즈 또는 상기 브라운 노이즈 신호를 획득하는 단계를 포함하는;
임베디드 장치의 테스트 방법.
According to paragraph 3,
The step of deriving the noise signal is,
performing spectral conversion of the reproduction result; and
Comprising the step of applying the spectrum-converted reproduction result to the learning model to obtain the white noise, the pink noise, or the brown noise signal predicted from the learning model;
Test methods for embedded devices.
제4항에 있어서,
상기 필터링하는 단계는,
상기 재생 결과의 파형에 대해, 상기 획득된 노이즈 신호를 차감 처리하여, 상기 필터링된 재생 결과를 획득하는 단계를 포함하는
임베디드 장치의 테스트 방법.
According to paragraph 4,
The filtering step is,
Comprising the step of subtracting the obtained noise signal from the waveform of the reproduction result to obtain the filtered reproduction result.
Test methods for embedded devices.
삭제delete 제1항에 있어서,
상기 검증하는 단계는,
상기 필터링된 재생 결과와, 상기 원본 오디오 신호의 각 파형을 동일 범위 내로 정규화하는 단계; 및
상기 정규화된 각 파형 간 유사도에 기초하여, 오디오 컨텍스트의 차이 여부를 검증하는 단계를 포함하는
임베디드 장치의 테스트 방법.
According to paragraph 1,
The verification step is,
normalizing the filtered reproduction result and each waveform of the original audio signal within the same range; and
Comprising the step of verifying whether there is a difference in audio context based on the similarity between each normalized waveform.
Test methods for embedded devices.
제7항에 있어서,
상기 오디오 컨텍스트의 차이 여부를 검증하는 단계는,
상기 각 파형 또는 상기 각 파형의 스펙트럼 변환 정보로부터 구간 별 패턴 정보를 추출하는 단계;
상기 구간 별 패턴 정보의 각 파형 간 코사인 유사도 연산에 따른 벡터 값을 획득하는 단계; 및
상기 벡터 값이 임계치 이상 도출된 구간을 이상 구간으로 검출하는 단계를 포함하는
임베디드 장치의 테스트 방법.
In clause 7,
The step of verifying whether the audio context is different is,
extracting pattern information for each section from each waveform or spectral conversion information of each waveform;
Obtaining a vector value according to cosine similarity calculation between each waveform of the pattern information for each section; and
Including the step of detecting a section in which the vector value is derived above a threshold as an abnormal section.
Test methods for embedded devices.
제1항에 있어서,
상기 미디어는 영상 신호를 더 포함하고,
상기 테스트하는 단계는,
상기 오디오 신호에 대응하는 정상 동작결과를 이용하여, 정상 검증된 시작음과 종료음 사이 영상 구간에 대응하는 영상 검증을 더 수행하는 단계를 포함하는
임베디드 장치의 테스트 방법.
According to paragraph 1,
The media further includes a video signal,
The testing step is,
Using the normal operation result corresponding to the audio signal, further performing video verification corresponding to the video section between the normally verified start sound and end sound.
Test methods for embedded devices.
제1항에 있어서,
상기 미디어는 영상 신호를 더 포함하고,
상기 테스트하는 단계는,
상기 영상 신호에 대한 상기 대상 장치에서의 재생 결과를 획득하는 단계;
상기 재생 결과로부터 검증 구간을 식별하는 단계;
상기 검증 구간의 재생 영상 신호와, 원본 영상 신호를 동일 범위로 정규화하는 단계; 및
상기 정규화된 재생 영상 신호와 원본 영상 신호간 비교하여 영상 재생의 정상 동작을 검증하는 단계를 포함하는
임베디드 장치의 테스트 방법.
According to paragraph 1,
The media further includes a video signal,
The testing step is,
Obtaining a playback result on the target device for the video signal;
identifying a verification section from the playback results;
Normalizing the reproduced video signal of the verification section and the original video signal to the same range; and
Comprising the step of verifying normal operation of video playback by comparing the normalized playback video signal with the original video signal.
Test methods for embedded devices.
제10항에 있어서,
영상 재생의 정상 동작을 검증하는 단계는,
상기 정규화된 재생 영상 신호와 원본 영상 신호간 파형 비교 및 픽셀 변화량 비교 중 적어도 하나를 수행하여 검증하는 단계를 포함하는
임베디드 장치의 테스트 방법.
According to clause 10,
The steps to verify the normal operation of video playback are:
Comprising the step of verifying by performing at least one of waveform comparison and pixel change amount comparison between the normalized reproduced video signal and the original video signal.
Test methods for embedded devices.
제10항에 있어서,
영상 재생의 정상 동작을 검증하는 단계는,
상기 정규화된 재생 영상 신호로부터 제1 의미 세그먼트 객체를 추출하는 단계;
상기 정규화된 원본 영상 신호로부터 제2 의미 세그먼트 객체를 추출하는 단계; 및
상기 제1 의미 세그먼트 객체와 상기 제2 의미 세그먼트 객체 간 겹칩의 정도를 나타내는 IoU(Intersection over Union)를 프레임별로 추출하는 단계; 및
프레임 구간 별 상기 IoU의 유지 정도에 따라, 상기 영상 재생의 정상 동작을 검증하는 단계를 포함하는
임베디드 장치의 테스트 방법.
According to clause 10,
The steps to verify the normal operation of video playback are:
extracting a first semantic segment object from the normalized reproduction video signal;
extracting a second semantic segment object from the normalized original video signal; and
Extracting for each frame an Intersection over Union (IoU) indicating the degree of overlap between the first semantic segment object and the second semantic segment object; and
Comprising the step of verifying normal operation of the video playback according to the degree of maintenance of the IoU for each frame section.
Test methods for embedded devices.
프로세서, 및
상기 프로세서와 통신하는 메모리를 포함하고,
상기 메모리는 상기 프로세서로 하여금 동작들을 수행하게 하는 명령들을 저장하고,
상기 동작들은,
임베디드 장치의 테스트 방법에 있어서,
대상 장치의 실행 환경에 대한 설정 정보에 따라, 가상화된 실행 환경을 서브 호스트에 구축하는 동작,
상기 구축된 실행 환경에서 하나 이상의 테스트 케이스를 수행하는 동작, 및
상기 수행 결과를 모니터링하는 동작을 포함하고,
상기 테스트 케이스를 수행하는 동작은,
상기 대상 장치의 미디어 재생 동작을 테스트하는 동작을 포함하고, 상기 미디어는 오디오 신호를 포함하고,
상기 테스트하는 동작은,
상기 오디오 신호에 대한 상기 대상 장치에서의 재생 결과를 획득하는 동작,
상기 재생 결과를, 상기 실행 환경에 대응하여 인공신경망 기반으로 사전 학습된 학습 모델로 인가하여, 노이즈 신호를 도출하는 동작,
상기 노이즈 신호를 이용해 상기 재생 결과를 필터링하는 동작, 및
상기 오디오 신호에 대응하는 원본 오디오 신호와, 상기 필터링된 재생 결과를 비교하여 정상 동작을 검증하는 동작을 포함하며,
상기 검증하는 동작은,
상기 필터링된 재생 결과로부터 시작음과 종료음을 기준으로 하는 검증 영역을 추출하는 동작, 및
상기 원본 오디오 신호의 길이와, 상기 검증 영역간 길이를 비교하여, 딜레이 발생 여부를 검증하는 동작을 포함하는
컴퓨팅 장치.
processor, and
comprising a memory in communication with the processor,
The memory stores instructions that cause the processor to perform operations,
The above operations are:
In a test method for an embedded device,
An operation to build a virtualized execution environment on a subhost according to setting information about the execution environment of the target device;
An operation of performing one or more test cases in the constructed execution environment, and
Including the operation of monitoring the performance results,
The operation of performing the test case is,
An operation of testing media playback operation of the target device, wherein the media includes an audio signal,
The test operation is,
An operation of obtaining a playback result on the target device for the audio signal,
An operation of deriving a noise signal by applying the playback result to a learning model pre-trained based on an artificial neural network in response to the execution environment,
Filtering the playback result using the noise signal, and
Comprising an operation of verifying normal operation by comparing an original audio signal corresponding to the audio signal and the filtered playback result,
The verification operation is,
An operation of extracting a verification area based on the start sound and end sound from the filtered playback result, and
Comprising the operation of verifying whether a delay occurs by comparing the length of the original audio signal and the length between the verification areas.
Computing device.
삭제delete 제13항에 있어서,
상기 미디어는 영상 신호를 더 포함하고,
상기 테스트하는 동작은,
상기 영상 신호에 대한 상기 대상 장치에서의 재생 결과를 획득하는 동작;
상기 영상 신호의 재생 결과로부터 검증 구간을 식별하는 동작;
상기 검증 구간의 재생 영상 신호와, 원본 영상 신호를 동일 범위로 정규화하는 동작; 및
상기 정규화된 재생 영상 신호와 원본 영상 신호간 비교하여 영상 재생의 정상 동작을 검증하는 동작을 포함하는
컴퓨팅 장치.
According to clause 13,
The media further includes a video signal,
The test operation is,
Obtaining a playback result on the target device for the video signal;
Identifying a verification section from a reproduction result of the video signal;
Normalizing the reproduced video signal of the verification section and the original video signal to the same range; and
Comprising the operation of verifying normal operation of video playback by comparing the normalized playback video signal with the original video signal.
Computing device.
KR1020230172361A 2023-12-01 2023-12-01 A method for testing media processing on embedded devices and computing devices using the process KR102660883B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020230172361A KR102660883B1 (en) 2023-12-01 2023-12-01 A method for testing media processing on embedded devices and computing devices using the process

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020230172361A KR102660883B1 (en) 2023-12-01 2023-12-01 A method for testing media processing on embedded devices and computing devices using the process

Publications (1)

Publication Number Publication Date
KR102660883B1 true KR102660883B1 (en) 2024-04-25

Family

ID=90884990

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020230172361A KR102660883B1 (en) 2023-12-01 2023-12-01 A method for testing media processing on embedded devices and computing devices using the process

Country Status (1)

Country Link
KR (1) KR102660883B1 (en)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20100047885A (en) * 2007-08-07 2010-05-10 디엑스오 랩스 Method for processing a digital object and related system
KR20120135118A (en) * 2011-06-01 2012-12-12 삼성전자주식회사 Audio encoding method and apparatus, audio decoding method and apparatus, recoding medium and multimedia device employing the same
KR101764274B1 (en) * 2017-05-04 2017-08-07 이기만 Automatic sound tuning apparatus by using artificial neural network
KR20200048633A (en) * 2018-10-30 2020-05-08 삼성에스디에스 주식회사 System and method for automatically testing software
KR20230078376A (en) * 2021-11-26 2023-06-02 삼성전자주식회사 Method and device for processing audio signal using ai model

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20100047885A (en) * 2007-08-07 2010-05-10 디엑스오 랩스 Method for processing a digital object and related system
KR20120135118A (en) * 2011-06-01 2012-12-12 삼성전자주식회사 Audio encoding method and apparatus, audio decoding method and apparatus, recoding medium and multimedia device employing the same
KR101764274B1 (en) * 2017-05-04 2017-08-07 이기만 Automatic sound tuning apparatus by using artificial neural network
KR20200048633A (en) * 2018-10-30 2020-05-08 삼성에스디에스 주식회사 System and method for automatically testing software
KR20230078376A (en) * 2021-11-26 2023-06-02 삼성전자주식회사 Method and device for processing audio signal using ai model

Similar Documents

Publication Publication Date Title
US10970057B2 (en) Methods and apparatus to generate a customized application blueprint
JP7064521B2 (en) Speaker inspection methods, equipment, electronic devices and storage media
US9886375B2 (en) Automated execution of functional test scripts on a remote system within a unit testing framework
CN108959068B (en) Software interface testing method, device and storage medium
WO2018010552A1 (en) Test method and device
CN110288997A (en) Equipment awakening method and system for acoustics networking
US20200320975A1 (en) Automated voice processing testing system and method
US10440078B2 (en) Streaming content adjustment based on camera feedback
CN110719461B (en) Audio and video equipment testing method and device and computer readable storage medium
WO2018184420A1 (en) Software testing method, apparatus, electronic device, and medium
CN107577579B (en) Log recording method and device
CN110554831B (en) Operation synchronization method, device, equipment and storage medium
US9466310B2 (en) Compensating for identifiable background content in a speech recognition device
US7991164B2 (en) Method for modifying the compatibility of an audio analyzing apparatus with an application program
US9372770B2 (en) Hardware platform validation
WO2020037475A1 (en) Method and device for debugging application
KR20140102113A (en) Commit sensitive tests
KR102660883B1 (en) A method for testing media processing on embedded devices and computing devices using the process
KR102106618B1 (en) System, terminal device, verification apparatus, method and computer-readable medium for testing application performance
CN112416700A (en) Analyzing initiated predictive failures and SMART logs
KR20150048365A (en) System and method for verifying application
JP2024508467A (en) test measurement system
KR102488319B1 (en) audio recognition method, audio recognition apparatus, electronic equipment, computer readable storage medium and computer program
CN107665115B (en) Software development platform and method
CN112783789A (en) Adaptation test method, device and computer readable storage medium

Legal Events

Date Code Title Description
E701 Decision to grant or registration of patent right
GRNT Written decision to grant