Baptiste Coudurier wrote:
On 3/23/2009 1:55 PM, Beat wrote:
Hi,

On 3/16/2009 12:29 PM, Rapsey wrote:
You should check the FLV muxing code in libavformat. It's pretty
simple and
yes the frames do get changed.

Please don't top post.

On Mon, Mar 16, 2009 at 6:59 PM, Beat <[email protected]> wrote:

Hi all

I am building a live cam which streams h264 over (Flash) RTMP to the
browser. The RTMP part is set up and I can stream h264 from mp4
files to
a browser. I also can capture from a connected USB cam and encode the
stream to h264 (libx264).
The problem is, the frames returned from avcodec_encode_video() look
different than the frames in the MP4 file.

To record a mp4 file:
 ffmpeg -s qvga -r 25 -f video4linux2 -i /dev/video0 -vcodec libx264
filename.mp4

Pseudocode for the h264 encoding:
setup in stream
setup out codec
while(av_read_frame(in, frame)) {
 encode(frame, pic)
 swscale(pic)
 encode(pic, buffer)
 // What shall I do with the buffer?
 sendToRtmp(buffer)
}

What I need to known, after a frame is encoded into h264, are there any
post-decoding before it is written to the mp4-file? I try to analyze
the
code, but I couldn't find it.
Interesting, which lib are you using for RTMP ? Can you please point me
where to download it ?

Thanks.

Unfortunalty, I couldn't find a RTMP library. I did it by myself. I get
the details from red5 and rubyizumi.
I can send the file if someone is interested. It's done in JAVA and very
experimental.

Would be interesting, indeed. I plan to mentor a "RTMP support" project
for google summer of code if we get a student interested, so it might be
helpful as long as your code is licensed under LGPL 2.1, or is GPL ?

Thanks.

The RTMP is just a part of my project: http://crane.dnsalias.com/
To put the RTMP part under GPL is a possible option.

Kind regards
_______________________________________________
libav-user mailing list
[email protected]
https://lists.mplayerhq.hu/mailman/listinfo/libav-user

Reply via email to