当前位置: 首页 > news >正文

可以建设一个网站如何做网站地图视频

可以建设一个网站,如何做网站地图视频,自己做游戏app的网站吗,网站推广的方法有哪些?1.不用png#xff0c;用AVFrame 2.合流 3.图片抠图透明 (1.)mp4扣yuv图#xff0c;(2)用1.把一张yuv标记为透明然后av_hwframe_transfer_data到GPU (3)用抠图算法函数对yuv进行处理 (4) qsv的h264_qsv只支持nv12和qsv#xff0c;但qsv本身并不限制像素格式#xff0c;比如在…1.不用png用AVFrame 2.合流 3.图片抠图透明 (1.)mp4扣yuv图(2)用1.把一张yuv标记为透明然后av_hwframe_transfer_data到GPU (3)用抠图算法函数对yuv进行处理 (4) qsv的h264_qsv只支持nv12和qsv但qsv本身并不限制像素格式比如在qsv里可以用vpp_qsvformat输出各种像素格式。因此以上第二种方法可能可行。 av_hwframe_transfer_data转换不了可能是硬件帧函数配置的像素格式出的问题。 ffmpeg -y -i TJTV.png -vf colorkey0x0000FF:0.5:0.0 -c:v png t.png0x0000FF六位每两位分别表示红绿蓝因此它是对rgb像素进行透明标记。 0.5表示蓝色的范围容差值范围为0.01-1数值越大容错越大。 0.0是alpha通道的阀值为0表示完全透明实测这个值作用不明显。 对于TJTV.png可以看到它的编码和封装方式都是png它的像素格式为rgba。 Stream #0:0: Video: png, rgba(pc), 280x279 [SAR 2835:2835 DAR 280:279], 25 fps, 25 tbr, 25 tbn 这个命令只能对rgb的像素格式进行透明标记但是对yuv得不能会导致花屏。只有argb、rgba等带透明度格式的像素格式才能进行抠图透明标记。 透明的原理是对rgb数据逐个像素处理修改rgb值达到对特定的像素进行透明标记。 透明的原理是对rgb或yuv增加第四个Alpha通道这个通道的值由一个byte表示不同的值表示透明程度不同Alpha的值与其他yuv、rgb值作用来改变灰阶度来达到透明效果。 chromakey与colorkey的区别官网给了这四个例子 ffmpeg -i input.png -vf colorkeygreen out.pngffmpeg -i background.png -i video.mp4 -filter_complex [1:v]colorkey0x3BBD1E:0.3:0.2[ckout];[0:v][ckout]overlay[out] -map [out] output.flvffmpeg -i input.png -vf chromakeygreen out.pngffmpeg -f lavfi -i colorcblack:s1280x720 -i video.mp4 -shortest -filter_complex [1:v]chromakey0x70de77:0.1:0.2[ckout];[0:v][ckout]overlay[out] -map [out] output.mkvclolorkey是对yuv数据进行处理但它的三个参数值依然和colorkey同样的用法。对yuv进行透明标记后如果再次编码那么标记就会失效。同时如果对rtb图像进行标记后如果转为yuv则标记同样失效并且花屏。 以下是去除绿色背景。 ffmpeg -h filtercolorkeyFilter colorkeyTurns a certain color into transparency. Operates on RGB colors.slice threading supportedInputs:#0: default (video)Outputs:#0: default (video) colorkey AVOptions:color color ..FV.....T. set the colorkey key color (default black)similarity float ..FV.....T. set the colorkey similarity value (from 1e-05 to 1) (default 0.01)blend float ..FV.....T. set the colorkey key blend value (from 0 to 1) (default 0)ffmpeg -h filterchromakeyFilter chromakeyTurns a certain color into transparency. Operates on YUV colors.slice threading supportedInputs:#0: default (video)Outputs:#0: default (video) chromakey AVOptions:color color ..FV.....T. set the chromakey key color (default black)similarity float ..FV.....T. set the chromakey similarity value (from 1e-05 to 1) (default 0.01)blend float ..FV.....T. set the chromakey key blend value (from 0 to 1) (default 0)yuv boolean ..FV.....T. color parameter is in yuv instead of rgb (default false)第四个参数默认为false也就是前面传递的是grb信号值如果为true的话颜色传递的信号已经是YUV而不是RGB。像green或red这样的字面颜色不再有意义了。 这可以用于将精确的YUV值作为十六进制数传递。 附录 1.ffmpeg滤镜chromakey针对yuv处理将对应像素点标记透明。 typedef struct ColorkeyContext {const AVClass *class;/* color offsets rgba */int co[4];uint8_t colorkey_rgba[4];float similarity;float blend; } ColorkeyContext;static uint8_t do_chromakey_pixel(ChromakeyContext *ctx, uint8_t u[9], uint8_t v[9]) {double diff 0.0;int du, dv, i;for (i 0; i 9; i) {du (int)u[i] - ctx-chromakey_uv[0];dv (int)v[i] - ctx-chromakey_uv[1];diff sqrt((du * du dv * dv) / (255.0 * 255.0 * 2));}diff / 9.0;if (ctx-blend 0.0001) {return av_clipd((diff - ctx-similarity) / ctx-blend, 0.0, 1.0) * 255.0;} else {return (diff ctx-similarity) ? 255 : 0;} } static int do_chromakey_slice(AVFilterContext *avctx, void *arg, int jobnr, int nb_jobs) {AVFrame *frame arg;const int slice_start (frame-height * jobnr) / nb_jobs;const int slice_end (frame-height * (jobnr 1)) / nb_jobs;ChromakeyContext *ctx avctx-priv;int x, y, xo, yo;uint8_t u[9], v[9];memset(u, ctx-chromakey_uv[0], sizeof(u));memset(v, ctx-chromakey_uv[1], sizeof(v));for (y slice_start; y slice_end; y) {for (x 0; x frame-width; x) {for (yo 0; yo 3; yo) {for (xo 0; xo 3; xo) {get_pixel_uv(frame, ctx-hsub_log2, ctx-vsub_log2, x xo - 1, y yo - 1, u[yo * 3 xo], v[yo * 3 xo]);}}frame-data[3][frame-linesize[3] * y x] do_chromakey_pixel(ctx, u, v);}}return 0; }2.ffmpeg滤镜colorkey针对rgb处理将目标像素点设置为透明。 static uint8_t do_colorkey_pixel(ColorkeyContext *ctx, uint8_t r, uint8_t g, uint8_t b) {int dr (int)r - ctx-colorkey_rgba[0];int dg (int)g - ctx-colorkey_rgba[1];int db (int)b - ctx-colorkey_rgba[2];//计算相似度double diff sqrt((dr * dr dg * dg db * db) / (255.0 * 255.0 * 3.0));if (ctx-blend 0.0001) {return av_clipd((diff - ctx-similarity) / ctx-blend, 0.0, 1.0) * 255.0;} else {return (diff ctx-similarity) ? 255 : 0;} } static int do_colorkey_slice(AVFilterContext *avctx, void *arg, int jobnr, int nb_jobs) {AVFrame *frame arg;const int slice_start (frame-height * jobnr) / nb_jobs;const int slice_end (frame-height * (jobnr 1)) / nb_jobs;ColorkeyContext *ctx avctx-priv;int o, x, y;for (y slice_start; y slice_end; y) {for (x 0; x frame-width; x) {o frame-linesize[0] * y x * 4;// 修改rgba a数据frame-data[0][o ctx-co[3]] do_colorkey_pixel(ctx,frame-data[0][o ctx-co[0]],frame-data[0][o ctx-co[1]],frame-data[0][o ctx-co[2]]);}}return 0; } 参考 http://ffmpeg.org/ffmpeg-filters.html#colorkey ffmpeg绿幕抠图原理解析 ffmpeg -i 20190323162628578.png -i juren-30s.mp4 -filter_complex “[0:v]colorkey0x00FF00:0.1:0[out];[1:v][out]overlay[re]” -map [re] -c:v h264_qsv re.mp4 转成yuv就会花屏 ffmpeg -i 20190323162628578.png -vf colorkey0x00FF00:0.5:0 -pix_fmt yuv420p t.yuv ffplay -video_size 146x60 -pixel_format yuv420p -i t.yuv这样OK ffmpeg -i 20190323162628578.png -vf colorkey0x00FF00:0.5:0 t.png ffplay t.png这样OK ffmpeg -i 20190323162628578.png -vf colorkey0x00FF00:0.5:0 -pix_fmt yuva420p t.yuv ffplay -video_size 146x60 -pixel_format yuva420p -i t.yuvpalettegen滤镜也可以设置透明度 ffmpeg -i ./了不起\3D%02d.png -filter_complex [0:v]scale700:700:force_original_aspect_ratiodecrease,formatrgba,fps25,split[v0][v1];[v0]palettegenreserve_transparenton:transparency_color00000000[v];[v1][v]paletteuse -y 了不起.gif
http://wiki.neutronadmin.com/news/326997/

