Welcome to Doom9's Forum, THE in-place to be for everyone interested in DVD conversion. Before you start posting please read the forum rules. By posting to this forum you agree to abide by the rules. |
![]() |
#1 | Link |
Registered User
Join Date: Nov 2015
Posts: 29
|
Add FEC/ECC at the end of each frame
Hi experts,
I have encoded video using JM reference software. The H.264 file is encoded using RTP stream. Then using the same JM reference software i have applied rtp_loss on the encoded video. But now decoder is unable to decode video with rtp_loss applied. Now i want to add some Error correcting code or forward error correction code like Reed Solomon code at the frame or GOP level. My question is that, in JM reference software where in the encoder code i can stuff my redundant bits ? In image.c encode_one_frame (VideoParameters *p_Vid, InputParameters *p_Inp) is the function which is encoding one frame. but i am unable to get how and where to add redundant bits at the encoder end so that i would be able to recover packet loss during rtp_loss process. Also what could be an alternates you can suggest to test SSIM using different redundany values? for example should i take in matlab h.264 as an input-> add some redundant bits-> apply packet loss -> recover packet loss and then decode using JM. This is a reference paper i am using http://ieeexplore.ieee.org/stamp/sta...number=5729366 Last edited by mushahidh; 8th January 2016 at 10:48. |
![]() |
![]() |
![]() |
#2 | Link |
Angel of Night
![]() Join Date: Nov 2004
Location: Tangled in the silks
Posts: 9,562
|
If the data isn't H.264 data, then it should be placed in a custom SEI packet. You don't need to change the internals of the encoder for that, just the way you call them from lencod.c (probably by modifying the main loop in encode_sequence()) by adding the SEI after each frame. The SEI will be skipped by decoders that don't understand it, but available to those that do.
Isn't FEC usually done at the RTP level, though? |
![]() |
![]() |
![]() |
#3 | Link | ||
Registered User
Join Date: Nov 2015
Posts: 29
|
Quote:
Quote:
Apply Encode file using JM as RTP add FEC inside JM apply rtp_loss and Decode it? or Take H.264 file as an input in matlab apply FEC pass it through noisy channel Recover packet loss and decode using JM? Thanks |
||
![]() |
![]() |
![]() |
#4 | Link | ||
Angel of Night
![]() Join Date: Nov 2004
Location: Tangled in the silks
Posts: 9,562
|
Quote:
Quote:
There probably isn't much code for JM because no one uses it for anything but experiments and research, and hardly any students publish their research code. |
||
![]() |
![]() |
![]() |
#5 | Link |
Registered User
Join Date: Nov 2015
Posts: 29
|
My work is actually research oriented but i don't have any hard constraints of using JM as far as addition of FEC is concern. Is there a better way you can suggest so that i can add redundant bits to encoded bitstream then apply packet loss and then remove redundant bits and decode the file? What is better way to achieve this cycle ?
|
![]() |
![]() |
![]() |
Tags |
h264, redundancy errors, rtp, video |
Thread Tools | Search this Thread |
Display Modes | |
|
|