diff --git a/src/Extension/H264.h b/src/Extension/H264.h index dbc5cfb1..437edcca 100644 --- a/src/Extension/H264.h +++ b/src/Extension/H264.h @@ -228,6 +228,11 @@ private: } break; + case H264Frame::NAL_SEI:{ + //忽略SEI + break; + } + default: VideoTrack::inputFrame(frame); break; diff --git a/tests/test_player.cpp b/tests/test_player.cpp index 2954a43c..8ca20d82 100644 --- a/tests/test_player.cpp +++ b/tests/test_player.cpp @@ -116,7 +116,8 @@ int main(int argc, char *argv[]) { } AnyStorage::Ptr storage(new AnyStorage); - viedoTrack->addDelegate(std::make_shared([storage](const Frame::Ptr &frame) { + viedoTrack->addDelegate(std::make_shared([storage](const Frame::Ptr &frame_in) { + auto frame = Frame::getCacheAbleFrame(frame_in); SDLDisplayerHelper::Instance().doTask([frame,storage]() { auto &decoder = (*storage)["decoder"]; auto &displayer = (*storage)["displayer"];