|
||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
HiDebugger User Guide
|
||
Issue |
05 |
|
Date |
2015-06-26 |
|
|
||
Copyright © HiSilicon Technologies Co., Ltd. 2015. All rights reserved. No part of this document may be reproduced or transmitted in any form or by any means without prior written consent of HiSilicon Technologies Co., Ltd.
Trademarks and Permissions
All other trademarks and trade names mentioned in this document are the property of their respective holders.
Notice The purchased products, services and features are stipulated by the contract made between HiSilicon and the customer. All or part of the products, services and features described in this document may not be within the purchase scope or the usage scope. Unless otherwise specified in the contract, all statements, information, and recommendations in this document are provided "AS IS" without warranties, guarantees or representations of any kind, either express or implied. The information in this document is subject to change without notice. Every effort has been made in the preparation of this document to ensure accuracy of the contents, but all statements, information, and recommendations in this document do not constitute a warranty of any kind, express or implied. |
HiSilicon Technologies Co., Ltd. |
|
Address: |
Huawei Industrial Base Bantian, Longgang Shenzhen 518129 People's Republic of China |
Website: |
|
Email: |
Purpose
This document describes the usage of the HiDebugger, including how to obtain the debugging information, how to obtain and display proc information, and how to record streams.
Related Versions
The following table lists the product versions related to this document.
Product Name |
Version |
Hi3719C |
V1XX |
Hi3719M |
V1XX |
Hi3718C |
V1XX |
Hi3718M |
V1XX |
Hi3716M |
V4XX |
Hi3716M |
V31X |
Hi3110E |
V5XX |
Hi3798C |
V2XX |
Intended Audience
This document is intended for:
l Technical support engineers
l Software development engineers
Change History
Changes between document issues are cumulative. Therefore, the latest document issue contains all changes made in previous issues.
Issue 05 (2015-06-26)
This issue is the fifth official release, which incorporates the following changes:
Some figures are replaced due to the update of GUI layout.
Issue 04 (2015-04-30)
This issue is the fourth official release, which incorporates the following changes:
Hi3798C V200, Hi3716M V420, and Hi3716M V410 are supported.
Section 1.2 is modified.
Issue 03 (2015-03-10)
This issue is the third official release, which incorporates the following changes:
Hi3110E V500 is supported.
Issue 02 (2014-11-05)
This issue is the second official release, which incorporates the following changes:
Modifications are made to support Hi3716M V310.
Chapter 3 is added.
Issue 01 (2014-05-23)
This issue is the first official release, which incorporates the following change:
Chapter 2 GUI and Function Description
Section 2.1.3 is modified.
Issue 00B01 (2013-12-20)
This issue is the first draft release.
2 GUI and Function Description
2.1.1 Obtaining Debugging Information by Classification
2.1.2 Searching for Debugging Information
2.1.3 Manually or Automatically Saving Logs.
2.2.1 Obtaining and Displaying Proc Information
2.2.2 Setting the Interval for Obtaining Proc Information
2.2.3 Setting Parameters Before Recording Streams
2.2.5 Setting the Recording Duration
2.2.6 Setting the Number of Recording Cycles.
Figures
Figure 1-1 Selecting HiDebugger
Figure 1-2 Creating a Telnet connection
Figure 2-2 Clicking the start button
Figure 2-3 Setting the debugging level
Figure 2-4 Selecting the modules whose logs need to be obtained
Figure 2-6 Stopping obtaining debugging information
Figure 2-7 Searching for specific debugging information
Figure 2-8 Displayed message indicating the number of saved logs
Figure 2-9 Proc file tree on the ProcInfo tab page
Figure 2-10 Obtaining proc information
Figure 2-11 Setting the interval for obtaining proc information
Figure 2-13 Setting the path for saving streams
Figure 2-14 Selecting the AVPLAY instance
Figure 2-15 Streams that are transmitted through the DEMUX
Figure 2-16 Streams that are directly injected into the AVPLAY
Figure 2-17 Recording all input TSs of the DEMUX module
Figure 2-18 Recording output TSs of the DEMUX module
Figure 2-19 Recording output ESs of the DEMUX module
Figure 2-20 Recording input ESs of the VDEC module
Figure 2-21 Recording output YUV streams of the VDEC module
Figure 2-22 Recording input YUV streams of the VPSS module
Figure 2-23 Setting the port ID
Figure 2-24 Setting the port for recording streams
Figure 2-25 Setting the window ID
Figure 2-26 Setting the ID of the window for recording streams
Figure 2-27 Recording output CAST streams of the DISP1 module
Figure 2-28 Recording input ESs of the ADEC module
Figure 2-29 Recording output PCM streams of the ADEC module
Figure 2-30 Setting the track ID
Figure 2-31 Setting the track for recording streams
Figure 2-32 Recording output PCM streams of the TRACK module
Figure 2-33 Setting the sound ID
Figure 2-34 Setting the sound device for recording streams
Figure 2-35 Recording output PCM streams of the SOUND module
Figure 2-37 Setting the recording duration
Figure 2-39 Setting recording cycles
Figure 2-40 Setting the recording duration and cycles
The HiDebugger is used to obtain logs and record streams. It has the following functions:
l Obtains and displays debugging information by classification.
l Obtains and displays proc information.
Before you use the HiDebugger, perform the following steps:
Step 1 Copy HiTool-STB-X.X.X.zip and jre-6u1-windows-i586-p.rar (in $SDK_DIR/ tools/windows/HiTool) in the SDK to a local disk drive on a PC that runs Windows 7 or Windows XP.
Step 2 Ensure that JRE 1.6 (jre-6u1-windows-i586-p) or later is preinstalled on the PC. Otherwise, the HiTool cannot run properly. You can download JRE 1.6 from http://www.oracle.com/technetwork/java/javase/downloads/java-archive-downloads-javase6-419409.html.
Step 3 Decompress HiTool-STB-X.X.X.zip, and double-click HiTool.exe.
Step 4 Configure the board IP address by running the udhcpc command.
Step 5 Run the services that need to be debugged.
Step 6 Select a chip (for example, Hi3716C V200), and click HiDebugger, as shown in Figure 1-1.
Figure 1-1 Selecting HiDebugger
Step 7
Click (connection manager),
create a telnet connection, set Host to the IP address of the board, and
click
to establish the
connection, as shown in Figure 1-2.
Figure 1-2 Creating a Telnet connection
After the connection is set up, the tool automatically starts msp_debug. When the telnet connection is disconnected, the tool automatically stops msp_debug.
If the board image is an Android image, open the Busybox telnet by running busybox telnetd -l /system/bin/sh.
----End
To obtain debugging information by classification, perform the following steps:
Step 1 Start the HiDebugger tool. The DebugInfo UI is displayed by default, as shown in Figure 2-1.
Step 2
Click on the right of the
HiDebugger. The left pane is refreshed, as shown in Figure 2-2.
Figure 2-2 Clicking the start button
Step 3 Select a debugging level from the Debugging Level drop-down list. The debugging levels include FATAL, ERROR, WARN, INFO, and DBG, which indicate fatal information, error information, warning information, all information, and debugging information respectively. See Figure 2-3.
Figure 2-3 Setting the debugging level
Step 4 Select the modules whose logs need to be obtained. In Figure 2-4, all modules are selected.
Figure 2-4 Selecting the modules whose logs need to be obtained
For example, if you set the debugging level to WARN and select all modules, the obtained logs are displayed on the right pane, as shown in Figure 2-5.
You can click in the upper right
corner to stop obtaining the debugging information, as shown in Figure 2-6.
Figure 2-6 Stopping obtaining debugging information
You can click in the upper
right corner to remove all log information in the right pane.
----End
To search for specific debugging
information, enter the field to be searched for in the search box in the lower
left corner, then press Enter or click , as shown in Figure 2-7.
Figure 2-7 Searching for specific debugging information
Click in the upper right
corner, and specify the path for saving the logs. After that, the displayed
logs on the UI are stored in the specified directory.
Each time you click , logs
are automatically saved to the Hidebugger.log file in hitool/logs/HiDebugger.
After the HiDebugger is closed and opened again, the logs saved previously in Hidebugger.log
are removed and the logs being obtained are stored. A message is displayed in
the lower left corner indicating the number of logs saved to the file (the
message is refreshed for every 10000 rows). See Figure 2-8.
Figure 2-8 Displayed message indicating the number of saved logs
To obtain and display proc information on the board, perform the following steps:
Step 1 Click the ProcInfo tab, and expand the proc file system tree, as shown in Figure 2-9.
Figure 2-9 Proc file tree on the ProcInfo tab page
Step 2
Select the files for which proc information
is to be obtained and click in the upper right
corner to start obtaining proc information, as shown in Figure 2-10.
Figure 2-10 Obtaining proc information
----End
Click in
the upper right corner of the HiDebugger and set the interval (0 by default)
for obtaining proc information on the displayed dialog box, as shown in Figure 2-11. Then the proc information is
obtained based on the configured time interval.
Figure 2-11 Setting the interval for obtaining proc information
Step 1
Click in the upper right
corner of the HiDebugger to open the UI for recording streams, as shown in Figure 2-12.
Step 2 Click Browse, and set the path for storing streams, as shown in Figure 2-13.
Figure 2-13 Setting the path for saving streams
l If the storage space of the configured directory for storing recorded streams is insufficient, recorded streams may be incomplete.
l The recorded streams may also be incomplete due to poor network environment or read/write speed.
Step 3 Select the AVPLAY instance for recording streams, as shown in Figure 2-14.
Figure 2-14 Selecting the AVPLAY instance
The player must be started on the board; otherwise, no AVPLAY instance can be selected.
After the AVPLAY is selected, the Recording Streams UI is refreshed, and the stream diagram is displayed based on the AVPLAY type. There are two types of streams:
l Streams that are transmitted through the DEMUX. See Figure 2-15.
l Streams that are directly injected into the AVPLAY. See Figure 2-16.
Figure 2-15 Streams that are transmitted through the DEMUX
Figure 2-16 Streams that are directly injected into the AVPLAY
----End
Currently 13 input/output streams of eight modules can be recorded.
l Recording all input transport streams (TSs) of the DEMUX module
l Recording output TSs of the DEMUX module
l Recording output elementary streams (ESs) of the DEMUX module (including video and audio ESs)
l Recording input ESs of the VDEC module
l Recording output YUV streams of the VDEC module
l Recording input YUV streams of the VPSS module
l Recording output YUV streams of the VPSS module
l Recording output YUV streams of the WINDOW module
l Recording output CAST streams of the DISP1 module
l Recording input ESs of the ADEC module
l Recording output pulse-code modulation (PCM) streams of the ADEC module
l Recording output PCM streams of the TRACK module
l Recording output PCM streams of the SOUND module
Recording All Input TSs of the DEMUX Module
All TSs from a
specific port that is bound to the DEMUX can be recorded. Click the TS
button on the left of the DEMUX module to start recording, and click the button
again to stop recording. The button is when the streams are
not recorded, and it turns into
when the streams are
being recorded. See Figure 2-17.
Figure 2-17 Recording all input TSs of the DEMUX module
You can set the recording duration and cycles by using the shortcut menu.
Recording Output TSs of the DEMUX Module
Click the TS button below the DEMUX module to start
recording, and click the button again to stop recording. The button is when
the streams are not recorded, and it turns into
when the streams
are being recorded. See Figure 2-18.
Figure 2-18 Recording output TSs of the DEMUX module
TSs are saved in dmx_rects_x.ts. x starts from 0 and increases by 1 each time TSs are saved.
You can set the recording duration and cycles by using the shortcut menu.
The input TSs and output TSs of the DEMUX module cannot be recorded at the same time.
Recording Output ESs (Video and Audio ESs) of the DEMUX Module
Figure 2-19 Recording output ESs of the DEMUX module
l Audio data is saved in dmx_aud_x.es. x starts from 0 and increases by 1 each time audio data is saved.
l Video data is saved in dmx_vid_x.es. x starts from 0 and increases by 1 each time video data is saved.
You can set the recording duration and cycles by using the shortcut menu.
Recording Input ESs of the VDEC Module
Figure 2-20 Recording input ESs of the VDEC module
You can set the recording duration and cycles by using the shortcut menu.
Recording Output YUV Streams of the VDEC Module
Figure 2-21 Recording output YUV streams of the VDEC module
The ES data is saved in vdec_yuv_chanX_Y.raw. X indicates the decoder ID, and Y starts from 0 and increases by 1 each time ES data is saved.
You can set the recording duration and cycles by using the shortcut menu.
Recording Input YUV Streams of the VPSS Module
Click the YUV button on the left of the VPSS module to record a stream frame, and click it again to record another frame. To record streams cyclically, right-click the button, choose Cyclic Recording from the shortcut menu, and enter the number of recording cycles. After the specified number of cycles is reached, the black square on the button changes to a red circle. See Figure 2-22.
Figure 2-22 Recording input YUV streams of the VPSS module
You can set the number of recording cycles by using the shortcut menu.
Recording Output YUV Streams of the VPSS Module
Right-click the YUV button on the right of the VPSS module, choose Set Port ID from the shortcut menu, and set the port for recording streams in the displayed dialog box, as shown in Figure 2-23.
Figure 2-23 Setting the port ID
Figure 2-24 Setting the port for recording streams
Click the YUV button on the right of the VPSS module to record a stream frame, and click it again to record another frame. Each time you click the button, a frame is recorded.
You can set the port ID and number of recording cycles by using the shortcut menu.
Recording Output YUV Streams of the WINDOW Module
Figure 2-25 Setting the window ID
Figure 2-26 Setting the ID of the window for recording streams
Click the YUV button on the right of the WINDOW module to record a stream frame, and click it again to record another frame. Each time you click the button, a frame is recorded.
You can set the window ID and number of recording cycles by using the shortcut menu.
Recording Output CAST Streams of the DISP1 Module
Figure 2-27 Recording output CAST streams of the DISP1 module
You can set the number of recording cycles by using the shortcut menu.
Recording Input ESs of the ADEC Module
Figure 2-28 Recording input ESs of the ADEC module
You can select Fixed-Duration Recording and Cyclic Recording from the shortcut menu. You need to specify the recording duration and number of recording cycles (1 by default). The black square on the button automatically changes to a red circle when the time duration and number of cycles are reached.
You can find files similar to the following in the configured directory after recording:
l adec0_00.es: file for storing ES data of adec00 saved for the first time
l adec0_01.es: file for storing ES data of adec00 saved for the second time
Recording Output PCM Streams of the ADEC Module
Figure 2-29 Recording output PCM streams of the ADEC module
You can select Fixed-Duration Recording and Cyclic Recording from the shortcut menu. You need to specify the recording duration and number of recording cycles (1 by default). The black square on the button automatically changes to a red circle when the time duration and number of cycles are reached.
You can find files similar to the following in the configured directory after recording:
l adec0_00.pcm: file for storing PCM data of adec00 saved for the first time
l adec0_01.pcm: file for storing PCM data of adec00 saved for the second time
Recording Output PCM Streams of the TRACK Module
Figure 2-30 Setting the track ID
Figure 2-31 Setting the track for recording streams
Click the TRACK button on the right of the TRACK module to start recording, and click the button again to stop recording. See Figure 2-32.
Figure 2-32 Recording output PCM streams of the TRACK module
You can select Fixed-Duration Recording and Cyclic Recording from the shortcut menu. You need to specify the recording duration and number of recording cycles (1 by default). The black square on the button automatically changes to a red circle when the time duration and number of cycles are reached.
You can find files similar to the following in the configured directory after recording:
l track0_00.pcm: file for storing PCM data of track0 saved for the first time
l track0_01.pcm: file for storing PCM data of track0 saved for the second time
Recording Output PCM Streams of the SOUND Module
Figure 2-33 Setting the sound ID
Figure 2-34 Setting the sound device for recording streams
Figure 2-35 Recording output PCM streams of the SOUND module
You can select Fixed-Duration Recording and Cyclic Recording from the shortcut menu. You need to specify the recording duration and number of recording cycles (1 by default). The black square on the button automatically changes to a red circle when the time duration and number of cycles are reached.
You can find files similar to the following in the configured directory after recording:
l sound0_00.pcm: file for storing PCM data of sound0 saved for the first time
l sound0_01.pcm: file for storing PCM data of sound0 saved for the second time
After the recording duration (1000 ms by default) is set, the start recording command is sent when you click the stream button, and the stop recording command is sent when the recording duration is reached.
To set the recording duration, perform the following steps:
Step 1 Right-click the stream button, as shown in Figure 2-36.
Step 2 Choose Fixed-Duration Recording. The dialog box shown in Figure 2-37 is displayed.
Figure 2-37 Setting the recording duration
Then you can start to record steams.
----End
After the number of recording cycles is set, the tool records streams based on the configured recording duration and cycles. Click the stream button to start recording. After the configured cycles, the black square on the button automatically changes to a red circle.
To set the number of recording cycles, perform the following steps:
Step 1 Right-click the stream button, as shown in Figure 2-38.
Step 2 Choose Cyclic Recording. The dialog box shown in Figure 2-39 is displayed.
Figure 2-39 Setting recording cycles
After the recording duration and cycles are set, right-click the stream button. The two options in the shortcut menu are selected, as shown in Figure 2-40.
Figure 2-40 Setting the recording duration and cycles
----End
Problem Description
Solution
This issue occurs because the read/write speeds of the memory file system and the flash memory are different, and /mnt is in the memory file system whereas /sdcard is in the flash memory. You are advised to record streams by using a storage device with high read/write performance.