摄像机中的 PROD 和 ENG 有啥区别?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了摄像机中的 PROD 和 ENG 有啥区别?相关的知识,希望对你有一定的参考价值。

PROD,即生产商线路控制按钮,调节生产商线路的对讲机音频聆听电平。
ENG,即工程师线路控制按钮,调节工程师线路的对讲机音频聆听电平。
线路不通,调节声音则不通。
参考技术A prod函数用于求数组元素的乘积,运算规则详见调用格式及说明。在matlab的命令窗口中输入doc prod或者help prod即可获得相关帮助信息。追答

ENG,即“电子新闻采集”(Electronic News Gathering)。这种方式,是人们经常采用的,指的是:使用便携式的摄像、录像设备,来采集电视新闻。最简单的采集设备:就是一台摄像机和一条编辑线。在ENG制作方式中,一般在使用便携式摄录机时用肩扛等方式,需要时再加上一名记者就可以构成一个流动新闻采访组,可以方便灵活地深入街头巷尾、村庄山区进行实地拍摄采访。ENG方式由于非常机动灵活,也被其他节目采集素材时大量采用。因此,ENG制作方式也是一种基本的电视节目制作方式。

TestNG中的BeforeTest和BeforeMethod有啥区别

【中文标题】TestNG中的BeforeTest和BeforeMethod有啥区别【英文标题】:What is the difference between BeforeTest and BeforeMethod in TestNGTestNG中的BeforeTest和BeforeMethod有什么区别 【发布时间】:2018-11-21 12:46:19 【问题描述】:

两个注解都在 testNG 中的 @test 之前运行,那么它们之间的区别是什么。

【问题讨论】:

Difference between BeforeClass and BeforeTest in TestNG的可能重复 【参考方案1】:

检查下面的代码并输出

import org.testng.annotations.BeforeMethod;
import org.testng.annotations.BeforeTest;
import org.testng.annotations.Test;

public class Test_BeforeTestAndBeforeMethod 

    @BeforeTest
    public void beforeTest()
    
        System.out.println("beforeTest");
    

    @BeforeMethod
    public void beforeMethod()
    
        System.out.println("\nbeforeMethod");
    


    @Test
    public void firstTest()
    
        System.out.println("firstTest");
    

    @Test
    public void secondTest()
    
        System.out.println("secondTest");
    

    @Test
    public void thirdTest()
    
        System.out.println("thirdTest");
    

输出:

beforeTest

beforeMethod
firstTest

beforeMethod
secondTest

beforeMethod
thirdTest

【讨论】:

【参考方案2】:

@BeforeTest :它将在Test方法之前调用仅一次

@BeforeMethod它会调用每次测试前方法。

例子:

import org.testng.annotations.AfterClass;
import org.testng.annotations.AfterMethod;
import org.testng.annotations.AfterTest;
import org.testng.annotations.BeforeClass;
import org.testng.annotations.BeforeMethod;
import org.testng.annotations.BeforeTest;
import org.testng.annotations.Test;

public class Test_BeforeTestAndBeforeMethod 

    @BeforeTest
    public void beforeTestDemo()
           
        System.out.println("This is before test calling.");   
    
    
    @BeforeClass
    public void beforeClassDemo()
    
        System.out.println("This is before class calling.");
    

    @BeforeMethod
    public void beforeMethodDemo()
    
        System.out.println("This is before method calling.");
    
    
    @Test
    public void testADemo()
    
        System.out.println("This is Test1 calling.");
    

    @Test
    public void testBDemo()
    
        System.out.println("This is Test2 calling.");
    

    @Test
    public void testCDemo()
    
        System.out.println("This is Test3 calling.");
    
    
    @AfterMethod
    public void afterMethodDemo()
    
        System.out.println("This is after method calling.");
    
    
    @AfterClass
    public void afterClassDemo()
    
        System.out.println("This is after class calling.");
    
    
    @AfterTest
    public void afterTestDemo()
    
        System.out.println("This is after test calling.");
    

【讨论】:

testCDemo, This is Test2 calling -> This is Test3 calling. @IshitaShah - 我所有的测试方法都会实例化一个变量并使用它。我应该将变量转换为类成员并在 "@BeforeMethod" 中实例化它吗?还有其他方法吗?【参考方案3】:

@BeforeTest : 对任何测试方法只调用一次,不管有多少个方法用@Test注解,都只调用一次

@BeforeMethod 它会在每个带有@Test 注释的方法之前被调用,如果你有10 个@Test 方法,它将被调用10 次

想知道BeforeClassBeforeTest有什么区别,请参考答案https://***.com/a/57052272/1973933

【讨论】:

然后看看@BeforeClass,即使它只会调用一次。【参考方案4】:

我知道这个问题已经有好几个很好的答案了,我只是想在它们的基础上构建以直观地将注释与 testng.xml 中的 xml 元素联系起来,并包括之前/之后的套件。 我尽量让它对新手友好,我希望它有所帮助。 我的 java 示例基本上只是 Ishita Shah 代码的重新格式化版本。


