Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

  • MACHINE=raspberrypi4-64-rdk-hybrid source meta-cmf-raspberrypi/setup-environment
  • bitbake -k rdk-generic-hybrid-wpe-image

Note : Below changes needs to be cherry picked

  • For Cobalt plugin to work : Refer the Table: Regressions Obtained  Known Issues - Section : 5,9,10.2

Machine Configuration and Meta layer changes:

...


Source / ModuleError/WarningChangesCode Review / Jira Ticket
1

Module : rtRemote

src/rtRemoteValueWriter.cpp

| [21/45] /home/pjames993/64bit_rpi4_apr18/build-raspberrypi4-64-rdk-hybrid/tmp/work/aarch64-rdk-linux/rtremote/2.x+gitAUTOINC+9c5eeba065-r0/recipe-sysroot-native/usr/bin/aarch64-rdk-linux/aarch64-rdk-linux-g++  -DRAPIDJSON_HAS_STDSTRING -DRT_PLATFORM_LINUX -DRT_REMOTE_LOOPBACK_ONLY -Drtremote_shared_EXPORTS -I/home/pjames993/64bit_rpi4_apr18/build-raspberrypi4-64-rdk-hybrid/tmp/work/aarch64-rdk-linux/rtremote/2.x+gitAUTOINC+9c5eeba065-r0/git/include -I/home/pjames993/64bit_rpi4_apr18/build-raspberrypi4-64-rdk-hybrid/tmp/work/aarch64-rdk-linux/rtremote/2.x+gitAUTOINC+9c5eeba065-r0/git/external -I/home/pjames993/64bit_rpi4_apr18/build-raspberrypi4-64-rdk-hybrid/tmp/work/aarch64-rdk-linux/rtremote/2.x+gitAUTOINC+9c5eeba065-r0/git/src -I. -I/home/pjames993/64bit_rpi4_apr18/build-raspberrypi4-64-rdk-hybrid/tmp/work/aarch64-rdk-linux/rtremote/2.x+gitAUTOINC+9c5eeba065-r0/recipe-sysroot/usr/include/pxcore -mcpu=cortex-a72+crc+crypto   --sysroot=/home/pjames993/64bit_rpi4_apr18/build-raspberrypi4-64-rdk-hybrid/tmp/work/aarch64-rdk-linux/rtremote/2.x+gitAUTOINC+9c5eeba065-r0/recipe-sysroot   -pipe -g -feliminate-unused-debug-types -fmacro-prefix-map=/home/pjames993/64bit_rpi4_apr18/build-raspberrypi4-64-rdk-hybrid/tmp/work/aarch64-rdk-linux/rtremote/2.x+gitAUTOINC+9c5eeba065-r0=/usr/src/debug/rtremote/2.x+gitAUTOINC+9c5eeba065-r0                      -fdebug-prefix-map=/home/pjames993/64bit_rpi4_apr18/build-raspberrypi4-64-rdk-hybrid/tmp/work/aarch64-rdk-linux/rtremote/2.x+gitAUTOINC+9c5eeba065-r0=/usr/src/debug/rtremote/2.x+gitAUTOINC+9c5eeba065-r0                      -fdebug-prefix-map=/home/pjames993/64bit_rpi4_apr18/build-raspberrypi4-64-rdk-hybrid/tmp/work/aarch64-rdk-linux/rtremote/2.x+gitAUTOINC+9c5eeba065-r0/recipe-sysroot=                      -fdebug-prefix-map=/home/pjames993/64bit_rpi4_apr18/build-raspberrypi4-64-rdk-hybrid/tmp/work/aarch64-rdk-linux/rtremote/2.x+gitAUTOINC+9c5eeba065-r0/recipe-sysroot-native=   -O3 -Wno-deprecated-declarations -Wno-maybe-uninitialized -Wno-address  -fno-delete-null-pointer-checks   -fno-delete-null-pointer-checks   -Wl,--warn-unresolved-symbols  -fvisibility-inlines-hidden  -mcpu=cortex-a72+crc+crypto   --sysroot=/home/pjames993/64bit_rpi4_apr18/build-raspberrypi4-64-rdk-hybrid/tmp/work/aarch64-rdk-linux/rtremote/2.x+gitAUTOINC+9c5eeba065-r0/recipe-sysroot -std=c++0x -O2 -fPIC   -std=gnu++11 -MD -MT CMakeFiles/rtremote_shared.dir/src/rtRemoteServer.cpp.o -MF CMakeFiles/rtremote_shared.dir/src/rtRemoteServer.cpp.o.d -o CMakeFiles/rtremote_shared.dir/src/rtRemoteServer.cpp.o -c /home/pjames993/64bit_rpi4_apr18/build-raspberrypi4-64-rdk-hybrid/tmp/work/aarch64-rdk-linux/rtremote/2.x+gitAUTOINC+9c5eeba065-r0/git/src/rtRemoteServer.cpp
| ninja: build stopped: subcommand failed.
| WARNING: exit code 1 from a shell command.
| ERROR: Execution of '/home/pjames993/64bit_rpi4_apr18/build-raspberrypi4-64-rdk-hybrid/tmp/work/aarch64-rdk-linux/rtremote/2.x+gitAUTOINC+9c5eeba065-r0/temp/run.do_compile.2058993' failed with exit code 1
ERROR: Task (/home/pjames993/64bit_rpi4_apr18/meta-rdk/recipes-common/rtremote/rtremote_git.bb:do_compile) failed with exit code '1'
5c6de480ebf4472c1f688cbb8f34387a2c1885c7
Please refer the review linkhttps://github.com/pxscene/rtRemote/pull/4Merged and closed
2

