View Issue Details
ID | Project | Category | View Status | Date Submitted | Last Update |
---|---|---|---|---|---|
0000250 | JVT JM H.264/AVC reference software | decoder | public | 2011-04-04 18:40 | 2011-04-06 15:45 |
Reporter | Shaikhul Islam Chowdhury | Assigned To | |||
Priority | normal | Severity | feature | Reproducibility | always |
Status | confirmed | Resolution | open | ||
Product Version | JM 17.2 | ||||
Summary | 0000250: "Warning: RTP sequence number discontinuity detected" | ||||
Description | I was trying to decode a .264 where the bitstream has some packet lossed (generated using rtp_loss model) but it exit program abnormally and shows msg "Warning: RTP sequence number discontinuity detected". If i try to decode a bitstream that does not have any packet loss in that case it works fine. I uses RTP in both encoder(OutFileMode = 1) and decoder(FileFormat = 1) config file. In additional information area i pasted the decoder.cfg file. Please follow steps to reproduce. | ||||
Steps To Reproduce | 1. encode a yuv file 2. do some packet loss using rtp_loss model, ex: rtp_loss carphone_qcif_15fps.264 carphone_qcif_15fps_loss_50.264 50 3. now use carphone_qcif_15fps_loss_50.264 in decoder.cfg as input file 4. try to decode the bitstream using ldecode and see the output, in my case i got the warning, please see the attached snapshot | ||||
Additional Information | decoder.cfg ----------- ########################################################################################## # Files ########################################################################################## InputFile = "carphone_qcif_15fps_loss_50.264" # H.264/AVC coded bitstream OutputFile = "carphone_qcif_15fps_decoded.yuv" # Output file, YUV/RGB RefFile = "carphone_qcif_15fps.yuv" # Ref sequence (for SNR) WriteUV = 1 # Write 4:2:0 chroma components for monochrome streams FileFormat = 1 # NAL mode (0=Annex B, 1: RTP packets) RefOffset = 0 # SNR computation offset POCScale = 2 # Poc Scale (1 or 2) ########################################################################################## # HRD parameters ########################################################################################## #R_decoder = 500000 # Rate_Decoder #B_decoder = 104000 # B_decoder #F_decoder = 73000 # F_decoder #LeakyBucketParamFile = "leakybucketparam.cfg" # LeakyBucket Params ########################################################################################## # decoder control parameters ########################################################################################## DisplayDecParams = 0 # 1: Display parameters; ConcealMode = 1 # Err Concealment(0:Off,1:Frame Copy,2:Motion Copy) RefPOCGap = 2 # Reference POC gap (2: IPP (Default), 4: IbP / IpP) POCGap = 2 # POC gap (2: IPP /IbP/IpP (Default), 4: IPP with frame skip = 1 etc.) Silent = 0 # Silent decode IntraProfileDeblocking= 1 # Enable Deblocking filter in intra only profiles (0=disable, 1=filter according to SPS parameters) DecFrmNum = 3 # Number of frames to be decoded (-n) ########################################################################################## # 3D decoding parameters ########################################################################################## DecodeAllLayers = 0 # -mpr decode all layers; #Mux3DMethod = -1 # -mux #DemuxMetaFile = "" # -mta #ExportViews = 0 # -exp Export views (3D) #PostProcess3DMethod = 0 # -3d Postprocessmethod (3D) | ||||
Tags | No tags attached. | ||||
related to | 0000062 | assigned | Karsten Suehring | while loops in ldecod.c and image.c do not behave as expected |
2011-04-04 18:40
|
|
|
The warning message is expected. If you introduce loss to the file, the RTP sequence number will have gaps. Can you please attach the used bitstream file to this bug? |
2011-04-05 17:48
|
|
|
yes the warning is expected but its getting shut down unexpectedly which is not good i think. I have attached the bitstream file. |
|
The bitstream does not contain a SPS. Therefore the decoding process cannot start. Also the IDR picture is missing. The current code skips all slices in read_new_slice() but fails to detect the error condition outside the slice. Then it tries to decode the last slice (which has not been read). The decoding loop needs to be rewritten to properly handle this kind of errors. It's been a mess since quite a while and adding MVC support didn't help. I don't think that this can be done for 18.0. Maybe we can fix this later. |
Date Modified | Username | Field | Change |
---|---|---|---|
2011-04-04 18:40 | Shaikhul Islam Chowdhury | New Issue | |
2011-04-04 18:40 | Shaikhul Islam Chowdhury | File Added: decoder_bug.png | |
2011-04-05 17:14 | Karsten Suehring | Note Added: 0000419 | |
2011-04-05 17:14 | Karsten Suehring | Status | new => feedback |
2011-04-05 17:48 | Shaikhul Islam Chowdhury | File Added: carphone_qcif_15fps_loss_50.264 | |
2011-04-05 17:50 | Shaikhul Islam Chowdhury | Note Added: 0000421 | |
2011-04-06 15:44 | Karsten Suehring | Note Added: 0000426 | |
2011-04-06 15:44 | Karsten Suehring | Status | feedback => confirmed |
2011-04-06 15:45 | Karsten Suehring | Relationship added | related to 0000062 |