1

I'm trying to stream (multicast) a x264 encoded file using VLC. This in itself succeeds, but the stream has a huge lot of artifacts. This seems to suggest that the data cannot be transported fast enough. If I check network usage, though, it's only using about 15 mbit.

I have a similar SD stream which functions perfectly. I think I could improve stream performance by not streaming the raw data, but I cannot seem to get this working. It seems that on keyframes all artifacts are removed for a short while (less than a second).

This is the command I use:

vlc -vv hdtest.mkv --sout '#duplicate{dst=rtp{dst=ff02::1%eth1,mux=ts,port=5678,sap,group="Testgroup",name="TeststreamHD"}}' --loop

Which is all one long line.

I really do not want to transcode the stream. In the future this box would have to offer multiple streams. We're talking about a P4 2,8 gHz with 2 GBs of memory.

Zsub
  • 361
  • 1
  • 3
  • 15

1 Answers1

0

It's probably packet loss. Are your switches optimizing multicast or just flooding the traffic out all ports?

You can transcode the stream - I use something like

#transcode{vcodec=h264,venc=x264{keyint=15},acodec=mpga,vb=2500,ab=128}:std{mux=ts,access=udp,dst=x.x.x.x}

keyint specifies how often to put a keyframe in the stream - the lower it is, the better the stream will recover from dropped packets in my experience.

James
  • 7,553
  • 2
  • 24
  • 33
  • I don't know about packet loss. There is one (1) gbit switch between the server and my client. It's a dumb switch, so I figure it'll just spam the trafic over all the ports :) Also, packetloss does not explain why my SD stream works flawlessly. – Zsub Jun 18 '10 at 11:28