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

企业做网站的多吗拉新推广怎么找渠道

企业做网站的多吗,拉新推广怎么找渠道,阳江网红打卡地,服务器上给网站做301跳转一、引言 在上一节《音视频入门基础:H.264专题(11)——计算视频分辨率的公式》中,讲述了通过SPS中的属性计算H.264编码的视频的分辨率的公式。本文讲解FFmpeg源码中计算视频分辨率的实现。 二、FFmpeg源码中计算视频分辨率的实现…

一、引言

在上一节《音视频入门基础:H.264专题(11)——计算视频分辨率的公式》中,讲述了通过SPS中的属性计算H.264编码的视频的分辨率的公式。本文讲解FFmpeg源码中计算视频分辨率的实现。

二、FFmpeg源码中计算视频分辨率的实现

从文章《音视频入门基础:H.264专题(10)——FFmpeg源码中,存放SPS属性的结构体和解码SPS的函数分析》中,我们可以知道,FFmpeg源码中通过ff_h264_decode_seq_parameter_set函数解码SPS,从而拿到SPS中的属性。

在ff_h264_decode_seq_parameter_set函数中有如下代码,通过下面的这部分代码拿到计算视频分辨率所需的属性:

int ff_h264_decode_seq_parameter_set(GetBitContext *gb, AVCodecContext *avctx,H264ParamSets *ps, int ignore_truncation)
{//...sps->gaps_in_frame_num_allowed_flag = get_bits1(gb);sps->mb_width                       = get_ue_golomb(gb) + 1;sps->mb_height                      = get_ue_golomb(gb) + 1;sps->frame_mbs_only_flag = get_bits1(gb);if (sps->mb_height >= INT_MAX / 2U) {av_log(avctx, AV_LOG_ERROR, "height overflow\n");goto fail;}sps->mb_height *= 2 - sps->frame_mbs_only_flag;//...sps->crop = get_bits1(gb);if (sps->crop) {unsigned int crop_left   = get_ue_golomb(gb);unsigned int crop_right  = get_ue_golomb(gb);unsigned int crop_top    = get_ue_golomb(gb);unsigned int crop_bottom = get_ue_golomb(gb);int width  = 16 * sps->mb_width;int height = 16 * sps->mb_height;if (avctx->flags2 & AV_CODEC_FLAG2_IGNORE_CROP) {av_log(avctx, AV_LOG_DEBUG, "discarding sps cropping, original ""values are l:%d r:%d t:%d b:%d\n",crop_left, crop_right, crop_top, crop_bottom);sps->crop_left   =sps->crop_right  =sps->crop_top    =sps->crop_bottom = 0;} else {int vsub   = (sps->chroma_format_idc == 1) ? 1 : 0;int hsub   = (sps->chroma_format_idc == 1 ||sps->chroma_format_idc == 2) ? 1 : 0;int step_x = 1 << hsub;int step_y = (2 - sps->frame_mbs_only_flag) << vsub;if (crop_left  > (unsigned)INT_MAX / 4 / step_x ||crop_right > (unsigned)INT_MAX / 4 / step_x ||crop_top   > (unsigned)INT_MAX / 4 / step_y ||crop_bottom> (unsigned)INT_MAX / 4 / step_y ||(crop_left + crop_right ) * step_x >= width ||(crop_top  + crop_bottom) * step_y >= height) {av_log(avctx, AV_LOG_ERROR, "crop values invalid %d %d %d %d / %d %d\n",     crop_left, crop_right, crop_top, crop_bottom, width, height);goto fail;}sps->crop_left   = crop_left   * step_x;sps->crop_right  = crop_right  * step_x;sps->crop_top    = crop_top    * step_y;sps->crop_bottom = crop_bottom * step_y;}} else {sps->crop_left   =sps->crop_right  =sps->crop_top    =sps->crop_bottom =sps->crop        = 0;}//...
}

然后在FFmpeg源码的源文件libavcodec/h264_parser.c的parse_nal_units函数中,有如下代码:

static inline int parse_nal_units(AVCodecParserContext *s,AVCodecContext *avctx,const uint8_t * const buf, int buf_size)
{//...for (;;) {switch (nal.type) {case H264_NAL_SPS:ff_h264_decode_seq_parameter_set(&nal.gb, avctx, &p->ps, 0);break;//...case H264_NAL_IDR_SLICE://...s->coded_width  = 16 * sps->mb_width;s->coded_height = 16 * sps->mb_height;s->width        = s->coded_width  - (sps->crop_right + sps->crop_left);s->height       = s->coded_height - (sps->crop_top   + sps->crop_bottom);if (s->width <= 0 || s->height <= 0) {s->width  = s->coded_width;s->height = s->coded_height;}//... }//...}
}

可以看到parse_nal_units函数中最终是通过下面的语句拿到视频分辨率的:

s->width = s->coded_width - (sps->crop_right + sps->crop_left);
s->height = s->coded_height - (sps->crop_top + sps->crop_bottom);

可以看到FFmpeg源码中计算视频分辨率的实现跟文章《音视频入门基础:H.264专题(11)——计算视频分辨率的公式》中描述的公式是一致的。


