View Issue Details

IDProjectCategoryView StatusLast Update
0000237JVT JM H.264/AVC reference softwareencoder and decoderpublic2011-06-30 11:30
ReporterVaruna De Silva Assigned To 
PrioritynormalSeveritycrashReproducibilityalways
Status acknowledgedResolutionopen 
Product VersionJM 17.2 
Summary0000237: RTP file mode is not implemented for MVC profiles
DescriptionI tried to encode a stereo sequence with the default encoder_stereo.cfg file (except for number of B frames = 0) while changing the out put mode to rtp. Then when trying to decode with the "DecodeAllLayers = 1" the decoder crashes while saying, "Nalu Header MVC Extension: reserved_one_bit is not 1!". However, in annexb mode it works almost fine.
TagsMVC, RTP

Activities

2010-11-16 13:58

 

encoder_stereo.cfg (48,228 bytes)

Karsten Suehring

2010-11-16 16:09

administrator   ~0000390

I don't think that Alexis has tested multi-view with RTP.

But to start trouble-shooting with the simple questions: Did you also enable RTP reading at the decoder?

Varuna De Silva

2010-11-16 16:31

reporter   ~0000393

Hello Suehring,

Yes, I did so, it decodes the baseview properly but not the second view. The decoder.cfg looks like the following. Further, when trying to debug, I see it goes to ResetAnnexB() in annexb.c ln 350, which I feel should not.

I can do further checks if necessary.

Thanks

#This is a file containing input parameters to the JVT H.264/AVC decoder.
#The text line following each parameter is discarded by the decoder.
#
#For bug reporting and known issues see:
#https://ipbt.hhi.de
#
# New Input File Format is as follows
# <ParameterName> = <ParameterValue> # Comment
#
##########################################################################################
# Files
##########################################################################################
InputFile = "test_rtp.264" # H.264/AVC coded bitstream
OutputFile = "test_dec.yuv" # Output file, YUV/RGB
RefFile = "test_rec.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 = 0 # 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 = 0 # Number of frames to be decoded (-n)
##########################################################################################
# 3D decoding parameters
##########################################################################################
DecodeAllLayers = 1 # -mpr decode all layers;
#Mux3DMethod = -1 # -mux
#DemuxMetaFile = "" # -mta
#ExportViews = 0 # -exp Export views (3D)
#PostProcess3DMethod = 0 # -3d Postprocessmethod (3D)

Alexis Michael Tourapis

2010-11-17 02:09

developer   ~0000394

I don't think we ever tested the RTP mode. Unfortunately, at this point, we have moved into a different branch, which has not yet been merged into the JM with various bug fixes in the code base that was made available to MPEG but not to everyone else, and we may still need more time to merge the changes with the two systems whereas priority of checking RTP for us is quite low. Hopefully though the former will happen before the holidays.

Neeraj

2011-04-14 02:38

reporter   ~0000444

Hello Suehring,

I tried JM 17.2 decoder with RTP mode and hit a "Segmentation Fault" in the end, which I believe, was a result of ResetAnnexB () and free_annex_b () functions called from ldecod.c. I disabled them and then it does not crash now.

But, I'm not sure if commenting out these two functions from ldecod.c would not affect the actual decoding?

Neeraj

(Attaching part of modified decoder.cfg):

FileFormat = 1 # NAL mode (0=Annex B, 1: RTP packets)

Karsten Suehring

2011-04-14 13:54

administrator   ~0000445

I have taken care of the Annex B function related problem in my development branch (to be released in JM 18.0)

Completely removing the calls should not affect the RTP coding (but might be a problem when switching back to Annex B format)

Karsten Suehring

2011-04-14 15:22

administrator   ~0000446

At the current stage there is no IETF spec for MVC in RTP packaging. I will disable this encoding coding mode until we have a spec.

Karsten Suehring

2011-06-30 11:30

administrator   ~0000493

There exists a draft for RTP encapsulation:

http://tools.ietf.org/html/draft-ietf-payload-rtp-mvc-00

If anybody wants to try implementing it, patches are welcome.

Issue History

Date Modified Username Field Change
2010-11-16 13:58 Varuna De Silva New Issue
2010-11-16 13:58 Varuna De Silva File Added: encoder_stereo.cfg
2010-11-16 16:09 Karsten Suehring Note Added: 0000390
2010-11-16 16:09 Karsten Suehring Status new => feedback
2010-11-16 16:31 Varuna De Silva Note Added: 0000393
2010-11-17 02:09 Alexis Michael Tourapis Note Added: 0000394
2010-11-24 10:49 Karsten Suehring Status feedback => acknowledged
2011-04-14 02:38 Neeraj Note Added: 0000444
2011-04-14 13:54 Karsten Suehring Note Added: 0000445
2011-04-14 15:22 Karsten Suehring Note Added: 0000446
2011-04-14 15:22 Karsten Suehring Summary Possible bug: RTP mode in JM17.2 crashes when stereo profile is used. => RTP file mode is not implemented for MVC profiles
2011-04-14 15:22 Karsten Suehring Tag Attached: RTP
2011-04-14 15:23 Karsten Suehring Tag Attached: MVC
2011-06-30 11:30 Karsten Suehring Note Added: 0000493