AnsweredAssumed Answered

IMX6 Gstreamer Trick Modes and Playback Rate Problem

Question asked by Onur Calili on Mar 9, 2018
Latest reply on Mar 18, 2018 by Onur Calili


   We are using imx6q with gstreamer (1.83) to playback prerecorded avi files (avi files are splitted into multiple files using “splitmuxsink”, video is encoded using “imxvpuenc_h264” and audio is encoded using “mulawenc”). We are using pipeline given below to playback the video on imx6q without problem;


   “gst-launch-1.0 splitmuxsrc name=splitmuxsrc_1 location=/tmp/*.avi splitmuxsrc_1.audio_0 ! queue ! mulawdec ! audioconvert ! alsasink splitmuxsrc_1. ! queue ! h264parse ! imxvpudec ! imxg2dvideosink force-aspect-ratio=false”


   In our code we are using “gst_parse_launch” to construct the pipeline given above. We have to playback the videos in 4 playback speed rates which are 1x, 2x, 4x and 8x and in both directions forward and backwards. We manage to playback the video with this method but we have some problems.

   When we tried trick mode of gstreamer (gst_event_new_seek function with rates 1x, 2x, 4x and 8x) we could not managed to playback the video with 8x rate. In addition when we increase the playback rate to 2x and 4x the cpu load increases dramatically. As a result we believe imx encodes all the frames when using trick mode. Also we tried videorate plugin of gstreamer but pipeline gived an error. We could not play any video.

   How we can achieve 1x, 2x, 4x and 8x playback rates with low cpu load? Any help would be appreciated.