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

台州哪家做企业网站比较好百度指数查询官网大数据

台州哪家做企业网站比较好,百度指数查询官网大数据,品牌策划公司绩效考核方案,常见的一级域名com代表FFmpeg在很多地方都运用了缓存机制,比如《FFmpeg开发实战:从零基础到短视频上线》一书的“3.3.2 对视频流重新编码”介绍了编解码的数据缓存,不单是视频编码过程和视频解码过程有缓存,甚至连音频重采样都用到了缓存。 也就是说&a…

FFmpeg在很多地方都运用了缓存机制,比如《FFmpeg开发实战:从零基础到短视频上线》一书的“3.3.2  对视频流重新编码”介绍了编解码的数据缓存,不单是视频编码过程和视频解码过程有缓存,甚至连音频重采样都用到了缓存。
也就是说,重采样函数swr_convert一次只会输出指定长度的音频数据,超出这个长度的数据被留在重采样的缓存当中。那么在对一个音频文件转换格式之时,有可能所有音频帧都遍历完了,重采样缓存里面还保存着剩余未取走的音频数据。此时要像对待视频编码缓存那样,想办法把剩下的音频数据冲出来。
具体到代码实现上,在调用swr_convert函数之时,倒数第二个参数填NULL,表示输入的数据内容为空;倒数第一个参数填0,表示输入的数据大小为0。这便告诉采样器,已经没有要转换的音频了,请把缓存中剩余的数据冲出来吧。那么swr_convert函数的返回值就是本次冲走的输出数据大小,当返回值为0时,表示重采样缓存已经冲光了,再也没有剩余的数据了,此时才能结束音频的格式转换操作。
当然,对于常见的mp3和aac格式,它们每帧的长度是固定的,正常情况调用一次swr_convert函数即可输出完整的音频数据,无需另外处理重采样缓存。只有ogg、amr、wma等格式的每帧音频长度不固定,才需要额外处理音频的重采样缓存,于是对《FFmpeg开发实战:从零基础到短视频上线》一书第五章的重采样代码改动如下。
打开chapter05/swrmp3.c,把下面这行

swr_frame->nb_samples = audio_decode_ctx->frame_size;

改为下面几行(因为ogg、amr和wma的frame_size为0,所以需要另外赋值):

swr_frame->nb_samples = audio_decode_ctx->frame_size;
if (swr_frame->nb_samples <= 0) {swr_frame->nb_samples = 512;
}

另外在轮询数据包的循环结束之后,补充下面的重采样缓存冲刷代码,这样新生成的音频文件才是完整的:

while (1) { // 冲走重采样的缓存(兼容对ogg、amr等格式的重采样)// 重采样。也就是把输入的音频数据根据指定的采样规格转换为新的音频数据输出ret = swr_convert(swr_ctx, // 音频采样器的实例// 输出的数据内容和数据大小swr_frame->data, swr_frame->nb_samples,// 输入内容填NULL、输入大小填0表示冲走缓存NULL, 0);if (ret < 0) {av_log(NULL, AV_LOG_ERROR, "swr_convert frame occur error %d.\n", ret);return -1;} else if (ret == 0) { // 到末尾了break;}save_mp3_file(fp_out, swr_frame); // 把音频帧保存到MP3文件
}

接着执行下面的编译命令。

gcc swrmp3.c -o swrmp3 -I/usr/local/ffmpeg/include -L/usr/local/ffmpeg/lib -lavformat -lavdevice -lavfilter -lavcodec -lavutil -lswscale -lswresample -lpostproc -lm

编译完成后执行以下命令启动测试程序,期望把ring.ogg重采样后保存为MP3文件。

./swrmp3 ../ring.ogg

程序运行完毕,发现控制台输出以下的日志信息,说明完成了对ogg文件重采样mp3音频的操作。

Success open input_file ring.ogg.
audio_decode_ctx frame_size=0, sample_fmt=8, sample_rate=11025, nb_channels=1
audio_encode_ctx frame_size=1152, sample_fmt=6, sample_rate=44100, nb_channels=1
target audio file is output_swrmp3.mp3
Success resample audio frame as mp3 file.

然后打开影音播放器可以正常播放output_swrmp3.mp3,表示上述代码正确实现了将ogg音频数据重采样再转存MP3文件的功能。

http://www.hengruixuexiao.com/news/25769.html

相关文章:

  • 那个网站有免费模板常用的网络推广方法有哪些
  • 免费3d模型网站百度网盘手机app下载安装
  • 嘉兴高端网站建设seo美式
  • 网站插件开发网站站内推广怎么做
  • 网站推广策划的思路包括哪些山东seo费用多少
  • 肥乡企业做网站推广诊断网站seo现状的方法
  • 白云网站建设哪家好无人区在线观看高清1080
  • 岳麓做网站的公司网络营销竞价推广
  • 服务器域名常用的seo网站优化排名
  • 做电影网站需多大的空间2020新闻大事件摘抄
  • 上海网站定制费用百度贴吧官网网页
  • 动态网站开发实验步骤市场营销推广策划方案
  • 全屏家居网站模板优化是什么梗
  • 微信头像做国旗网站怎样在百度上做广告
  • wordpress换新的电脑seo对网站优化
  • 建设网站号码是多少钱seo职位
  • 二级黄冈站在线注册网站
  • 青岛永诚网络科技有限公司重庆seo教程搜索引擎优化
  • 首页凡客搜索引擎优化教材答案
  • 哈尔滨网络招聘seo 网站优化推广排名教程
  • 新网站如何做流量百度优化公司
  • 专业做网站团队重庆seo标准
  • 企业网站底部如何推广一个新的app
  • 郑州区块链数字钱包网站开发公司成品app直播源码有什么用
  • 网站搜索引擎优化推广疫情防控最新数据
  • 郑州网站推广公司地址西安百度爱采购推广
  • 电脑怎样做幻灯片的网站阜阳seo
  • 台州网站制作建设免费设计模板网站
  • 用dw做电子商务网站步骤太原今日新闻最新头条
  • 做移动网站优化排百度关键词规划师