diff options
author | Eunhye Choi <eunhae1.choi@samsung.com> | 2022-11-17 18:46:50 +0900 |
---|---|---|
committer | Eunhye Choi <eunhae1.choi@samsung.com> | 2022-11-17 19:43:10 +0900 |
commit | bfa31a87446b591b423584c1fde4a95417b34e41 (patch) | |
tree | 086b9a3bf97475a70a47e0699a54567b0c1f6c9d | |
parent | 51967171a3fce78918a8ff3a1c599daf600c2f6a (diff) | |
download | mediatransporter-bfa31a87446b591b423584c1fde4a95417b34e41.tar.gz mediatransporter-bfa31a87446b591b423584c1fde4a95417b34e41.tar.bz2 mediatransporter-bfa31a87446b591b423584c1fde4a95417b34e41.zip |
[1.0.8] fix encoder caps erroraccepted/tizen/unified/20221121.163712
- pipeline state is not changed normally
if the caps is invalid
Change-Id: I6efd9658373a301411adddf262f356b1937d621d
-rw-r--r-- | packaging/capi-media-transporter.spec | 2 | ||||
-rw-r--r-- | src/MediaSourceBinBaseVideo.cpp | 4 | ||||
-rw-r--r-- | src/MediaTransporterGst.cpp | 7 |
3 files changed, 7 insertions, 6 deletions
diff --git a/packaging/capi-media-transporter.spec b/packaging/capi-media-transporter.spec index 29ce78f..262d77a 100644 --- a/packaging/capi-media-transporter.spec +++ b/packaging/capi-media-transporter.spec @@ -1,6 +1,6 @@ Name: capi-media-transporter Summary: A Media Transporter library in Tizen Native API -Version: 1.0.7 +Version: 1.0.8 Release: 0 Group: Multimedia/API License: Apache-2.0 diff --git a/src/MediaSourceBinBaseVideo.cpp b/src/MediaSourceBinBaseVideo.cpp index eb0e7e6..a3a8f22 100644 --- a/src/MediaSourceBinBaseVideo.cpp +++ b/src/MediaSourceBinBaseVideo.cpp @@ -112,6 +112,10 @@ std::vector<GstElement*> MediaSourceBinBaseVideo::createVideoRestOfElements(cons sinkCaps = __makeVideoDefaultEncodedCaps(ini); if (sinkCaps) { + std::string encoderName = GST_ELEMENT_NAME(encoder); + if (encoderName.find("v4l2h264enc") != std::string::npos) + gst_caps_set_simple(sinkCaps, "level", G_TYPE_STRING, "3", NULL); + gst::_printCaps(sinkCaps, ELEMENT_NAME_ENCODE_CAPSFILTER); g_object_set(G_OBJECT(capsfilter2), "caps", sinkCaps, NULL); gst_caps_unref(sinkCaps); diff --git a/src/MediaTransporterGst.cpp b/src/MediaTransporterGst.cpp index b68b9d0..0eed11e 100644 --- a/src/MediaTransporterGst.cpp +++ b/src/MediaTransporterGst.cpp @@ -778,7 +778,7 @@ void gst::_updateCaps(GstElement* element, const param::videoInfo& vInfo) vInfo.frameRate, 1, NULL); if (!gst_caps_is_equal(oldCaps, newCaps)) { - gst::_printCaps(newCaps, "newCaps"); + gst::_printCaps(newCaps, "newCaps"); g_object_set(G_OBJECT(element), "caps", newCaps, NULL); } @@ -792,9 +792,6 @@ void gst::_updateEncCaps(GstElement* element, const param::videoInfo& vInfo) RET_IF(!oldCaps, "capsfilter has no caps"); GstCaps* newCaps = gst_caps_copy(oldCaps); - std::string elementName = GST_ELEMENT_NAME(element); - if (elementName.find("v4l2h264enc")) - gst_caps_set_simple(newCaps, "level", G_TYPE_STRING, "3", NULL); if (vInfo.width > 0) gst_caps_set_simple(newCaps, "width", G_TYPE_INT, vInfo.width, NULL); @@ -803,7 +800,7 @@ void gst::_updateEncCaps(GstElement* element, const param::videoInfo& vInfo) gst_caps_set_simple(newCaps, "height", G_TYPE_INT, vInfo.height, NULL); if (!gst_caps_is_equal(oldCaps, newCaps)) { - gst::_printCaps(newCaps, "Change newCaps"); + gst::_printCaps(newCaps, "Change newCaps"); g_object_set(G_OBJECT(element), "caps", newCaps, NULL); } |