i have encoded H.264 video using ffmpeg . I want to apply packet loss model like Gilbert Eliot model to depict video transmission over unreliable network. Like in this thread TV noise is simulated. But noise in internet is different. So is there a way to simulate packet loss/ noise for video streaming using ffmpeg or matlab?
For me your question is not clear enough. This questions come to my mind:
- what exactly do you want to transmit? Do you want to transmit raw H.264 bitstream (NAL units) or maybe MPEG2-TS, or RTP packets? Most video transmission applications would use either MPEG2-TS or RTP. I suppose that you are not interested in HTTP or other TCP based streaming solutions.
- you are talking about the noise in the internet. Are you interested in simulation of some specific network topology?
- what network protocols do you want to use and how does the transmission channel looks like?
You might take a look at NS-3 network simulator. With it you can simulate quite everything and it's also quite easy to use if you are familiar with C++ and network programming. But it is probably not the easiest way to solve your problem.
I'm pretty sure that you can also stream the video with FFMPEG but I don't think that FFMPEG allows you to drop packets based on some error model. But you could use NetEm to generate packet loss, delay or duplication of packets on your Linux system.