首页
学习
活动
专区
圈层
工具
发布
    • 综合排序
    • 最热优先
    • 最新优先
    时间不限
  • 来自专栏AI那点小事

    利用python实现语音文件的特征提取

    = wav_file.getnchannels() # 声道数 samplewidth = wav_file.getsampwidth() # 量化位数 framerate ", framerate) print("numframes", numframes) Wav_Data = wav_file.readframes(numframes) Wav_Data (dict) ---- 绘制声波折线图与频谱图 代码如下: from matplotlib import pyplot as plt def DrawSpectrum(wav_data,framerate framerate: 采样频率 """ Time = np.linspace(0,len(wav_data)/framerate*1.0,num=len(wav_data)) = int(wav['framerate']) DrawSpectrum(wav_data,framerate) if __name__ == '__main__': run_main

    2.1K10发布于 2020-04-20
  • 来自专栏音视频技术

    为什么OpenCV计算的帧率是错误的?

    计算 framerate的逻辑会在如何计算framerate部分介绍。   根据 如何计算framerate可知,此处framerate = {1000, 1}。 ->framerate 之间没有任何关系,而是和 st->internal->avctx->framerate 有关。 码流而言,time_base = 1 / (2 * framerate),而不是1 / framerate。 而AVStream.avctx.time_base取自AVStream.internal.avctx,AVStream.avctx.framerate 则取自 AVStream.framerate

    1.6K10编辑于 2022-06-27
  • 来自专栏构建FFmpeg Android播放器

    JNI回调Java

    = env->FindClass("com/iview/camera/module/Data/FrameRate");//获得Student类引用 jmethodID frameRate_costruct = env->GetMethodID(frameRate_cls , "<init>", "(II)V"); for (FrameRate frameRate : frame.frameRate) { //创建自定义类,后面两个参数为构造函数的方法 jobject frameRate_obj = env->NewObject(frameRate_cls, frameRate_costruct , frameRate.numerator, frameRate.denominator); //调用ArrayList的add方法将 frameRate_obj 添加到ArrayList 中 env->CallBooleanMethod(listFrameRate_obj , list_add , frameRate_obj); } jfieldID java类属性的id

    2.4K10发布于 2020-07-23
  • 来自专栏Linux嵌入式

    ​​瑞芯微RK3576多路AHD摄像头实测演示,触觉智能配套AHD硬件方案

    video/x-raw, format=NV12, width=1280, height=720, framerate=30/1 ! videoconvert ! video/x-raw, format=NV12, width=1280, height=720, framerate=30/1 ! videoconvert ! video/x-raw, format=NV12, width=1280, height=720, framerate=30/1 ! videoconvert ! video/x-raw, format=NV12, width=1280, height=720, framerate=30/1 ! videoconvert ! video/x-raw, format=NV12, width=1280, height=720, framerate=30/1 ! videoconvert !

    86010编辑于 2025-09-18
  • 来自专栏全栈测试技术

    使用大恒USB工业相机PythonSDK进行逐帧率图片采集

    def main(): Width_set = 640 # 设置分辨率宽 Height_set = 480 # 设置分辨率高 framerate_set = 80 # 设置帧率 ) print("**********************************************************") print("用户设置的帧率为:%d fps"%framerate_set ) framerate_get = cam.CurrentAcquisitionFrameRate.get() #获取当前采集的帧率 print("当前采集的帧率为:%d fps"%framerate_get str(i) + str("-") + mtime + ".jpg") # 保存图片到本地 print("Frame ID: %d Height: %d Width: %d framerate_set (), framerate_set, framerate_get)) # 打印采集的图像的高度、宽度、帧ID、用户设置的帧率、当前采集到的帧率 #停止采集 print(""

    2.3K30编辑于 2023-01-18
  • 来自专栏python3

    Python--生成Wav格式文件

    plt import sys sys.setrecursionlimit(1000000) #define the params of wave channels = 1 sampwidth = 2 framerate define the time of wave time = 1 def Generate_Wav(): #generate the time bar t = np.arange(0,time,1.0/framerate file_name,"wb") #set wav params f.setnchannels(channels) f.setsampwidth(sampwidth) f.setframerate(framerate infomation,and return a tuple params = f.getparams() #get the info nchannels, sampwidth, framerate wave_data = np.fromstring(str_data, dtype = np.short) time = np.arange(0, nframes) * (1.0/framerate

    3.1K20发布于 2020-01-08
  • 来自专栏气象杂货铺

    Python绘制时间演变图工具汇总(附代码)

    def write_movie(filepattern, videoname, overwrite=False, gif=False, keepfile=True, framerate=3): 如果生成的mp4或gif文件存在是否覆盖 :param gif(bool): 是否转换mp4为gif :param keepfile(bool): 是否保留原图片 :param framerate -00-maybe-incorrect-pa # ffmpeg -y -framerate 4 -pattern_type glob -i "ci_*.jpg" -c:v libx264 -pix_fmt else: pid = os.system(f"ffmpeg -y -framerate {framerate} -pattern_type glob -i '{filepattern {framerate} -pattern_type glob -i '{filepattern}' \ -vcodec mpeg4 -r 25 -b

    1.6K20编辑于 2022-09-23
  • 来自专栏Python编程 pyqt matplotlib

    wav 声音文件快速傅里叶变换

    "rb") as f: parameters = f.getparams() self.nchannels, self.sampwidth, self.framerate , self.nframes = parameters[:4] self.time_len = self.nframes*1.0 / self.framerate #声音时长 print("量化位数[byte]: ", self.sampwidth)#量化位数:一次采样所采集的数据的字节数 print("采样频率[Hz]: ", self.framerate matplotlib.rcParams["axes.unicode_minus"] = False self.time = np.arange(0, self.nframes) * (1.0 / self.framerate ) self.freq = np.arange(0,self.nframes//2) * self.framerate / self.nframes #实际频率 for

    3.6K40发布于 2019-08-14
  • 来自专栏深度应用

    [深度学习工具]·python音频常用的操作

    , nframes = params[:4]   其中最后一行为常用的音频参数: nchannels:声道数 sampwidth:量化位数(byte) framerate:采样频率 nframes:采样点数 f = wave.open(filepath+filename[1],'rb') params = f.getparams() nchannels, sampwidth, framerate f = wave.open(filepath+filename[0],'rb') params = f.getparams() nchannels, sampwidth, framerate 7 8 9 nchannels = 1 #单通道为例 sampwidth = 2 fs = 8000 data_size = len(outData) framerate comptype = "NONE" compname = "not compressed" outwave.setparams((nchannels, sampwidth, framerate

    2.8K50发布于 2019-06-27
  • 来自专栏学海无涯

    17.Swift学习之类

    } 举例 class VideoMode { var resolution = Resolution() var interlaced = false var frameRate interlaced为 false frameRate为 0.0 name属性会自动被赋予一个空值 nil ,因为它是一个可选型 类的实例 需要借助构造函数,结构体一样,在名称后面加一个() let VideoMode() tenEighty.resolution = hd tenEighty.interlaced = true tenEighty.name = "1080i" tenEighty.frameRate = 25.0 //定义一个常量等于上面的类的对象 let alsoTenEighty = tenEighty alsoTenEighty.frameRate = 30.0 //同时改变 print ("The frameRate property of tenEighty is now \(tenEighty.frameRate)") 特征运算符 因为类是引用类型,可能有很多常量和变量都是引用到了同一个类的实例

    73530发布于 2018-11-07
  • 来自专栏计算机视觉CV

    音频知识(四)--格式转换

    pcmdata = pcmfile.read() with wave.open(save_path, 'wb') as wavfile: #nchannels, sampwidth, framerate save_path): wf = wave.open(wav_path, 'rb') params = wf.getparams() nchannels, sampwidth, framerate , nframes = params:4 print("conv_wav2wav",nchannels, sampwidth, framerate, nframes) data = wf.readframes nchannels > 1: data = np.reshape(data, -1, nchannels) data = np.max(data, axis=1) if framerate =_sample_rate: data = resampy.resample(data, framerate, _sample_rate) print("resample",framerate

    4.1K30发布于 2021-07-05
  • 来自专栏CSharp编程大全

    Emgucv视频操作--进阶1

    private Mat _smallGrayFrame; private Mat _smoothedGrayFrame; private Mat _cannyFrame; private double FrameRate capture.SetCaptureProperty(Emgu.CV.CvEnum.CapProp.FrameWidth, 128);//FrameWidth=3视频流的帧宽度(只对摄像头有效) // FrameRate (Emgu.CV.CvEnum.CapProp.Fps);//帧率 // MessageBox.Show(FrameRate.ToString()); cam = 0; = null) { System.Threading.Thread.Sleep((int)(1000.0 / FrameRate = null) { System.Threading.Thread.Sleep((int)(1000.0 / FrameRate

    1.7K20发布于 2020-08-19
  • 来自专栏曦 月

    用Python验证人耳能分辨的拍频上限

    import wave import numpy as np import scipy.signal as signal framerate = 44100 time = 20 t = np.arange (0, time, 1.0/framerate) a = int(input()) b = int(input()) l = [0]*framerate*time for i in range(framerate np.short) f = wave.open(str(a)+" "+str(b)+".wav", "wb") f.setnchannels(1) f.setsampwidth(2) f.setframerate(framerate

    58030发布于 2021-11-26
  • 来自专栏日常技术分享

    Swift 类和结构体

    相反的,请使用lowerCamelCase这种方式为属性和方法命名(如framerate和incrementCount),以便和类型名区分。 新VideoMode实例同时还会初始化其它三个属性,它们分别是,初始值为false的interlaced,初始值为0.0的frameRate,以及值为可选String的name。 下面,通过查看tenEighty的frameRate属性,我们会发现它正确的显示了所引用的VideoMode实例的新帧率,其值为30.0: print("The frameRate property of tenEighty is now \(tenEighty.frameRate)") // 打印 "The frameRate property of theEighty is now 30.0" 需要注意的是 然而你依然可以改变tenEighty.frameRate和alsoTenEighty.frameRate,因为tenEighty和alsoTenEighty这两个常量的值并未改变。

    1.5K40发布于 2020-07-22
  • 来自专栏linux百科小宇宙

    Linux下搭建Swift语言开发学习环境

    var frameRate = 0.0 9. var name: String? 10. funcdescription() 11. print("name:\(name) frameRate:\(frameRate)") 13. } 14. } 15> let mode = VideoMode funcdescription(){ print("name:\(name) frameRate:\(frameRate)") } } let mode = VideoMode() mode.name = "1080p HD" mode.frameRate = 30.0 mode.description /test name:Optional("1080p HD") frameRate:30.0 而且执行ldd .

    1.9K00发布于 2021-06-06
  • 来自专栏Android干货园

    Android源码解析--Material Design之水波纹点击效果RippleEffect使用

    durationEmpty = rippleDuration - timer * frameRate;                   timerEmpty++;   //创建圆的bitmap final Bitmap tmpBitmap = getCircleBitmap((int) ((radiusMax) * (((float) timerEmpty * frameRate) /             paint.setColor(rippleColor);   if (rippleType == 1) {   if ((((float) timer * frameRate                        paint.setAlpha((int) (rippleAlpha - ((rippleAlpha) * (((float) timerEmpty * frameRate }   else                 paint.setAlpha((int) (rippleAlpha - ((rippleAlpha) * (((float) timer * frameRate

    2.2K20发布于 2018-09-06
  • 来自专栏TSINGSEE青犀视频

    国标GB28181协议平台EasyGBS视频推流组件EasyGBD如何提高推流帧率?

    对此我们有两种解决方案,可以从硬编码和软编码入手: 1、提高硬编码帧率,需要改frameRate和millisPerFrame的值,设置成30: final int millisPerFrame = 1000 / 30; private void startMediaCodec() { int frameRate = 30;…} 2、提高软编码帧率,也需要改frameRate和millisPerFrame

    1.7K20发布于 2021-01-29
  • 来自专栏NFT链游的应用

    薄饼项目pancake工具小助手系统开发代码

    安装:pip install wave在wav 模块中 ,主要介绍一种方法:getparams(),该方法返回的结果如下:1_wave_params(nchannels=1, sampwidth=2, framerate nframes=171698592, comptype='NONE', compname='not compressed')参数解释:nchannels:声道数sampwidth:量化位数(byte)framerate frames):", frames)print("帧数(Duration):", Duration)输出结果:音频头参数: _wave_params(nchannels=1, sampwidth=2, framerate

    52920编辑于 2022-06-16
  • 来自专栏pandacode_cn

    Swift基础 结构和类

    将属性和方法命名为“lowerCamelCase”(例如“frameRate”和“incrementCount”),以区别于类型名称。 实际上,它们只是同一单个实例的两个不同名称,如下图所示: 检查tenEighty的frameRate属性表明,它从底层VideoMode实例正确报告了30.0的新帧速率: print("The frameRate property of tenEighty is now \(tenEighty.frameRate)") // Prints "The frameRate property of tenEighty 但是,您仍然可以更改tenEighty.frameRate和alsoTenEighty.frameRate,因为tenEighty和alsoTenEighty常量本身的值实际上没有变化。 更改的是底层VideoMode的frameRate属性,而不是对该VideoMode的常量引用的值。 身份运算符 由于类是引用类型,因此多个常量和变量可以在幕后引用类的同一单个实例。

    49800编辑于 2023-07-17
  • 来自专栏EasyNVR

    视频流媒体推流平台EasyRTMP-Android如何修改默认的编码帧率?

    本文分硬编码和软编码跟大家一起讨论一下: 1、提高硬编码帧率 需要改frameRate和millisPerFrame的值,设置成30,修改如下: final int millisPerFrame = 1000 / 30; private void startMediaCodec() { int frameRate = 30; … } 2、提高软编码帧率 需要改frameRate和millisPerFrame

    99860发布于 2020-07-06
领券