标签: capture

枚举捕获 ALSA 设备并从中捕获

我正在编写一个 C 程序,我想枚举系统中的所有捕获设备(实际上,我知道我有三个网络摄像头和“集成”麦克风),识别它们并同时开始从它们全部捕获。

我使用 snd_device_name_hint() 枚举所有 PCM 设备,然后使用 snd_device_name_get_hint() 确定“IOID”以查看它们是否支持捕获取得了一些成功。但是现在,我如何使用 snd_pcm_open() 打开相关设备以便我可以捕获?我想使用“hw”接口,因为我不想用很多转换率使系统过载,所以我也想看看是否有一种方法可以报告硬件支持的采样频率。

谢谢!

c linux audio alsa capture

2
推荐指数
1
解决办法
1300
查看次数

iOS Swift 相机模式 - 如何指示照片已拍摄

在相机模式(AVCaptureVideoPreviewLayer)下,我成功捕获了照片。我想向用户表明这一事实 - 意思是向他展示突然的黑色闪光和咔哒声 - 类似于他自己拍照时的体验。

我怎么做?是否有一些内置功能可以做到这一点?

谢谢

camera photo capture ios swift

2
推荐指数
1
解决办法
2679
查看次数

实时缓冲区太满 (FFMPEG)

所以我一直在用 ffmpeg 遇到这个问题,这是一个让硬件和命令真正做我想做的事情的旅程,但我仍然有一个问题。

有时,当我录制时,我只是开始疯狂丢帧,这可能是在录制一个小时甚至十个小时之后......一切都会正常工作,然后突然间我会因为“实时性”而开始丢帧缓冲区太满或接近太满”。无论我将比特率设置为多低,都会发生这种情况,并且缓冲区大小在允许的范围内很高,最终我将开始丢帧。几乎看起来像是一个省电功能正在启动,但它似乎太不一致了。就像我说的,有时我可以走 10 个小时而没有这个问题。

有任何想法吗?

这是我的代码块:

ffmpeg -guess_layout_max 0 -y -f dshow -video_size 3440x1440 -rtbufsize 2147.48M -pixel_format nv12 -framerate 200 ^
-i video="Video (00 Pro Capture HDMI 4K+)":audio="SPDIF/ADAT (1+2) (RME Fireface UC)" -map 0:0,0:1 -map 0:1 ^
-preset: llhp -codec:v h264_nvenc -pix_fmt nv12 -b:v 250M -maxrate:v 250M -minrate:v 250M -bufsize:v 250M -b:a 320k ^
-ac 2 -r 100 -async 1 -vsync 1 -segment_time 600 -segment_wrap 9 -f segment C:\Users\djcim\Videos\PC\PC%02d.mp4 ^
-guess_layout_max 0 -f dshow -rtbufsize 2000M -i audio="Analog …
Run Code Online (Sandbox Code Playgroud)

buffer ffmpeg capture

2
推荐指数
1
解决办法
4826
查看次数

为什么捕获 lambda 在 C++ 中不起作用?

我正在使用 C++ 中的 lambda 表达式,我尝试了一些方法来查看结果。我实际上在 CppCon Back to Basics: Lambdas from Scratch - Arthur O'Dwyer - CppCon 2019 @21:47 中观看了视频并开始使用 lambdas。

举个例子,我试过这个:

#include <iostream>
using namespace std;
int g = 10;//global var 'g'

//creating lambda
auto kitten = [=] () {return g+1;};
auto cat = [g=g] () {return g+1;};
// main
int main()
{
    g = 20;//modifying global variable 'g'
    cout<<"kitten: "<<kitten()<<"cat: "<<cat()<<endl;

    return 0;
}
Run Code Online (Sandbox Code Playgroud)

上面代码的输出是:

kitten: 21cat: 11
Run Code Online (Sandbox Code Playgroud)

在上面的例子中:[g=g]表示捕获一个名称g和类型与外部相同的数据成员g,就像我写的一样auto g=g。这是一个副本 …

c++ lambda std capture c++11

2
推荐指数
2
解决办法
141
查看次数

C++11/14/17 Lambda 引用捕获 [&amp;] 不复制 [*this]

请参阅此线程:https://www.open-std.org/jtc1/sc22/wg21/docs/papers/2018/p0806r2.html

它说:

换句话说,一个默认捕获 ([&]) 以拼写出冗余的方式捕获 *this,但另一个捕获 ([=]) 以非冗余方式捕获它。

这表示在 c++17 之前,[=] 捕获this为值,而 [&] 将捕获 [*this],这是不明确的。所以我进行了一个快速测试,看看 [&] 是否默认捕获 [*this]。

