On Tue, 9 Jan 2007, Luca Barbato wrote: >> Yes and no! The OpenGL animation can supply frames in simple 24 bit RGB >> format. I should write a codec which codes RGB to ... what ? Or is >> RGB already the destination format ? > > In that case you may pipe the raw data directly to ffmpeg and have it > converted in something more compact and understandable or you may just do > something like libavformat/dv1394.c > Please give me still one hint: In "dv1394.c" there is a function: dv1394_read_packet(AVFormatContext *context, AVPacket *pkt); in "dv1394.c" near line 134 The image data is attached to the packet in int dv_produce_packet(DVDemuxContext *c, AVPacket *pkt, uint8_t* buf, int buf_size) in "dv.c" near line 331: size = dv_extract_video_info(c, buf); av_init_packet(pkt); pkt->data = buf; pkt->size = size; pkt->flags |= PKT_FLAG_KEY; pkt->stream_index = c->vst->id; pkt->pts = c->frames; Instead of reading pixel form a device/file with "dv_extract_video_info" I'd fill "buf" with the next pixel data from OpenGL-(Mesa-) animation. But what kind of pixel data is in "buf" ? RGB24 ? YUV ? YUV420P ? ...? I dont' know what "dv_extract_video_info" supplies? ------ At the end I'd register a new demuxer: AVInputFormat opengl_demuxer = { .name = "opengl", .long_name = "opengl virtual reality", .priv_data_size = sizeof(mydata), .read_header = opengl_read_header, .read_packet = opengl_read_packet, .read_close = opengl_close, .flags = AVFMT_NOFILE }; And in allformats.h: extern AVInputFormat opengl_demuxer; And in allformats.c: REGISTER_DEMUXER (OPENGL, opengl); Then: ffmpeg -formats supplies: File formats: D opengl opengl virtual reality This already works. But how can I bring the ffserver to use my new demuxer? Which part in "ffserver.conf" must be changed? Is it a <Feed> or a <Stream>? Or is it an "ffmpeg" option ? -- J.Anders, GERMANY, TU Chemnitz, Fakultaet fuer Informatik
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4