首页
友链
统计
Search
1
2024年最新教程 5分钟注册美区苹果ID 无需绑定信用卡
4,079 阅读
2
小米手机刷第三方ROM之Redmi Note 9 Pro(成功刷入Pixel Experience并成功root)
1,975 阅读
3
小米刷机教程,红米K40刷机第三方ROM教程
1,803 阅读
4
Linksys WRT1900ACS 刷OpenWrt固件教程
1,698 阅读
5
TikTok怎么在国内使用
1,299 阅读
记录
技术
随笔
电子书
登录
Search
标签搜索
Linux
Ubuntu
YouTube
openwrt
Windows
macOS
RustDesk
ipv6
解压缩
黑苹果
科学上网
vpn加速
美区苹果ID
路由器
Linksys1900ACS
samba
路由器固件
系统
Hacker
华为
Gimo
累计撰写
29
篇文章
累计收到
33
条评论
首页
栏目
记录
技术
随笔
电子书
页面
友链
统计
搜索到
19
篇与
的结果
2021-12-24
ffmpeg常用命令
ffmpeg这个软件有多厉害想必不用过多介绍了吧,它几乎就是所有视频播放器和音频播放器的源头。什么暴风影音、快播等等,都是用它套了个外壳。剪视频示例,这里我们要把一个名为video.mp4的视频剪辑出来,并重命名为cut.mp4开始时间 01:55结束时间 06:22ffmpeg -ss 00:01:55 -i video.mp4 -to 00:06:22 -copyts cut.mp4给视频添加字幕ffmpeg -i 原视频.mkv -i 字幕文件.srt -c copy 输出的视频.mkv将嵌入字幕转为硬编码字幕有时候我们在播放器能看到有字幕,但放到网页中却看不到字幕了,这时候可能需要把内嵌字幕转为硬编码字幕ffmpeg -i input.mp4 -vf "subtitles=input.mp4" -c:v libx264 -c:a aac output.mp4 替换掉已经有的字幕ffmpeg -i 原视频文件.mp4 -i 字幕文件.srt -c copy -map 0 -map -0:s -map 1 输出的视频.mp4参数说明:-map 0:选择第一个输入文件的所有流-map -0:s:删除第一个输入文件中的subtitles流(即删除字幕)-map 1:选择第二个输入文件中的流乱码问题下载的字幕在Mac打开发现是乱码,解决方法是用命令行转码iconv -c -f GB2312 -t UTF-8 乱码的字幕.srt >> 输出的字幕.srt视频转码很简单,用-i参数即可。提取音频也是一样,改一下输出的后缀即可ffmpeg -i video.flv video.mp4提取流(音频、字幕)有时需要指定流来完成格式转换,比如将一个 MP4 视频文件转为 AAC 音频文件(此处实质上是直接提取):ffmpeg -i video.mp4 -c:a copy audio.aac此处的 -c:a 表示音频流;视频流 -c:v 与字幕流 -c:s 自然也类似。 注意:如果音频流与容器冲突时,你需要将 copy 改为正确的编解码器(或者删去 -c:a copy 来让 FFmpeg 自动选择),以执行重编码。对于内挂了字幕的视频文件,也可以将其字幕单独提取出来,例如:ffmpeg -i video.mkv -c:s copy subtitle.srt压缩图片还在满世界找好用的图片压缩工具?ffmpeg强大到你无法想象,实际测试,一个简单的命令就把一张14.4MB的图片压缩到了950KB。丝毫看不出画质有什么损失。令我大为震惊。我没有加任何的参数,只是用了一句 ffmpeg -i 的命令而已。ffmpeg -i 2.jpg 3.jpg也可以加-q参数比如 -q 5 范围一到一百。数字越大,压缩得越小。示例:ffmpeg -i 2.jpg -q 5 out.jpg经实际测试发现 使用-q 99 或100 参数可以压缩到极限。其实用默认不加参数的已经足够了。以下是实际测试一张14M 的图片用-p参数 从1到30 测试得到的结果:合并视频和音频条件是视频中没有声音 ffmpeg -i 视频文件名称.mp4 -i 音频文件名称.wav -c:v copy -c:a aac -strict experimental 合并后输出的名称.mp4
2021年12月24日
245 阅读
0 评论
0 点赞
2021-12-21
Ubuntu 20.04 挂载smb共享网络硬盘
最近在路由器Linksys1900ACS的OpenWRT上面挂了个4TB的硬盘进行局域网共享,后来弄了个迷你小主机不知道要拿来干嘛,于是装上了Ubuntu 20.04系统进行各种测试。其中之一就是想挂载一下smb共享硬盘,网上查了一下,经过多次试错,终于成功的实现了开机挂载。现记录一下以防忘记。挂载共享smb网络硬盘需要安装 cifs-utilssudo apt-get install cifs-utils先看例子:假设我的smb共享文件夹路径在 192.168.1.1/c 用户名为root 密码为toor我现在想把它挂载在Ubuntu的 /home/ZhangSan/nas目录下,注意的是:ZhangSan是我Ubuntu的用户名。那么我可以编辑启动挂载文件sudo vim /etc/fstab在末尾加入以下代码://192.168.1.1/c /home/ZhangSan/nas/ cifs user=root,pass=toor,vers=2.0,uid=ZhangSan,domain=ZhangSan实际测试过,如果省略掉后面的uid和domain 则会没有写入的权限。重启后即可自动挂载
2021年12月21日
122 阅读
1 评论
0 点赞
2021-11-16
Ubuntu 20.04 首次安装配置
{dotted startColor="#6b70ff" endColor="#fab51e"/}Linux安装后要注意时间和日期,如果时间和日期错误,会有很多的坑,比如更新软件源的时候会提示错误。以及一些莫名其妙的问题。所以首先我们要用date命令查看当前的时间和时区查看时区timedatectl更改时区为中国上海timedatectl set-timezone Asia/Shanghai更改时间要用双引号包起来 示例把日期改为2022年1月15日21点37分0秒date -s "20220115 21:37:00"最好是安装时间同步的软件ntpdate,强制同步一下时间。apt install ntpdate ntpdate ntp.aliyun.com ntpdate time.windows.com{alert type="info"}使用ntpd服务,要好于ntpdate加cron的组合。因为,ntpdate同步时间会造成时间的突变和跳跃,对一些依赖时间的程序和服务会造成影响。比如sleep,timer等。而且ntpd服务可以在修正时间的同时,修正CPU Tick。因此理想的做法为,在开机的时候,使用ntpdate强制同步时间,在其他时候使用ntpd服务来同步时间。{/alert}apt install ntp ntpd -s -d安装opens-serversudo apt install openssh-server设置root密码sudo passwd root修改ssh配置文件 允许root登录sudo vim /etc/ssh/sshd_config在vim中按下/ 搜索定位PermitRootLogin,可直接查找:/PermitRootLogin/PasswordAuthentication去掉注释,修改为{message type="info" content=" PermitRootLogin yesPasswordAuthentication yes"/}保存输入以下命令 设置root密码passwd 然后输入一下命令重启ssh服务即可生效systemctl restart sshUbuntu修改默认sh为bashUbuntu版本默认sh都是使用的dash查看目前的shls -al /bin/sh结果为/bin/sh -> dash执行下面命令选择不使用默认dashsudo dpkg-reconfigure dash选择no查看切换后的结果ls -al /bin/sh结果为/bin/sh -> bash软连接python3为默认sudo ln -s /usr/bin/python3 /usr/bin/python安装YouTube-dlwget https://yt-dl.org/downloads/latest/youtube-dl -O /usr/local/bin/youtube-dlchmod a+rx /usr/local/bin/youtube-dlUbuntu 20.04 A start job is running for wait for network to be Configured 解决办法比较少见的情况,碰到的话,一般是因为不具备DHCP自动分配IP造成设备尝试获取IP等待过久。编辑配置文件vim /etc/systemd/system/network-online.target.wants/systemd-networkd-wait-online.service修改内容:[Service]Type=oneshotExecStart=/lib/systemd/systemd-networkd-wait-onlineRemainAfterExit=yes下方加入:TimeoutStartSec=2sec修改后示例:[Service]Type=oneshotExecStart=/lib/systemd/systemd-networkd-wait-onlineRemainAfterExit=yesTimeoutStartSec=2sec查看主机名称hostnamectl更改主机名hostnamectl set-hostname 主机名称更新/etc/hostssudo vim /etc/hosts127.0.0.1 localhost127.0.1.1 新主机名安装ffmpegapt install ffmpeg安装aria2apt-get install aria2 -yYouTube-dl调用aria2下载的方法:youtube-dl 视频网址 --external-downloader aria2c --external-downloader-args "-x 16"{alert type="info"}–external-downloader aria2c #调用外部下载工具aria2c–external-downloader-args #外部下载工具指定参数-x 16 #表示进程数,aria2最高只能16进程{/alert}screen的用法:{alert type="info"}screen + 要执行的命令离开 screen在 screen 终端 下 按下 Ctrl+a d键重新连接离开的 screen 终端screen -ls //显示已创建的screen终端 screen -r 2276 //连接 screen_id 为 2276 的 screen终端{/alert}vi命令编辑文件时,使用上下左右方向键和删除键会出现ABCD各种字符,类似键盘失灵,不能正常换行和删除。解决方法用vi 打开/etc/vim/vimrc.tiny,按ESC后,然后按冒号,接着输入以下两条命令:set nocompatibleset backspace=2输入以上两条命令后,可以正常使用方向键和删除键。然后将这两条命令写入此文件。保存退出。{lamp/}CentOS 7 首次安装的三个巨坑安装完后无网络CentOS 7 默认居然是关闭网卡的,实在想不通为啥要这样设计。{message type="info" content="解决办法,输入命令 ip addr 查看网卡名称,并且记住网卡名称,因为每个人的都可能不一样。然后 cd /etc/sysconfig/network-scripts 到这个文件夹,用vi打开网卡配置文件:比如: vi ifcfg-ens3cs把ONBOOT=no,改成yes 保存退出。再输入:systemctl restart network 重启网络。就可以ping通了。"/}开启root远程登录默认关闭root远程登录的{message type="info" content="解决方法:修改配置文件vi /etc/ssh/sshd_config把下面这两个去掉注释,改为yes,保存退出。PermitRootLogin yesPasswordAuthentication yes然后重启ssh服务service sshd restart就解决了。"/}更换内核的时候提示:/boot/grub2/grub.cfg 找不到,请检查-就是安装魔改版BBR加速要更换内核的时候,跳出这个来。{message type="info" content="解决办法:yum install -y grub2 //预防万一先安装一下grub2grub2-mkconfig -o /boot/grub2/grub.cfg //重建引导配置然后就可以继续更换内核了。"/}
2021年11月16日
353 阅读
0 评论
0 点赞
2020-12-04
openwrt开启https远程访问
自从购买了LinksysWRT1900这个智能路由之后,折腾就没停止过,遇到的坑已经比我走过的桥要多了都。之前我已经实现了用域名远程访问的功能,趁着最近有空闲的时间,顺便把开启https也给解决了。记录一下折腾的经过。openwrt要实现远程访问,首先要有一个域名,但是网上那些所谓的教程都是写得不清不楚的,甚至连思路都给搞错了。真是感叹中文互联网环境的恶劣。比如,他们会教你,要实现远程访问,需要做内网穿透,用什么frp,nps,花生壳…等等不靠谱的东西。几十万粉丝的UP主讲的东西纯属娱乐,但那些可以忽悠小白。实现远程访问路由器管理界面有这么复杂么,比如用frp做内网穿透的,首先你得有一台vps做跳板,访问路由器的流量全部都要经过vps,如果这台vps在国外,那么你访问自己家的路由器界面,电信号绕了半个地球才到路由器,速度肯定慢很多,还浪费流量 浪费钱。那么,有没更简单的方法呢?当然有,只是很多人没想到而已,其实要解决这个问题很简单,写个脚本即可搞定,不需要什么frp nps 花生壳…等等内网穿透。。只需要有一个域名即可。我用的是Godaddy的域名实现原理如下:首先去狗爹界面申请一个API备用 {lamp/}然后写个自动更新IP地址的脚本上传路由器,并赋予执行的权限。在路由器设置定时任务,比如每隔十分钟执行一次脚本检查路由器的IP地址有没改变,如果IP地址改变了,脚本则执行狗爹的API更改IP地址,IP地址缓存在路由器里,每次脚本执行检查之后,会对比缓存中上一次的IP地址,如果IP地址没变化,则不执行api改变域名中的地址。这就实现了很多人只能通过ddns工具才能实现的功能——即把一个动态的IP和域名进行绑定。{lamp/}{lamp/}{lamp/}我观察过,电信的IP最长是5天左右就会自动更换一次,当然,如果重启了路由器,重新拨号的时候会立刻改变。然后在防火墙设置一下端口转发,即可通过外网访问路由器的管理界面了,如下图:{lamp/}{lamp/}但是现在只是能通过域名http+端口访问,还不能通过https的方式访问,要解决这个问题,openwrt还需要安装Acme、Acme-dnsapi、openSSL、uHTTPd之前为了安装这几个ipk,折腾了好久都是各种报错,装不上去。一怒之下自己编译了一个固件,直接把这些ipk编译进去,就解决了。必备的ipk还包括:bash、curl编译openSSL的时候也踩到了一个坑,就是因为OpenSSL和另外一个SSL有冲突,死活编译不过去。要取消其中一个才行。如下图:{lamp/}当Luci界面有了Acme和uHTTPd以上这几个组件时,开启https就变得简单多了,设置如下图:经过以上的设置,证书脚本会定期自动更新,你无需再操心证书的续期了,一切都是自动化。真棒!然后我们就可以愉快的通过https来访问路由的管理界面啦!我还配置了电脑的网络唤醒功能,以后可以远程把家里的电脑开机,然后用远程桌面连接上去,这样就可以远程用手机操控电脑了。感觉自己好棒 哈哈~另外还在路由器挂了一个4TB的硬盘,有什么资料都可以随时远程怼进去或者取出来,相当于有了一个随身携带的4TB硬盘。要下载小姐姐什么的,直接用路由器里面的Aria2下载,24小时在线不关机 哈哈~{lamp/}
2020年12月04日
336 阅读
1 评论
0 点赞
2020-11-01
Windows10子系统Ubuntu忘记密码
比如我忘记一个叫做:SMM 账号的密码恢复Ubuntu子系统SMM账号密码的步骤为:按win+X键打开Windows Powershell,输入ubuntu config --default-user root切换到root模式重新打开Ubuntu子系统,就可以看到已经变成了root账户,然后使用passwd命令修改密码passwd SMM然后回到Windows Powershell 输入:ubuntu config --default-user SMM切换回原来的账户搞定!{lamp/}
2020年11月01日
119 阅读
0 评论
0 点赞
1
2
3
4