mirror of
https://github.com/nyanmisaka/mpp.git
synced 2025-10-05 17:16:50 +08:00
[mpp_pacet]: rename mpp_packet_copy to mpp_packet_copy_init
[mpp_dec]: put_packet will transfer pointer rather than implement git-svn-id: https://10.10.10.66:8443/svn/MediaProcessPlatform/trunk/mpp@306 6e48237b-75ef-9749-8fc9-41990f28c85a
This commit is contained in:
@@ -30,10 +30,11 @@ extern "C" {
|
||||
* MppPacket interface
|
||||
*
|
||||
* mpp_packet_init = mpp_packet_new + mpp_packet_set_data + mpp_packet_set_size
|
||||
* mpp_packet_copy_init = mpp_packet_init + memcpy
|
||||
*/
|
||||
MPP_RET mpp_packet_new(MppPacket *packet);
|
||||
MPP_RET mpp_packet_init(MppPacket *packet, void *data, size_t size);
|
||||
MPP_RET mpp_packet_copy(MppPacket *packet, const MppPacket src);
|
||||
MPP_RET mpp_packet_copy_init(MppPacket *packet, const MppPacket src);
|
||||
MPP_RET mpp_packet_deinit(MppPacket *packet);
|
||||
|
||||
/*
|
||||
|
@@ -34,7 +34,7 @@ void *mpp_dec_parser_thread(void *data)
|
||||
MppDec *dec = mpp->mDec;
|
||||
MppBufSlots slots = dec->slots;
|
||||
HalTaskGroup tasks = dec->tasks;
|
||||
MppPacketImpl packet;
|
||||
MppPacket packet = NULL;
|
||||
|
||||
/*
|
||||
* parser thread need to wait at cases below:
|
||||
@@ -106,9 +106,9 @@ void *mpp_dec_parser_thread(void *data)
|
||||
*/
|
||||
if (!task_ready) {
|
||||
hal_task_init(&task_local, MPP_CTX_DEC);
|
||||
parser_prepare(dec->parser, (MppPacket)&packet, task_dec);
|
||||
if (0 == packet.length) {
|
||||
mpp_packet_reset(&packet);
|
||||
parser_prepare(dec->parser, packet, task_dec);
|
||||
if (0 == mpp_packet_get_length(packet)) {
|
||||
mpp_packet_deinit(&packet);
|
||||
packet_ready = 0;
|
||||
}
|
||||
}
|
||||
|
@@ -56,7 +56,7 @@ Mpp::Mpp(MppCtxType type, MppCodingType coding)
|
||||
{
|
||||
switch (mType) {
|
||||
case MPP_CTX_DEC : {
|
||||
mPackets = new mpp_list((node_destructor)NULL);
|
||||
mPackets = new mpp_list((node_destructor)mpp_packet_deinit);
|
||||
mFrames = new mpp_list((node_destructor)mpp_frame_deinit);
|
||||
mTasks = new mpp_list((node_destructor)NULL);
|
||||
|
||||
@@ -156,7 +156,9 @@ MPP_RET Mpp::put_packet(MppPacket packet)
|
||||
{
|
||||
Mutex::Autolock autoLock(mPackets->mutex());
|
||||
if (mPackets->list_size() < 4) {
|
||||
mPackets->add_at_tail(packet, sizeof(MppPacketImpl));
|
||||
MppPacket pkt;
|
||||
mpp_packet_copy_init(&pkt, packet);
|
||||
mPackets->add_at_tail(&pkt, sizeof(pkt));
|
||||
mPacketPutCount++;
|
||||
mThreadCodec->signal();
|
||||
return MPP_OK;
|
||||
|
@@ -72,7 +72,7 @@ MPP_RET mpp_packet_init(MppPacket *packet, void *data, size_t size)
|
||||
return MPP_OK;
|
||||
}
|
||||
|
||||
MPP_RET mpp_packet_copy(MppPacket *packet, const MppPacket src)
|
||||
MPP_RET mpp_packet_copy_init(MppPacket *packet, const MppPacket src)
|
||||
{
|
||||
if (NULL == packet || NULL == src) {
|
||||
mpp_err_f("found NULL input\n");
|
||||
|
Reference in New Issue
Block a user