自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(55)
  • 资源 (167)
  • 收藏
  • 关注

原创 LAL v0.35.4发布,OBS支持RTMP H265推流,我跟了

Go语言流媒体开源项目今天发布了v0.35.4版本。LAL 项目地址:https://github.com/q191201771/lal。

2023-04-18 20:09:58 387

原创 LAL v0.34.3发布,G711音频来了,Web UI也来了

Go语言流媒体开源项目今天发布了v0.34.3版本。LAL 项目地址:https://github.com/q191201771/lal。

2023-03-28 13:55:04 309

原创 LAL v0.32.0发布,更好的支持纯视频流

Go语言流媒体开源项目 [LAL](https://github.com/q191201771/lal) 今天发布了v0.32.0版本。距离上个版本刚好一个月时间,[LAL](https://github.com/q191201771/lal) 依然保持着高效迭代的状态。

2022-11-11 09:42:24 526

原创 开源Golang rtmp服务lalserver支持多种鉴权防盗链方式

lalserver是纯Golang开发的流媒体服务器。支持RTMP, RTSP(RTP/RTCP), HLS, HTTP[S]/WebSocket[S]-FLV/TS协议。目前已支持多种鉴权防盗链的方式。lal github地址: https://github.com/q191201771/lal▌ 方式一. 固定值的鉴权参数首先,修改配置文件,如下:"conf_version": "v0.2.6",..."simple_auth": { "key": "q191201771", .

2022-04-05 18:56:40 4731

原创 Golang 流媒体音视频网络传输开源项目-LAL

一. lal 简介lal是开源直播流媒体网络传输项目,主要由三部分组成:lalserver:流媒体转发服务器。类似于nginx-rtmp-module等服务,但支持更多的协议,提供更丰富的功能。demo:一些小应用,比如推、拉流客户端,压测工具,流分析工具,调度示例程序等。类似于ffmpeg、ffprobe等应用。pkg:流媒体协议库。类似于ffmpeg的libavformat等库。lal github地址: https://github.com/q191201771/lal以下是lal

2022-02-22 19:27:34 3379

原创 LAL-开源Go语言音视频流媒体服务器

https://github.com/q191201771/lal中文文档LAL is an audio/video live streaming broadcast server written in Go. It’s sort of like nginx-rtmp-module, but easier to use and with more features, e.g RTMP, RTSP(RTP/RTCP), HLS, HTTP[S]-FLV/HTTP-TS, WebSocket-FLV/TS,

2021-04-24 13:27:45 821

原创 常见推拉流客户端使用方式

1 rtmp推流1.1 obs1.1.1 obs采集摄像头1.2 ffmpeg1.2.1 ffmpeg读取文件推送2 rtsp推流2.1 ffmpeg2.1.1 ffmpeg读取文件推流3 rtmp拉流3.1 vlc3.2 ffmpeg3.2.1 ffmpeg拉流保存文件3.3 ffplay3.4 mpv3.5 srs提供的rtmp播放页面(基于adobe flash技术)4 http-flv和https-flv拉流5 HLS(m3.

2021-02-17 11:29:26 3750

原创 redis源码阅读之面向哈希表优化

写在前面2020年了,给自己加个任务,把redis代码完整读一遍。我新建了一个github项目(地址在文章末尾),会在redis源码之上增加注释,后续也会为其中一些值得拎出来说的点单独写文章。本文内容:常规哈希表科普 redis rehash面临的问题 redis的渐进式hash 什么时候会启动rehash 如何渐进式rehash 什么时候执行一步rehash reh...

2020-01-11 13:07:19 128

原创 [译] Go语言使用TCP_NODELAY控制发包流量

编写健壮且高性能的网络服务需要付出大量的努力。提高服务性能的方式有很多种,比如优化应用层的代码,更进一步,还可以看看垃圾回收器,操作系统,网络传输,以及部署我们服务的硬件是否有优化空间。TCP/IP协议栈中的一些算法会影响到服务性能。本文将简单介绍其中的Nagle算法,与Nagle算法相关的socket选项TCP_NODELAY,以及在Go语言中如何使用它。理论大部分平台上的TCP实现...

2020-01-01 09:36:03 651

原创 利用CPU cache特性优化Go程序

demo如下Go语言伪代码,开启两个协程,分别对一个结构体变量中的两个相邻的数据成员进行n次原子自增操作,当打开_ [56]byte这个看似多余的代码后,程序运行速度加快了一倍!你知道是为什么吗?...type Foo struct { a uint64 // _ [56]byte b uint64 // _ [56]byte}...go fu...

2019-12-29 19:05:35 228

原创 Go语言channel备忘录

目录无缓冲channel等价于缓冲大小为0的channel,而不是1 发送者和接收者哪些情况会阻塞 close哪些情况会导致panic 如何优雅的关闭channel 当一个select中有多个channel满足可读时,谁被激活 select with default 读取时获取第二个返回值,以此判断该channel是否被关闭 close前写入的数据,接收者依然可以按顺序读取到 ...

2019-12-22 09:39:30 184

原创 [译] Go语言的有缓冲channel和无缓冲channel

Go中的channel十分强大,理解channel的内部机制后再去使用它可以发挥出更大威力。另外,选择使用有缓冲channel还是无缓冲channel会影响到我们程序的行为表现,以及性能。无缓冲channel无缓冲channel在消息发送时需要接收者就绪。声明无缓冲channel的方式是不指定缓冲大小。以下是一个列子:package mainimport ( "sync" "...

2019-12-21 08:46:11 546

原创 Go语言使用cgo时的内存管理笔记

先放结论使用cgo时:和日常Go对象被gc管理释放的表现略有不同的是,Go和c代码的类型相互转化传递时,有时需要在调用结束后手动释放内存。 有时类型转换伴随着内存拷贝的开销。 如果想消除拷贝开销,可以通过unsafe.Pointer获取原始指针进行传递。 c代码中的内存泄漏,依然可以使用valgrind检查。但是需要注意,像C.CString这种泄漏,valgrind无法给出泄漏的准...

2019-12-21 08:41:27 1278

原创 CentOS7升级内核以开启TCP BBR拥塞控制算法

通过ELRepo RPM repo升级内核查看当前内核版本$uname -r输出如下:3.10.0-514.26.2.el7.x86_64说明当前的内核为 3.10.0安装ELRepo repo$sudo rpm --import https://www.elrepo.org/RPM-GPG-KEY-elrepo.org$sudo rpm -Uvh http...

2019-12-14 11:55:31 494

原创 [译] 写一个简单的内存分配器(替换glibc中的malloc函数)

本文介绍如何用c语言实现一个简单的内存分配器,可替换glibc中的 malloc(), calloc(), realloc(), free().这是一篇入门级别的文章,所以不会介绍所有的细节。 代码实现主要为了演示内存分配器的基本工作原理,所以和工业级内存分配器相比,缺少非常多的性能优化,分配内存时也不会按页对齐,但是至少,我们构建的内存分配器是可以工作的。在构建内存分配器之前,需要先介绍...

2019-12-13 22:04:28 495

原创 使用supervisor工具对服务进程做保活管理

使用supervisor工具对我们的非daemon程序做保活,当我们的进程崩溃了或被误杀了后能再次被自动拉起。CentOS 安装 supervisor$yum install supervisor -y安装完成后,使用如下命令生成默认配置文件/etc/supervisord.conf:$echo_supervisord_conf > /etc/supervisord.c...

2019-12-07 13:23:14 232

原创 [译] 理解存储性能的两个指标每秒读写次数与时延

大部分人在考虑存储性能时,他们首先想到的是最大吞吐量。但是最大吞吐量就像汽车厂商给汽车标的最高速度。实际上,你几乎永远不会达到那个速度。考虑存储性能时也不应该只考虑最大吞吐量。还拿汽车来举例,大部分时候,加速度和过弯的处理能力可能会比最大吞吐量更重要。这和存储性能是类似的。大部分人都知道SSD固态硬盘一般比普通的机械硬盘快。但这不仅仅是因为固态硬盘的最大吞吐量更大。还和它们的IOPS(In...

2019-12-01 10:49:37 1968

原创 [译] linux内存管理之RSS和VSZ的区别

RSS是Resident Set Size(常驻内存大小)的缩写,用于表示进程使用了多少内存(RAM中的物理内存),RSS不包含已经被换出的内存。RSS包含了它所链接的动态库并且被加载到物理内存中的内存。RSS还包含栈内存和堆内存。VSZ是Virtual Memory Size(虚拟内存大小)的缩写。它包含了进程所能访问的所有内存,包含了被换出的内存,被分配但是还没有被使用的内存,以及动态库中...

2019-11-30 10:51:00 3491

原创 Go语言源码阅读之bytes.Buffer

Go标准库中的bytes.Buffer(下文用Buffer表示)类似于一个FIFO的队列,它是一个流式字节缓冲区。我们可以持续向Buffer尾部写入数据,从Buffer头部读取数据。当Buffer内部空间不足以满足写入数据的大小时,会自动扩容。伸缩策略....................................... ^ ^...

2019-11-28 13:30:58 176

原创 Go创建对象时,如何优雅的传递初始化参数

Go创建对象时,如何优雅的传递初始化参数?这里所说的优雅,指的是:支持传递多个参数 参数个数、类型发生变化时,尽量保持接口的兼容性 参数支持默认值 具体的参数可根据调用方需关心的程度,决定是否提供默认值Go并不像c++和python那样,支持函数默认参数。所以使用Go时,我们需要一种方便、通用的手法来完成这件事。Go的很多开源项目都使用Option模式,但各自的实现可能有些许细微差...

2019-11-27 13:23:09 663

原创 [译] TCP的SYN队列和Accept队列

关于两个队列首先我们必须明白,处于“LISTENING”状态的TCP socket,有两个独立的队列:SYN队列(SYN Queue) Accept队列(Accept Queue)这两个术语有时也被称为“reqsk_queue”,“ACK backlog”,“listen backlog”,甚至“TCP backlog”,但是这篇文章中我们使用上面两个术语以免造成混淆。SYN队...

2019-11-23 22:35:49 346

原创 [译] Go开源项目BigCache如何加速并发访问以及避免高额的GC开销

几天前,我读了一篇关于BigCache的文章,我对它是如何做到以下两点十分感兴趣:加速并发访问 避免高额的GC开销于是我去阅读了它的代码。我觉得它的做法很赞,所以我写了这篇文章来与你分享。BigCache 是一个快速,支持并发访问,自淘汰的内存型缓存,可以在存储大量元素时依然保持高性能。BigCache将元素保存在堆上却避免了GC的开销。 —— 摘自《BigCache README ...

2019-11-21 18:52:17 883

原创 给Go程序加入编译版本时间等信息

先看效果$./myapp -vGitCommitLog=d97d098e5bb4ad38a2a7968f273a256e10a0108f mod bininfo commentGitStatus=cleanlyBuildTime=2019.10.26.194341GoVersion=go version go1.13 darwin/amd64runtime=darwin/amd64...

2019-10-27 10:26:39 998

翻译 [译] Go语言测试进阶版建议与技巧

阅读本篇文章前,你最好已经知道如何写基本的单元测试。本篇文章共包含3个小建议,以及7个小技巧。建议一,不要使用框架Go语言自身已经有一个非常棒的测试框架,它允许你使用Go编写测试代码,不需要再额外学习其它的库或测试引擎。关于断言方面的帮助函数,你可以看看这个 testing,或者这个 assert.go ????建议二,使用"_test"包名相较于直接使用被测试代码的包名,使用 *_test包...

2019-09-15 17:19:23 154

原创 stress - 系统压力模拟工具

欢迎访问我的个人网站获取更佳排版体验: https://pengrl.com/p/42434/ (stress - 系统压力模拟工具 | yoko blog)前言stress是一个故意制造系统压力的工具。它提供了一系列的参数用于配置如何制造CPU,内存,IO操作,磁盘压力。安装# centos平台$yum install epel-release$yum install stress...

2019-07-06 09:08:14 1106 1

翻译 [译] QUIC Wire Layout Specification - Packet Types and Formats | QUIC协议标准中文翻译(2) 包类型和格式

欢迎访问我的个人网站获取更佳阅读排版体验: [译] QUIC Wire Layout Specification - Packet Types and Formats | QUIC协议标准中文翻译(2) 包类型和格式 | yoko blog (https://pengrl.com/p/48146/)目录QUIC Public Packet Header | QUIC公共包头Public...

2019-06-08 08:48:45 524 1

原创 [译] Go References - The Go Memory Model | golang官方文档中文翻译之内存模型

本文同步发布于: [译] Go References - The Go Memory Model | golang官方文档中文翻译之内存模型 | yoko blog前言本篇译文对应的原文标题:The Go Memory Model - Go References作者:Go官方文档地址:https://golang.org/ref/mem本文标明yoko备注的内容是我自己写的备注,其...

2019-04-23 14:47:12 495 1

原创 golang的channel和条件变量在单生产单消费场景下的性能对比测试

本篇文章同步发布于:golang的channel和条件变量在单生产单消费场景下的性能对比测试 | yoko blog本文相应的代码附在文章末尾处。场景描述1个生产者只与1个消费者相互绑定。生产者按固定生产频率,每间隔<PRODUCE_INTERVAL_MS>毫秒生产一个任务。生产者每次生产时都检查当前任务队列大小,如果已经超过<QUEUE_NUM_CANCEL_PRO...

2019-04-18 10:38:20 1317

原创 #ifndef#define#endif防止头文件重复包含, 你不是真的懂

注:以下所用环境皆为VS2005, 由于本人表达能力有限, 大家有看不懂的地方可以多看几遍  这里首先说明下几点基础知识, 相信大部分人对于以下几点大部分都已经知道了, 你也可以直接跳到最后部分看#ifndef#define#endif的真正作用  1.预编译阶段把所有#include ”***.h“ (“”与的区别这里就不说了)用***.h的内容来替换了, 所以之后就没有.h了所有.h的内容都已经包含进了需要它们的.cpp中(注:该步个人认为是发生在预编译阶段)   2.生成最后的exe文件是由编译、链接

2011-05-06 14:35:00 37131 31

原创 鸡尾酒排序

<br />void sort(int arr[], int len){ bool flag = true; int temp; while(flag) { flag = false; int bottom = 0; int top = len - 1; int i; for(i=bottom; i < top; ++i) { if (arr[i] > arr[i+1]) { temp = arr[i]; a

2011-04-19 11:40:00 1075 1

原创 Windows下调试信息 TRACE OutputDebugString

  有的时候程序并没有控制台, 这时打印肯定是不行了, 写文件是个通用的方法, 但比较适合系统上线或者只能使用该方法调试时, windows下有两个打印调试信息的函数, TRACE OutputDebugString  TRACE貌似只能在MFC中使用, 但是可以像printf那样构造字符串  OutputDebugString需要先构造好字符串再把字符串传入打印出来, 但是只要包含了windows.h 就能使用了, 两个函数都是在调试状态下把信息打在output中, 即我们在使用VC时编译时显示编译信息进

2011-04-19 11:06:00 3820 1

原创 AutoLock 解决加锁后忘记解锁问题

class AutoLock{public: AutoLock(CRITICAL_SECTION& cs) : cs_(cs) { EnterCriticalSection(&cs_); } ~AutoLock() { LeaveCriticalSection(&cs_); }private: CRITICAL_SECTION& cs_;};class Test{public: Test() { InitializeCriti

2011-04-19 10:52:00 2596 1

原创 宏编译 预处理头 WIN32_LEAN_AND_MEAN

<br />  在许多windows下的项目中, 我们经常可以看到在stdafx.h中有这么个宏定义#define WIN32_LEAN_AND_MEAN, 它的作用实际上是当我们项目中包含了<windows.h>时去除一些头文件的包含, 加快编译速度, 大家可以跳进<windows.h>中搜索一下WIN32_LEAN_AND_MEAN就能看到去除了哪些头文件的包含了, 据网上说是不使用MFC时可以包含该预处理头, 我也用个小项目测试了一下, 基本上对于编译速度以及生成文件没有多大影响, 所以个人认为大家只

2011-04-19 10:23:00 8000

原创 ACE配置IPv6, VS静态编译ACE库

  使用自己下载的6.0.1版本只需在ACE_wrappers/ace/config.h(没有请自行创建)中添加#define ACE_HAS_IPV6再编译ACE_wrappers_vc8.sln即可, 下面贴出的是我自己的config.h, 具体config有哪些配置及其含义请参照ace目录下的readme文件#define ACE_HAS_STANDARD_CPP_LIBRARY 1 #define ACE_HAS_IPV6#include "ace/config-win32.h"    

2011-03-24 20:58:00 3428 1

原创 获取本机所有ipv4, ipv6地址

<br />    从在线版msdn搜getaddrinfo扒下来改了一下, witch says, function gethostbyname() doesn't work well with ipv6.<br />#include <winsock2.h>#include <ws2tcpip.h>#include <stdio.h>#include <iostream>#pragma comment (lib, "Ws2_32.lib")int __cdecl main(int a

2011-03-22 12:25:00 4811

原创 win7注册进程外组件, 服务, 以及COM组件调试

<br />  折腾了一天, 原来又是系统搞的鬼, 在win7下使用/regserver, /service, regsvr32.exe时, 会失败, 尤其使用regsvr32.exe时, 会弹出对话框模块"***"已加载, 但找不到入口点DllRegisterServer, 这都是win7权限惹的祸, 解决方法 开始->所有程序->附件->找到命令提示符右键选择管理员权限打开, 这样就可以注册组件了, 另外不知道可不可以把当前用户的权限设置成最高权限, 虽然我使用的用户是管理员用户, 但是还是得通过右键那

2011-03-16 19:56:00 5951 1

原创 windows工具mstsc远程桌面连接, 方便的在两台电脑间互相拷贝文件

<br />  使用这个windows小工具就可以连接另一台windows电脑并且远程桌面控制它了, 前提是被连接的电脑需要开启远程桌面功能, 以我自己的win7系统为例(xp应该也在差不多的位置), 右键计算机 -> 属性 -> 远程设置 -> 远程桌面里选定允许<br /> <br />  然后再在连接方 运行 里输入mstsc打开mstsc工具, 输入被连接方的IP, 被连接方允许用来连接的账号, 密码, 这里有一个非常值得一提的地方, 当我们想自由方便的在连接方与被连接方传输文件时, 可以在打开ms

2011-03-13 09:35:00 16933 2

原创 屏蔽不显示VS警告warning

<br />用VS编译项目时如果感觉有些警告太多或太烦人, 可以屏蔽该警告<br />注:假设需要屏蔽的warning号为8888<br />第一种方法, 在代码中加入#prama warning(disable:8888)<br />第二种方法, VS编译器中设置, 以VS2005为例, 打开项目属性-> c/c++ -> Advanced -> Disable Specific Warnings 输入8888

2011-03-12 17:30:00 25263 4

原创 windows API 返回错误值的查看及打印

<br />第一种, 相信大家都和熟悉了, 打开VS的Tools菜单下的Error LookUp工具, 将GetLastError()返回的错误值输入就能获取错误信息了<br />第二种, 进入调试模式, 在Watch窗口中选择一行, 输入$err,hr 这样windows API出现错误时就会现在错误值以及对应的错误信息了, 这样就省去了GetLastError(), 在写一些小demo测试的时候比较管用<br />第三种, 我们要结合windows的另一个函数FormatMessage, 下面我贴出一段

2011-03-08 19:35:00 1888 1

原创 创建自定义自启动LINUX服务service

  1.将init_daemon放入程序开始处void init_daemon(){ int pid; int i; if(pid=fork()) exit(0);//是父进程,结束父进程 else if(pid  2.将chefd文件(如下)放进etc/init.d

2011-01-13 13:25:00 6074 2

物流app源代码(用户)

物流app的用户端的源代码。 大家参考一下。 物流app的用户端的源代码。 大家参考一下。 物流app的用户端的源代码。 大家参考一下。 物流app的用户端的源代码。 大家参考一下。

2021-04-12

MTK7621 MT7628 开发指南

MTK7621 MT7628 开发指南 详细内容见附件。 MTK7621 MT7628 开发指南 详细内容见附件。

2021-04-11

Enfocus_PitStop_Pro_10_Update2_Patch

Enfocus_PitStop_Pro_10_Update2_Patch Acrobat 的插件,可以去除水印等 如果你用了PP10,请更新到update2 在论坛上卖很贵了,我从国外网站上找来分享给大家。 使用方法见压缩包内文本文件。

2021-04-10

最完美的select美化下拉框

很多人为select的诸多不完善而头痛,如无法自定义样式、IE6中无法被浮动层遮住等等。这是一款堪称最完美的下拉框组件,特点如:美化的并且可自定义的外观、使用简单、支持分组、下拉列表展开的方向智能化、下拉框可编辑、集成了ajax联动功能、自定义下拉列表的列数、完美的浏览器兼容性等。

2021-04-09

DLX指令集(汇编)

本文档介绍常用的DLX指令集,对了解汇编语言有很大的帮助,欢迎朋友们下载 本文档介绍常用的DLX指令集,对了解汇编语言有很大的帮助,欢迎朋友们下载

2021-04-08

中科院机器学习课件ppt

中科院机器学习课件ppt,以及习题答案。 中科院机器学习课件ppt,以及习题答案。 中科院机器学习课件ppt,以及习题答案。 中科院机器学习课件ppt,以及习题答案。

2021-04-05

java socket查询数据库实现登录验证

java socket查询数据库实现登录验证,分客户端和用户端两部分 java socket查询数据库实现登录验证,分客户端和用户端两部分

2021-04-04

pid温度控制程序及论文

pid温度、湿度等的控制,包括了传递函数的构建,P I D参数的确定方法及实现,附带了matlab仿真程序及图。

2021-04-02

基于VS2010的CSocket网络文件传输

用VS2010编写的网络文件传输软件,对于网络编程初学者有一定学习作用 用VS2010编写的网络文件传输软件,对于网络编程初学者有一定学习作用

2021-04-01

UML课程设计(报告+建模.mdl文件)

UML课程设计报告+系统建模文件.mdl文件 UML课程设计报告+系统建模文件.mdl文件 UML课程设计报告+系统建模文件.mdl文件 UML课程设计报告+系统建模文件.mdl文件

2021-03-30

leetcode全套解答python版本

leetcode全套解答python版本。包括更新到10月份的的leetcode leetcode全套解答python版本。包括更新到10月份的的leetcode

2021-03-29

STM32 PWM多路定时器输出

STM32的定时器除了TIM6和TIM7,其它定时器都可以用来产生PWM信号,高级定时器TIM1和TIM8可同时产生7路PWM输出,通用定时器可同时产生4路PWM输出。

2021-03-27

android在线音乐播放器论文

很详细的毕业设计论文 自己写的 关于android在线音乐播放器 很详细的毕业设计论文 自己写的 关于android在线音乐播放器

2021-03-22

JAVA指纹识别(uaru4000B指纹仪)

JAVA指纹识别(uaru4000B指纹仪) 采集与 验证功能 放在tomcat下就可以实现 access数据库

2021-03-21

java游戏源代码:11个小游戏的源码集合

包括以下游戏的源码:沙漠阻击手,3D魔方游戏,财富城市,贪吃蛇,俄罗斯方块,麻将,三维迷宫,扫雷,推箱子,算卦游戏和简单回合游戏11个游戏的源码,欢迎下载,供学习与交流。

2021-03-19

希尔伯特黄变换c++源代码

该源代码为希尔伯特黄变换的C++程序,对于需要用emd的人可能有帮助 该源代码为希尔伯特黄变换的C++程序,对于需要用emd的人可能有帮助

2021-03-18

直接序列扩频通信系统仿真设计

直接序列扩频通信系统仿真设计 小论文 本文主要论述了直接序列扩频通信的基本原理,分析了直接序列扩频通信抗干扰的性能,说明了直扩系统发送端的功能框架,针对信源、扩频过程、调制过程这三个方面进行展开描述。主要说明:(A)信源信号是如何生成的(m文件或mdl模块);(B)扩频码的性能及数学表述;(C)扩频过程的数学表述,扩频前后信号的变化情况分析;(D)扩频通信的抗噪性能分析。

2021-03-08

Tomcat+MySQL为自己的APP打造服务器(4)完结篇Demo

本代码是【一步一个脚印】Tomcat+MySQL为自己的APP打造服务器(4)完结篇的示例代码,Android+服务端交互代码

2021-03-05

android黄历数据库

黄历数据库,1901-2100年的数据,.db数据库,android可直接用。 黄历数据库,1901-2100年的数据,.db数据库,android可直接用。

2021-03-03

c#采集摄像头图像源码

c#采集摄像头图像源码,c#采集摄像头图像源码 c#采集摄像头图像源码,c#采集摄像头图像源码 c#采集摄像头图像源码,c#采集摄像头图像源码 c#采集摄像头图像源码,c#采集摄像头图像源码

2021-03-02

ocx控件开发经典例子

开发activeX控件的经典案例,通俗易懂. 开发activeX控件的经典案例,通俗易懂. 开发activeX控件的经典案例,通俗易懂. 开发activeX控件的经典案例,通俗易懂.

2021-03-01

themeservice.dll themeui.dll uxtheme.dll

为了方便有需要的人,打包了UniversalThemePatcher这个工具和 未破解的 themeservice.dll themeui.dll uxtheme.dll 文件,以及这三个文件供UniversalThemePatcher使用的还原文件(就是加了后缀.backup的三个文件),把加了后缀的三个文件复制到 windowssystem32文件夹下,就可以用这个工具UniversalThemePatcher 来还原了。。

2021-02-24

心音听诊(wav格式记录的波形数据)

心音听诊的wav格式文件,供练习听诊及分析异常情况下的信号特征 心音听诊的wav格式文件,供练习听诊及分析异常情况下的信号特征

2021-02-23

0-9 10个手写数字的识别

多种方法实现0-9 10个手写数字的识别,包括模板匹配法、贝叶斯分类器、神经网络、奖惩算法、势函数法。方法很全的。

2021-02-22

Swing 组件大全

基本上 包括了swing所有的组件,数据库的操作,而且还引用了 jxl以及TableLayou 基本上 包括了swing所有的组件,数据库的操作,而且还引用了 jxl以及TableLayou

2021-02-21

超级简单实用的ASP文件管理系统(一个ASP程序实现所有功能)

利用ASP单文件实现以下功能:&lt;br&gt;1、用户管理(添加、删除,密码修改)&lt;br&gt;2、文件系统浏览、删除、文本文件编辑。&lt;br&gt;3、文件上传。可一键上传、批量上传。&lt;br&gt;4、整个系统由一个ASP文件完成,所有功能以涵数形式编写,主要利用FSO实现,没有数据库,超级简单实用,修改极其方便。

2021-02-18

H+V4.9 响应式后台主题UI框架(官方原版代码)带完整文档

H+V4.9 响应式后台主题UI框架(官方原版代码)带完整文档 H+V4.9 响应式后台主题UI框架(官方原版代码)带完整文档

2021-02-17

matlab做软件界面

想用matlab做界面吗?这是很好的质料。Manual de nterfaz grafica de usuario en matlab Por: Diego Orlando Barragan Guerrero GUIDE INTERFAZ GRAFICA DE USUARIO EN MATLAB INTRODUCCIO N GUidE es un entorno de programacion visual disponible en MATLAB para rcalizar y cjccutar programas quc nccesitcn ingreso continuo dc datos. Ticnc las caracteristicas basica de todos los programas visuales como Visual Basic o Visual C++ INICIO Para iniciar nuestro proyecto, lo podemos hacer de dos maneras Ejecutando la siguiente instruccion en la ventana de comandos &gt; guide Haciendo un click en el icono que muestra la figura L MATLAE iE Ecit Debug Desktop wing ? ⅥAAT Shortcuts 2 Whar's lew L How to-y GUIDE FLEAR E] CLOSE ALL S BOR Currenl Dirurluiy-C-WHATLAB7Iwwurk p x Cultu wfildluw [朝马 山Fit F 当A|Dl DCOLMUNCATIONS IconO GUIDe Se presenta el siguiente cuadro de dialogo GUIDE Quick Start JIDE templ Lestion alo BLAN save nn startup a&lt; C: MA. LAB701workMIG MATLABIsou'celuntitle d f g Ventana de inicio de gul WebsobremaTlab:www.matpic.com3 VideossobreMatlaben:www.youtubecom/diegokillemall Manual de interfaz grafica de usuario en matlab Por: Diego Orlando Barragan Guerrero c presentan las siguientes opciones a) blank gui default La opcion de interfaz grafica de usuario en blanco(viene predeterminada), nos presenta uin formulario nuevo, en el cual podemos disenar nuestro programa b gui with Uicontrols Esta opcion presenta un ejemplo en el cual se calcula la masa, dada la densidad y el volumen, en alguno de los dos sistemas de unidades. Podemos ejecutar este ejemplo y obtener resultados c) GUI with Axes and menu Esta opcion es otro ejemplo el cual contiene el menu File con las opciones Open, Print y Close En el formulario tiene un Popup menu, un push button y un objeto Axes, podemos ejecutar el programa eligiendo alguna de las seis opciones que se cncucntran cn cl mcnu despcgablc y haciendo click cn cl boton dc comando d )Modal Question Dialog Con esta opcion se muestra en la pantalla un cuadro de dialogo comun, el cual consta de una pequena imagen, una etiqueta y dos botones Yes y No dependiendo del boton que se presione, el gui retorna el texto seleccionado (la cadena de caracteres Yes'0 No') Elegimos la primera opcion, Blank GUl, y tenemos 回区 b臼圖磨“c串郾回爵哈|卜 componentes Ar ea de diseno Entorno de diseno de gul La interfaz grafica cuenta con las siguientes herramientas 串| Alinear objetos Editor de menu B Editor de orden de etiqueta 包 ditor del m-file p dades de objeto s Navegador de objetos Grabar y ejecutar(ctrl. T WebsobreMatlab:www.matpic.com4 VideossobreMatlaben:www.youtubecom/diegokillemall Manual de nterfaz grafica de usuario en matlab Por: Diego Orlando Barragan Guerrero Para obtcncr la ctiqucta dc cada clemento dc la palcta de components ejecutamos: File&gt;&gt; Preferences y seleccionamos Show names in component palette Tenemos la siguiente presentation untitle d1. fig 匚回 电的当B歇国的哈 西PuEh Bulto C Radio button Entorno de diseno: componentes etiquetados La siguiente tabla muestra una descripcion de los componentes I Control valor de estilo Descripcion Check box checkbox Indica el estado de una opcion o atributo Editable text Caja para editar texto Pop-up menu ' popupmenu Provee una lista de opciones List box &quot;listbox? Muestra una lista deslizable Push button pushbutton' Invoca un evento inmediatamente Radio Button radio Indica una opcion que puede ser seleccionada Toggle Button.togglcbutton, Solo dos estados,“on”o¨of lder Slider Sado para representar un rango de valores Static Text text Muestra un string de texto en una caja Panel button Agrupa botones como un grupo Button Group Permite exclusividad de seleccion con los radio button PROPIEDADES DE LOS COMPONENTES Cada uno de los elementos de gul, tiene un conjunto de opciones que podemos acccder con click dcrccho M-「!Eui|ur view Cal la3=ks rockery Edit Opciones del componente WebsobreMatlab:www.matpic.com5 VideossobreMatlaben:www.youtubecom/diegokillemall Manual de nterfaz grafica de usuario en matlab Por: Diego Orlando Barragan Guerrero La opcion Property Inspector nos permite pcrsonalizar cada clcmcnto Pr 回区 BeinyD BUSwActiol Butten Down 画 tvelght HuricUllLaIAliyr irrierIl v center ntarriintihl Entorno Property inspector Permile ver y editar las propiedades de un objeto Al hacer click dcrccho cn cl clcmento ubicado cn cl arca de disco. una de las opciones mas importantes es View Callbacks, la cual, al ejecutarla, abre el archivo. m asociado a nuestro diseno y nos posiciona en la parte del programa que corresponde a la subrutina que se ejecutara cuando se realice una determinada accion sobre el elemento que estamos editando Por ejemplo, al ejecutar View Callbacks&gt;&gt; Callbacks en el Push Button, nos ubicaremos en la parte del programa function pushbutton Callback(hobjectr eventdata, handles) 9h0oiect handle to pushbutton (see GC30) eventdata reserved-to be defined in a future version of matlaB candles structure with handles and user data(see gUIdata) FUNCIONAMIENTO DE UNA APLICACION GUI Una aplicacion GUIDE consta de dos archivos: m y fig. El archivo. m es el que contiene el codigo con las correspondencias de los botones de control de la interfaz y el archivo, fig contiene los elementos graficos Cada vez que se adicione un nuevo elemento en la interfaz grafica, se genera automaticamente codigo en el archIvo. m Para ejecutar una Interfaz Grafica, si la hemos etiquetado con el nombre curso. fig, simplcmentc cjccutamos cn la ventana dc comandos &gt; curso O hacicndo click derecho en el m-file y seleccionando la opcion RUN WebsobreMatlab:www.matpic.com6 VideossobreMatlaben:www.youtubecom/diegokillemall Manual de interfaz grafica de usuario en matlab Por: Diego Orlando Barragan Guerrero MANEJO DE DATOS ENTRE LOS ELEMENTOS DE LA APLICACION Y EL ARCHIVO.M Todos los valores de las propiedades de los elementos(color, valor, posicion string .) y los valores dc las variables transitorias del programa sc almaccnan cn una estructura, los cuales son accedidos mediante un unico y mismo identificador para todos estos. Tomando el programa listado anteriormente, el identificador se asigna en t= ho handles, es nuestro identificador a los datos de la aplicacion. esta definicion de identificador es salvada con la siguiente instruccion guidaca(hobjectr handles)i guidata, es la sentencia para salvar los datos de la aplicacion Aviso: guidata es la funcion que guarda las variables y propiedades de los elementos en la estructura de datos de la aplicacion, por lo tanto, como regla general, en cada subrutina se debe escribir en la ultima linea lo siguiente guidata(hobject handles) Esta sentencia nos garantiza que cualquier cambio o asignacion de propiedades o variables quede almacenado Por cjcmplo, si dentro dc una subrutina una operacion dio como resultado una variable diego para poder utilizarla desde el programa u otra subrutina debemos salvarla de la siguiente manera handles. diego=diego quidata(hobject, handles La primera linea crea la variable diego a la estructura de datos de la aplicacion apuntada por handles y la segunda graba el valor SENTENCIAS GET Y SET La asignacion u obtencion de valores de los componentes se realiza mediante las sentencias get y set. Por ejemplo si queremos que la variable utpl tenga el valor del Slider escribimos utpl= get(handles slider,'value)i Notar quc siempre se obticnen los datos a traves de los identificadores handles Para asignar el valor a la variable utpl al statictext etiquetada como text/ escribimos set(handles. etl, String, utp)eScribe el valor del slider sen static-text WebsobreMatlab:www.matpic.com7 VideossobreMatlaben:www.youtubecom/diegokillemall Manual de interfaz grafica de usuario en matlab Por: Diego Orlando Barragan Guerrero eJeMPLOS PRESENTACION DE NUESTRO PROGRAMA -A procesamiento Digital de Senales 巴回囟 Presentacion del Programa Par: Diego Barrayan Guerrero □T|LAR ANCEL OF P们 RIBUTION Presentation del programa Para la prescntacion dc nucstro programa, vamos a programar una pantalla donde podemos colocar el tema de nuestro diseno, nombre del programador, imagen de fondo Para esto, tenemos el siguiente codigo(copiar y pegar en un m-file) function presentation cAutor: Diego barragan Guerrero CEstudiante de Electronica y Telecomunicaciones 大大大大★大大x大大大大大大大大大大大Xx大大大大大火大大大大大x大大大大大大水大大大大x大大大大大大大大大大大大大x大大 presentacion: funcion que presenta la pantalla de presentacion 大大大大大大大大大大大大大大大大大大大大大大大大大大大大大大大大大大大大大大大大大大大大大大大大大大大大大大大大大大大大大大大 clear, clc cla, close all Creamos figura figdiag=fiqure(' Units,' Pixels'r Para nuestro curso, creamos en C: \MATLAB71\work la carpet MIS MATLAB, donde almacenaremos todos nuestros programas WebsobreMatlab:www.matpic.com8 VideossobreMatlaben:www.youtubecom/diegokillemall Manual de interfaz grafica de usuario en matlab Por: Diego Orlando Barragan Guerrero Position'′,[0.07250.07250.570.57],...8 Tamano de1 presentation ' Number''cff I Name,Electronica y Telecomunicacicnes, MEnubar,none o1or,[003]); Ubicamos ejes en figura axes('Units, Normalized Position&quot;’,[0011]); C-----Centramos la figura scrs - get(O,Screensize')i pos act-get(gcf,'Position)i xr=scrs (3) pos act(3) xp=round(xr/2) yr=scrs(4)-pos act (4)i yp=round(vr/2)i set(gcf,' Position,[xp yp pos act(3) pos act(4)])i PIncluir imagen Tmportamos imagen *. jpg, junto con su mapa de colores [x, map]=imread( 'circuit. jpg,pg) tRepresentamcs imagen en figura, con su mapa de colcres image(x),colormap(map), axis off, hold on Titulos sobre imagen text(50,50,'Presentacion del Programa,' Fontname,'Arial',' Fontsize,25,Fontangle',Italic Fontweight,Bold,'color,[11 0])i Nombre del programador text(50,-30,por: Diego Barragan Guerrero,'Fontname' Comic Sans Ms Fontangle''itali Fontweight ''Bcld Fontsize'14,color[11 11)i 2 Boton continuar book=uncontrol( style, pushbutton, Units normalized Position',[.84.03.12.35 String, CONTINUar' i Callback'r' clear alli close alli clc, GUI)i Gui es el nombre del siguiente programa Las sentencias luego del comentario Boton Continuar, en la linea 'Callback,'clear all: close all;cIc; GUT;') se reemplaza GuI por el nombre de nuestro programa disenado con interfaz de usuario Para ejecutarlo, presionamos la tecla F5 Otra manera de presentar nuestro programa es con la siguiente funcion function presen(filename, varargin) presen(filename, varargin filename es el nombre de una imagen y su extension varargin es el tiempo en milisequndos 老ep1o: WebsobreMatlab:www.matpic.com9 VideossobreMatlaben:www.youtubecom/diegokillemall Manual de interfaz grafica de usuario en matlab Por: Diego Orlando Barragan Guerrero presen(' portada ipg, 2000) if nargin ==1 imread (filename)i t 4000 elseif (nargin ==2)&amp;(ischar(varargin(1) fmt vararginil y I imread(filename, frt)i time=4003; Seif (nargin --2)&amp;(isnumeric(vararginf1) I imread(filename time varargin(l: elseif nargin ==3 fmt rangin[1) I imread(filename, frt) time vararginf2: if (visnumeric(tine))I (length(time)w=1) error( erROR: TTME debe ser un valor numeric en seg.) end e⊥se error( error: demasiados datos entrada! )i end judas Image- im2iava(-)i win =javax. swing. JWindow icon = javax. swing. ImageIcon (judas Image)i label javax swing. JLabel(icon)i win. getContentPane add(label)i screensize win. getToolkit. getscreensizei screenHeight screenSize height screenwidth screensize width imgHeight icon. getIconHeigat imgNidth icon. getIconWidthi win. setLocation((screenWidth-imgWidth)/2,(screenHeight-imgHeight)/2)i win, pack win. show tici while toc -ime/1000 end win. dispose() No olvidar que las funciones se guardan con el mismo nombre WebsobreMatlab:www.matpic.com10 VideossobreMatlaben:www.youtubecom/diegokillemall

2021-02-15

SkSockServer

安装: [图形界面的安装] 运行 SockServerCfg,进行: --- 服务的安装,删除,启动,停止,及各个参数的配置. --- 允许连接的客户端ip的定义. --- 经过的跳板的设定 [命令行的安装] 安装服务:运行 SkSockServer.exe -install 删除服务:SkSockServer.exe -remove 启动服务: net start skserver 停止服务: net stop skserver 配置参数: SkSockServer -config [...] 由命令行设置/显示 当前 端口,启动方式,允许的客户ip连接,远程跳板设置. c:&gt; SkSockServer -config show ===[显示所有配置] c:&gt; SkSockServer -config port ===[显示/设置 端口] c:&gt; SkSockServer -config StartType===[显示/设置 服务启动方式] c:&gt; SkSockServer -con

2021-02-14

带有约束条件的遗传算法程序

带有约束条件的遗传算法MATLAB源程序 带有约束条件的遗传算法MATLAB源程序 带有约束条件的遗传算法MATLAB源程序 带有约束条件的遗传算法MATLAB源程序

2021-02-13

Opnet 14.5教程,帮助文档pdf版

OPNET14.5的帮助文档,几乎所有的现行阶段的教材都是由该软件帮助文档改编或缩减而成,所以该文档为OPNET学习者必备手册之一

2021-02-08

魔兽世界插件编写教程与资料

有一本《Programming in Lua》,lua版本是5.1,用于插件的功能代码编写 2份wow插件的简单实例教程 外带wow的API手册供查询 wow插件编写资料实在太少,CWDG可能是目前中文资料最多的地方,英文的推荐wowwiki或者wowprogram

2021-02-07

IEEE Std 802.11ac-2013

IEEE Std 802.11ac-2013, pdf, 英文版

2021-02-06

wpf做的一个类似QQ消息的弹窗

用wpf实现的类似QQ消息的弹窗 采用动画技术实现 希望对你有所帮助 用wpf实现的类似QQ消息的弹窗 采用动画技术实现 希望对你有所帮助

2021-02-03

CSocket实现UDP广播与接收

VS2008编译通过;可以接收7K以下的数据包;哪位高手可以帮我将接收器改成一次接收5万位左右的;UDp广播;

2021-02-02

完整J2EE架构的用户权限管理系统源码

基于整合了Struts_和Hibernate_的J2EE_架构的用户权限管理系统的设计与实现,有完整文档,可运行,比较完整。

2021-01-31

2048小游戏源码(java)

2048小游戏,java编写,作为课程设计的,答辩完了就开源了 2048小游戏,java编写,作为课程设计的,答辩完了就开源了

2021-01-29

操作系统原理(第四版)课后练习题答案

计算机相关专业必修课程操作系统原理(第四版)课后练习题答案,欢迎大家下载~~~ 计算机相关专业必修课程操作系统原理(第四版)课后练习题答案,欢迎大家下载~~~

2021-01-28

89个课件 Flash 源文件下载

89个课件 Flash 源文件下载,方便大家更改和学习。可以当模板直接应用.非常不错. 89个课件 Flash 源文件下载,方便大家更改和学习。可以当模板直接应用.非常不错.

2021-01-27

C#解析HL7消息的库

一个用C#编写的HL7消息的类库,可以申请对象调用其中的函数进行HL7消息解析。 一个用C#编写的HL7消息的类库,可以申请对象调用其中的函数进行HL7消息解析。

2021-01-26

空空如也

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

TA关注的人

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