一、ReplayKit2 框架回调中

  视频、micphone声音、系统声音三路回调

- (void)processSampleBuffer:(CMSampleBufferRef)sampleBuffer withType:(RPSampleBufferType)sampleBufferType {

    switch (sampleBufferType) {
case RPSampleBufferTypeVideo:{
// Handle video sample buffer
QG_Debug(MODULE_LIVE_ASS, @"SampleHandler processSampleBuffer RPSampleBufferTypeVideo"); }
break;
case RPSampleBufferTypeAudioApp:
// Handle audio sample buffer for app audio
QG_Debug(MODULE_LIVE_ASS, @"SampleHandler processSampleBuffer RPSampleBufferTypeAudioApp ---------------"); break;
case RPSampleBufferTypeAudioMic:
// Handle audio sample buffer for mic audio
QG_Debug(MODULE_LIVE_ASS, @"SampleHandler processSampleBuffer RPSampleBufferTypeAudioMic"); break; default:
break;
} }

  现在的问题是,micphone的回调几乎是实时的,每秒42次

  

默认	16:01:49.626272 +0800	LABroadcastUpload	2018-10-31 16:01:49.625 [48679] Debug|be27|SampleHandler.m:307|MODULE_LIVE_ASS| SampleHandler processSampleBuffer RPSampleBufferTypeVideo
默认 16:01:49.633504 +0800 LABroadcastUpload 2018-10-31 16:01:49.633 [48679] Debug|be27|SampleHandler.m:320|MODULE_LIVE_ASS| SampleHandler processSampleBuffer RPSampleBufferTypeAudioMic
默认 16:01:49.657628 +0800 LABroadcastUpload 2018-10-31 16:01:49.657 [48679] Debug|be27|SampleHandler.m:320|MODULE_LIVE_ASS| SampleHandler processSampleBuffer RPSampleBufferTypeAudioMic
默认 16:01:49.669175 +0800 LABroadcastUpload 2018-10-31 16:01:49.668 [48679] Debug|be27|SampleHandler.m:307|MODULE_LIVE_ASS| SampleHandler processSampleBuffer RPSampleBufferTypeVideo
默认 16:01:49.680324 +0800 LABroadcastUpload 2018-10-31 16:01:49.679 [45831] Debug|b307|SampleHandler.m:320|MODULE_LIVE_ASS| SampleHandler processSampleBuffer RPSampleBufferTypeAudioMic
默认 16:01:49.692136 +0800 LABroadcastUpload 2018-10-31 16:01:49.691 [45831] Debug|b307|SampleHandler.m:307|MODULE_LIVE_ASS| SampleHandler processSampleBuffer RPSampleBufferTypeVideo
默认 16:01:49.704546 +0800 LABroadcastUpload 2018-10-31 16:01:49.704 [8599] Debug|2197|SampleHandler.m:320|MODULE_LIVE_ASS| SampleHandler processSampleBuffer RPSampleBufferTypeAudioMic
默认 16:01:49.732569 +0800 LABroadcastUpload 2018-10-31 16:01:49.726 [8599] Debug|2197|SampleHandler.m:307|MODULE_LIVE_ASS| SampleHandler processSampleBuffer RPSampleBufferTypeVideo
默认 16:01:49.736873 +0800 LABroadcastUpload 2018-10-31 16:01:49.726 [8599] Debug|2197|SampleHandler.m:320|MODULE_LIVE_ASS| SampleHandler processSampleBuffer RPSampleBufferTypeAudioMic
默认 16:01:49.783538 +0800 LABroadcastUpload 2018-10-31 16:01:49.749 [45831] Debug|b307|SampleHandler.m:320|MODULE_LIVE_ASS| SampleHandler processSampleBuffer RPSampleBufferTypeAudioMic
默认 16:01:49.793023 +0800 LABroadcastUpload 2018-10-31 16:01:49.759 [45831] Debug|b307|SampleHandler.m:307|MODULE_LIVE_ASS| SampleHandler processSampleBuffer RPSampleBufferTypeVideo
默认 16:01:49.806903 +0800 LABroadcastUpload 2018-10-31 16:01:49.774 [48679] Debug|be27|SampleHandler.m:320|MODULE_LIVE_ASS| SampleHandler processSampleBuffer RPSampleBufferTypeAudioMic
默认 16:01:49.832517 +0800 LABroadcastUpload 2018-10-31 16:01:49.795 [45831] Debug|b307|SampleHandler.m:320|MODULE_LIVE_ASS| SampleHandler processSampleBuffer RPSampleBufferTypeAudioMic
默认 16:01:49.838011 +0800 LABroadcastUpload 2018-10-31 16:01:49.800 [8599] Debug|2197|SampleHandler.m:307|MODULE_LIVE_ASS| SampleHandler processSampleBuffer RPSampleBufferTypeVideo
默认 16:01:49.876397 +0800 LABroadcastUpload 2018-10-31 16:01:49.823 [45831] Debug|b307|SampleHandler.m:320|MODULE_LIVE_ASS| SampleHandler processSampleBuffer RPSampleBufferTypeAudioMic
默认 16:01:49.907369 +0800 LABroadcastUpload 2018-10-31 16:01:49.842 [45831] Debug|b307|SampleHandler.m:320|MODULE_LIVE_ASS| SampleHandler processSampleBuffer RPSampleBufferTypeAudioMic
默认 16:01:49.912447 +0800 LABroadcastUpload 2018-10-31 16:01:49.845 [48679] Debug|be27|SampleHandler.m:307|MODULE_LIVE_ASS| SampleHandler processSampleBuffer RPSampleBufferTypeVideo
默认 16:01:49.937406 +0800 LABroadcastUpload 2018-10-31 16:01:49.859 [9219] Debug|2403|SampleHandler.m:307|MODULE_LIVE_ASS| SampleHandler processSampleBuffer RPSampleBufferTypeVideo
默认 16:01:49.940732 +0800 LABroadcastUpload 2018-10-31 16:01:49.865 [45831] Debug|b307|SampleHandler.m:320|MODULE_LIVE_ASS| SampleHandler processSampleBuffer RPSampleBufferTypeAudioMic
默认 16:01:49.946041 +0800 LABroadcastUpload 2018-10-31 16:01:49.889 [45831] Debug|b307|SampleHandler.m:320|MODULE_LIVE_ASS| SampleHandler processSampleBuffer RPSampleBufferTypeAudioMic
默认 16:01:49.948695 +0800 LABroadcastUpload 2018-10-31 16:01:49.893 [9219] Debug|2403|SampleHandler.m:307|MODULE_LIVE_ASS| SampleHandler processSampleBuffer RPSampleBufferTypeVideo
默认 16:01:49.949680 +0800 LABroadcastUpload 2018-10-31 16:01:49.911 [48679] Debug|be27|SampleHandler.m:320|MODULE_LIVE_ASS| SampleHandler processSampleBuffer RPSampleBufferTypeAudioMic
默认 16:01:49.951007 +0800 LABroadcastUpload 2018-10-31 16:01:49.926 [45831] Debug|b307|SampleHandler.m:307|MODULE_LIVE_ASS| SampleHandler processSampleBuffer RPSampleBufferTypeVideo
默认 16:01:49.951684 +0800 LABroadcastUpload 2018-10-31 16:01:49.934 [48679] Debug|be27|SampleHandler.m:320|MODULE_LIVE_ASS| SampleHandler processSampleBuffer RPSampleBufferTypeAudioMic
默认 16:01:49.958768 +0800 LABroadcastUpload 2018-10-31 16:01:49.958 [45831] Debug|b307|SampleHandler.m:320|MODULE_LIVE_ASS| SampleHandler processSampleBuffer RPSampleBufferTypeAudioMic
默认 16:01:49.964717 +0800 LABroadcastUpload 2018-10-31 16:01:49.964 [45831] Debug|b307|SampleHandler.m:307|MODULE_LIVE_ASS| SampleHandler processSampleBuffer RPSampleBufferTypeVideo
默认 16:01:49.982194 +0800 LABroadcastUpload 2018-10-31 16:01:49.981 [9219] Debug|2403|SampleHandler.m:320|MODULE_LIVE_ASS| SampleHandler processSampleBuffer RPSampleBufferTypeAudioMic
默认 16:01:50.006942 +0800 LABroadcastUpload 2018-10-31 16:01:50.006 [45831] Debug|b307|SampleHandler.m:320|MODULE_LIVE_ASS| SampleHandler processSampleBuffer RPSampleBufferTypeAudioMic
默认 16:01:50.007363 +0800 LABroadcastUpload 2018-10-31 16:01:50.007 [9219] Debug|2403|SampleHandler.m:307|MODULE_LIVE_ASS| SampleHandler processSampleBuffer RPSampleBufferTypeVideo
默认 16:01:50.028539 +0800 LABroadcastUpload 2018-10-31 16:01:50.027 [48679] Debug|be27|SampleHandler.m:320|MODULE_LIVE_ASS| SampleHandler processSampleBuffer RPSampleBufferTypeAudioMic
默认 16:01:50.029291 +0800 LABroadcastUpload 2018-10-31 16:01:50.028 [8599] Debug|2197|SampleHandler.m:307|MODULE_LIVE_ASS| SampleHandler processSampleBuffer RPSampleBufferTypeVideo
默认 16:01:50.051188 +0800 LABroadcastUpload 2018-10-31 16:01:50.050 [8599] Debug|2197|SampleHandler.m:320|MODULE_LIVE_ASS| SampleHandler processSampleBuffer RPSampleBufferTypeAudioMic
默认 16:01:50.058217 +0800 LABroadcastUpload 2018-10-31 16:01:50.058 [8599] Debug|2197|SampleHandler.m:307|MODULE_LIVE_ASS| SampleHandler processSampleBuffer RPSampleBufferTypeVideo
默认 16:01:50.074354 +0800 LABroadcastUpload 2018-10-31 16:01:50.074 [8599] Debug|2197|SampleHandler.m:320|MODULE_LIVE_ASS| SampleHandler processSampleBuffer RPSampleBufferTypeAudioMic
默认 16:01:50.099753 +0800 LABroadcastUpload 2018-10-31 16:01:50.093 [45831] Debug|b307|SampleHandler.m:307|MODULE_LIVE_ASS| SampleHandler processSampleBuffer RPSampleBufferTypeVideo
默认 16:01:50.103660 +0800 LABroadcastUpload 2018-10-31 16:01:50.097 [48679] Debug|be27|SampleHandler.m:320|MODULE_LIVE_ASS| SampleHandler processSampleBuffer RPSampleBufferTypeAudioMic
默认 16:01:50.132583 +0800 LABroadcastUpload 2018-10-31 16:01:50.124 [45831] Debug|b307|SampleHandler.m:320|MODULE_LIVE_ASS| SampleHandler processSampleBuffer RPSampleBufferTypeAudioMic

  但是App的声音是几乎500ms一次

