<div dir="ltr"><br><div class="gmail_extra"><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><span class=""><br></span>
With ffmpeg or writing code to use the libs?<br>
Probably get more ffmpeg help over in <a href="mailto:ffmpeg-user@ffmpeg.org" target="_blank">ffmpeg-user@ffmpeg.org</a></blockquote><div><br></div><div>With writing code using the libs - I can get it to work with ffmpeg - so I know it's possible!</div><div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><span class=""><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><br></blockquote></span><span class=""><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
For my use though, I don't want to wade through ffmpeg.c to find what it's doing, and wanted a much simpler example that isn't transcoding,<br>
but just transmitting a ready made transport stream. I found in the examples directory "http_multiclient.c" and thought this would do for<br>
me, at least as a starting point.<br>
My problem is that if I start ffplay with "?listen" first, then http_multiclient won't connect, yet if I start http_multiclient first it<br>
says "Client not accepted" and aborts.<br>
My http_multiclient command line is:<br>
./http_multiclient ts_file tcp://localhost:60010<br>
<br>
It seems that http_multiclient is trying to listen on the server socket, but not avio_accept is returning immediately with a "client not<br>
accepted". How can I make this work?<br>
<br>
Regards,<br>
Simon<br>
</blockquote>
<br></span>
I was not able to get that sample to work, it always core dumped on<br>
ret = ffurl_accept(sc, &cc); in libavformat/aviobuf.c<br>
Prob because of the av_assert0(!*c); in avio.c since I have a debug build.<br></blockquote><div>Ah - not just me then. Perhaps it should be removed from the distribution then? Or fixed? </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<br>
If you are trying to write code to do this, start with transcoding.c<br>
In the main while loop, just use the "else"<br>
} else {<br>
/* remux this frame without reencoding */<br>
<br>
That should get you pretty close to what you want...ignore the extra code<br>
open in, open out, while in frame write out frame...<br>
<br>
Thanks<br>
cco<br><br></blockquote><div>Ok, I've taken a look at that, and can't quite see what I'm aiming at - do I really need to read a frame at a time, when I'm supplying a TS in real time from a hardware encoder? Can't I just open a suitable output port and push the data out as and when I get it? Ideally I want RTP over UDP, but thought starting with TCP might be easier....</div><div><br></div><div>Thanks,<br>Simon</div></div><br></div></div>