Hello,
I am running a pipeline with gst-launch. The pipeline does decoding and encoding. I noticed that gstreamer reports the total run time after it exits. I was wondering if there is a way to time how much time is spent in each element of the pipeline. Especially how much time is spend decoding and transcoding. Can this be done from the command line gst-launch utility? Thanks, Rand _______________________________________________ gstreamer-devel mailing list [hidden email] https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel |
Hello,
After asking my question I found a github repo that has a gst-top command. https://github.com/kirushyk/gst-instruments I tried this on my pipeline that transcodes a video file. According to this tool re encoding the aac audio is taking the longest amount of time in the pipeline. Is there a way to pass through the aac audio without re encoding it? The original video file contains aac audio and I want the output video file to contain aac audio. Here is the pipeline and the results I found. Also, I am using vendor supplied plugins to do the decode and encode. I don't think that the gst-top tool is able to record how much time is actually being spent by the hw decoder and encoder. My theory that it is only recording the time taken by the sw to pass the data back and forth to the hardware decoder and encoder. gst-launch reports total running time of Execution ended after 0:01:42.139042670 (102.14 seconds) Adding up all the running time of gst-top comes to 69.912 seconds leaving 32.228 seconds un accounted for. gst-top-1.0 gst-launch-1.0 -e mpegtsmux name=m ! filesink location=uhd1280x720hwenc.mp4 filesrc location=uhd.trp ! tsdemux name=dem dem. ! queue ! h265parse ! omxh265dec ! nvvidconv ! 'video/x-raw(memory:NVMM), width=(int)1280, height=(int)720, format=(string)I420' ! omxh264enc profile=8 ! m. dem. ! queue ! avdec_aac ! audioconvert ! voaacenc ! m. ELEMENT %CPU %TIME TIME voaacenc0 23.6 34.5 24.1 s m 7.4 10.9 7.59 s h265parse0 7.3 10.7 7.51 s filesink0 5.7 8.4 5.87 s dem 5.7 8.3 5.80 s nvvconv0 4.5 6.6 4.60 s avdec_aac0 4.5 6.5 4.57 s filesrc0 3.5 5.1 3.56 s audioconvert0 2.5 3.7 2.58 s omxh265dec-omxh265dec0 1.9 2.8 1.95 s omxh264enc-omxh264enc0 0.6 0.8 580 ms capsfilter0 0.4 0.6 454 ms queue0 0.4 0.6 410 ms queue1 0.3 0.5 338 ms pipeline0 0.0 0.0 0 ns Regards, Rand ________________________________________ From: gstreamer-devel [[hidden email]] On Behalf Of Rand Graham [[hidden email]] Sent: Monday, January 23, 2017 3:18 PM To: [hidden email] Subject: time different elements of a pipeline? Hello, I am running a pipeline with gst-launch. The pipeline does decoding and encoding. I noticed that gstreamer reports the total run time after it exits. I was wondering if there is a way to time how much time is spent in each element of the pipeline. Especially how much time is spend decoding and transcoding. Can this be done from the command line gst-launch utility? Thanks, Rand _______________________________________________ gstreamer-devel mailing list [hidden email] https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel _______________________________________________ gstreamer-devel mailing list [hidden email] https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel |
Free forum by Nabble | Edit this page |