I'm streaming H.264(libx264) videos using RTP. I would like to compare the different error resiliency methods in h.264. In some research papers, psnr was used to compare them. So I would like to know how to calculate the psnr of the h.264 video during streaming.
PSNR calculation in H.264 packet loss
2.4k Views Asked by K07 At
1
There are 1 best solutions below
Related Questions in H.264
- Should I use in-radius or in-cone to define vision in NetLogo 3D?
- Selectively grab Instances for creating a movie
- How to get connected two or more turtles within radius NetLogo
- NetLogo BehaviorSpace Slows after several experiments
- Network extension heap related crash
- Netlogo editor for Eclipse
- Netlogo - Sampling from a Beta-Pert Distribtuion
- Volunteer coordination system for modelling natural disaster emergencies
- How to form subset form a set of numbers in Netlogo
- Trouble using with-min
Related Questions in X264
- Should I use in-radius or in-cone to define vision in NetLogo 3D?
- Selectively grab Instances for creating a movie
- How to get connected two or more turtles within radius NetLogo
- NetLogo BehaviorSpace Slows after several experiments
- Network extension heap related crash
- Netlogo editor for Eclipse
- Netlogo - Sampling from a Beta-Pert Distribtuion
- Volunteer coordination system for modelling natural disaster emergencies
- How to form subset form a set of numbers in Netlogo
- Trouble using with-min
Related Questions in PACKET-LOSS
- Should I use in-radius or in-cone to define vision in NetLogo 3D?
- Selectively grab Instances for creating a movie
- How to get connected two or more turtles within radius NetLogo
- NetLogo BehaviorSpace Slows after several experiments
- Network extension heap related crash
- Netlogo editor for Eclipse
- Netlogo - Sampling from a Beta-Pert Distribtuion
- Volunteer coordination system for modelling natural disaster emergencies
- How to form subset form a set of numbers in Netlogo
- Trouble using with-min
Trending Questions
- UIImageView Frame Doesn't Reflect Constraints
- Is it possible to use adb commands to click on a view by finding its ID?
- How to create a new web character symbol recognizable by html/javascript?
- Why isn't my CSS3 animation smooth in Google Chrome (but very smooth on other browsers)?
- Heap Gives Page Fault
- Connect ffmpeg to Visual Studio 2008
- Both Object- and ValueAnimator jumps when Duration is set above API LvL 24
- How to avoid default initialization of objects in std::vector?
- second argument of the command line arguments in a format other than char** argv or char* argv[]
- How to improve efficiency of algorithm which generates next lexicographic permutation?
- Navigating to the another actvity app getting crash in android
- How to read the particular message format in android and store in sqlite database?
- Resetting inventory status after order is cancelled
- Efficiently compute powers of X in SSE/AVX
- Insert into an external database using ajax and php : POST 500 (Internal Server Error)
Popular # Hahtags
Popular Questions
- How do I undo the most recent local commits in Git?
- How can I remove a specific item from an array in JavaScript?
- How do I delete a Git branch locally and remotely?
- Find all files containing a specific text (string) on Linux?
- How do I revert a Git repository to a previous commit?
- How do I create an HTML button that acts like a link?
- How do I check out a remote Git branch?
- How do I force "git pull" to overwrite local files?
- How do I list all files of a directory?
- How to check whether a string contains a substring in JavaScript?
- How do I redirect to another webpage?
- How can I iterate over rows in a Pandas DataFrame?
- How do I convert a String to an int in Java?
- Does Python have a string 'contains' substring method?
- How do I check if a string contains a specific word?
To calculate PSNR, you must compare two frames, so first step is to make sure you have a copy of the source video. Next, you must be able to match the frames 1:1. so if a frame is droped, you need to compare the source frame to the previous streamed frame. This may be difficult if the timestamps do not match (They may be modified by the RTP server). Next decode each frame into its YUV channels. the PSNR of the channels needs to be calculated independently. You can average the three PSNR values at the end, but this puts too much weight on the U,V channels. I recommend just using the Y channel, as it is most important. And since you are measuring packet loss, the values will be strongly correlated anyway.
Next calculate your mean squared error like so:
And finally:
You can average the per frame PSNRs together to get a full stream PSNR.