自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(85)
  • 资源 (2)
  • 收藏
  • 关注

原创 小程序:matlab解微分方程

function f = ball_trajectory(t, y);g = 9.81;pi = 3.14159265;air_density = 1.20;M = 57.5 * 0.001;D = 64.0 * 0.001;R = D * 0.5;A = pi * R * R;Cd = 0.507;ratio_Cl_to_S = 0.5

2017-07-13 17:17:28 1825

原创 matlab小程序:求矩阵的行列式

function d = det_nXn(M)[m, n] = size(M);if(m ~= n)fprintf('Error.\nMatrix must be square.\n\n');return;endd = 0;if (2 == n)%d = det_2X2(M);d = M(1,1) * M(2,2) - M(1,2

2017-07-13 15:09:18 2588

原创 最小二乘法拟合曲线:二次函数

void myLMS_poly2(const std::vector src_x, const std::vector src_y, int size, std::vector& dst_y){double a, b, c;//Mat A = Mat_(3, 3);//Mat B = Mat_(3, 1);//Mat C = Mat_(3, 1);Mat A

2017-07-11 09:35:09 6891

原创 最小二乘法拟合曲线:4次函数

void myLMS_poly4(const std::vector<double> src_x, const std::vector<double> src_y, int size, std::vector<double>& dst_y){double a, b, c, d, e;//Mat A = Mat_<double>(5, 5);//Mat B = Mat_<double>(5, 1);//Mat C = Mat_<double>(5, 1);Mat A(5, 5, CV_64

2017-07-08 17:24:41 3483

原创 笔记:回调函数使用

//void fun(..., ctx__){A* p = (A*)ctx__;.......}//class B{setcallback(callback cb_, callbackctx ctx_);start();callback cb;callbackctx ctx;}B::setcallback(callba

2017-05-31 11:47:02 310

原创 笔记:使用 opencv 获取两幅图片的相位偏移

double cameraMoved(cv::Mat prev, cv::Mat curr){assert(1 == prev.channels() && 1 == curr.channels());cv::Mat curr64f, prev64f, hann;createHanningWindow(hann, prev.size(), CV_64F);prev.con

2017-05-17 18:54:20 5183

原创 笔记:ffmpeg中的音频相关知识点

仅供参考!!1、音频数据采样格式中,带P的为planer audio,不带P的是packet audio2、planer audio数据,frame.data[0] 是第一个声道数据的存放地址,frame.data[1] 是第二个声道的存放地址,以此类推;packet audio数据,只有frame.data[0] 有效。

2017-04-28 16:18:58 306

原创 ffmpeg函数封装

static int open_input_file_and_get_contexts(const char* input_file_name,           AVFormatContext** input_format_context,           AVCodecContext** input_video_codec_context,           AVCodec

2017-04-26 14:34:50 342

原创 opencv实现yuv420与bgr24互转,待验证

void bgr2yuv(  ){cv::Mat bgrImg(bgrH, bgrW, CV_8UC3, bgrBuffer);cv::Mat yuvImg(yuvH * 3 / 2, yuvW, CV_8UC1, yuvBuffer);cv::cvtColor(bgrImg, yuvImg, CV_BGR2YUV_I420);}void yuv2bgr(  )

2017-04-25 18:39:54 3073

原创 封装了几个小函数,备用

static int image_scale(unsigned char* src, int src_width, int src_height, int src_format, unsigned char* dst, int dst_width, int dst_height, int dst_format){AVFrame src_frame = { 0 }, dst_frame =

2017-04-25 17:34:26 231

原创 ffmpeg笔记:音频数据和视频数据的处理

一、处理一帧原始视频数据需要知道哪些信息?width、height、format(rgb 或 yuv)二、处理一帧音频数据需要知道哪些信息?sample rate、sample format、channel layout一般来说,只要知道上述信息,就能调用FFmpeg的相关接口对音频或视频原始数据进行格式转换、编码等操作。如果是处理视频流或音频流(或者说

2017-04-20 20:03:35 457

原创 QT多线程选项

QT多线程选项:1、QThread subclassingMyThread::MyThread(){// In creating thread}MyThread::~MyThread(){// In creating thread}MyThread::run(){// In creating thread// Do

2017-04-15 23:13:49 285

原创 MFC笔记:实现左键拖拽

一、if (msg->message == WM_LBUTTONDOWN){m_bIsDragging = true;}if (msg->message == WM_LBUTTONUP){m_bIsDragging = false;}if(msg->message == WM_MOUSEMOVE){if(m_bIsDragging){// .

2017-04-14 13:09:14 1553

原创 QT小程序:QtConcurrent

#include #include #include #include #include QString addString(QString str1, QString str2){    return str1 + str2;}int main(int argc, char *argv[]){    QCoreApplication a

2017-04-10 13:30:30 369

原创 QT小程序:QString

#include #include #include using namespace std;int main(int argc, char *argv[]){    QCoreApplication a(argc, argv);    int x = 6;    double y = 3.14159;    char z = '$';

2017-04-05 22:53:50 425

原创 笔记:ffmpeg使用实例:rgb + pcm --> flv(音频编码+视频编码+muxer)

郑重声明:以下代码是为了便于查找而做的笔记,并不完善,仅供参考。请知晓!#include "stdafx.h"extern "C"{#include "libavcodec/avcodec.h"#include "libavformat/avformat.h"#include "libswscale/swscale.h"#include "libswre

2017-03-29 13:22:57 1263

原创 笔记:ffmpeg使用实例:yuv->h264,pcm->aac

说明:程序有待完善,代码仅供参考。#include "stdafx.h"extern "C"{#include "libavcodec/avcodec.h"#include "libavformat/avformat.h"#include "libswscale/swscale.h"#include "libswresample/swresample.h

2017-03-27 12:50:06 451

原创 笔记:ffmpeg使用实例:bgr->yuv->h264,pcm->aac,没有音频重采样

说明:程序不够完善,代码仅供参考#include "stdafx.h"extern "C"{#include "libavcodec/avcodec.h"#include "libavformat/avformat.h"#include "libswscale/swscale.h"#include "libswresample/swresample.h"

2017-03-27 12:23:49 680

原创 笔记:ffmpeg使用实例(bgr->yuv->h264, pcm->aac,加入音频重采样)

郑重声明:程序不完善,代码仅供参考。#include "stdafx.h"extern "C"{#include "libavcodec/avcodec.h"#include "libavformat/avformat.h"#include "libswscale/swscale.h"#include "libswresample/swresample.

2017-03-27 12:07:57 693

原创 QT小程序:QFile

#include #include #include #include #include void WriteFile(QString fileName){    QFile file(fileName);    if(!file.open(QFile::WriteOnly | QFile::Text))    {        qDebug

2017-03-25 00:09:44 280

原创 QT小程序:QDir

#include #include #include #include #include int main(int argc, char *argv[]){    QApplication a(argc, argv);    QDir dir(".");    qDebug()     QDir dir2("/home/zxw");

2017-03-25 00:03:36 242

原创 QT小程序:QSplitter

#include #include #include #include #include #include #include int main(int argc, char *argv[]){    QApplication a(argc, argv);    QSplitter* splitter = new QSplitter;

2017-03-25 00:00:11 242

原创 QT小程序:QGridLayout

#include #include #include #include #include #include int main(int argc, char *argv[]){    QApplication a(argc, argv);    QWidget* widget = new QWidget();    widget->setWin

2017-03-24 23:58:12 219

原创 使用FFmpeg进行音频处理的一个小知识点

1、FFmpeg只能对 sample format 为 AV_SAMPLE_FMT_FLTP 的 PCM 音频数据进行编码2、如果编码前的 PCM 音频数据的 sample format 不是AV_SAMPLE_FMT_FLTP,需要先通过重采样获取 AV_SAMPLE_FMT_FLTP 格式的 PCM 数据,再调用 FFmpeg 的相关接口进行编码3、使用 FFmpeg 处理音频的大

2017-03-24 12:59:07 620

原创 笔记:QT小程序

#include #include int main(int argc, char* argv[]){    QApplication a(argc, argv);    //QLabel* label = new QLabel("hello world");    QLabel* label = new QLabel("hello world");   

2017-03-23 21:38:22 372

转载 x264 参数详解(转载)

http://www.360doc.com/content/17/0323/11/41368943_639413289.shtmlx264 参数详解【很强大、很细致,不再为不懂啥意思很烦恼】2017-03-23  奇缘履  转自 pgj555修改微信分享:【 翻译 】x264参数介绍(一、帧类型和码率控制)20

2017-03-23 11:27:11 775

转载 几个资料地址保存

http://blog.sina.com.cn/s/blog_61798d5d01018twa.htmlhttp://blog.csdn.net/chinabinlang/article/details/49885765http://blog.csdn.net/supermanwg/article/details/14521869http://www

2017-03-22 17:17:49 192

原创 笔记:回调函数小程序

#include typedef int(*pMyFun)(int a, int b);static int myAdd(int a, int b){return a + b;}static int mySub(int a, int b){return a - b;}class myTest{public:myTest();~

2017-03-21 21:43:47 1476

原创 QT小程序:显示多边形

QT:显示多边形

2017-03-17 09:47:47 402

原创 笔记:FFMPEG 中的几个不同的 time_base

1、AVCodecContext 中的 time_base2、AVStream 中的 time_base3、AVCodecContext 中的 pkt_timebase具体含义待解。经验之谈:一、第 2 个和第 3 个time_base值相同,与第 1 个 time_base 值不相同。二、应用FFMPEG进行编码、解码过程中,如果要获取正确的PTS,应使用

2017-03-16 18:14:46 1148

原创 笔记:关于 FFMPEG 中时间戳的一点小知识(1)

一、AVRational time_base //时间戳显示的时间单位typedef struct AVRational{    int num; ///    int den; ///} AVRational;举例来说,如果 time_base.num = 1,time_base.den = 90000,则时间戳(PTS、DTS等)是以 1/90000 秒为单位显

2017-03-16 17:22:07 2571

转载 音频帧概念详解

原文地址:http://m.blog.chinaunix.net/uid-26000296-id-3446714.html 说明:原文中计算有误,本文已改正。

2017-03-16 16:03:08 246

原创 QT小程序:利用QGraphicsScene和QGraphicsView进行显示操作

#include #include #include #include #include #include int main(int argc, char *argv[]){    QApplication a(argc, argv);    QGraphicsPixmapItem*  myPix = new QGraphicsPixma

2017-03-15 19:32:25 5918 2

原创 使用printf 打印数据的一个小小疑问,待解!

printf("%d\n", 25.0);printf("%d\n", (int)25.0);printf("%f\n", 25.0);输出:02525.000000后两个可以理解,第一个是为什么?

2017-03-15 09:52:22 543 1

原创 使用 ffmpeg 进行网络推流:拉流->解封装->解码->处理原始数据(音频、视频)->编码->编码->推流

简要说明:1、可拉流:rtmp、rtsp、http2、可推流:#include "stdafx.h"extern "C"{#include "libavcodec/avcodec.h"#include "libavformat/avformat.h"#include "libswscale/swscale.h"#include "li

2017-03-13 20:26:48 7062 1

原创 ffmpeg应用实例:从拉流到推流(改进版)

说明:1、使用 rtmp地址 和 rtsp地址 测试,程序可运行,生成的flv文件可用VLC播放器播放;2、音频和视频有些不同步;3、网络推流不稳定,还有问题待解决;#include "stdafx.h"extern "C"{#include "libavcodec/avcodec.h"#include "libavformat/avformat.h"

2017-03-10 12:58:42 9593

转载 I,P,B帧和PTS,DTS的关系

原文链接:http://www.cnblogs.com/qingquan/archive/2011/07/27/2118967.htmlI,P,B帧和PTS,DTS的关系基本概念:I frame :帧内编码帧 又称intra picture,I 帧通常是每个 GOP(MPEG 所使用的一种视频压缩技术)的第一个帧,经过适度地压缩,做为随机访问的参考点

2017-03-04 22:44:35 240

转载 YUV与RGB的相互转换

原文链接:http://blog.csdn.net/tobacco5648/article/details/27707425YUV到RGB:[cpp] view plain copy int C = Y - 16;  int D = U - 128;  int E = V - 128;  

2017-03-02 17:14:31 368

原创 程序代码:使用ffmpeg从网络拉流

#include "stdafx.h"extern "C"{#include "libavcodec/avcodec.h"#include "libavformat/avformat.h"};#pragma comment(lib, "avcodec.lib")#pragma comment(lib, "avformat.lib")/* 雷霄

2017-02-24 21:52:39 1537

原创 程序代码:将输入流解封装为H264视频流和AAC音频流(使用FFmpeg)

简要说明:1、文件功能:将输入流解封装,分解为H264格式的视频流和AAC格式的音频流,分别保存在文件中;2、音频流(AAC格式)文件可以用VLC播放器播放,视频流(H264)文件可用H264Visa播放(使用VLC播放器不能播放,原因待查);3、此程序由 雷霄骅先生 所写的程序改编而来,在此致以深深的无法用语言表达的谢意。愿逝者安息,生者前行!!4、本人邮箱:zxwphysics

2017-02-24 15:30:16 2120 1

自己使用的封装库

对ffmpeg做了简单封装,待完善。

2017-05-02

myVCDllTest

DLL生成及调用示例。

2017-04-24

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除