2019以前
文章平均质量分 63
阿发你好
全套Java/C语言系列教程
展开
-
详解QT下拖动操作Drag-Drop的实现
QT下实现Drag-Drop是极其容易的,下面给大家介绍一下。所谓拖动,自动有一个源窗口,一个目标窗口,不过有时候源窗口与目的窗口是同一个窗口。源窗口在鼠标Press的时候,记录起始点为dragPosition(此为成员变量);在Move的时候,检测与起始点的距离,当拖动一定距离的时候,认为开启了一个拖动操作。按下面例子,鼠标会为成拖动的样式,并有一个图片显示被拖动的物体的轮廓。...原创 2013-12-28 12:07:34 · 24934 阅读 · 16 评论 -
MP4文件结构(1)
MP4文件结构由MPEG定义,由14496-12和14496-14具体定义。其中,14496定义了一个通用的标准和大体框架,它适用于多种文件格式的定义。14496-14是对其中一种文件格式(MP4)的具体定义。1. 文件结构整个文件由Box组成,所有的数据都在Box内定义。Box可以层级嵌套,例如,moov可以包含多个trak。Box结构应该不用缀述,简单列一下:aligned(8)...原创 2012-08-09 11:29:18 · 2659 阅读 · 0 评论 -
FFmepg - 编译
FFmpeg的官网 http://ffmpeg.org想要得到FFmpeg在Windows下可用的dll,需要使用MinGW + MSYS,VC2008的编译环境。总体上编译会很顺利,下面详细介绍其步骤。1.下载MinGW到sourceforge.net上下载MinGW,下载mingw-get-inst-20110802.exe类似这样的东西,这是一个在线安装包。打开后,会自动下...原创 2012-07-02 15:43:12 · 2258 阅读 · 0 评论 -
FFmpeg - 视频解码过程
FFmpeg的文档做得不好,导致学会使用这个库是存在一定难度的。在对文件进行解码时,抄网上流传的例子就可以了。比如,常见的例子是这样的:main(0{ av_register_all(); // Open video file if(av_open_input_file(&pFormatCtx, argv[1], NULL, 0, NULL)!=0) ...原创 2012-07-02 15:58:17 · 7573 阅读 · 2 评论 -
MP4文件结构(2)
以一个长度为10秒的MP4为例,其结构可能如下:type: ftyp, size: 24type: mdat, size: 8884701type: mdat, size: 136125type: moov, size: 46561. ftyp一个ftyp对文件的类型进行描述,指明其符合哪些格式。一般就是mp4格式了...原创 2012-08-13 11:47:35 · 11463 阅读 · 2 评论 -
怎样用AACLib V1.0在Android上音频编码解码
在这里下载相关库文件V1.0 点击打开链接(libaac.jar, libaac.so , demo项目)V1.1 点击打开链接(更新libaac.so,其他的与V1.0相同)这几天在 android上的音频项目,顺便把用到的aac编解码库封装了一下,有需要的可以从上面下载。当然我是没有本事自己写编解码器的,还是用FFmpeg + FDK_aac来做。下面介绍一下其ja...原创 2013-07-08 10:09:34 · 4542 阅读 · 5 评论 -
解决身份证挂失的问题
身份证挂失了,别人捡到了还能用,失主为了在法律上规避责任,需要登报声明自己的身份证已经丢失。本地的一份报纸,或全国性的报纸应该也可以。其意思就是假设社会各机关都能看到这报纸的,所以我丢失身份证这事大家都知道了。二代证仍然有这个问题吧。当然这个问题并不难解决,相信很多码农都有办法解决 (其实我也是几年之前就想写出来了,呵呵)。下面提供一个基本的设计,供公安部的研发同行参考:(1) 制作身份证时...原创 2013-09-12 17:44:05 · 1589 阅读 · 0 评论 -
rp_filter及Linux下多网卡接收多播的问题
工作中曾遇到一个很奇怪的问题,我奉命调查。事情是这样的,有一台双网卡的机器,上面装有Fedora8,运行一个程序。该程序分别在两个网口上都接收多播数据,程序运行是正常的。但是,后来升级系统到Fedora13,发现就出问题了:在运行几秒钟后,第2个网口上就接收不到多播数据了。 能不能收到多播,取决于交换机是不是往这个网口上转发多播数据。程序在起动的时候,会发一个IGMP的AddMembers...原创 2012-06-29 17:48:11 · 8620 阅读 · 0 评论 -
Linux Shell 脚本 - 出错重试
以下脚本实现了重试机制: 检查命令的返回,当不为0时重试。#!/bin/shwhile [ 0 -eq 0 ]do echo ".................. job begin ..................." # ...... call your command here 在这里调用你的命令 ...... # check and ...原创 2012-08-30 16:17:27 · 5668 阅读 · 0 评论 -
【SHELL】 Linux SHELL 脚本语法及使用参考
Linux下的SHELL脚本常以 *.sh 为后缀,和Windows下的批处理脚本 *.bat *.cmd功能一致,但是功能和语法都要更强大。SHELL是一门脚本语言。本文介绍SHELL的语法及用法。1. 开始使用在Linux下新建一个文本文件,命名为test.sh,并输入以下内容:#!/bin/shecho hello,world【注】- 第1行是必须的,用以表示本...原创 2012-08-30 16:43:53 · 5718 阅读 · 0 评论 -
为QT无标题窗口添加阴影 - 方法一
当用去掉QT窗口的标题栏之后,边框及阴影一并消失,有是有点难看的。以下方法用于添加一个带阴影的背景。用PS制作一个带阴影的背景图片 - 新建400x300的图片 - 建一个图层,填一个比图片略小的层,填色。 - 对该图层,混合属性,阴影保存为bg.png对QT对话框使用该阴影 - 背景设置该图片 QDialog {background-image: url(...原创 2013-12-27 16:22:38 · 5728 阅读 · 0 评论 -
QT: 如何实现程序的单实例运行检测?
有时候需要保证我们程序只有一个实例,有很多程序都是这样设计,当你打开一个程序之后,再运行它时会提示你“有一个实例正在运行”。怎么实现呢?下面以QT下的实现举例,很容易要以改成普通的VC实现。#include <QtGui/QApplication>#include <QtCore/QSharedMemory>#include <QtGui/QMes...原创 2013-12-27 16:31:11 · 3424 阅读 · 0 评论 -
QT中位图bitmap与VC的区别
Bitmap即每位代表一个像素的图片,VC和QT对bitmap的理解不一样,主要是大小端的理解不一样。QBitmap::fromData(QSize(cx, cy), mask, QImage::Format_Mono);注意最后一个参数: Format_Mono是大端,Format_MonoLSB是小端。对于bitmap来说, 作为mask时, 1是显示,0是透明。 作为pixm...原创 2013-12-27 16:41:18 · 5327 阅读 · 0 评论