Posts List

Sam Altman的创业手册(Startup Playbook)

译文:https://jxp73q7qjsg.feishu.cn/docx/WCNZdKDa4o2eUrxK5ElcfBXEnah 原文:https://playbook.samaltman.com/ 前言 在YC,我们花了很多时间给创始人们提供 ...

FFmpeg fast seek截图失败处理

在使用ffmpeg进行视频截图时,如果原始视频流的时间戳异常,可能会导致快速seek失效,需要做兼容性处理 关于ffmpeg seek的细节可以参考文档,语法上主要和ss参数的位置有关 快速截图 ffmpeg -ss 00:15:02 -i "http://living.suninf.net/live/xxx.m3u8" -vframes 1–f image2 1.jpeg 低速截图 如果出现报错,比如:O ...

使用docker环境开发CentOS下C++程序的实践

docker安装centos容器(映射本地目录) 本机一般都已经配置了git和版本管理工具,使用容器目录映射,方便代码的管理 比如: docker run -d --name live-server -v /Users/suninf/work/live-server:/home/admin/live-server <docker_image> vscode安装C++和远程开发插件 安装 Remote-Development 插件以及CPP调试所依赖的插件 在目标机上安装C++的开 ...

使用mapstruct做结构体映射

mapstruct使用字节码代码生成而不是反射来实现对象字段映射,效率比较BeanUtils之类的工具高。 使用说明 1、直接使用@Mapper注解装饰接口,比如: @Mapper public interface RoomConvertor { RoomConvertor INSTANCE = Mappers.getMapper(RoomConvertor.class); TextCheckRequestDTO convertor(TextCheckRequest req); TextCheckResponse convertor(TextCheckResponseDTO checkResult); } 2、使用@Mapping注解指定source和t ...

关于音频帧率与采样率

本文介绍音频的一些基础知识,比如客户端音频采集的常用指标: RTMP:44100HZ, 每帧1024采样,帧率43,23.2ms一帧 WEBRTC:48000HZ,每帧480采样,帧率100,10ms一帧 音频相关概念 通道数(channels) 声音 ...

提问的智慧(How To Ask Questions The Smart Way)

原文地址:http://www.catb.org/~esr/faqs/smart-questions.html 译文地址:https://github.com/ryanhanwu/How-To-Ask-Questions-The-Smart- ...

Java 函数可变参数

本文介绍java函数可变参数的使用,本质上Java可变参数是Java数组的语法糖。 例子 /** * 可变参数需要写在方法参数的最后面 */ private void printStrings(int count, String ... values) { for (int i=0; i<values.length; ++i) { System.out.println(values[i]); } } public void testVarargs() { // 多个参数 printStrings(0, "hello", "world"); // 数组 printStrings(0, new String[]{"hello", "world"}); // 列表转数组 List<String> list = new ArrayList<>(); list.add("hello"); list.add("world"); printStrings(0, list.toArray(new String[]{})); } 参考 https://blog.csdn.net/weixin_41676972/article/details/79660708 https://blog.csdn.net/ithomer/article/details/7532935 ...

Spring 进程命令行参数

本文介绍下Spring Boot工程传递命令行参数的一些说明。 启动Spring Boot项目时传递参数,有三种参数形式: 选项参数 非选项参数 系统参数 选项参数 选项参数,比如通过–-server.port来设置应用程序的端口。基本格式为--name= ...

俞军产品经理十二条

产品经理首先是用户。 站在用户角度看待问题。 用户体验是一个完整的过程。 追求效果,不做没用的东西。 发现需求,而不是创造需求。 决定不做什么往往比决定做什么更重要。 用户是很难被教育的,要迎合用户,而不是改变用户。 关注最大多数用户,在关键点上超越竞争 ...

CentOS7下FFmpeg的安装

centos7上手动安装ffmpeg还是比较麻烦的,官网有详细的编译指南,也可以参考之前的文章;本文直接使用yum来安装ffmpeg。 yum安装ffmpeg yum install epel-release yum localinstall --nogpgcheck https://download1.rpmfusion.org/free/el/rpmfusion-free-release-7.noarch.rpm yum install ffmpeg ffmpeg-devel 参考 https://linuxize.com/post/how-to-install-ffmpeg-on-centos-7/ ...

macOS下nginx的使用

安装nginx brew install nginx 配置文件 /usr/local/etc/nginx/nginx.conf 启动命令 brew services start nginx brew services stop nginx brew services restart nginx ...

关于Spring Boot jar包中的BOOT-INF和META-INF目录

本文介绍下Spring Boot打包的两个文件夹内容:META-INF和BOOT-INF。 META-INF META-INF文件夹是MANIFEST.MF文件的宿主。该文件包含有关JAR内容的元数据。例如,存在一个名为Main-Class的条目,该条目使用可 ...

Java try-with-resources使用

JDK7 开始新增了对需要关闭资源处理的特殊语法try-with-resources,主要是为了更好的进行资源的释放。 语法 try(资源变量=创建资源对象){ } catch() { } 当一个资源类实现了AutoCloseable接口close方法,在使用try-wit ...

基于Nacos开发Dubbo微服务

本文介绍如何使用Spring Boot注解的方式基于Nacos开发一个Dubbo微服务示例应用。 配置Nacos Nacos是阿里开源的配置中心:https://nacos.io/zh-cn/docs/what-is-nacos.html 1、下载 ...

Spring Bean条件创建

我们的应用可能部署在多个环境,有些依赖是环境隔离的,我们可能需要对部分Bean对象的创建是基于一些条件判断来生成。 Spring Bean有条件创建的机制,比如ConditionalOnProperty可以基于应用配置项来决定是否生成Bean对象。 比如: ...