BeforeAfterAnnotations.java(假设此文件位于名为“test”的包中)

package test;




import org.testng.annotations.AfterClass;
import org.testng.annotations.AfterMethod;
import org.testng.annotations.AfterSuite;
import org.testng.annotations.AfterTest;
import org.testng.annotations.BeforeClass;
import org.testng.annotations.BeforeMethod;
import org.testng.annotations.BeforeSuite;
import org.testng.annotations.BeforeTest;
import org.testng.annotations.Test;



public class BeforeAfterAnnotations

    @BeforeSuite
    public void beforeSuiteDemo()
    
        System.out.println("\nThis is before a <suite> start tag.");
    


    @BeforeTest
    public void beforeTestDemo()
    
        System.out.println("\tThis is before a <test> start tag.");
    


    @BeforeClass
    public void beforeClassDemo()
    
        System.out.println("\t\tThis is before a <class> start tag.\n");
    


    @BeforeMethod
    public void beforeMethodDemo()
    
        System.out.println("\t\t\tThis is before a method that is annotated by @Test.");
    


    @Test
    public void testADemo()
    
        System.out.println("\t\t\t\tThis is the testADemo() method.");
    


    @Test
    public void testBDemo()
    
        System.out.println("\t\t\t\tThis is the testBDemo() method.");
    


    @Test
    public void testCDemo()
    
        System.out.println("\t\t\t\tThis is the testCDemo() method.");
    


    @AfterMethod
    public void afterMethodDemo()
    
        System.out.println("\t\t\tThis is after a method that is annotated by @Test.\n");
    


    @AfterClass
    public void afterClassDemo()
    
        System.out.println("\t\tThis is after a </class> end tag.");
    


    @AfterTest
    public void afterTestDemo()
    
        System.out.println("\tThis is after a </test> end tag.");
    


    @AfterSuite
    public void afterSuiteDemo()
    
        System.out.println("This is after a </suite> end tag.");
    



testng.xml(testng.xml --> 运行方式 --> TestNG Suite)

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE suite SYSTEM "http://testng.org/testng-1.0.dtd">

<suite name="Before/After Annotations Suite">
    <test name="Before/After Annotations Test">
        <classes>
            <class name="test.BeforeAfterAnnotations" />
        </classes>
    </test>
</suite> 


输出到控制台

[RemoteTestNG] detected TestNG version 7.0.0

This is before a <suite> start tag.
    This is before a <test> start tag.
        This is before a <class> start tag.

            This is before a method that is annotated by @Test.
                This is the testADemo() method.
            This is after a method that is annotated by @Test.

            This is before a method that is annotated by @Test.
                This is the testBDemo() method.
            This is after a method that is annotated by @Test.

            This is before a method that is annotated by @Test.
                This is the testCDemo() method.
            This is after a method that is annotated by @Test.

        This is after a </class> end tag.
    This is after a </test> end tag.
This is after a </suite> end tag.

===============================================
Before/After Annotations Suite
Total tests run: 3, Passes: 3, Failures: 0, Skips: 0
===============================================

【讨论】:

【参考方案5】:

在TestNG中

@BeforeMethod - BeforeMethod 在每个测试方法之前执行。所有使用@Test 注解的方法。 @BeforeMethod 适用于 Java 类中定义的测试。

@BeforeTest - BeforeTest 仅在 testng.xml 文件中给出的标记之前执行。 @BeforeTest 适用于 testng.xml 中定义的测试

参考:-https://examples.javacodegeeks.com/enterprise-java/testng/testng-beforetest-example/ 和http://howtesting.blogspot.com/2012/12/difference-between-beforetest-and.html

【讨论】:

【参考方案6】:

@BeforeTest- 在 testng.xml 中声明的每个测试之前运行

@BeforeMethod- 在类中声明的每个测试方法之前和@Test 注释下运行

【讨论】:

【参考方案7】:

@BeforeTest 在运行集成测试时在注入任何 bean 之前执行。与 @BeforeMethod 形成对比,后者在 bean 注入后执行。不知道为什么会这样设计。

【讨论】:

【参考方案8】:

@BeforeTest 只会在任何测试方法之前执行一次。方法将在执行任何 @Test 注释测试方法之前运行,该方法是 testNG.xml 文件中 &lt;test&gt; 标记的一部分。 @BeforeMethod 将在每个使用 @Test 注释的方法之前执行。

【讨论】:

【参考方案9】:

@BeforeTest 在 testng.xml 文件的 标记中包含的任何测试方法之前执行设置方法。 @BeforeMethod 在注释为@Test 的任何测试方法之前执行设置方法。

【讨论】:

以上是关于摄像机中的 PROD 和 ENG 有啥区别?的主要内容,如果未能解决你的问题,请参考以下文章

CPU的GPU和摄像头的ISP有啥不同

如果网络摄像头/摄像头仍然打开会有啥后果[关闭]

这个网络摄像头人脸检测有啥问题?

海康威视 录像机登录账号有啥功能

webrtc在安卓5.0以上取不到摄像头权限,有啥解决办法

sdi摄像机和ipc区别