mirror of
https://github.com/ZLMediaKit/ZLMediaKit.git
synced 2024-11-22 18:50:20 +08:00
新增支持mjpeg负载的mp4文件点播 (#2898)
This commit is contained in:
parent
67bc0273b4
commit
eedf262059
@ -16,8 +16,10 @@
|
||||
#include "Extension/AAC.h"
|
||||
#include "Extension/G711.h"
|
||||
#include "Extension/Opus.h"
|
||||
using namespace toolkit;
|
||||
#include "Extension/JPEG.h"
|
||||
|
||||
using namespace std;
|
||||
using namespace toolkit;
|
||||
|
||||
namespace mediakit {
|
||||
|
||||
@ -105,8 +107,9 @@ void MP4Demuxer::onVideoTrack(uint32_t track, uint8_t object, int width, int hei
|
||||
video->inputFrame(std::make_shared<H264FrameNoCacheAble>((char *)config, size, 0, 0,4));
|
||||
}
|
||||
}
|
||||
}
|
||||
break;
|
||||
}
|
||||
|
||||
case MOV_OBJECT_HEVC: {
|
||||
auto video = std::make_shared<H265Track>();
|
||||
_track_to_codec.emplace(track,video);
|
||||
@ -120,11 +123,16 @@ void MP4Demuxer::onVideoTrack(uint32_t track, uint8_t object, int width, int hei
|
||||
video->inputFrame(std::make_shared<H265FrameNoCacheAble>((char *) config, size, 0, 0,4));
|
||||
}
|
||||
}
|
||||
break;
|
||||
}
|
||||
|
||||
case MOV_OBJECT_JPEG: {
|
||||
auto video = std::make_shared<JPEGTrack>();
|
||||
_track_to_codec.emplace(track,video);
|
||||
break;
|
||||
default:
|
||||
WarnL << "不支持该编码类型的MP4,已忽略:" << getObjectName(object);
|
||||
break;
|
||||
}
|
||||
|
||||
default: WarnL << "不支持该编码类型的MP4,已忽略:" << getObjectName(object); break;
|
||||
}
|
||||
}
|
||||
|
||||
@ -243,6 +251,11 @@ Frame::Ptr MP4Demuxer::makeFrame(uint32_t track_id, const Buffer::Ptr &buf, int6
|
||||
break;
|
||||
}
|
||||
|
||||
case CodecJPEG: {
|
||||
ret = std::make_shared<JPEGFrame>(buf, (uint64_t)dts, 0, DATA_OFFSET);
|
||||
break;
|
||||
}
|
||||
|
||||
case CodecAAC: {
|
||||
AACTrack::Ptr track = dynamic_pointer_cast<AACTrack>(it->second);
|
||||
assert(track);
|
||||
|
Loading…
Reference in New Issue
Block a user