Skip to content

Instantly share code, notes, and snippets.

View Bingnan's full-sized avatar
:octocat:
Working from home

段兵楠 Bingnan

:octocat:
Working from home
  • 美团
  • 北京
View GitHub Profile
@PurpleBooth
PurpleBooth / README-Template.md
Last active June 5, 2025 09:28
A template to make good README.md

Project Title

One Paragraph of project description goes here

Getting Started

These instructions will get you a copy of the project up and running on your local machine for development and testing purposes. See deployment for notes on how to deploy the project on a live system.

Prerequisites

@harlow
harlow / golang_job_queue.md
Last active March 29, 2025 04:55
Job queues in Golang
@CMCDragonkai
CMCDragonkai / http_streaming.md
Last active May 9, 2025 01:58
HTTP Streaming (or Chunked vs Store & Forward)

HTTP Streaming (or Chunked vs Store & Forward)

The standard way of understanding the HTTP protocol is via the request reply pattern. Each HTTP transaction consists of a finitely bounded HTTP request and a finitely bounded HTTP response.

However it's also possible for both parts of an HTTP 1.1 transaction to stream their possibly infinitely bounded data. The advantages is that the sender can send data that is beyond the sender's memory limit, and the receiver can act on

@glen-cheney
glen-cheney / encoding-video.md
Last active November 24, 2024 10:09
Encoding video for the web

Encoding Video

Installing

Install FFmpeg with homebrew. You'll need to install it with a couple flags for webm and the AAC audio codec.

brew install ffmpeg --with-libvpx --with-libvorbis --with-fdk-aac --with-opus
@Akagi201
Akagi201 / gop.md
Last active April 13, 2017 08:07

这应该是gop影响的 编码的时候要指定一下gop大小 如果要低时延gop大小建议不要小于frame rate的大小 切片的时候除了考虑到时间问题,还要考虑从关键帧那里下刀 如果关键帧很长的话,这边还会强制切片,强制切切的算法是按最大10Mb码率来算它的总大小 超过了,不管有没有关键帧都要切片 所以当关键帧很大的时候会存在你这个问题,码率越大,切片越小 换过来说,延时越小 因此,问题主要解决办法是减小gop大小 但减小gop大小,会影响质量,相同码率,gop越大,质量越好,反之越差,这要做一些折中

git config --global https.proxy http://127.0.0.1:1080
git config --global https.proxy https://127.0.0.1:1080
git config --global --unset http.proxy
git config --global --unset https.proxy
npm config delete proxy

video subtitle

ffmpeg -i *.mp4 -vf subtitles=*.srt output.mp4

element stream to ts

  • ffmpeg -i audio.aac -i ch2.h264 -acodec copy -vcodec copy -f mpegts out.ts

rtsp 2 rtmp

  • ffmpeg -rtsp_transport tcp -i rtsp://fuck.com/fuck/fuck -c copy -f flv rtmp://shit.com/shit/shit

截图片

adobe 官方标准

  • F4V/FLV file format (其中, Annex E 为 FLV File Format)
  • 有一些 box 是 Adobe 自定义的, 其他的 box 是标准 ISO/IEC 14496-12:2008 (MPEG-4 Part 12) 定义的.
  • F4V 几乎跟 MP4 一样(通常修改文件名为 .mp4 也能播放).
  • FLV 是 Adobe Flash Video 的旧的标准.
  • FLV, F4V, MP4都可以包含 H.264 编码的视频.

FLV文件格式解析

  • 存储多字节数字用大端序.
@v5tech
v5tech / ffmpeg.md
Last active October 14, 2024 19:57
ffmpeg视频合并、格式转换、截图

使用ffmpeg合并MP4文件

ffmpeg -i "Apache Sqoop Tutorial Part 1.mp4" -c copy -bsf:v h264_mp4toannexb -f mpegts intermediate1.ts
ffmpeg -i "Apache Sqoop Tutorial Part 2.mp4" -c copy -bsf:v h264_mp4toannexb -f mpegts intermediate2.ts
ffmpeg -i "Apache Sqoop Tutorial Part 3.mp4" -c copy -bsf:v h264_mp4toannexb -f mpegts intermediate3.ts
ffmpeg -i "Apache Sqoop Tutorial Part 4.mp4" -c copy -bsf:v h264_mp4toannexb -f mpegts intermediate4.ts
ffmpeg -i "concat:intermediate1.ts|intermediate2.ts|intermediate3.ts|intermediate4.ts" -c copy -bsf:a aac_adtstoasc "Apache Sqoop Tutorial.mp4"
@imcaspar
imcaspar / mmcat.sh
Created February 3, 2014 02:17
mmcat.sh
#!/bin/bash
################################################################################
#
# Script name: MultiMedia Concat Script (mmcat)
# Author: burek ([email protected])
# License: GNU/GPL, see http://www.gnu.org/copyleft/gpl.html
# Date: 2012-07-14
#
# This script concatenates (joins, merges) several audio/video inputs into one