默认	11:02:28.314940 +0800	LABroadcastUpload	2018-10-31 11:02:28.313 [84535] Debug|14a37|SampleHandler.m:306|MODULE_LIVE_ASS| SampleHandler processSampleBuffer RPSampleBufferTypeVideo
默认 11:02:28.338789 +0800 LABroadcastUpload 2018-10-31 11:02:28.337 [84535] Debug|14a37|SampleHandler.m:312|MODULE_LIVE_ASS| SampleHandler processSampleBuffer RPSampleBufferTypeAudioApp ---------------
默认 11:02:28.346683 +0800 LABroadcastUpload 2018-10-31 11:02:28.346 [84535] Debug|14a37|SampleHandler.m:306|MODULE_LIVE_ASS| SampleHandler processSampleBuffer RPSampleBufferTypeVideo
默认 11:02:28.380657 +0800 LABroadcastUpload 2018-10-31 11:02:28.380 [84535] Debug|14a37|SampleHandler.m:306|MODULE_LIVE_ASS| SampleHandler processSampleBuffer RPSampleBufferTypeVideo
默认 11:02:28.413895 +0800 LABroadcastUpload 2018-10-31 11:02:28.413 [84535] Debug|14a37|SampleHandler.m:306|MODULE_LIVE_ASS| SampleHandler processSampleBuffer RPSampleBufferTypeVideo
默认 11:02:28.453964 +0800 LABroadcastUpload 2018-10-31 11:02:28.453 [27415] Debug|6b17|SampleHandler.m:306|MODULE_LIVE_ASS| SampleHandler processSampleBuffer RPSampleBufferTypeVideo
默认 11:02:28.479968 +0800 LABroadcastUpload 2018-10-31 11:02:28.479 [8491] Debug|212b|SampleHandler.m:306|MODULE_LIVE_ASS| SampleHandler processSampleBuffer RPSampleBufferTypeVideo
默认 11:02:28.514081 +0800 LABroadcastUpload 2018-10-31 11:02:28.513 [8491] Debug|212b|SampleHandler.m:306|MODULE_LIVE_ASS| SampleHandler processSampleBuffer RPSampleBufferTypeVideo
默认 11:02:28.548224 +0800 LABroadcastUpload 2018-10-31 11:02:28.547 [84535] Debug|14a37|SampleHandler.m:306|MODULE_LIVE_ASS| SampleHandler processSampleBuffer RPSampleBufferTypeVideo
默认 11:02:28.581848 +0800 LABroadcastUpload 2018-10-31 11:02:28.581 [84535] Debug|14a37|SampleHandler.m:306|MODULE_LIVE_ASS| SampleHandler processSampleBuffer RPSampleBufferTypeVideo
默认 11:02:28.624133 +0800 LABroadcastUpload 2018-10-31 11:02:28.623 [27415] Debug|6b17|SampleHandler.m:306|MODULE_LIVE_ASS| SampleHandler processSampleBuffer RPSampleBufferTypeVideo
默认 11:02:28.646465 +0800 LABroadcastUpload 2018-10-31 11:02:28.646 [8491] Debug|212b|SampleHandler.m:306|MODULE_LIVE_ASS| SampleHandler processSampleBuffer RPSampleBufferTypeVideo
默认 11:02:28.680087 +0800 LABroadcastUpload 2018-10-31 11:02:28.679 [8491] Debug|212b|SampleHandler.m:306|MODULE_LIVE_ASS| SampleHandler processSampleBuffer RPSampleBufferTypeVideo
默认 11:02:28.713644 +0800 LABroadcastUpload 2018-10-31 11:02:28.713 [8491] Debug|212b|SampleHandler.m:306|MODULE_LIVE_ASS| SampleHandler processSampleBuffer RPSampleBufferTypeVideo
默认 11:02:28.752759 +0800 LABroadcastUpload 2018-10-31 11:02:28.752 [27415] Debug|6b17|SampleHandler.m:306|MODULE_LIVE_ASS| SampleHandler processSampleBuffer RPSampleBufferTypeVideo
默认 11:02:28.779585 +0800 LABroadcastUpload 2018-10-31 11:02:28.779 [84535] Debug|14a37|SampleHandler.m:306|MODULE_LIVE_ASS| SampleHandler processSampleBuffer RPSampleBufferTypeVideo
默认 11:02:28.813878 +0800 LABroadcastUpload 2018-10-31 11:02:28.813 [84535] Debug|14a37|SampleHandler.m:306|MODULE_LIVE_ASS| SampleHandler processSampleBuffer RPSampleBufferTypeVideo
默认 11:02:28.854994 +0800 LABroadcastUpload 2018-10-31 11:02:28.854 [84535] Debug|14a37|SampleHandler.m:306|MODULE_LIVE_ASS| SampleHandler processSampleBuffer RPSampleBufferTypeVideo
默认 11:02:28.855188 +0800 LABroadcastUpload 2018-10-31 11:02:28.854 [27415] Debug|6b17|SampleHandler.m:312|MODULE_LIVE_ASS| SampleHandler processSampleBuffer RPSampleBufferTypeAudioApp ---------------
默认 11:02:28.883123 +0800 LABroadcastUpload 2018-10-31 11:02:28.882 [27415] Debug|6b17|SampleHandler.m:306|MODULE_LIVE_ASS| SampleHandler processSampleBuffer RPSampleBufferTypeVideo
默认 11:02:28.932190 +0800 LABroadcastUpload 2018-10-31 11:02:28.931 [84535] Debug|14a37|SampleHandler.m:306|MODULE_LIVE_ASS| SampleHandler processSampleBuffer RPSampleBufferTypeVideo
默认 11:02:28.947889 +0800 LABroadcastUpload 2018-10-31 11:02:28.947 [8491] Debug|212b|SampleHandler.m:306|MODULE_LIVE_ASS| SampleHandler processSampleBuffer RPSampleBufferTypeVideo
默认 11:02:28.981193 +0800 LABroadcastUpload 2018-10-31 11:02:28.980 [27415] Debug|6b17|SampleHandler.m:306|MODULE_LIVE_ASS| SampleHandler processSampleBuffer RPSampleBufferTypeVideo
默认 11:02:29.016192 +0800 LABroadcastUpload 2018-10-31 11:02:29.015 [27415] Debug|6b17|SampleHandler.m:306|MODULE_LIVE_ASS| SampleHandler processSampleBuffer RPSampleBufferTypeVideo
默认 11:02:29.047840 +0800 LABroadcastUpload 2018-10-31 11:02:29.047 [8491] Debug|212b|SampleHandler.m:306|MODULE_LIVE_ASS| SampleHandler processSampleBuffer RPSampleBufferTypeVideo
默认 11:02:29.095569 +0800 LABroadcastUpload 2018-10-31 11:02:29.095 [8491] Debug|212b|SampleHandler.m:306|MODULE_LIVE_ASS| SampleHandler processSampleBuffer RPSampleBufferTypeVideo
默认 11:02:29.115072 +0800 LABroadcastUpload 2018-10-31 11:02:29.113 [27415] Debug|6b17|SampleHandler.m:306|MODULE_LIVE_ASS| SampleHandler processSampleBuffer RPSampleBufferTypeVideo
默认 11:02:29.270830 +0800 LABroadcastUpload 2018-10-31 11:02:29.216 [27415] Debug|6b17|SampleHandler.m:306|MODULE_LIVE_ASS| SampleHandler processSampleBuffer RPSampleBufferTypeVideo
默认 11:02:29.271530 +0800 LABroadcastUpload 2018-10-31 11:02:29.217 [27415] Debug|6b17|SampleHandler.m:306|MODULE_LIVE_ASS| SampleHandler processSampleBuffer RPSampleBufferTypeVideo
默认 11:02:29.272777 +0800 LABroadcastUpload 2018-10-31 11:02:29.218 [27415] Debug|6b17|SampleHandler.m:306|MODULE_LIVE_ASS| SampleHandler processSampleBuffer RPSampleBufferTypeVideo
默认 11:02:29.322329 +0800 LABroadcastUpload 2018-10-31 11:02:29.248 [27415] Debug|6b17|SampleHandler.m:306|MODULE_LIVE_ASS| SampleHandler processSampleBuffer RPSampleBufferTypeVideo
默认 11:02:29.350062 +0800 LABroadcastUpload 2018-10-31 11:02:29.287 [27415] Debug|6b17|SampleHandler.m:306|MODULE_LIVE_ASS| SampleHandler processSampleBuffer RPSampleBufferTypeVideo
默认 11:02:29.363928 +0800 LABroadcastUpload 2018-10-31 11:02:29.320 [8491] Debug|212b|SampleHandler.m:306|MODULE_LIVE_ASS| SampleHandler processSampleBuffer RPSampleBufferTypeVideo
默认 11:02:29.384039 +0800 LABroadcastUpload 2018-10-31 11:02:29.359 [84535] Debug|14a37|SampleHandler.m:306|MODULE_LIVE_ASS| SampleHandler processSampleBuffer RPSampleBufferTypeVideo
默认 11:02:29.384695 +0800 LABroadcastUpload 2018-10-31 11:02:29.361 [8491] Debug|212b|SampleHandler.m:312|MODULE_LIVE_ASS| SampleHandler processSampleBuffer RPSampleBufferTypeAudioApp ---------------
默认 11:02:29.390916 +0800 LABroadcastUpload 2018-10-31 11:02:29.381 [24835] Debug|6103|SampleHandler.m:306|MODULE_LIVE_ASS| SampleHandler processSampleBuffer RPSampleBufferTypeVideo
默认 11:02:29.414419 +0800 LABroadcastUpload 2018-10-31 11:02:29.414 [8491] Debug|212b|SampleHandler.m:306|MODULE_LIVE_ASS| SampleHandler processSampleBuffer RPSampleBufferTypeVideo
默认 11:02:29.455207 +0800 LABroadcastUpload 2018-10-31 11:02:29.454 [84535] Debug|14a37|SampleHandler.m:306|MODULE_LIVE_ASS| SampleHandler processSampleBuffer RPSampleBufferTypeVideo
默认 11:02:29.489226 +0800 LABroadcastUpload 2018-10-31 11:02:29.488 [24835] Debug|6103|SampleHandler.m:306|MODULE_LIVE_ASS| SampleHandler processSampleBuffer RPSampleBufferTypeVideo
默认 11:02:29.513677 +0800 LABroadcastUpload 2018-10-31 11:02:29.513 [27415] Debug|6b17|SampleHandler.m:306|MODULE_LIVE_ASS| SampleHandler processSampleBuffer RPSampleBufferTypeVideo
默认 11:02:29.547077 +0800 LABroadcastUpload 2018-10-31 11:02:29.546 [24835] Debug|6103|SampleHandler.m:306|MODULE_LIVE_ASS| SampleHandler processSampleBuffer RPSampleBufferTypeVideo
默认 11:02:29.581483 +0800 LABroadcastUpload 2018-10-31 11:02:29.581 [27415] Debug|6b17|SampleHandler.m:306|MODULE_LIVE_ASS| SampleHandler processSampleBuffer RPSampleBufferTypeVideo
默认 11:02:29.615560 +0800 LABroadcastUpload 2018-10-31 11:02:29.615 [24835] Debug|6103|SampleHandler.m:306|MODULE_LIVE_ASS| SampleHandler processSampleBuffer RPSampleBufferTypeVideo
默认 11:02:29.659048 +0800 LABroadcastUpload 2018-10-31 11:02:29.658 [27415] Debug|6b17|SampleHandler.m:306|MODULE_LIVE_ASS| SampleHandler processSampleBuffer RPSampleBufferTypeVideo
默认 11:02:29.680790 +0800 LABroadcastUpload 2018-10-31 11:02:29.680 [24835] Debug|6103|SampleHandler.m:306|MODULE_LIVE_ASS| SampleHandler processSampleBuffer RPSampleBufferTypeVideo
默认 11:02:29.715018 +0800 LABroadcastUpload 2018-10-31 11:02:29.714 [24835] Debug|6103|SampleHandler.m:306|MODULE_LIVE_ASS| SampleHandler processSampleBuffer RPSampleBufferTypeVideo
默认 11:02:29.748573 +0800 LABroadcastUpload 2018-10-31 11:02:29.748 [24835] Debug|6103|SampleHandler.m:306|MODULE_LIVE_ASS| SampleHandler processSampleBuffer RPSampleBufferTypeVideo
默认 11:02:29.789083 +0800 LABroadcastUpload 2018-10-31 11:02:29.788 [84535] Debug|14a37|SampleHandler.m:306|MODULE_LIVE_ASS| SampleHandler processSampleBuffer RPSampleBufferTypeVideo
默认 11:02:29.832327 +0800 LABroadcastUpload 2018-10-31 11:02:29.831 [24835] Debug|6103|SampleHandler.m:306|MODULE_LIVE_ASS| SampleHandler processSampleBuffer RPSampleBufferTypeVideo
默认 11:02:29.877877 +0800 LABroadcastUpload 2018-10-31 11:02:29.876 [84535] Debug|14a37|SampleHandler.m:312|MODULE_LIVE_ASS| SampleHandler processSampleBuffer RPSampleBufferTypeAudioApp ---------------

  这个带来两个声音之间的混音同步问题,

  如果强制同步App的声音,必将带来500ms的延时

  如果不同步,会带来App路的声音500ms的延时,绝地求生中开枪声音迟滞的问题

