mirror of
https://gitee.com/openharmony/multimedia_av_codec
synced 2024-10-07 14:13:29 +00:00
av codec
Signed-off-by: 国庆 <xinguoqing2@huawei.com>
This commit is contained in:
parent
9424f3ff87
commit
0a32982284
@ -143,7 +143,7 @@ public:
|
||||
|
||||
virtual int32_t QueueInputBuffer(uint32_t index)
|
||||
{
|
||||
return status_;
|
||||
return ret;
|
||||
}
|
||||
|
||||
virtual int32_t GetOutputFormat(Format &format)
|
||||
@ -185,6 +185,7 @@ public:
|
||||
}
|
||||
private:
|
||||
int32_t status_ = 0;
|
||||
int32_t ret = 1;
|
||||
};
|
||||
|
||||
class TestAVBufferQueueConsumer : public AVBufferQueueConsumer {
|
||||
@ -208,11 +209,15 @@ public:
|
||||
|
||||
Status AcquireBuffer(std::shared_ptr<AVBuffer>& outBuffer)
|
||||
{
|
||||
return Status::ERROR_UNKNOWN;
|
||||
if (outBuffer == nullptr) {
|
||||
return Status::ERROR_UNKNOWN;
|
||||
} else {
|
||||
return Status::OK;
|
||||
}
|
||||
}
|
||||
Status ReleaseBuffer(const std::shared_ptr<AVBuffer>& inBuffer)
|
||||
{
|
||||
return Status::OK;
|
||||
return Status::ERROR_UNKNOWN;
|
||||
}
|
||||
|
||||
Status AttachBuffer(std::shared_ptr<AVBuffer>& inBuffer, bool isFilled)
|
||||
|
@ -115,6 +115,9 @@ HWTEST_F(VideoResizeFilterUnitTest, VideoResizeFilter_SetOutputSurface_001, Test
|
||||
sptr<Surface> surface = nullptr;
|
||||
Status ret = videoResize_->SetOutputSurface(surface, 0, 0);
|
||||
EXPECT_EQ(ret, Status::ERROR_NULL_POINTER);
|
||||
videoResize_->videoEnhancer_ = nullptr;
|
||||
ret = videoResize_->SetOutputSurface(surface, 0, 0);
|
||||
EXPECT_EQ(ret, Status::ERROR_NULL_POINTER);
|
||||
videoResize_->videoEnhancer_ = DetailEnhancerVideo::Create();
|
||||
videoResize_->eventReceiver_ = nullptr;
|
||||
surface = videoResize_->videoEnhancer_->GetInputSurface();
|
||||
@ -167,7 +170,7 @@ HWTEST_F(VideoResizeFilterUnitTest, VideoResizeFilter_DoStop_001, TestSize.Level
|
||||
*/
|
||||
HWTEST_F(VideoResizeFilterUnitTest, VideoResizeFilter_SetParameter_001, TestSize.Level1)
|
||||
{
|
||||
std::shared_ptr<Meta> parameter= std::make_shared<Meta>();
|
||||
std::shared_ptr<Meta> parameter = std::make_shared<Meta>();
|
||||
videoResize_->videoEnhancer_ = nullptr;
|
||||
videoResize_->SetParameter(parameter);
|
||||
videoResize_->videoEnhancer_ = DetailEnhancerVideo::Create();
|
||||
@ -177,6 +180,22 @@ HWTEST_F(VideoResizeFilterUnitTest, VideoResizeFilter_SetParameter_001, TestSize
|
||||
EXPECT_EQ(videoResize_->appPid_, 0);
|
||||
}
|
||||
|
||||
/**
|
||||
* @tc.name: VideoResizeFilter_SetParameter_002
|
||||
* @tc.desc: SetParameter
|
||||
* @tc.type: FUNC
|
||||
*/
|
||||
HWTEST_F(VideoResizeFilterUnitTest, VideoResizeFilter_SetParameter_002, TestSize.Level1)
|
||||
{
|
||||
std::shared_ptr<Meta> parameter = std::make_shared<Meta>();
|
||||
parameter->SetData(Tag::MEDIA_END_OF_STREAM, 2);
|
||||
videoResize_->videoEnhancer_ = nullptr;
|
||||
videoResize_->SetParameter(parameter);
|
||||
videoResize_->videoEnhancer_ = DetailEnhancerVideo::Create();
|
||||
videoResize_->SetParameter(parameter);
|
||||
EXPECT_EQ(videoResize_->appPid_, 0);
|
||||
}
|
||||
|
||||
/**
|
||||
* @tc.name: VideoResizeFilter_LinkNext_001
|
||||
* @tc.desc: LinkNext
|
||||
@ -194,6 +213,22 @@ HWTEST_F(VideoResizeFilterUnitTest, VideoResizeFilter_LinkNext_001, TestSize.Lev
|
||||
EXPECT_NE(ret, Status::OK);
|
||||
}
|
||||
|
||||
/**
|
||||
* @tc.name: VideoResizeFilter_OnLinkedResult_001
|
||||
* @tc.desc: OnLinkedResult
|
||||
* @tc.type: FUNC
|
||||
*/
|
||||
HWTEST_F(VideoResizeFilterUnitTest, VideoResizeFilter_OnLinkedResult_001, TestSize.Level1)
|
||||
{
|
||||
sptr<AVBufferQueueProducer> outputBufferQueue = new OHOS::Media::Pipeline::MyAVBufferQueueProducer();
|
||||
std::shared_ptr<Meta> meta = std::make_shared<Meta>();
|
||||
videoResize_->onLinkedResultCallback_ = std::make_shared<TestFilterLinkCallback>();
|
||||
videoResize_->OnLinkedResult(outputBufferQueue, meta);
|
||||
videoResize_->onLinkedResultCallback_ = nullptr;
|
||||
videoResize_->OnLinkedResult(outputBufferQueue, meta);
|
||||
EXPECT_EQ(videoResize_->instanceId_, 0);
|
||||
}
|
||||
|
||||
/**
|
||||
* @tc.name: VideoResizeFilter_ReleaseBuffer_001
|
||||
* @tc.desc: ReleaseBuffer
|
||||
|
@ -101,6 +101,97 @@ public:
|
||||
}
|
||||
protected:
|
||||
};
|
||||
|
||||
class MyAVBufferQueueProducer : public IRemoteStub<AVBufferQueueProducer> {
|
||||
public:
|
||||
uint32_t GetQueueSize()
|
||||
{
|
||||
return 0;
|
||||
}
|
||||
Status SetQueueSize(uint32_t size)
|
||||
{
|
||||
return Status::OK;
|
||||
}
|
||||
|
||||
Status RequestBuffer(std::shared_ptr<AVBuffer>& outBuffer,
|
||||
const AVBufferConfig& config, int32_t timeoutMs)
|
||||
{
|
||||
if (outBuffer == nullptr) {
|
||||
return Status::ERROR_NULL_POINTER;
|
||||
} else {
|
||||
return Status::OK;
|
||||
}
|
||||
}
|
||||
Status PushBuffer(const std::shared_ptr<AVBuffer>& inBuffer, bool available)
|
||||
{
|
||||
return Status::OK;
|
||||
}
|
||||
Status ReturnBuffer(const std::shared_ptr<AVBuffer>& inBuffer, bool available)
|
||||
{
|
||||
return Status::OK;
|
||||
}
|
||||
|
||||
Status AttachBuffer(std::shared_ptr<AVBuffer>& inBuffer, bool isFilled)
|
||||
{
|
||||
return Status::OK;
|
||||
}
|
||||
Status DetachBuffer(const std::shared_ptr<AVBuffer>& outBuffer)
|
||||
{
|
||||
return Status::OK;
|
||||
}
|
||||
|
||||
Status SetBufferFilledListener(sptr<IBrokerListener>& listener)
|
||||
{
|
||||
return Status::OK;
|
||||
}
|
||||
Status RemoveBufferFilledListener(sptr<IBrokerListener>& listener)
|
||||
{
|
||||
return Status::OK;
|
||||
}
|
||||
Status SetBufferAvailableListener(sptr<IProducerListener>& listener)
|
||||
{
|
||||
return Status::OK;
|
||||
}
|
||||
Status Clear()
|
||||
{
|
||||
return Status::OK;
|
||||
}
|
||||
DECLARE_INTERFACE_DESCRIPTOR(u"Media.MyAVBufferQueueProducer");
|
||||
|
||||
protected:
|
||||
enum: uint32_t {
|
||||
PRODUCER_GET_QUEUE_SIZE = 0,
|
||||
PRODUCER_SET_QUEUE_SIZE = 1,
|
||||
PRODUCER_REQUEST_BUFFER = 2,
|
||||
PRODUCER_PUSH_BUFFER = 3,
|
||||
PRODUCER_RETURN_BUFFER = 4,
|
||||
PRODUCER_ATTACH_BUFFER = 5,
|
||||
PRODUCER_DETACH_BUFFER = 6,
|
||||
PRODUCER_SET_FILLED_LISTENER = 7,
|
||||
PRODUCER_REMOVE_FILLED_LISTENER = 8,
|
||||
PRODUCER_SET_AVAILABLE_LISTENER = 9
|
||||
};
|
||||
};
|
||||
|
||||
class TestFilterLinkCallback : public Pipeline::FilterLinkCallback {
|
||||
public:
|
||||
explicit TestFilterLinkCallback()
|
||||
{
|
||||
std::cout << "filter back constructor" << std::endl;
|
||||
}
|
||||
void OnLinkedResult(const sptr<AVBufferQueueProducer>& queue, std::shared_ptr<Meta>& meta)
|
||||
{
|
||||
std::cout << "call OnLinkedResult" << std::endl;
|
||||
}
|
||||
void OnUnlinkedResult(std::shared_ptr<Meta>& meta)
|
||||
{
|
||||
std::cout << "call OnUnlinkedResult" << std::endl;
|
||||
}
|
||||
void OnUpdatedResult(std::shared_ptr<Meta>& meta)
|
||||
{
|
||||
std::cout << "call OnUpdatedResult" << std::endl;
|
||||
}
|
||||
};
|
||||
} // namespace Pipeline
|
||||
} // namespace Media
|
||||
} // namespace OHOS
|
||||
|
Loading…
Reference in New Issue
Block a user