Module : rdkservices

git/RDKShell/RDKShell.cpp

| /home/pjames993/64bit_rpi4_apr18/build-raspberrypi4-64-rdk-hybrid/tmp/work/aarch64-rdk-linux/rdkservices/3.0+gitAUTOINC+2f0616e469-r1/git/RDKShell/RDKShell.cpp:1099:62: error: cannot bind non-const lvalue reference of type 'uint32_t&' {aka 'unsigned int&'} to an rvalue of type 'uint32_t' {aka 'unsigned int'}

|  1099 |                       CompositorController::screenShot(data, size);

|       |                                                              ^~~~

@@ -1067,7 +1094,7 @@ namespace WPEFramework {

                   if (needsScreenshot)

                   {

                       uint8_t* data = nullptr;

-                      size_t size;

+                      uint32_t size;

                       string screenshotBase64;

                       CompositorController::screenShot(data, size);

                       size_t encodedImageSize = b64_get_encoded_buffer_size(size);

https://github.com/rdkcentral/rdkservices/pull/2674Merged to STABLE2
3Module : rdkx-logger

git/src/rdkx_logger_private.h

../../git/src/rdkx_logger_level.hash:61:1: error: conflicting types for 'rdkx_logger_level_str_to_num'

| In file included from ../../git/src/rdkx_logger_level.hash:6:

| ../../git/src/rdkx_logger_private.h:25:30: note: previous declaration of 'rdkx_logger_level_str_to_num' was here

|    25 | struct rdkx_logger_level_s * rdkx_logger_level_str_to_num(const char *str, unsigned int len);

|       |                              ^~~~~~~~~~~~~~~~~~~~~~~~~~~~


diff --git a/src/rdkx_logger_private.h b/src/rdkx_logger_private.h

index 49224e5..a475514 100644

--- a/src/rdkx_logger_private.h

+++ b/src/rdkx_logger_private.h

@@ -18,8 +18,10 @@

 # limitations under the License.

 ############################################

 */

+

+#include <stddef.h>

 typedef struct rdkx_logger_module_s { char *name; unsigned char id; } rdkx_logger_module_t;

 typedef struct rdkx_logger_level_s  { char *name; unsigned char level; } rdkx_logger_level_t;


-struct rdkx_logger_module_s *rdkx_logger_module_str_to_index(const char *str, unsigned int len);

-struct rdkx_logger_level_s * rdkx_logger_level_str_to_num(const char *str, unsigned int len);

+struct rdkx_logger_module_s *rdkx_logger_module_str_to_index(const char *str, size_t len);

+struct rdkx_logger_level_s * rdkx_logger_level_str_to_num(const char *str, size_t len);

https://gerrit.teamccp.com/#/c/649640/
https://ccp.sys.comcast.net/browse/DELIA-56629
Issue is resolved. Code merged  by David Wolaver
4

Module : xr-speech-vrex

src/xrsv_ws/xrsv_ws_private.h

xrsv_ws_nextgen/xrsv_ws_nextgen_private.h

| ../../git/src/xrsv_ws/xrsv_ws_request.hash:61:1: error: conflicting types for 'xrsv_ws_request_handler_get'

| In file included from ../../git/src/xrsv_ws/xrsv_ws_request.hash:6:

| ../../git/src/xrsv_ws/xrsv_ws_private.h:83:36: note: previous declaration of 'xrsv_ws_request_handler_get' was here

|    83 | struct xrsv_ws_request_handler_s * xrsv_ws_request_handler_get(const char *str, unsigned int len);

|       |                                    ^~~~~~~~~~~~~~~~~~~~~~~~~~~

| Makefile:542: recipe for target 'xrsv_ws/xrsv_ws_request.lo' failed

| make[3]: *** [xrsv_ws/xrsv_ws_request.lo] Error 1

*********************************************

| ../../git/src/xrsv_ws/xrsv_ws_action_phone.hash:61:1: error: conflicting types for 'xrsv_ws_action_phone_handler_get'

| In file included from ../../git/src/xrsv_ws/xrsv_ws_action_phone.hash:6:

| ../../git/src/xrsv_ws/xrsv_ws_private.h:85:36: note: previous declaration of 'xrsv_ws_action_phone_handler_get' was here

|    85 | struct xrsv_ws_action_handler_s *  xrsv_ws_action_phone_handler_get(const char *str, unsigned int len);

|       |                                    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

| Makefile:542: recipe for target 'xrsv_ws/xrsv_ws_action_phone.lo' failed

| make[3]: *** [xrsv_ws/xrsv_ws_action_phone.lo] Error 1

| ../../git/src/xrsv_ws_nextgen/xrsv_ws_nextgen_tv_control.hash:61:1: error: conflicting types for 'xrsv_ws_nextgen_tv_control_handler_get'

| In file included from ../../git/src/xrsv_ws_nextgen/xrsv_ws_nextgen_tv_control.hash:6:

| ../../git/src/xrsv_ws_nextgen/xrsv_ws_nextgen_private.h:79:47: note: previous declaration of 'xrsv_ws_nextgen_tv_control_handler_get' was here

|    79 | struct xrsv_ws_nextgen_tv_control_handler_s * xrsv_ws_nextgen_tv_control_handler_get(const char *str, unsigned int len);

|       |                                               ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

| ../../git/src/xrsv_ws_nextgen/xrsv_ws_nextgen_msgtype.hash:61:1: error: conflicting types for 'xrsv_ws_nextgen_msgtype_handler_get'

| In file included from ../../git/src/xrsv_ws_nextgen/xrsv_ws_nextgen_msgtype.hash:6:

| ../../git/src/xrsv_ws_nextgen/xrsv_ws_nextgen_private.h:78:44: note: previous declaration of 'xrsv_ws_nextgen_msgtype_handler_get' was here

|    78 | struct xrsv_ws_nextgen_msgtype_handler_s * xrsv_ws_nextgen_msgtype_handler_get(const char *str, unsigned int len);

|       |                                            ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

| ../../git/src/xrsv_ws/xrsv_ws_action.hash:61:1: error: conflicting types for 'xrsv_ws_action_handler_get'

| In file included from ../../git/src/xrsv_ws/xrsv_ws_action.hash:6:

| ../../git/src/xrsv_ws/xrsv_ws_private.h:84:36: note: previous declaration of 'xrsv_ws_action_handler_get' was here

|    84 | struct xrsv_ws_action_handler_s *  xrsv_ws_action_handler_get(const char *str, unsigned int len);

|       |                                    ^~~~~~~~~~~~~~~~~~~~~~~~~~

| Makefile:542: recipe for target 'xrsv_ws/xrsv_ws_action.lo' failed

| make[3]: *** [xrsv_ws/xrsv_ws_action.lo] Error 1

diff --git a/src/xrsv_ws/xrsv_ws_private.h b/src/xrsv_ws/xrsv_ws_private.h

index eecd6fb..6765591 100644

--- a/src/xrsv_ws/xrsv_ws_private.h

+++ b/src/xrsv_ws/xrsv_ws_private.h

@@ -78,8 +78,8 @@ typedef bool (*xrsv_ws_handler_bool_t)(xrsv_ws_obj_t *obj, json_t *obj_json);

 typedef struct xrsv_ws_request_handler_s { char *name; xrsv_ws_handler_bool_t func; } xrsv_ws_request_handler_t;

 typedef struct xrsv_ws_action_handler_s  { char *name; xrsv_ws_handler_void_t func; } xrsv_ws_action_handler_t;


-struct xrsv_ws_request_handler_s * xrsv_ws_request_handler_get(const char *str, unsigned int len);

-struct xrsv_ws_action_handler_s *  xrsv_ws_action_handler_get(const char *str, unsigned int len);

-struct xrsv_ws_action_handler_s *  xrsv_ws_action_phone_handler_get(const char *str, unsigned int len);

+struct xrsv_ws_request_handler_s * xrsv_ws_request_handler_get(const char *str, size_t len);

+struct xrsv_ws_action_handler_s *  xrsv_ws_action_handler_get(const char *str, size_t len);

+struct xrsv_ws_action_handler_s *  xrsv_ws_action_phone_handler_get(const char *str, size_t len);


 #endif

diff --git a/src/xrsv_ws_nextgen/xrsv_ws_nextgen_private.h b/src/xrsv_ws_nextgen/xrsv_ws_nextgen_private.h

index 8daee81..e6bb2a6 100644

--- a/src/xrsv_ws_nextgen/xrsv_ws_nextgen_private.h

+++ b/src/xrsv_ws_nextgen/xrsv_ws_nextgen_private.h

@@ -73,7 +73,7 @@ typedef void (*xrsv_ws_nextgen_handler_void_t)(xrsv_ws_nextgen_obj_t *obj, json_

 typedef struct xrsv_ws_nextgen_msgtype_handler_s { char *name; xrsv_ws_nextgen_handler_bool_t func; } xrsv_ws_nextgen_msgtype_handler_t;

 typedef struct xrsv_ws_nextgen_tv_control_handler_s { char *name; xrsv_ws_nextgen_handler_void_t func; } xrsv_ws_nextgen_tv_control_handler_t;


-struct xrsv_ws_nextgen_msgtype_handler_s * xrsv_ws_nextgen_msgtype_handler_get(const char *str, unsigned int len);

-struct xrsv_ws_nextgen_tv_control_handler_s * xrsv_ws_nextgen_tv_control_handler_get(const char *str, unsigned int len);

+struct xrsv_ws_nextgen_msgtype_handler_s * xrsv_ws_nextgen_msgtype_handler_get(const char *str, size_t len);

+struct xrsv_ws_nextgen_tv_control_handler_s * xrsv_ws_nextgen_tv_control_handler_get(const char *str, size_t len);

https://gerrit.teamccp.com/#/c/649640/
https://ccp.sys.comcast.net/browse/DELIA-56629
Issue is resolved. Code merged  by David Wolaver
5

Module : mediaframework

qamsource/simgr/oob/include/rmf_sicache.h

| ../../../../git/qamsource/simgr/oob/./src/rmf_oobsicache.cpp:5856:70: error: cast from 'rmf_SiTableEntry*' to 'rmf_SiServiceHandle' {aka 'unsigned int'} loses precision [-fpermissive]

|  5856 |                         ts->services->push_back((rmf_SiServiceHandle)new_si_entry);

|       |                                                                      ^~~~~~~~~~~~

| ../../../../git/qamsource/simgr/oob/./src/rmf_oobsicache.cpp:5890:73: error: cast from 'rmf_SiTransportStreamEntry*' to 'rmf_SiTransportStreamHandle' {aka 'unsigned int'} loses precision [-fpermissive]

|  5890 |                 new_si_entry->ts_handle = (rmf_SiTransportStreamHandle) ts;

|       |                                                                         ^~

| ../../../../git/qamsource/simgr/oob/./src/rmf_oobsicache.cpp:5891:62: error: cast from 'rmf_SiProgramInfo*' to 'rmf_SiProgramHandle' {aka 'unsigned int'} loses precision [-fpermissive]

|  5891 |                 new_si_entry->program = (rmf_SiProgramHandle)pgm;

|       |                                                              ^~~

soln : uint32_t -> uintptr_thttps://code.rdkcentral.com/r/c/rdk/components/generic/mediaframework/+/70409Code change is in SPRINT_OPEN stage for sprint 2206.CODE MERGED
6

Module : wpe-webkit

git/Source/WebCore/platform/ttsclient/PlatformSpeechSynthesizerTTSClient.cpp

| /home/pjames993/64bit_rpi4_apr18/build-raspberrypi4-64-rdk-hybrid/tmp/work/aarch64-rdk-linux/wpe-webkit/2.22.4+gitAUTOINC+ed39c92e59-r0/git/Source/WebCore/platform/ttsclient/PlatformSpeechSynthesizerTTSClient.cpp:185:40: error: cast from 'WebCore::PlatformSpeechSynthesisUtterance*' to 'uint32_t' {aka 'unsigned int'} loses precision [-fpermissive]

| /home/pjames993/64bit_rpi4_apr18/build-raspberrypi4-64-rdk-hybrid/tmp/work/aarch64-rdk-linux/wpe-webkit/2.22.4+gitAUTOINC+ed39c92e59-r0/git/Source/WebCore/platform/ttsclient/PlatformSpeechSynthesizerTTSClient.cpp:234:78: error: cast from 'WebCore::PlatformSpeechSynthesisUtterance*' to 'uint32_t' {aka 'unsigned int'} loses precision [-fpermissive]
|   234 |         m_ttsClient->resume(m_ttsSessionId, (uint32_t)m_currentUtterance.get());
|       |                                                                              ^

| /home/pjames993/64bit_rpi4_apr18/build-raspberrypi4-64-rdk-hybrid/tmp/work/aarch64-rdk-linux/wpe-webkit/2.22.4+gitAUTOINC+ed39c92e59-r0/git/Source/WebCore/platform/ttsclient/PlatformSpeechSynthesizerTTSClient.cpp:273:59: error: cast from 'WebCore::PlatformSpeechSynthesisUtterance*' to 'uint32_t' {aka 'unsigned int'} loses precision [-fpermissive]
|   273 |         speakingFinished((uint32_t)m_currentUtterance.get(), SpeechErrorInterrupted);
|       |                                                           ^

Need to do implemenataion as per the comments.
Comments will be followed up by Jira Ticket :

Jira
serverJIRA
serverId11deff04-0380-3a3d-a916-0849d4e573f7
keyREFPLTV-1341



https://code.rdkcentral.com/r/c/rdk/components/generic/rdk-oe/meta-rdk-ext/+/71000

This change will not impact any of the basic functionalities.

STATUS : MERGED


7

Module : qtbase


../../../../include/QtGui/../../../qtbase-opensource-src-5.1.1/src/gui/opengl/qopengl.h:97:17: error: conflicting declaration 'typedef GLfloat GLdouble'

   97 | typedef GLfloat GLdouble;

      |                 ^~~~~~~~

In file included from /home/kpandu549/keerthana/oct27-v/build-raspberrypi4-64-rdk-hybrid/tmp/work/aarch64-rdk-linux/qtbase/5.1.1-r0/qtbase-opensource-src-5.1.1/src/plugins/platforms/kms/qkmsscreen.h:59,

                 from /home/kpandu549/keerthana/oct27-v/build-raspberrypi4-64-rdk-hybrid/tmp/work/aarch64-rdk-linux/qtbase/5.1.1-r0/qtbase-opensource-src-5.1.1/src/plugins/platforms/kms/qkmsintegration.cpp:44:

/home/kpandu549/keerthana/oct27-v/build-raspberrypi4-64-rdk-hybrid/tmp/work/aarch64-rdk-linux/qtbase/5.1.1-r0/recipe-sysroot/usr/include/GLES2/gl2ext.h:3092:16: note: previous declaration as 'typedef double GLdouble'

 3092 | typedef double GLdouble;


https://code.rdkcentral.com/r/plugins/gitiles/components/generic/rdk-oe/meta-cmf-qt5/+/refs/heads/rdk-next/recipes-qt/qt5/qtbase_5.1.1.bbappend

SRC_URI_append_arm = " \
    file://0003-GLdouble-conflict-declaration-fix.patch \
"

https://code.rdkcentral.com/r/plugins/gitiles/components/generic/rdk-oe/meta-cmf-qt5/+/refs/heads/rdk-next/recipes-qt/qt5/qtbase-5.1.1/0003-GLdouble-conflict-declaration-fix.patch

diff --git a/src/gui/opengl/qopengl.h b/src/gui/opengl/qopengl.h

index 6e8be668..524e1860 100644

--- a/src/gui/opengl/qopengl.h

+++ b/src/gui/opengl/qopengl.h

@@ -94,7 +94,7 @@ typedef char GLchar;

 #   define GL_DOUBLE GL_FLOAT

 #  endif

 #  ifndef GLdouble

-typedef GLfloat GLdouble;

+typedef double GLdouble;

 #  endif

 # endif // Q_OS_MAC

https://code.rdkcentral.com/r/c/components/generic/rdk-oe/meta-cmf-qt5/+/72202

Issue is resolved and uploaded for review.

Current Status : Code Merged

8Module : sessionmgr

| /home/pjames993/64bit_rpi4_apr18/build-raspberrypi4-64-rdk-hybrid/tmp/work/aarch64-rdk-linux/sessionmgr/git-r0/git/src/SessionMgr.cpp: In function 'session_err_t sessionmgr_GetSessionProperty(session_t*, const char*, SimpleJsonEnc&)':

| /home/pjames993/64bit_rpi4_apr18/build-raspberrypi4-64-rdk-hybrid/tmp/work/aarch64-rdk-linux/sessionmgr/git-r0/git/src/SessionMgr.cpp:14850:88: error: call of overloaded 'addNum(const char*&, const char [4], int64_t)' is ambiguous

| 14850 |             response.addNum(property, "%" PRId64, session->source->getTimeshiftBuffer());

|       |                                                                                        ^

Initial Solution:

response.addNum(property, "%" PRId64, (long long)session->source->getTimeshiftBuffer())

https://code.rdkcentral.com/r/c/components/generic/sessionmgr/+/72400Resolution is identified and added for code review.
Status :  Code Merged
9Module : rmfgeneric / mediaframework

In file included from ../../git/anycas/demoCas/demoCas.cpp:22:

../../git/anycas/demoCas/demoCas.h: In member function 'virtual void DemoCasHelper::processData(std::shared_ptr<anycas::CASHelperContext>, bool, const std::vector<unsigned char>&)':
../../git/anycas/demoCas/demoCas.h:295:43: error: cast from 'char*' to 'uint32_t' {aka 'unsigned int'} loses precision [-fpermissive]
  295 |                 uint32_t addr = (uint32_t)pvtData;
      |                                           ^~~~~~~


Intial Solution :

    uint32_t addr = (uintptr_t)pvtData;

https://code.rdkcentral.com/r/c/rdk/components/generic/mediaframework/+/72460

Resolution is identified and added for code review.

STATUS : SPRINT_OPENMERGED

10Module : rdkmediaplayer

../git/rdkmediaplayer.cpp: In member function 'rtError RDKMediaPlayer::open(rtString, rtString)':
../git/rdkmediaplayer.cpp:764:42: error: cast from 'RDKMediaPlayerImpl*' to 'uint32_t' {aka 'unsigned int'} loses precision [-fpermissive]
  764 |         resp = (std::to_string((uint32_t)m_pImpl)).c_str();
      |                                          ^~~~~~~
../git/rdkmediaplayer.cpp:785:51: error: cast from 'RDKMediaPlayerImpl*' to 'uint32_t' {aka 'unsigned int'} loses precision [-fpermissive]
  785 |                 resp = (std::to_string((uint32_t)*it)).c_str();
      |                                                   ^~

Solution :

--- a/rdkmediaplayer.cpp

+++ b/rdkmediaplayer.cpp

@@ -761,7 +761,7 @@ rtError RDKMediaPlayer::open(rtString openData, rtString resp)

         {

             LOG_INFO("CAS Managment session is already avialable");

         }

-        resp = (std::to_string((uint32_t)m_pImpl)).c_str();

+        resp = (std::to_string((uintptr_t)m_pImpl)).c_str();

         LOG_INFO("resp = %x", resp.cString());

     }

     // For Live Playback Session

@@ -782,7 +782,7 @@ rtError RDKMediaPlayer::open(rtString openData, rtString resp)

             if( !((*it)->isManagementSession()) && (*it)->doCanPlayURL(m_currentURL) )

             {

                 LOG_INFO("Reusing cached player");

-                resp = (std::to_string((uint32_t)*it)).c_str();

+                resp = (std::to_string((uintptr_t)*it)).c_str();

                 LOG_INFO("resp = %x", resp.cString());

             }


https://code.rdkcentral.com/r/c/rdk/components/generic/rdkmediaplayer/+/71632/Status : SPRINT_OPENMERGED

Logs after 64bit migration:

...

Compilation Logs

Build Configuration:

BB_VERSION           = "1.46.0"

BUILD_SYS            = "x86_64-linux"

NATIVELSBSTRING      = "ubuntu-18.04"

TARGET_SYS           = "aarch64-rdk-linux"

MACHINE              = "raspberrypi4-64-rdk-hybrid"

DISTRO               = "rdk"

DISTRO_VERSION       = "2.0"

TUNE_FEATURES        = "aarch64 cortexa72 crc crypto"

Validated functionalities:

Console Logs
root@raspberrypi4-64-rdk-hybrid:~# file /usr/bin/rdkbrowser2
/usr/bin/rdkbrowser2: ELF 64-bit LSB executable, ARM aarch64, version 1 (GNU/Linux), dynamically linked, interpreter /lib/ld-linux-aarch64.so.1, BuildID[sha1]=21e3fa1be1046192d65c7a1ffe1c7dd3b795f82d, for GNU/Linux 3.14.0, stripped
root@raspberrypi4-64-rdk-hybrid:~# file /usr/bin/WPEFramework-1.0.0
/usr/bin/WPEFramework-1.0.0: ELF 64-bit LSB executable, ARM aarch64, version 1 (GNU/Linux), dynamically linked, interpreter /lib/ld-linux-aarch64.so.1, BuildID[sha1]=f27ec6ba8270af029fce09e0eb3deea24b7ac0c6, for GNU/Linux 3.14.0, stripped

Validated functionalities:

Status:✓ - Working  x - Not Working   O - Partially Working
Sl. NoTestedAppsTest ResultsRemarks
1Basic
Status:✓ - Working  x - Not Working   O - Partially WorkingSl. NoTestedAppsTest ResultsRemarks1Basic
Testsssh connection

SSH is working through LAN connection.
2Default UI

UI is coming up consistently. Checked rebooting 10 times, every time UI is loading
3Time

x

Current time is not updated in TV UI

4Featured ContentYouTube
x

YouTube is not launching. Cobalt plugin is not available on Controller UI
Playback is working fine for selected content.
Xumo

x

1.AV

playback

decoding is

fine

not smooth.
2.

Forward is working fine.
3.Next content playback is working fine

Audio decoding is also not proper. Looks like rewind audio.


5Lightning AppsCNN
Vimeo

x

1.AV
playback
decoding is
fine
not smooth.
2.
Forward is working fine.
AV sync is not proper



Vimeo

AV Playback is working

3.Next content playback is working fine
.
6Featured Video on DemandFantasy-Island

AV Playback is working
fine
.

7Playbackgst-launch
x


AV playback is
not
working
through gst-launch
.
Tested URL:
> gst-launch-1.0 playbin uri=aamp://bitdash-a.akamaihd.net/content/MI201109210084_1/m3u8s/f08e80da-bf1d-4e3d-8899-f0f6155f6efa.m3u8 video-sink=westerossink
> gst-launch-1.0 playbin uri=aamp://bitdash-a.akamaihd.net/content/sintel/hls/playlist.m3u8 video-sink=westerossink

8aamp-cli

AV playback is working
Tested Commands:

AAMP playback commands

aamp-cli http://devimages.apple.com/iphone/samples/bipbop/bipbopall.m3u8
aamp-cli http://bitdash-a.akamaihd.net/content/MI201109210084_1/m3u8s/f08e80da-bf1d-4e3d-8899-f0f6155f6efa.m3u8
aamp-cli http://bitdash-a.akamaihd.net/content/sintel/hls/playlist.m3u8


9SettingsBT

x

BT connection is not working. It shows pairing failedWiFi connection is working through curl cmds.WiFi connection is not working through TV UI and controller UI11PluginsHTMLApp

1.Bluetooth pairing instability issue.
2.Paring is successful very randomly.


10Wi-Fi
O

1.Connecton is working.
2.Able to take ssh with Wi-Fi IP
3.Able to launch controller UI with Wi-Fi IP


11PluginsHTMLApp

Tested the custom URL: https://www.google.com/
12LightningApp



13Search And DiscoveryApp



14Webkitbrowser

x

Webkitbrowser plugin is not activating. It gets disabled by itself and WPEWebProcess crash observed

Tested the custom URL: https://www.google.com
15Cobalt

x

YouTube application launched properly
Plugin itself is not available on Controller UI

Known Issues:

Sl No.IssueJiraStatusResolutionCode ReviewStatus
1Resolution Issues seen. Display on TV is not full screen

UI Display on TV is not coming full screen on RPi4 Image

Jira
serverJIRA
serverId11deff04-0380-3a3d-a916-0849d4e573f7
keyREFPLTV-1247

MERGED and CLOSED

Explanation : boot/config.txt has only one HDMI port (HDMI0) configured properly (which was only need of the day until RPi3 was used.) . This needs configured for the second HDMI port (HDMI1) also.

Fix: Add the below lines in boot/config.txt file once RPi4 is booted up.

    1. hdmi_group
      [HDMI:0]
      hdmi_group=1
      [HDMI:1]
      hdmi_group=1
    1. hdmi_mode
      #hdmi_mode=4
      [HDMI:0]
      hdmi_mode=4
      [HDMI:1]
      hdmi_mode=4
https://code.rdkcentral.com/r/c/rdk/components/generic/rdk-oe/meta-cmf-raspberrypi/+/72060MERGED and CLOSED
2

Cobalt plugin is not available in Controller UI.

Cobalt Configuration for RPi4-64bit build

Jira
serverJIRA
serverId11deff04-0380-3a3d-a916-0849d4e573f7
keyREFPLTV-1225

RESOLUTION IDENTIFIED

Cobalt Issue Resolution :
Files:
1)git/src/third_party/starboard/rdk/rpi/gyp_configuration.py -> https://code.rdkcentral.com/r/plugins/gitiles/rdk/components/generic/cobalt/+/refs/heads/master/src/third_party/starboard/rdk/rpi/gyp_configuration.py?autodive=0%2F%2F%2F%2F
change1 -> self.sabi_json_path = 'starboard/sabi/arm64/sabi-v13.json'

change2 -> 
  def GetEnvironmentVariables(self):
    env_variables = {}
    env_variables.update({
        'CC': os.environ['CC'],
        'CXX': os.environ['CXX'],
        'LD': os.environ['CXX'],
        'CC_host': 'gcc ',
        'CXX_host': 'g++ ',
    })

2)git/src/starboard/shared/linux/cpu_features_get.cc -> https://cobalt.googlesource.com/cobalt/+/refs/heads/master/starboard/shared/linux/cpu_features_get.cc
change -> 
#if SB_IS(32_BIT)
~~~~~~~~~~~~~~~~~
// Construct hwcap bitmask by the feature flags in /proc/cpuinfo
uint32_t ConstructHwcapFromCPUInfo(ProcCpuInfo* cpu_info,
                                   int16_t architecture_generation,
                                   uint32_t hwcap_type)
  if (hwcap_type == AT_HWCAP && architecture_generation >= 8) {
...
...
...
  return hwcap_value;
}
#endif //SB_IS(32_BIT)
~~~~~~~~~~~~~~~~~~~~~

3)git/src/third_party/starboard/rdk/shared/rdkservices.cc -> https://code.rdkcentral.com/r/plugins/gitiles/rdk/components/generic/cobalt/+/refs/heads/master/src/third_party/starboard/rdk/shared/rdkservices.cc?autodive=0%2F%2F%2F%2F

change -> uint32_t inputLen = std::min(kMaxBufferSize, (uint32_t)payload.length());
                            ~~~~~~~~~

Code Review for source code yet to added


Internediate Code Review added : https://code.rdkcentral.com/r/c/rdk/components/generic/rdk-oe/meta-cmf-raspberrypi/+/73110

RESOLUTION IDENTIFIED3.GST Playback is failing4.Blutooth Connectivity is failing

https://code.rdkcentral.com/r/c/rdk/components/generic/rdk-oe/meta-cmf-raspberrypi/+/74129

3.5WiFi connection is not working through TV UI and controller UI6

Outline/box for Password field is not available on WiFi network screen.