[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖

[其他] bmp3 命令行万能播放器

本帖最后由 slimay 于 2021-8-19 19:18 编辑

bmp3 命令行 万能播放器
bmp系列第三方的简介
第一代 bmp.exe  由 大佬plp626 发现的 cmd 窗口显示图片, 由此开启了批处理 图形游戏的黄金时代, 堪称 批处理界的第一次科技 革 命.由此衍生的image系列第三方,培养了一大堆批处理图形游戏开发高手,他们至今依就活跃在bat吧和各大批处理论坛 . 参考下载:  http://www.bathome.net/thread-11364-1-1.html
第二代 bmp2.exe 我进行了些许改进, 实现批量播放图片, 也就是逐帧动画. 参考帖子9楼下载: http://www.bathome.net/thread-59519-1-1.html
第三代 bmp3.exe 主要不想费脑, 直接借用ffmpeg库, 套个壳, 批处理 直接 播放视频, 懒得写声音了,方便自己使用其他第三方配音.  参考下载: http://cmd1152.ys168.com/  网盘目录下的 文件区 \ bmp3命令行万能播放( 最新 ).zip


下载加强版 ,请直接下载 网盘目录下的 文件区 bmp3(加强版).zip, 加强版支持缩放参数(第五个参数),支持暂停p键,支持快进d, 兼容xp系统, 经测试, 无显卡的xp系统,依然能8%的cpu占用率流畅运行,毫无卡的. 如果有独立显卡, 可能会造成不兼容性.
流畅的一塌糊涂,可以自行添加延时时长.
  1. 用法: bmp3     视频文件路径     延时时间秒可以0.几秒     在窗口显示的横坐标位置     在窗口显示的纵坐标位置
复制代码
(延时, 坐标也可省略不写,默认 0)


bmp3核心源码, 就是用GDI把每一帧BMP 画出来, 送佛送到西, 再也不用转图片了
  1. static int show_frame(Graphics& graph, int xPos, int yPos, AVCodecContext *avctx, struct SwsContext *img_convert_ctx, AVFrame *frame, int *frame_count, AVPacket *pkt, int last )
  2. {
  3. int len, got_frame;
  4. len = avcodec_decode_video2( avctx, frame, &got_frame, pkt );
  5. if( len < 0 )
  6. {
  7. fprintf( stderr, "Error while decoding frame %d\n", *frame_count );
  8. return len;
  9. }
  10. if( got_frame )
  11. {
  12. int numBytes = avpicture_get_size( AV_PIX_FMT_BGR24, frame->width, frame->height );
  13. uint8_t* buffer = ( uint8_t * )av_malloc( numBytes * sizeof( uint8_t ) );
  14. AVFrame *pFrameRGB = av_frame_alloc();
  15. avpicture_fill( ( AVPicture * )pFrameRGB, buffer, AV_PIX_FMT_BGR24, frame->width, frame->height );
  16. sws_scale( img_convert_ctx, frame->data, frame->linesize, 0, frame->height, pFrameRGB->data, pFrameRGB->linesize );
  17. Bitmap bitmap(frame->width, frame->height, frame->width *3, PixelFormat24bppRGB, pFrameRGB->data[0]);
  18. graph.DrawImage(&bitmap, xPos, yPos);
  19. av_freep( &pFrameRGB[0] );
  20. av_free( pFrameRGB );
  21. ( *frame_count )++;
  22. }
  23. if( pkt->data )
  24. {
  25. pkt->size -= len;
  26. pkt->data += len;
  27. }
  28. return 0;
  29. }
复制代码

你的bmp2.exe被我的程序删除了,我已经加白名单了
梦依旧在,只是,心有余而力渐有不足
年年岁岁花相似,岁岁年年人不同

TOP

能不能重新发
梦依旧在,只是,心有余而力渐有不足
年年岁岁花相似,岁岁年年人不同

TOP

bmp3运行时左上角会弹帮助,你修复一下
梦依旧在,只是,心有余而力渐有不足
年年岁岁花相似,岁岁年年人不同

TOP

回复 3# cmd1152
嗯,已经重新上传了, 参见 bmp3命令行万能播放(最新).zip

TOP

回复 5# slimay


    你的bmp2和bmp3被删除了,能不能重新发
梦依旧在,只是,心有余而力渐有不足
年年岁岁花相似,岁岁年年人不同

TOP

回复 5# slimay


    我从后台恢复一下bmp3
梦依旧在,只是,心有余而力渐有不足
年年岁岁花相似,岁岁年年人不同

TOP

太好了YYDS
为什么说我在做无用的东西呢

TOP

回复 5# slimay
在Windows10下,即使是最新版,也会弹出帮助...[而且窗口与视频比例不协调...]
Why join the navy, if you can be a pirate? - Steve Jobs

TOP

不支持xp32啊,无法定位程序输入点
为什么说我在做无用的东西呢

TOP

回复 9# HOPE2021
能截个图吗? 我看看视频比例 歪成啥了? 你截个图上传到 cmd1152的网盘啊

TOP

回复 10# 看电池
稍等,我再测试下xp, xp系统太老了, 不过一会就能让你xp跳起舞来

TOP

是要下载ffmpeg吗
为什么说我在做无用的东西呢

TOP

回复 11# slimay


    可以上传到 BATHOMEPNG 目录
梦依旧在,只是,心有余而力渐有不足
年年岁岁花相似,岁岁年年人不同

TOP

回复 12# slimay


    谢谢awa
(其实bat也很老)
为什么说我在做无用的东西呢

TOP

返回列表