gst_base_parse_check_sync:<h264parse0> error: Failed to parse stream

new baby mdamirraza at gmail.com
Wed Jul 11 12:01:01 UTC 2018


Hi Experts, 

I am getting error when I encode above 1280x720 resolution. 


Kindly help me to solve this problems or guide me right direction ,,, seems
like I am missing some commad line 

I am reading .yuv and passing to hardware encoder nvdia gpu and feeding
encoded .h264 in gstreamer pipe line, audio reading from .wav and processing
using gstreamer and finally muxing as .ts (packetsize 1316).


Two issues.

a) I am getting error when I encode above 1280x720 resolution. 

b) after encoding is over its taking time to finish muxing around few
seconds. This is even present when done software encoding of .yuv also from
gstremer pipeline.


Approaches which I have tried.

I tried to change commandline but didn't help and enabled the logs but not
much help.



I have attached the log files with log level 4 for both cases
2000x1000(error) and 1280x720(no error) .


command line example is ..

*1280x720 (working one )*
pipeline:  appsrc name = audiosource do-timestamp=true format=1 is-live=true 
!  wavparse !  
queue max-size-buffers=0 max-size-time=0 max-size-bytes=0
min-threshold-time=0000000000 !  
audioconvert   ! audio/x-raw, format=S16LE, rate=44100, channels=2 ! 
voaacenc  ! 
mux.  appsrc name = videosource  do-timestamp=true format=3 !  queue
max-size-buffers=0 max-size-time=0 max-size-bytes=0
min-threshold-time=0000000000 ! 
  video/x-h264 , stream-format=byte-stream, width=1280 , height=720 !  
queue  ! h264parse !   mpegtsmux name = mux !   chopmydata max-size=1316
min-size=1316  ! 
  queue ! appsink name = sink


*
2000x1000(error case)*
pipeline:  appsrc name = audiosource do-timestamp=true format=1 is-live=true 
!  wavparse ! 
 queue max-size-buffers=0 max-size-time=0 max-size-bytes=0
min-threshold-time=0000000000 !  
 audioconvert   ! audio/x-raw, format=S16LE, rate=44100, channels=2 ! 
voaacenc  ! mux.  
 appsrc name = videosource  do-timestamp=true format=3 !  queue
max-size-buffers=0 max-size-time=0 max-size-bytes=0
min-threshold-time=0000000000 ! 
 video/x-h264 , stream-format=byte-stream, width=2000 , height=1000 !  
queue  ! h264parse !   mpegtsmux name = mux ! 
 chopmydata max-size=1316 min-size=1316  !  queue ! appsink name = sink
Running...

Log Files attached 
a) error case log file
2000x1000.txt
<http://gstreamer-devel.966125.n4.nabble.com/file/t378175/2000x1000.txt>  
b) working case log file 
1280x720.txt
<http://gstreamer-devel.966125.n4.nabble.com/file/t378175/1280x720.txt>  




*My command line code*

	sprintf(
		pipeline_desc,
		" appsrc name = audiosource do-timestamp=true format=1 is-live=true  ! "
		" wavparse ! "
		" queue max-size-buffers=0 max-size-time=0 max-size-bytes=0
min-threshold-time=0000000000 ! "
		" audioconvert   ! audio/x-raw, format=%s, rate=%d, channels=%d ! 
voaacenc  ! mux. "
		" appsrc name = videosource  do-timestamp=true format=3 ! "
		" queue max-size-buffers=0 max-size-time=0 max-size-bytes=0
min-threshold-time=0000000000 ! "
#if HARDWARE_Enc
		"  video/x-h264 , stream-format=byte-stream, width=%d , height=%d ! "
		"  queue  ! h264parse ! "
#else
		" videoparse  width=%d height=%d framerate=%d/%d ! "
		" x264enc bitrate=%d ! "
		" queue  ! h264parse  ! "
#endif
		
		"  mpegtsmux name = mux ! "
		"  chopmydata max-size=1316 min-size=1316  ! "
		" queue ! appsink name = sink ",
		pstEncConfig->cAudioFormat,pstEncConfig->nSamplesPerSecond,
pstEncConfig->nChannels,
		pstEncConfig->nWidth, pstEncConfig->nHeight
		, pstEncConfig->nFpsn, pstEncConfig->nFpsd, pstEncConfig->nBitrate);






*
sample display..
*
GPU in use: GeForce GTX 1070
[INFO ][17:03:05] Encoding Parameters:
        codec        : h264
        preset       : default
        profile      : (default)
        chroma       : yuv420
        bitdepth     : 8
        rc           : constqp (P,B,I=28,31,25)
        fps          : 25/1
        gop          : INF
        bf           : 0
        size         : 1280x720
        bitrate      : 0
        maxbitrate   : 0
        vbvbufsize   : 0
        vbvinit      : 0
        aq           : disabled
        temporalaq   : disabled
        lookahead    : disabled
        cq           :
        qmin         : P,B,I=0,0,0
        qmax         : P,B,I=0,0,0
        initqp       : P,B,I=0,0,0
Total frames encoded: 0
Saved in file D:\aasim\soft\testStream\output.ts

   VCS_FrameSize
pipeline:  appsrc name = audiosource do-timestamp=true format=1 is-live=true 
!  wavparse !  
queue max-size-buffers=0 max-size-time=0 max-size-bytes=0
min-threshold-time=0000000000 !  
audioconvert   ! audio/x-raw, format=S16LE, rate=44100, channels=2 ! 
voaacenc  ! 
mux.  appsrc name = videosource  do-timestamp=true format=3 !  queue
max-size-buffers=0 max-size-time=0 max-size-bytes=0
min-threshold-time=0000000000 ! 
  video/x-h264 , stream-format=byte-stream, width=1280 , height=720 !  
queue  ! h264parse !   mpegtsmux name = mux !   chopmydata max-size=1316
min-size=1316  ! 
  queue ! appsink name = sink
Running...

 feed frame no [0]



  






-----
adi
--
Sent from: http://gstreamer-devel.966125.n4.nabble.com/


More information about the gstreamer-devel mailing list