ReplayKit2:声音回调时间戳问题
一、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:声音回调时间戳问题的更多相关文章
- ffmpeg 和 SDL 的结合使用
FFmpeg是一套可以用来记录.转换数字音频.视频,并能将其转化为流的开源计算机程序.采用LGPL或GPL许可证.它提供了录制.转换以及流化音视 频的完整解决方案.它包含了非常先进的音频/视频编解码库 ...
- (转)如何基于FFMPEG和SDL写一个少于1000行代码的视频播放器
原文地址:http://www.dranger.com/ffmpeg/ FFMPEG是一个很好的库,可以用来创建视频应用或者生成特定的工具.FFMPEG几乎为你把所有的繁重工作都做了,比如解码.编码. ...
- ffmpeg教程
转:http://blog.sina.com.cn/s/blog_51396f890100nd91.html 概要 电影文件有很多基本的组成部分.首先,文件本身被称为容器Container,容器的类 ...
- ffmpeg个人翻译文档1-8<转>
[个人翻译]ffmpeg文档1 (2008-08-26 09:39:15) 转载 标签: 杂谈 分类: 翻译文档 指导1:制作屏幕录像 源代码:tutorial01.c 概要 电影文件有很多基本的 ...
- iOS开发之微信聊天工具栏的封装
之前山寨了一个新浪微博(iOS开发之山寨版新浪微博小结),这几天就山寨个微信吧.之前已经把微信的视图结构简单的拖了一下(IOS开发之微信山寨版),今天就开始给微信加上具体的实现功能,那么就先从微信的聊 ...
- FFPLAY的原理(三)
播放声音 现在我们要来播放声音.SDL也为我们准备了输出声音的方法.函数SDL_OpenAudio()本身就是用来打开声音设备的.它使用一个叫做SDL_AudioSpec结构体作为参数,这个结构体中包 ...
- FFPLAY的原理(四)
意外情况 你们将会注意到我们有一个全局变量quit,我们用它来保证还没有设置程序退出的信号(SDL会自动处理TERM类似的信号).否则,这个线程将不停地运 行直到我们使用kill -9来结束程序.FF ...
- cocos 常用组件
前面的话 本文将详细介绍 cocos 中的常用组件 Sprite [概述] Sprite(精灵)是 2D 游戏中最常见的显示图像的方式,在节点上添加 Sprite 组件,就可以在场景中显示项目资源中的 ...
- SDL_AudioSpec(转)
转贴地址:http://www.cnblogs.com/nanguabing/archive/2012/04/12/2444084.html ============================= ...
- nodejs中获取时间戳、时间差
Nodejs中获取时间戳的方法有很多种,例如: new Date().getTime() Date.now() process.uptime() process.hrtime() 平时想获取一个时间戳 ...
随机推荐
- k8s 深入篇———— pod 实战[六]
前言 pod 实战一下,主要是一些例子. 正文 例子一 pod 实例的选择: NodeSelector:是一个供用户将 Pod 与 Node 进行绑定的字段 NodeName:一旦 Pod 的这个字段 ...
- sumo简单安装及运行实例
下载解压并添加环境变量 记录一下今天SUMO的安装及使用经验,写的可能比较潦草,没看懂的小伙伴在下方评论,我看到一定会解答. 第一步先打开网址下载sumo: https://sourceforge.n ...
- 数据结构实验代码分享 - 3 (哈夫曼树 / HuffmanTree)
哈夫曼编码/ 译码系统(树应用) [问题描述] 任意给定一个仅由 26 个大写英文字母组成的字符序列,根据哈夫曼编码算法,求得每个字符的哈夫曼编码. 要求: 1)输入一个由 26 个英文字母组成的字符 ...
- bs4、selenium的使用
爬取新闻 # 1 爬取网页---requests # 2 解析 ---xml格式,用了re匹配的 ---html,bs4,lxml... ---json: -python :内置的 -java : f ...
- 【笔记】go语言--接口
[笔记]go语言--接口 接口的概念 强类型语言:熟悉接口的概念 弱类型语言:没(少)有接口的概念 接口的详解︰使用Google Guice实现依赖注入 curl 是获取http请求的命令工具 cur ...
- 力扣585(MySQL)-2016年的投资(中等)
题目: 写一个查询语句,将 2016 年 (TIV_2016) 所有成功投资的金额加起来,保留 2 位小数. 对于一个投保人,他在 2016 年成功投资的条件是: 他在 2015 年的投保额 (TIV ...
- IDC:云效产品能力No.1,领跑中国DevOps市场
简介: 近日,全球领先的专业市场调查机构国际数据公司(IDC)发布了<IDC MarketScape:中国 DevOps 平台市场厂商评估,2022>报告.此报告中对中国主流 DevOps ...
- WPF 框架开发 ColumnDefinition 和 RowDefinition 的代码在哪
我的 VisualStudio 在更新到 2022 就构建不通过 WPF 仓库,提示我在 Grid 的代码里面找不到 ColumnDefinitionCollection 和 RowDefinitio ...
- dotnet 5 从 IL 层面分析协变返回类型新特性
在 C# 9.0 里面添加的一个新特性是支持协变返回类型,也就说子类重写了基类的抽象或虚拟方法,可以在返回值里面返回协变的类型,也就是返回值的类型可以是继承原本子类返回值类型的子类.本文将来从 IL ...
- 通过AMDP调用HANA的PAL函数
SAP预测分析库(SAP Predictive Analysis Library,PAL)是SAP HANA中的一项功能,它允许我们在SAP HANA SQLScript过程中执行分析算法. 基于AB ...