极客范|自制墨水屏相框:一年时间只放一部电影( 二 )
python helloworld.py
本文插图
【极客范|自制墨水屏相框:一年时间只放一部电影】
这个脚本会随机选择一个 mp4 文件 , 随机提取一帧、调整大小并处理抖动 , 最后展现在屏幕上 。 以下是部分关键代码:
# Use ffmpeg to extract a single frame from the .mp4 file, resize it, letterbox it and save it locally
def generate_frame(in_filename, out_filename, time, width, height):
(
ffmpeg
.input(in_filename, ss=time)
.filter('scale', width, height, force_original_aspect_ratio=1)
.filter('pad', width, height, -1, -1)
.output(out_filename, vframes=1)
.overwrite_output
.run(capture_stdout=True, capture_stderr=True)
)
# Import, initialise and clear the display
from waveshare_epd import epd7in5_V2
epd = epd7in5_V2.EPD
epd.init
epd.Clear
# Check how many frames are in the movie
frameCount = int(ffmpeg.probe(inputVid)[‘streams’][0][‘nb_frames’])
# Pick a random frame
frame = random.randint(0,frameCount)
# Convert that frame count to Timecode used by ffmpeg
msTimecode = “%dms”%(frame*41.666666)
# Open the saved frame in PIL
pil_im = Image.open(“grab.jpg”)
# Convert the image to a 1 bit bitmap (Just zeros and ones)
# using Floyd Steinberg dithering
pil_im = pil_im.convert(mode=’1',dither=Image.FLOYDSTEINBERG)
# display the image
epd.display(epd.getbuffer(pil_im)) 超慢速电影播放器
如果上面的步骤都正常工作 , 那么你可以通过 SFTP 传输更多视频文件到 SlowMovie/Video 目录 。
运行下面的脚本查看效果 。
python slowmovie.py
还有更多参数可以使用 , 例如
python slowmovie.py -h
将保存播放进度 , 以便在下次启动时继续播放 。
python slowmovie.py -f 2001.mp4 -d 150 -i 1
将播放 2001.mp4 文件 , 并以每 150 秒更新一帧画面 。 也就是每小时播放 24 帧 。
最后来设置开机运行 。
sudo nano /etc/profile
添加下面两行:
cd SlowMovie
sudo python slowmovie.py
按下 Ctrl+O 保存 , 按下 Ctrl+X 退出 。
完成之后 , 下次重启的时候就可以直接进入播放状态了 。
本文插图
所用到的代码文件请在项目文件库中下载:
https://make.quwj.com/project/339
点击视频号看
大神制作《环太平洋》危险流浪者号模型
推荐阅读
- 鲫鱼|冬钓大板鲫自制窝料配方,成本低效果不错,制作特别简单
- 腐殖土|营养土的自制方法,兰友说:这样就简单了,明天开始做
- 鲤鱼|冬季天冷鲫鱼鲤鱼不好钓?自制几款饵料窝料,效果强于一般鱼饵
- 草木灰|养花缺少磷钾肥学会自制技巧,往花盆里放一点养啥植物都旺
- 饵料|饵料也可以复古,试试这两种自制饵,大鲫一条接一条
- 自制|冬季野钓鲫鱼,用这些自制饵料,诱鱼、留鱼、上鱼远胜其它鱼饵
- 红蜘蛛|养花自制杀菌杀虫水,10天浇一勺,不生虫不得病,长得太旺!
- 自制|养花没有盆,3个妙招,就能自制出漂亮的花盆,阳台上种了好多花
- 矿泉水瓶|钓鱼一直在用的自制小药,想要配方的看过来,针对鲫鱼和鲤鱼
- 肥料|养花自制肥料小技巧淘米水里加啥营养好