范文健康探索娱乐情感热点
投稿投诉
热点动态
科技财经
情感日志
励志美文
娱乐时尚
游戏搞笑
探索旅游
历史星座
健康养生
美丽育儿
范文作文
教案论文
国学影视

北上广程序员回重庆继续代码kotlin音视频解析六收藏

  今天开始就讲解工具类的开发,AudioExtractor 音频的提取类,一个音视频包含了音频和视频,我们在拿到一个mp4文件过后,如果自己写一个播放器就需要解析里面的音频和视频。
  这个工具类就是来解析音频里面的音频提取,需要用到的知识点有文件,文件异常IOException,FFmpeg 也是一个开源库,就是一个指令来提取视频里面的音频:val cmd = arrayOf("-i", video!!.path, "-vn", "-ar", "44100", "-ac", "2", "-ab", "192", "-f", "mp3", outputLocation.path)
  有了这个工具类就很方便的把视频里面的音频给提取出来了class AudioExtractor private constructor(private val context: Context) {      private var video: File? = null     private var callback: FFMpegCallback? = null     private var outputPath = ""     private var outputFileName = ""      fun setFile(originalFiles: File): AudioExtractor {         this.video = originalFiles         return this     }      fun setCallback(callback: FFMpegCallback): AudioExtractor {         this.callback = callback         return this     }      fun setOutputPath(output: String): AudioExtractor {         this.outputPath = output         return this     }      fun setOutputFileName(output: String): AudioExtractor {         this.outputFileName = output         return this     }      fun extract() {          video?.let {              if (!video!!.exists()) {                 callback!!.onFailure(IOException("File not exists"))                 return             }             if (!video!!.canRead()) {                 callback!!.onFailure(IOException("Can"t read the file. Missing permission?"))                 return             }              val outputLocation = Utils.getConvertedFile(outputPath, outputFileName)              //Create Audio File with 192Kbps             //Select .mp3 format             val cmd = arrayOf("-i", video!!.path, "-vn", "-ar", "44100", "-ac", "2", "-ab", "192", "-f", "mp3", outputLocation.path)              try {                 FFmpeg.getInstance(context).execute(cmd, object : ExecuteBinaryResponseHandler() {                     override fun onStart() {}                      override fun onProgress(message: String?) {                         callback!!.onProgress(message!!)                     }                      override fun onSuccess(message: String?) {                         Utils.refreshGallery(outputLocation.path, context)                         callback!!.onSuccess(outputLocation, OutputType.TYPE_AUDIO)                      }                      override fun onFailure(message: String?) {                         if (outputLocation.exists()) {                             outputLocation.delete()                         }                         callback!!.onFailure(IOException(message))                     }                      override fun onFinish() {                         callback!!.onFinish()                     }                 })             } catch (e: Exception) {                 callback!!.onFailure(e)             } catch (e2: FFmpegCommandAlreadyRunningException) {                 callback!!.onNotAvailable(e2)             }         }      }      companion object {          val TAG = "AudioExtractor"          fun with(context: Context): AudioExtractor {             return AudioExtractor(context)         }     } }
  上面就完成了音频的提取了完成了。
  我是一个北上广回回重庆的程序员坚持在写代码,记得点赞,关注,转发,谢谢了。

哈苏X系统日常挂机镜头推荐哈苏XCD镜头哈苏XCD系列镜头融合了哈苏卓越的光学研发技术,并以极高标准的设计理念来满足摄影师的多样化创作需求,将哈苏在色彩与图像质量等方面的优势发挥到极致。哈苏XCD镜头日常挂毒街头的德味摄影SaifAssam机型LeicaM10LeicaM10P身处斑斓世界,总有一抹色彩令你忍不住按动快门。街头的色彩无处不在,妙趣横生的故事在这里不断上演。摄影师SaifAssam这几款徕卡相机,入手真香对于摄影人来说,提到徕卡二字,脑海中总会出现无数经典的传世摄影作品,如同网络上盛传的那部徕卡100周年纪念视频中所述的徕卡没有发明相机,却改变了摄影。每个摄影师的心中也都有属于自己聊一聊,你为什么喜欢哈苏XCD1。980官网样片HaitongYu,哈苏X1DXCD1。980mm对于光圈的追求,大家的脚步从未停下虽然中画幅相机拥有光圈系数比的优势但是也由于各种因素限制既能撑起中画幅像场又兼具大光圈的徕卡LOBA2021年入围作品徕卡奥斯卡巴纳克摄影奖(简称LOBA)创立于1979年,当年是徕卡原型机(UrLeica)的发明者奥斯卡巴纳克(OscarBarnack)诞辰一百周年,徕卡奥斯卡巴纳克摄影奖亦以他你的影像,诉说怎样的动人故事?影像,超越千言万语。阅过的千山万水,听见的汹涌澎湃,感悟的人生百态,留存于影像中的一切,无需言语而娓娓道来,并终将跨越时代与文化,与人心共鸣。你的影像,诉说怎样的动人故事?观影。沿幻彩徕卡Q2,缤纷来袭摄影PawelStec机型LeicaQ2如果说黑白摄影以高度的抽象化揭示现实,那么彩色摄影则凭着其原有的真实性,用充满活力或情感色彩的图像完成对世界的展露。颜色可以是有情绪有个性且何必让坏天气禁锢住你的摄影灵感?有时候没有诗和远方的环境也能拍出一张张动人的照片荒芜凋敝的地方总有一处地方在闪闪发光带给摄影师意外的惊喜摄影的意义不仅仅是为了记录姹紫嫣红的万千世界更是在于身置于荒芜也能摄到一处不玩转镜头徕卡M21mm1。4徕卡MM21mm1。4,byleicamoment当你想要更浅的景深当你想要更广的视野当你想低感光度拍摄夜景当你想拍摄出更具空间感的照片当你更喜欢超焦距聚焦和散影效果那选择这支徕卡为什么要在徕卡SL2SL2S上用徕卡M镜头?徕卡前不久推出了徕卡ML转接环,使得L接口的相机可兼容徕卡自1954年以来推出的所有M镜头,它还提供曝光测光光圈优先自动曝光和手动设置。使用6位编码徕卡M镜头时,焦距和型号名称会自哈苏XCD3。545多场景随心拍摄摄影师JuliusHirtzberger器材X1D50CXCD3。545mm哈苏XCD3。545mm哈苏XCD453。5镜头是跟随着哈苏首款无反相机X1D而推出的新系列镜头中的定焦
拒绝内卷,企业降本增效选它就对了晚上十点,办公楼灯火通明,刚来的实习生小M依然没有下班。他看了一下周围,同事们都还在座位上,走廊尽头的领导办公室也亮着灯,作为职场小白的他想走又不敢走,只好继续煎熬地陪着。才步入职岳阳市委常委胡建新率队赴京考察招商7月9日至11日,岳阳市委常委统战部长经开区工委第一书记胡建新率队赴北京考察招商。他强调,要认真贯彻落实全省产业园区高质量发展推进会议精神和市委市政府部署要求,坚持以产业比实力,以中小企业数字化的第一步将智能云办公打造成核心生产力每一家成功的企业,都是从小企业成长而来的。就像比尔盖茨和保罗艾伦在阿尔伯克基的一家旅馆里创办了微软,马云在他位于杭州的公寓里创立了阿里巴巴。当然,并不是每一个小企业都有机会成长为大鹏博士总裁崔航做云网一体化解决方案服务提供商近日获悉,鹏博士成功入选河北省企业上云供给资源池服务提供商,这是继今年5月鹏博士云入选四川省万家企业上云行动推进目录后,又一次获得省级政府推荐。由于成本高管理弱等原因,部分中小企业赋能云计算发展鹏博士启动数字城市合伙人随着新基建的到来,5G通讯服务数据中心人工智能工业互联网等大数据基础架构相关的新型基础设施建设正在加速推进。在中国将会迎来大数据应用的爆发式增长。疫情之下,防控的形势仍然严峻,伴随备份,保护你iPhone的最后一招经常性有小伙伴们在后台咨询如何备份iPhone资料,其实,对于苹果手机资料的备份,苹果网站上也有做说明,只是小伙伴们找不到端口。今天我们就通过iTunes备份以及iCloud备份来鸿蒙用开源架构,是踩着安卓影子走?硬碰硬不是聪明之道自上周华为鸿蒙系统出世以来,网友们的口水仗就没停过。一波人说配置鸿蒙系统的荣耀电视需要安卓的ADB,打的口号是自研系统,实际是基于安卓源码,是在打自己的脸另一波人说鸿蒙的ADB只是苹果再爆召回,抛弃iPhone成风潮?苹果的电池又出问题了!!!据外媒6月初报道,一名为WhitePanda的国外苹果电脑用户,在社交平台上声称,自己的MacBookPro笔记本在正常使用时突然爆炸并迸出火焰,而此前该上市一年拼多多咋样了?发力两大方向,帮助无数工厂和农业去年7月,拼多多在美国纳斯达克敲钟,上演了在阿里京东等巨头挤压下一个新电商平台三年上市的逆袭。如今,拼多多上市一年,用户GMV依旧高速增长,年活跃用户达到4。43亿,用户数排名电商传统实体连锁门店数字化智能管理的关键是什么?十四五规划和2035年远景目标纲要提出深入推进服务业数字化转型。为适应消费升级需求,推动实体商业企业加快数字化智能化改造和跨界融合,传统连锁门店如何打造数字化体系,实现一站式连锁门被蜜蜂蛰了,奶奶说拔罐逼出毒血就好了,但为啥却越长越大。。对于动物而言,只要我们不去侵害他们,他们就会与我们和平共处。比如说蜜蜂,一般情况下,只要自己不受威胁,对人类还算是毕恭毕敬,而一旦遭遇到危险,蜜蜂就会拿出常常的针,来保护自己。有位