资源简介
压缩包里自带avilib.h和avilib.cpp,解压后,配置下Qt环境,可以直接运行,经测试,良心好用
代码片段和文件信息
/*
* avilib.c
*
* Copyright (C) Thomas 謘treich - June 2001
* multiple audio track support Copyright (C) 2002 Thomas 謘treich
*
* Original code:
* Copyright (C) 1999 Rainer Johanni
*
* This file is part of transcode a linux video stream processing tool
*
* transcode is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 2 or (at your option)
* any later version.
*
* transcode is distributed in the hope that it will be useful
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with GNU Make; see the file COPYING. If not write to
* the Free Software Foundation 675 Mass Ave Cambridge MA 02139 USA.
*
*/
//SLM
#ifdef WIN32
#include
#define ftruncate _chsize
#define strncasecmp _strnicmp
typedef int ssize_t;
#endif
#ifdef __CYGWIN__
#include
#endif
#include “avilib.h“
//#include
#define INFO_LIST
/* The following variable indicates the kind of error */
long AVI_errno = 0;
#define MAX_INFO_STRLEN 64
static char id_str[MAX_INFO_STRLEN];
#define frame_RATE_SCALE 1000000
/*******************************************************************
* *
* Utilities for writing an AVI File *
* *
*******************************************************************/
static size_t avi_read(int fd char *buf size_t len)
{
size_t n = 0;
size_t r = 0;
while (r < len) {
n = read (fd buf + r len - r);
if ((ssize_t)n <= 0)
return r;
r += n;
}
return r;
}
static size_t avi_write (int fd char *buf size_t len)
{
size_t n = 0;
size_t r = 0;
while (r < len) {
n = write (fd buf + r len - r);
if ((ssize_t)n < 0)
return n;
r += n;
}
return r;
}
/* HEADERBYTES: The number of bytes to reserve for the header */
#define HEADERBYTES 2048
/* AVI_MAX_LEN: The maximum length of an AVI file we stay a bit below
the 2GB limit (Remember: 2*10^9 is smaller than 2 GB) */
#define AVI_MAX_LEN (UINT_MAX-(1<<20)*16-HEADERBYTES)
#define PAD_EVEN(x) ( ((x)+1) & ~1 )
/* Copy n into dst as a 4 byte little endian number.
Should also work on big endian machines */
static void long2str(unsigned char *dst int n)
{
dst[0] = (n )&0xff;
dst[1] = (n>> 8)&0xff;
dst[2] = (n>>16)&0xff;
dst[3] = (n>>24)&0xff;
}
/* Convert a string of 4 or 2 bytes to a number
also working on big endian machines */
static unsigned long str2ulong(unsigned char *str)
{
return ( str[0] | (str[1]<<8) | (str[2]<<1
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 52966 2006-09-20 23:47 recoder2\recoder2\avilib.cpp
文件 11659 2007-01-06 00:53 recoder2\recoder2\avilib.h
文件 3864 2020-01-07 18:26 recoder2\recoder2\GeneratedFiles\Debug\moc_recoder2.cpp
文件 1402 2020-01-07 18:19 recoder2\recoder2\GeneratedFiles\qrc_recoder2.cpp
文件 3418 2020-01-07 18:19 recoder2\recoder2\GeneratedFiles\ui_recoder2.h
文件 175 2020-01-07 18:15 recoder2\recoder2\main.cpp
文件 1064 2020-01-07 18:26 recoder2\recoder2\recoder2.cpp
文件 590 2020-01-07 18:23 recoder2\recoder2\recoder2.h
文件 68 2020-01-07 18:15 recoder2\recoder2\recoder2.qrc
文件 1769 2020-01-07 18:18 recoder2\recoder2\recoder2.ui
文件 18743 2020-01-07 18:19 recoder2\recoder2\recoder2.vcxproj
文件 2867 2020-01-07 18:19 recoder2\recoder2\recoder2.vcxproj.filters
文件 674 2020-01-07 18:19 recoder2\recoder2\recoder2.vcxproj.user
文件 73321 2020-01-07 18:19 recoder2\recoder2\x64\Debug\avilib.obj
文件 295255 2020-01-07 18:26 recoder2\recoder2\x64\Debug\main.obj
文件 299028 2020-01-07 18:26 recoder2\recoder2\x64\Debug\moc_recoder2.obj
文件 5736 2020-01-07 18:19 recoder2\recoder2\x64\Debug\qrc_recoder2.obj
文件 2358 2020-01-07 18:26 recoder2\recoder2\x64\Debug\recoder2.log
文件 389502 2020-01-07 18:26 recoder2\recoder2\x64\Debug\recoder2.obj
文件 5584 2020-01-07 18:26 recoder2\recoder2\x64\Debug\recoder2.tlog\cl.command.1.tlog
文件 78266 2020-01-07 18:26 recoder2\recoder2\x64\Debug\recoder2.tlog\CL.read.1.tlog
文件 3502 2020-01-07 18:26 recoder2\recoder2\x64\Debug\recoder2.tlog\CL.write.1.tlog
文件 1824 2020-01-07 18:26 recoder2\recoder2\x64\Debug\recoder2.tlog\custombuild.command.1.tlog
文件 492 2020-01-07 18:26 recoder2\recoder2\x64\Debug\recoder2.tlog\custombuild.read.1.tlog
文件 806 2020-01-07 18:26 recoder2\recoder2\x64\Debug\recoder2.tlog\custombuild.write.1.tlog
文件 2062 2020-01-07 18:26 recoder2\recoder2\x64\Debug\recoder2.tlog\li
文件 4210 2020-01-07 18:26 recoder2\recoder2\x64\Debug\recoder2.tlog\li
文件 1018 2020-01-07 18:26 recoder2\recoder2\x64\Debug\recoder2.tlog\li
文件 165 2020-01-07 18:26 recoder2\recoder2\x64\Debug\recoder2.tlog\recoder2.lastbuildstate
文件 1568768 2020-01-07 18:26 recoder2\recoder2\x64\Debug\vc120.pdb
............此处省略20个文件信息
相关资源
- paho.mqtt.c 树莓派交叉编译版本SDK
- 典型实用的QT电子书
- QSS文件模板
- ARP攻击模拟工具 第二代
- Qt从入门到精通
- Qt OpenGL 天空盒
- Qt进度条QProgressBar的使用详细代码
- QT下自定义控件的拖动,标尺,控件的
- qt 写的绘制串口接收到数据的实时曲
- MapQTL6破解版
- STM32+MQTT协议功能实现
- 基于QT4的视频音频播放器设计与实现
- Qt实现的四则混合运算计算器
- 串口助手程序
- 基于Qt实现的猜数字游戏
- QT打开PDF的Demo(pdfium库)
- Qt实现Socket断线重连机制
- linux下关于Qt界面的摄像头v4l2操作源码
- Qt5多功能计算器
- PyQt5.zip--lib包
- 如何学习QT-绝对经典.zip
- QT 编写的画图软件
- Qt循环播放一组图片
- qt环境下使用opencv打开双摄像头并保存
- 用Qt写的一个时间提醒程序源码和可执
- qt modbus 源码 可以作为 modbus 调试助手
- Qt实现notepad记事本源码工程(版本二
- Qt+GDAL图像显示基本功能
- MQTT-ESP8266.rar
- Qt贪吃蛇小游戏代码+详细设计文档
评论
共有 条评论