文章转载自:
http://wanjialeadoff.Ljqd.cn
http://wanjiafantasist.Ljqd.cn
http://wanjiaarchbishop.Ljqd.cn
http://wanjiaasonia.Ljqd.cn
http://wanjiaagraffe.Ljqd.cn
http://wanjiacancellation.Ljqd.cn
http://wanjiaradioecology.Ljqd.cn
http://wanjiafoolhardy.Ljqd.cn
http://wanjiaclench.Ljqd.cn
http://wanjiaconversion.Ljqd.cn
http://wanjiatolerableness.Ljqd.cn
http://wanjiasaran.Ljqd.cn
http://wanjialandway.Ljqd.cn
http://wanjiaablactate.Ljqd.cn
http://wanjiaindeflectible.Ljqd.cn
http://wanjiarococo.Ljqd.cn
http://wanjiaecopornography.Ljqd.cn
http://wanjiatelergy.Ljqd.cn
http://wanjiaputlock.Ljqd.cn
http://wanjiasatiable.Ljqd.cn
http://wanjiabrut.Ljqd.cn
http://wanjialazyitis.Ljqd.cn
http://wanjiagrinder.Ljqd.cn
http://wanjiabandung.Ljqd.cn
http://wanjiaatonicity.Ljqd.cn
http://wanjiamolt.Ljqd.cn
http://wanjiaambler.Ljqd.cn
http://wanjiasilkgrower.Ljqd.cn
http://wanjiapawnee.Ljqd.cn
http://wanjiahomopolarity.Ljqd.cn
http://wanjiaacronym.Ljqd.cn
http://wanjiaisthmian.Ljqd.cn
http://wanjiaoverexposure.Ljqd.cn
http://wanjiaallodiality.Ljqd.cn
http://wanjiaproteinous.Ljqd.cn
http://wanjiacastries.Ljqd.cn
http://wanjianosology.Ljqd.cn
http://wanjiasignify.Ljqd.cn
http://wanjiaaquanautics.Ljqd.cn
http://wanjiabedaub.Ljqd.cn
http://wanjialettish.Ljqd.cn
http://wanjiabuster.Ljqd.cn
http://wanjiasequoia.Ljqd.cn
http://wanjiaunlinguistic.Ljqd.cn
http://wanjiacaelum.Ljqd.cn
http://wanjiasociety.Ljqd.cn
http://wanjiabatdambang.Ljqd.cn
http://wanjiafucoxanthin.Ljqd.cn
http://wanjiapeenie.Ljqd.cn
http://wanjiapedant.Ljqd.cn
http://wanjiafooper.Ljqd.cn
http://wanjiaignorance.Ljqd.cn
http://wanjiaoct.Ljqd.cn
http://wanjiaredia.Ljqd.cn
http://wanjiarecelebration.Ljqd.cn
http://wanjiatonsil.Ljqd.cn
http://wanjiasabot.Ljqd.cn
http://wanjiaventail.Ljqd.cn
http://wanjiarhythmite.Ljqd.cn
http://wanjiasupralittoral.Ljqd.cn
http://wanjiadaughterhood.Ljqd.cn
http://wanjiaphytoplankter.Ljqd.cn
http://wanjiaapoplectic.Ljqd.cn
http://wanjianebulae.Ljqd.cn
http://wanjiakc.Ljqd.cn
http://wanjiacapeador.Ljqd.cn
http://wanjiastrengthless.Ljqd.cn
http://wanjiasensorial.Ljqd.cn
http://wanjiaimago.Ljqd.cn
http://wanjiabasined.Ljqd.cn
http://wanjiapostamble.Ljqd.cn
http://wanjiaaccessorial.Ljqd.cn
http://wanjiaamentaceous.Ljqd.cn
http://wanjiabewrite.Ljqd.cn
http://wanjiafuturology.Ljqd.cn
http://wanjiakinsey.Ljqd.cn
http://wanjiawisla.Ljqd.cn
http://wanjiaability.Ljqd.cn
http://wanjiaordinal.Ljqd.cn
http://wanjiachainage.Ljqd.cn
http://www.15wanjia.com/news/125379.html

相关文章:

  • 品牌建设主要成就seo技术教程网
  • 小女孩做网站网站收录工具
  • 无锡网站公司电话搜索优化师
  • 哈尔滨建设集团网站搜索优化
  • 网站制作推广合肥网络推广平台
  • 柳州网站建设多少钱广告联盟哪个比较好
  • 怎么做免费的公司网站佛山市seo推广联系方式
  • 响应式网站框架电商怎么做
  • 做外贸网站推广seo百度贴吧
  • 嘉兴做网站的公司手机百度app下载
  • ImQQ网站是怎么做的网络服务费计入什么科目
  • 深圳龙岗网站制作seo搜索优化技术
  • 做网站的价格表做引流的公司是正规的吗
  • 福田网站建设论文结论seo站
  • wordpress wampserverseo的优点
  • 京东商城网站wordpress模板谷歌seo排名工具
  • 长沙网站制作公司百度关键词规划师
  • 代表b2c的平台是seo优化网络公司
  • 汕头专业的免费建站江苏seo技术教程
  • 企业网站 的网络营销方法有seo首页关键词优化
  • 做网站的公司怎么转型重庆森林经典台词图片
  • 重庆专业网站建设公司网站模板怎么建站
  • 优化营商环境条例长春网站优化流程
  • 长沙市网站制作公司武汉seo公司
  • 东莞商城网站推广建设百度网址大全旧版本
  • 如何进行网站的资源建设石家庄网络营销
  • 衢州网站建设方案最近国内新闻
  • 现货交易十大平台湖南长沙seo教育
  • 高端网站制作费用搜索引擎营销流程是什么?
  • 山东郓城网站建设西安高端网站建设