暂时没有太好的方法:

  一种办法,用户选择声音输出到扬声器,而不是听筒,这样micphone采集到是App声音和环境声音,自然同步;然后屏蔽掉App的声音

ReplayKit2:声音回调时间戳问题的更多相关文章

  1. ffmpeg 和 SDL 的结合使用

    FFmpeg是一套可以用来记录.转换数字音频.视频,并能将其转化为流的开源计算机程序.采用LGPL或GPL许可证.它提供了录制.转换以及流化音视 频的完整解决方案.它包含了非常先进的音频/视频编解码库 ...

  2. (转)如何基于FFMPEG和SDL写一个少于1000行代码的视频播放器

    原文地址:http://www.dranger.com/ffmpeg/ FFMPEG是一个很好的库,可以用来创建视频应用或者生成特定的工具.FFMPEG几乎为你把所有的繁重工作都做了,比如解码.编码. ...

  3. ffmpeg教程

    转:http://blog.sina.com.cn/s/blog_51396f890100nd91.html 概要  电影文件有很多基本的组成部分.首先,文件本身被称为容器Container,容器的类 ...

  4. ffmpeg个人翻译文档1-8<转>

    [个人翻译]ffmpeg文档1 (2008-08-26 09:39:15) 转载 标签: 杂谈 分类: 翻译文档 指导1:制作屏幕录像 源代码:tutorial01.c 概要   电影文件有很多基本的 ...

  5. iOS开发之微信聊天工具栏的封装

    之前山寨了一个新浪微博(iOS开发之山寨版新浪微博小结),这几天就山寨个微信吧.之前已经把微信的视图结构简单的拖了一下(IOS开发之微信山寨版),今天就开始给微信加上具体的实现功能,那么就先从微信的聊 ...

  6. FFPLAY的原理(三)

    播放声音 现在我们要来播放声音.SDL也为我们准备了输出声音的方法.函数SDL_OpenAudio()本身就是用来打开声音设备的.它使用一个叫做SDL_AudioSpec结构体作为参数,这个结构体中包 ...

  7. FFPLAY的原理(四)

    意外情况 你们将会注意到我们有一个全局变量quit,我们用它来保证还没有设置程序退出的信号(SDL会自动处理TERM类似的信号).否则,这个线程将不停地运 行直到我们使用kill -9来结束程序.FF ...

  8. cocos 常用组件

    前面的话 本文将详细介绍 cocos 中的常用组件 Sprite [概述] Sprite(精灵)是 2D 游戏中最常见的显示图像的方式,在节点上添加 Sprite 组件,就可以在场景中显示项目资源中的 ...

  9. SDL_AudioSpec(转)

    转贴地址:http://www.cnblogs.com/nanguabing/archive/2012/04/12/2444084.html ============================= ...

  10. nodejs中获取时间戳、时间差

    Nodejs中获取时间戳的方法有很多种,例如: new Date().getTime() Date.now() process.uptime() process.hrtime() 平时想获取一个时间戳 ...