相关文章:

  • 自助建站网站公司如何做网站的软件
  • app与网站的区别是什么临清轴承网站建设
  • 做一小说网站要花多钱wordpress怎么上线
  • 抚养网站建设建设个人网站赚钱
  • 万州微网站建设dede做导航网站
  • 可以做淘宝客的网站专做老酒的网站
  • 网站暂时关闭 seo大淘客cms网站怎么做
  • 厦门哪家网站建设最好怎样注册自己的网站
  • 建瓯做网站的公司wordpress发视频教程
  • wordpress设置用户登录cpu优化软件
  • 外包网站会自己做原型吗长春 房地产网站建设
  • 实战网站开发怎么更改网站域名解析
  • 深圳网站建设公司乐云seo598深圳网站建设 套餐
  • 做网站需要学jsp网页qq登录页面
  • 网站 关键词 挖掘手机做任务的网站有哪些内容
  • 建设银行网站招聘官网手机网站自适应代码
  • 局域网内用自己电脑做网站一个网站建设都需要什么
  • 网站建设培训中心设计师招聘网站
  • 深圳 网站开发公司电话深圳竞价托管
  • 织梦做网站利于优化庐江县建设局网站
  • 桓台网站近期即将上市的手机
  • 相亲网站用什么做的一起做网站逛市场
  • 从化哪里做网站好邢台最近发生的新闻
  • 深圳微商城网站设计费用wordpress qq登录代码
  • 网站制作素材网站ci wordpress cms
  • 马克·扎克伯格大学做的网站互联网营销推广渠道
  • wordpress新闻站自动采集器华久网站建设
  • app手机端电子商务网站功能中国菲律宾世预赛
  • 做网站网站关键词是什么厦门做网站排名
  • 网赌网站怎么建设重庆网站建设公司魁网