我的测试代码尝试查看 [&] 默认捕获 *this,然后应该调用复制构造函数,并且对其值的任何更改都不会影响原始对象,因为它是副本。

#include<iostream>
using namespace std;
class M{
    int mI;
public:
    M() : mI(3) { cout << "ctor\n"; }
    ~M() { cout << "dtor\n"; }
    M(const M& m) {
        if (this != &m) {
            cout << "copy ctor\n";
            mI = m.mI;
        }
    }
    M& operator=(const M& m) {
        if (this != &m) {
            cout << "operator =\n"; …
Run Code Online (Sandbox Code Playgroud)

c++ lambda copy this capture

2
推荐指数
1
解决办法
557
查看次数

Ruby:执行bash命令,同时捕获输出和转储到屏幕

所以我的问题是我需要将运行命令的输出转储到屏幕上,并将其捕获到ruby脚本中的变量中.我知道我可以像这样做第二部分:

some_variable = `./some_kickbutt`
Run Code Online (Sandbox Code Playgroud)

但我的问题是我需要它仍然打印到控制台,因为Hudson捕获输出并记录它为后人的缘故.

提前感谢任何想法......

ruby bash capture

1
推荐指数
1
解决办法
923
查看次数

如何从循环中捕获每个值并将其分配给数组?[红宝石]

我正在尝试从Fibonacci方法中捕获值并将其连接到数组.但是,不是将循环中的每个值赋给数组,而是仅返回最后一个值.有没有办法解决?谢谢.


def fib_up_to(max)
    i1, i2 = 1, 1
    while i1 <= max
        yield i1
        i1, i2 = i2, i1+i2
    end
end

def capture_arr(val) $a = [] $a << val end

fib_up_to(1000) do |f| capture_arr(f) end

p $a # => [987]

ruby arrays loops capture fibonacci

1
推荐指数
1
解决办法
274
查看次数

在 Windows 上使用 Python 从网络摄像头捕获图像

我现在使用的代码是:-

from VideoCapture import Device
cam = Device()
cam.saveSnapshot('image.jpg')
Run Code Online (Sandbox Code Playgroud)

使用 py 2.7 和导入的 pygame 以及 all 和 videocapture 我在 pycharm 中收到此错误:-

C:\Python27\python.exe F:/Xtraz/Orion/Key-Logger.py
Traceback (most recent call last):
  File "F:/Xtraz/Orion/Key-Logger.py", line 3, in <module>
    cam.saveSnapshot('image.jpg')
  File "C:\Python27\lib\VideoCapture.py", line 200, in saveSnapshot
    self.getImage(timestamp, boldfont, textpos).save(filename, **keywords)
  File "C:\Python27\lib\VideoCapture.py", line 138, in getImage
    im = Image.fromstring('RGB', (width, height), buffer, 'raw', 'BGR', 0, -1)
  File "C:\Users\admin\AppData\Roaming\Python\Python27\site-packages\PIL\Image.py", line 2080, in fromstring
    "Please call frombytes() instead.")
NotImplementedError: fromstring() has been removed. Please call frombytes() instead. …
Run Code Online (Sandbox Code Playgroud)

python webcam image save capture

1
推荐指数
1
解决办法
3594
查看次数

在 Linux 虚拟机上安装 MailHog 以捕获外发电子邮件

我想通过在我的虚拟机中的 centos linux 开发环境上安装 MailHog 来简化开发。phpmail()函数没有报告任何问题(即,它返回 TRUE)但外发邮件没有出现在 MailHog 中。我应该如何正确设置?

email config centos capture

1
推荐指数
1
解决办法
3573
查看次数

在menifest中声明Layout_Params.flag_secure

可以通过此代码防止Android应用程序屏幕截图

@Override
protected void onCreate(@Nullable Bundle savedInstanceState) {
    getWindow().setFlags(WindowManager.LayoutParams.FLAG_SECURE, WindowManager.LayoutParams.FLAG_SECURE);
    super.onCreate(savedInstanceState);

}
Run Code Online (Sandbox Code Playgroud)

但是在每个屏幕上都编写这段代码很麻烦。有什么方法可以在清单应用程序或任何地方声明它。

android screenshot video-capture capture android-screen

1
推荐指数
1
解决办法
2470
查看次数

标签 统计

capture ×10

c++ ×2

lambda ×2

ruby ×2

alsa ×1

android ×1

android-screen ×1

arrays ×1

audio ×1

bash ×1

buffer ×1

c ×1

c++11 ×1

camera ×1

centos ×1

config ×1

copy ×1

email ×1

ffmpeg ×1

fibonacci ×1

image ×1

ios ×1

linux ×1

loops ×1

photo ×1

python ×1

save ×1

screenshot ×1

std ×1

swift ×1

this ×1

video-capture ×1

webcam ×1