随机推荐

  1. sql 语句系列(列举非索引外键)[八百章之第九章]

    列举非索引外键 列举出那些外键没有添加索引. 目的: 1.减少锁. 2.外键添加索引,提示了查询性能,因为要与父表做连接查询做笛卡尔积. 下面只要会复制即可,没有会去从新写一遍的. select fk ...

  2. xxx,一个神奇的 Python 库

    前几天,我在<技术周刊的转变:如何平衡热爱与现实?>一文里写过国内 Python 自媒体圈在近几年的两个现象(仅个人观感,无科学数据支撑): Python 广告投放出现断崖式萎缩 Pyth ...

  3. Django框架——Q查询进阶、ORM查询优化、事务操作、字段类型、字段参数、Ajax、Content—Type、ajax携带文件

    Q查询进阶 from django.db.models import Q q_obj = Q() # 1.产生q对象 q_obj.connector = 'or' # 默认多个条件的连接是and可以修 ...

  4. Oracle 查询超级慢之buffer sort

    查询超级慢之buffer sort 在视图中增加了一个临时表作为一个数据源进行id和名称的转换,没加的时候一秒不到,加了以后14秒,感觉有点问题,于是打开了解释计划看了下,发现这个buffer sor ...

  5. 阿里云荣获可信云容器安全能力先进级认证, ACK/ACR为企业级安全护航

    阿里云关注企业级用户的Kubernetes生产落地痛点,结合企业生产环境的大量实践,全面帮助企业真正落地云原生架构.安全侧问题,是众多大中型或金融领域企业的核心关注点. 端到端云原生安全架构 早在20 ...

  6. Quick BI产品核心功能大图(五)移动端:让数据在更多业务场景中流通

    ​简介:将数据更好的融入日常工作中,一个重要的前提条件就是多端多渠道的数据触达和办公协同能力. Quick BI凭借移动端交互体验,帮助用户随时随地便捷查看报表,并通过在线协同方式,追踪策略的执行落地 ...

  7. 基于 PTS 压测轻松玩转问题诊断

    ​简介:性能测试 PTS(Performance Testing Service)是具备强大的分布式压测能力的 SaaS 压测平台,可模拟海量用户的真实业务场景,全方位验证业务站点的性能.容量和稳定性 ...

  8. 开源 1 年半 star 破 1.2 万的 Dapr 是如何在阿里落地的?

    简介: Dapr 是 2019 年 10 月微软开源的可移植.事件驱动分布式运行时,它使开发人员能够轻松地构建运行在云平台和边缘的弹性而微服务化的无状态和有状态的应用程序,从而降低基于微服务架构构建现 ...

  9. 大模型 RAG 是什么

    大模型 RAG(Retrieval-Augmented Generation)是一种结合了检索(Retrieval)与生成(Generation)能力的先进人工智能技术,主要用于增强大型语言模型(LL ...

  10. [Go] 选择 Beego 的三个理由

    1. 项目支持角度较其它框架考虑的多一些,比如:目录结构的简单约定,内置项目配置读取,内置bee脚手架,热重载特性 等. (实际这些 feature 都可以找到 golang 专精的组件引入起来,效果 ...