python字符串格式化、字符串中插入变量

https://blog.csdn.net/qq_39478403/article/details/106146281

python检查字符串中是否包含列表中元素

https://blog.csdn.net/fengqianlang/article/details/129353270

mysql查看字符集

查看:https://deepinout.com/mysql/mysql-questions/388_hk_1710283235...
修改:https://blog.51cto.com/u_16213638/7307162
修改字段字符集:

ALTER TABLE your_table_name
CHANGE your_column_name your_column_name VARCHAR(255) /* 或其他适当的字段类型 */
CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;

字段字符集不影响其他字段或者表字符集
修改表字符集:

ALTER TABLE your_table_name
CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;

shell获取参数

$#获得参数个数
$*所有参数是一个参数
$@参数列表,用for args in "$@"遍历
$1`$2`$3获取第几个参数
shift参数向左移一格

[appadmin@localhost ~]$ sh shell.sh arg1 arg2 arg3
3
arg1 arg2 arg3
arg1 arg2 arg3
arg1
arg2
[appadmin@localhost ~]$ cat shell.sh
#!/bin/bash

echo $#
echo $*
echo $@
echo $1
shift
echo $1
[appadmin@localhost ~]$

其他复杂参考:https://blog.csdn.net/weixin_43999327/article/details/140064475

为啥服务器上存的segment时间都能连的上,放到MSE里就会少几秒钟?

原因未知;通过提高segment的帧率解决;我目前用的60帧;

我们可以看到start_timeduration都是连的上的,但是前端拿到的buffered列表确实不连续的:

{'filename': '/home/appadmin/segment_movies/episodes/Scavengers.Reign/season01/Scavengers.Reign.S01E01/segment_webm/output_time_0.webm', 'nb_streams': 2, 'nb_programs': 0, 'format_name': 'matroska,webm', 'format_long_name': 'Matroska / WebM', 'start_time': '0.000000', 'duration': '20.031000', 'size': '3913631', 'bit_rate': '1563029', 'probe_score': 100, 'tags': {'ENCODER': 'Lavf58.29.100'}}
{'filename': '/home/appadmin/segment_movies/episodes/Scavengers.Reign/season01/Scavengers.Reign.S01E01/segment_webm/output_time_1.webm', 'nb_streams': 2, 'nb_programs': 0, 'format_name': 'matroska,webm', 'format_long_name': 'Matroska / WebM', 'start_time': '20.023000', 'duration': '40.012000', 'size': '919495', 'bit_rate': '183843', 'probe_score': 100, 'tags': {'ENCODER': 'Lavf58.29.100'}}
Object { 0: {…}, 1: {…}, 2: {…}, 3: {…} }
  ​0: Object { start: 0.003, end: 5.007 }
  ​1: Object { start: 5.258, end: 19.897 }
  ​2: Object { start: 40.054, end: 57.771 }
  ​3: Object { start: 58.106, end: 60.024 }
  ​<prototype>: Object { … }

因为中间断了,所以在等待

为啥切割视频后,插入MSE中拼接会出现卡顿、掉帧的情况?

有极大的可能是因为切割的每一段的分辨率(resolution)、码率(bitrate)、帧率(framerate/fps)不相同。

视频就是由一幅幅图片组成的,在1秒钟内塞进足够多的、每一幅都比前一幅微动的图片,人眼看上去就想动起来一样
分辨率:每一幅图片有多少像素点(清晰度)
帧率:每一秒有多少幅图片
码率:每秒传输的bit数。动态指标,很多因素会影响码率,所以我们讨论的话前提是,除去讨论的因素其他条件都相同。分辨率越高,明显码率越高;帧率越高,明显码率越高;压缩比越高,明显码率越低;

