Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Unable to view the plots using gst-shark #123

Open
kandoiNikhil opened this issue May 25, 2023 · 5 comments
Open

Unable to view the plots using gst-shark #123

kandoiNikhil opened this issue May 25, 2023 · 5 comments

Comments

@kandoiNikhil
Copy link

I capture the trace on a gstreamer pipeline running on a nvidia xavier AGX.
I then take the output directory and copy it to my mac and run the gstshark-plot script to get some charts but it isn't working for me. Any quick tips on how I can get past this issue ??

(base) bash-3.2$ ./gstshark-plot ../../../gst_shark_results/gstshark_2023-05-25_02\:45\:37
[error] Cannot open any trace for reading.

[error] opening trace "��O���" for reading.

[error] none of the specified trace paths could be opened.

Loading proctime events...
Loading interlatency events...
Loading scheduling events...
Loading framerate events...
Loading bitrate events...
Loading queuelevel events...
Loading cpuusage events...
Loading buffer events...
warning: using the gnuplot graphics toolkit is discouraged

The gnuplot graphics toolkit is not actively maintained and has a number
of limitations that are unlikely to be fixed.  Communication with gnuplot
uses a one-directional pipe and limited information is passed back to the
Octave interpreter so most changes made interactively in the plot window
will not be reflected in the graphics properties managed by Octave.  For
example, if the plot window is closed with a mouse click, Octave will not
be notified and will not update its internal list of open figure windows.
The qt toolkit is recommended instead.
Processing proctime...
Processing interlatency...
Processing framerate...
Processing scheduling...
Processing cpusage...
Processing bitrate...
Processing queuelevel...
Processing buffer...


rm: -f: No such file or directory
rm: -f: No such file or directory
rm: -f: No such file or directory
rm: -f: No such file or directory
rm: -f: No such file or directory
rm: -f: No such file or directory
rm: -f: No such file or directory
rm: cpuusage_values.log: No such file or directory
rm: -f: No such file or directory
rm: -f: No such file or directory
@michaelgruner
Copy link
Collaborator

michaelgruner commented May 25, 2023 via email

@kandoiNikhil
Copy link
Author

/* CTF 1.8 */
typealias integer { size = 8; align = 8; signed = false; } := uint8_t;
typealias integer { size = 16; align = 8; signed = false; } := uint16_t;
typealias integer { size = 32; align = 8; signed = false; } := uint32_t;
typealias integer { size = 64; align = 8; signed = false; } := uint64_t;

trace {
    major = 1;
    minor = 3;
    uuid = "d18e6374-35a1-cd42-8e70-a9cffa712793";
    byte_order = le;
    packet.header := struct {
        uint32_t magic;
        uint8_t  uuid[16];
        uint32_t stream_id;
    };
};

clock {
    name = monotonic;
    uuid = "84db105b-b3f4-4821-b662-efc51455106a";
    description = "Monotonic Clock";
    freq = 1000000; /* Frequency, in Hz */
    /* clock value offset from Epoch is: offset * (1/freq) */
    offset_s = 21600;
};

typealias integer {
    size = 32; align = 8; signed = false;
    map = clock.monotonic.value;
} := uint32_clock_monotonic_t;

typealias integer {
    size = 64; align = 8; signed = false;
    map = clock.monotonic.value;
} := uint64_clock_monotonic_t;

struct packet_context {
    uint64_clock_monotonic_t timestamp_begin;
    uint64_clock_monotonic_t timestamp_end;
};

struct event_header {
    enum : uint16_t { compact = 0 ... 65534, extended = 65535 } id;
    variant <id> {
        struct {
            uint32_t timestamp;
        } compact;
        struct {
            uint32_t id;
            uint64_t timestamp;
        } extended;
    } v;
} align(8);

stream {
    id = 0;
    event.header := struct event_header;
    packet.context := struct packet_context;
};

event {
    name = init;
    id = 0;
    stream_id = 0;
};
event {
    name = proctime;
    id = 2;
    stream_id = 0;
    fields := struct {
        string element;
        integer { size = 64; align = 8; signed = 0; encoding = none; base = 10; } _time;
    };
};

event {
    name = queuelevel;
    id = 6;
    stream_id = 0;
    fields := struct {
        string queue;
        integer { size = 32; align = 8; signed = 0; encoding = none; base = 10; } size_bytes;
        integer { size = 32; align = 8; signed = 0; encoding = none; base = 10; } max_size_bytes;
         integer { size = 32; align = 8; signed = 0; encoding = none; base = 10; } size_buffers;
        integer { size = 32; align = 8; signed = 0; encoding = none; base = 10; } max_size_buffers;
        integer { size = 64; align = 8; signed = 0; encoding = none; base = 10; } size_time;
        integer { size = 64; align = 8; signed = 0; encoding = none; base = 10; } max_size_time;
    };
};

event {
    name = framerate;
    id = 4;
    stream_id = 0;
    fields := struct {
        string pad;
        integer { size = 64; align = 8; signed = 0; encoding = none; base = 10; } _fps;
    };
};

@kandoiNikhil
Copy link
Author

There is a datastream file in there as well
This is the entire directory : https://www.dropbox.com/sh/lip29og3ujq7wl3/AACEhHAVnjtKkSdU3ApCj01_a?dl=0

@abrowne2
Copy link

Also having this issue as well; I have datastream & metadata that looks similar to the above. Having issues getting it to generate anything.

@michaelgruner
Copy link
Collaborator

Thanks for sharing the trace. Let me get into it and get back to you. Can you also share the pipeline and tracers you are using?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants