#ig

使用@ContextConfiguration替换@SpringBootTest

由于springboottest需要初始化上下文,每一次都要好长时间,可以使用其他方法替换它:测试类如下:@RunWith(SpringJUnit4ClassRunner.class)//@WebAppConfigurationomittedonpurpose@ContextConfiguration(classes=...

WebAppConfiguration in Spring Tests

Ijustannouncedthenew LearnSpring course,focusedonthefundamentalsofSpring5andSpringBoot2: 1.Overview Inthisarticle,we'llexplorethe @WebA...

使用@ContextConfiguration或者@ContextWebConfiguration注解调用resource文件夹下面的yml文件

在测试用例中,指定初始化方式 @ContextConfiguration(classes=RedisConf.class,initializers=ConfigFileApplicationContextInitializer.class)@RunWith(SpringJUnit4ClassRunner.cl...

c3p0 APPARENT DEADLOCK!!! Creating emergency threads for unassigned pending tasks

2018-01-0415:02:03,319---com.mchange.v2.async.ThreadPoolAsynchronousRunner:com.mchange.v2.async.ThreadPoolAsynchronousRunner$DeadlockDetector@4d6c4ebb--APPARENT...

CronTrigger中cron表达式使用

1、定时任务,当执行是具体时间的时候,不会立即执行,而是到指定时间执行。2、实现Job接口时候,类中要有无参的public构造方法。3、表达式中共用七个字段,按顺序是秒、分、时、日、月、周、年,默认最后一个不写。如“0302***”表示每天早上2点半执行定时任务。...

解决在IE6、7中用height来设定SELECT标签高度无效的兼容性问题

在IE6、7中用height来设定SELECT标签高度是无效的,宽度的话各浏览器设置都是一致的,解决方法就是在select外嵌套两层标签,一层用来遮挡select的默认边框(在IE6、7中设置border:0px也是无效的),另一层用来模拟”高度改变后的“select边框.代码如下html代码&...

Audiosink design

Audiosink的设计,需要满足下列一些需求: 良好的chain_based支持。绝大多数简单playbackpipelines都是将音频数据从decoder直接push给audiosink; 良好getrange_based支持。大部分专业的应用都是audiosink从pipeline拉取数据。...
代码星球 ·2020-05-23

stagefright omx小结

由于stagefright和openmax运行在两个不同的进程上,所以他们之间的通讯要经过Binder进行处理,本小结不考虑音频这一块,假设视频为MP4封装的AVC编码文件. 先简单的看一下stagefright是怎么工作的,stagefright使用event来进行驱动,event调度器和event运行在同...
代码星球 ·2020-05-23

android stagefright基本流程总结

数据流的封装一、由数据源DataSource生成MediaExtractor。通过MediaExtractor::Create(dataSource)来实现。Create方法通过两步来生成相应的MediaExtractor:1、通过dataSource->sniff来探测数据类型2、生成相应的Extractor:...

android stagefright awesomeplayer 分析

主要调用awesomeplay.cpp的函数来实现音视频等功能,可以说是对awesomeplay.cpp的封装,进一步抽象,然后提供给上层调用,主要的调用者是MediaPlayerService.cpp。提供的API如下: 1.       ...

stagefright框架(七)-Audio和Video的同步

讲完了audio和video的处理流程,接下来要看的是audio和video同步化(synchronization)的问题。OpenCORE的做法是设置一个主clock,而audio和video就分别以此作为输出的依据。而在Stagefright中,audio的输出是透过callback函式来驱动,video则根据au...

stagefright框架(六)-Audio Playback的流程

到目前为止,我们都只着重在video处理的部分,对于audio却只字未提。这篇文章将会开始audio处理的流程。Stagefright中关于audio的部分是交由AudioPlayer来处理,它是在AwesomePlayer::play_l中被建立的。(1)当上层应用程式要求播放影音时,AudioPlayer同时被建立...

stagefright框架(五)-Video Rendering

AwesomePlayer::onVideoEvent除了透過OMXCodec::read取得解碼後的資料外,還必須將這些資料(mVideoBuffer)傳給videorenderer,以便畫到螢幕上去。(1) 要將mVideoBuffer中的資料畫出來之前,必須先建立mVideoRenderervoid&n...

stagefright框架(四)-Video Buffer传输流程

這篇文章將介紹Stagefright中是如何和OMXvideodecoder传送buffer。(1)OMXCodec會在一開始的時候透過read函式來傳送未解碼的data給decoder,並且要求decoder將解碼後的data傳回來status_tOMXCodec::read(...){  if&...

stagefright框架(三)-选择Video Decode

在《Stagefright(1)–VideoPlayback的流程》中,我们并没有详述Stagefright是如何根据影片档的类型来选择适合的videodecoder,现在,就让我们来看一看。(1)Videodecoder是在onPrepareAsyncEvent中的initVideoDecoder被决定的...
首页上一页...100101102103104...下一页尾页