指定帧率后,“ffmpeg是通过创建重复帧来满足设置帧率的”(https://blog.csdn.net/tugouxp/article/details/120281440)。本来就只丢了几帧(如果是30fps,就丢了1/30秒的画面),就算补上重复的画面,一般人眼也分辨不出来,而且是在线播放。
duplicate frames.png

ffmpeg -y -i ~/mnt.resource.moives/The.Fourth.Kind.2009.第四类接触. 双语字幕.HR-HDTV.AC3.1024X576.x264.mkv -b:v 2336k -bufsize 2336k -r 25 -vf scale=1024:576 -b:a 384k -ar 48000 -ac 2 -c:v libvpx -c:a libvorbis -map 0 -f segment -segment_time 00:00:20.00 -segment_format webm segment_webm/output_time_%d.webm
-y:输出有重名,直接覆盖
-b:v:设置视频码率
-bufsize:设置码率转换缓冲大小
-r:设置帧率
-vf:设置视频格式,除了例子中的分辨率,还能甚至很多格式
-b:a:设置音频码率
-ar:设置音频赫兹数
-ac:设置音频音道数
-c:v:设置视频编码
-c:a:设置音频编码
-map:源文件轨映射到输出文件轨:http://trac.ffmpeg.org/wiki/Map
-f:设置输出格式

linux卸载软件后,命令依然还在并且不能执行

卸载后使用tag不全还能出现命令,执行出现类似报错:command not found: /usr/bin。执行:hash -r解决。
微信截图_20240822092632.png

linux后台执行

nohup {command} {重定向命令} &
&:让命令在后台执行,终端退出后命令仍旧执行。
0:标准输入(stdin)
1:标准输出(stdout),默认屏幕
2:标准错误(stderr),默认屏幕
{重定向命令}:覆盖>、追加>>,从左往右结算

  • 2>/dev/null:将标准错误重定向到黑洞;
  • >/dev/null 2>&1:相当于1>/dev/null,把标准输出重定向到“黑洞”。标准错误2重定向位置等于(&1)标准输出1,也是“黑洞”
  • 2>&1 >/dev/null:将标准错误2重定向到标准输出1。然后结算标准输出1进了“黑洞”。也就是标准输出进了黑洞,错误输出打印到屏幕;

centos升级

https://wiki.almalinux.org/elevate/ELevate-quickstart-guide.h...

ssh连接持久化

如何保持ssh连接久到离谱,大家都知道有ServerAliveCountMaxServerAliveInternalClientAliveCountMaxClientAliveInterval这四个配置,千万【别搞反了】导致无效。单位是秒。
Server开头的配置配置在当前终端(你从哪里连接过去的机器)(客户端)。意思为客户端多久向服务端发送活包;
Client开头的配置配置在目标终端(你想要连接的机器)(服务端)。意思为服务端多久向客户端发送活包;
windows机器作为客户端的配置一般在~/.ssh/config
图片.png
windows机器作为服务端的配置,需要根据安装的软件来定位,安装openssh、putty、cpolar来使windows变为一台ssh服务器
linux作为客户端的配置一般在/etc/ssh/ssh_config
linux作为服务端的配置一般在/etc/ssh/sshd_config
图片.png

在其他路径执行npx webpack

一般只能在包安装路径(node_modules)下执行。我想把node_module从代码目录里抽出来。

  1. 在理想位置执行npm install {package}
  2. 将webpack配置文件(webpack.config.js)可以放在代码目录
  3. 将配置文件中的路径都改成绝对路径,添加包查询路径配置段resolve
  4. 在理想位置执行npx webpack --config {webpack配置文件路径}
  5. 示例

    const path = require('path');
    
    module.exports = {
     entry: "/home/appadmin/fupiwu/frontend/js_rely/mainjs/origin.js",
     output: {
         path: "/home/appadmin/fupiwu/frontend/js_rely/mainjs",
         filename: "origin-webpack.js"
     },
     // mode: "none",
     // mode: "production",
     mode: "development",
     devtool: "cheap-module-source-map",
    
    
     //监听
     watch: true,
     watchOptions: {
         aggregateTimeout: 300, //延时重构
         ignored: "/usr/local/lib/fupiwu-node_modules/node_modules/", //忽略
     },
    
     //包查询路径
     resolve: {
         modules: [
             path.resolve("/usr/local/lib/fupiwu-node_modules/node_modules"),
         ]
     },
    
     //loader查询路径
     resolveLoader: {
         modules: [
             path.resolve("/usr/local/lib/fupiwu-node_modules/node_modules"),
         ]
     },
    
     // optimization: {
     //     minimize: false,
     // },
    
     module: {
         rules: [
             {
                 test: /\.js$/,
                 exclude: /(node_modules|bower_components|io\.js$)/,
                 use: {
                     loader: "babel-loader",
                     options: {
                         presets: ["@babel/preset-react"],
                         plugins: ["@babel/plugin-proposal-class-properties"]
                     }
                 }
             },
             {
                 test: /\.css$/,
                 use: [
                     "style-loader",
                     {
                         loader: "css-loader",
                         options: {
                             url: false,
                         }
                     }
                 ],  
             },
             {
                 test: /\.(png|jpg|gif)$/,
                 use: [
                     {
                         loader: "file-loader",
                     }
                 ]
             }
         ]
     }
    };

各类官网

npm:https://docs.npmjs.com/
react:https://react.dev/
reactrouter:https://reactrouter.com/en/main
ffmpeg:https://ffmpeg.org/
webpack:https://webpack.js.org/
chart.js:https://www.chartjs.org/docs/latest/
mdn MediaSource:https://developer.mozilla.org/en-US/docs/Web/API/MediaSource
git:https://git-scm.com/docs
CSS grid:https://css-tricks.com/snippets/css/complete-guide-grid/
CSS selector:https://www.w3cschool.cn/css/css-selector.html
组合贷款计算器:http://www.fangdaijisuanqi.cc/jisuanqi/zuhe.aspx
mysql:https://dev.mysql.com/doc/refman/5.7/en/date-and-time-functio...
c语言中文网:https://c.biancheng.net/index.html


BreezingSummer
45 声望0 粉丝

引用和评论

0 条评论