51133a7db0added first version of regression tests - simply type 'make test' to test every codec and some mux/demuxes - added simple synthetic audio and video bitstreams generators so that no big streams needs to be used
Fabrice Bellard
2002-05-18 23:18:22 +00:00
0f1578afccuse av memory functions
Fabrice Bellard
2002-05-18 23:17:41 +00:00
0f3cb305feadded bigendian support - added cross compilation support - added generation of objects in another directory for simultaneous compilations (needs testing) - simplified redundant code
Fabrice Bellard
2002-05-18 23:13:26 +00:00
9241551049tried to avoid gcc 2.95.2 bug by puting explicit register constraints - added comment about rounding bug in some functions (need to correct or suppress them for regression tests)
Fabrice Bellard
2002-05-18 22:49:11 +00:00
a6e14edde0* If a stream gets stuck in WAIT_FEED, then disconnecting the other end will clear out the stream. I think that this is really a linux bug in the handling of poll, but I did a workaround anyway. * Improve the statistics output and prevent a buffer overrun when lots of clients are connected. * Process ffm input when it is received and don't always be one ffm packet behind. * Try to avoid going through the poll loop when not required.
Philip Gladstone
2002-05-18 21:33:05 +00:00
5e57424d11Fix the WAIT_FEED problem. It turns out that when you open up an FFM file and seek to an FFM packet, then it is important that the packet found has a frame header within it. If not, then terrible things happen. This fixes the problem.
Philip Gladstone
2002-05-18 21:30:16 +00:00
9c80daf193updated for my short term goals
Fabrice Bellard
2002-05-18 10:28:55 +00:00
4b7b196005qmin==1 bugfix
Michael Niedermayer
2002-05-17 15:31:33 +00:00
a7bd879798shared lib support (req by kabi) ...
Michael Niedermayer
2002-05-17 13:01:01 +00:00
96c7b53561* Added a note that says that WMP cannot stream .mpg files.
Philip Gladstone
2002-05-17 01:54:39 +00:00
abb2a5e242Added use of StartSendOnKey
Philip Gladstone
2002-05-17 01:54:14 +00:00
79c4ea3c6c* Change the default behaviour to start streaming as soon as possible (i.e. no waiting for key frames). * Provide StartSendOnKey paramter for a stream to wait until we get key frames before sending. * Add the codec names into the status page. May help debugging problems.
Philip Gladstone
2002-05-17 01:53:28 +00:00
607dce96c0hopefully faster mmx2&3dnow MC
Michael Niedermayer
2002-05-17 01:04:14 +00:00
59fe111e81new hopefully faster MC
Michael Niedermayer
2002-05-16 23:29:09 +00:00
02734c6a3eprint frame decoding time support (x86 only)
Michael Niedermayer
2002-05-16 22:01:30 +00:00
9cfe269e70* Updated with new stream configuration items
Philip Gladstone
2002-05-16 02:03:34 +00:00
42a63c6a02* Add code to configure the following: * prebuffering/preroll a live stream -- this improves startup time * videoqmin/videoqmax/videoqdiff -- codec parameters * maximum bandwidth for live streams * Add support for .ram and .rpm extensions mapping onto .rm * Make the status page show bandwidth. Also make the .asf and .rm links go to .asx and .ram files. * Make a stream only start streaming when it gets a keyframe on each stream. This is arguable, and it maybe ought to be restricted to live streams. However, since I don't think that file streams work, this is a step in the right direction. It improves the startup delay. * Log an error if we are unable to delete the temp feed file.
Philip Gladstone
2002-05-16 02:03:07 +00:00
3884a3c322Pass over the bit_rate_tolerance field to ffmpeg
Philip Gladstone
2002-05-16 01:57:55 +00:00
218ad65d4dfixing end overwrite bugs (some at least) this needs testing, untested parts should be reversed before release i tested 24->32, 15->16, bgr24->rgb, bgr32->rgb (retesting them isnt a bad idea either ...)
Michael Niedermayer
2002-05-15 02:27:41 +00:00
90da4d764c- Bug fix for AVStream->r_frame_rate not being initialized for live video capture.
Juanjo
2002-05-15 02:02:24 +00:00
6dc96cb0bf- Now ffmpeg handles MPEG-2 streams with pull down, it gets the real frame rate of the stream.
Juanjo
2002-05-14 22:06:13 +00:00
76c0441b10- Added r_frame_rate in AVStream to store the real frame rate. - This stuff could be done in AVCodecContext and the real frame rate calculated in utils.c, but we don't changes in that by now ;)
Juanjo
2002-05-14 21:50:00 +00:00
e0a3d744a0- repeat_pict meaning changed, now it signals the extra delay for the decoded frame. - extra_delay = (repeat_pict / 2) * (1/fps)
Juanjo
2002-05-14 19:56:42 +00:00
c02dbee162enable simple-idct by default (needed cuz otherwise files encoded with ffmpeg will show stripes with the reference IDCT during decoding)
Michael Niedermayer
2002-05-14 15:42:54 +00:00
e8f147930b* first shot for the new avcodec API - comments, critics, improvements on the ffmpeg list are welcomed
Zdenek Kabelac
2002-05-14 14:17:11 +00:00
13a0314fba* Mea culpa: it seems that I broke encoding to 8-bit pcm files. This fixes it.
Philip Gladstone
2002-05-14 02:36:23 +00:00
0b97443a3f- Video CD option for ffmpeg
Juanjo
2002-05-12 21:39:44 +00:00
79b0d5f925build num ++
Nick Kurshev
2002-05-12 16:06:45 +00:00
8bceb6af09build info for ABI
Nick Kurshev
2002-05-12 15:53:25 +00:00
5d27890ae9I was too lazy to be a hero ;)
Nick Kurshev
2002-05-12 15:30:10 +00:00
4442945711- ffmpeg relies on libavcodec to repeat frames from 3:2 sources.
Juanjo
2002-05-12 02:56:50 +00:00
c80340a4eb- repeat_pict added to AVCodecContext to signal if the decoder must repeat frames from 3:2 pulldown sources. - repeat_pict honoured by MPEG-1/2 decoder.
Juanjo
2002-05-12 02:55:48 +00:00
b6acbc3cafvarious openbsd and general warning fixes - patch by Björn Sandell <biorn@dce.chalmers.se>
Björn Sandell
2002-05-12 02:18:52 +00:00
ab0ff2a563- Fixes for MPEG-PS which have more than 1 system header, now we don't take in account the system header just walk through the file searching streams. MPEG-PS demuxer needs more work anyway.
Juanjo
2002-05-11 23:53:04 +00:00
9cd3766f6e- pict_type exported to AVCodecContext - Added real_pict_num to AVCodecContext, it represent the number of the previous encoded frame, usefull when coding with B frames. - Warning fix in motion_est.c
Juanjo
2002-05-11 23:42:16 +00:00
7434ba6d53* Improve logging -- now actually gives you the number of bytes sent * Print out the logging information that comes from WMP (you'd be suprised what it sends! * Fix a remotely exploitable buffer overflow (argh!) * Add support for automatically serving up .asx files. It generates an automatic redirect to the associated .asf file (with the same parameters). I guess that someone who understands the realaudio equivalent could hack that it as well.
Philip Gladstone
2002-05-10 02:20:27 +00:00
8d1335ea2b* Add implementation of strlcpy * Fix endless loop in find_info_tag if given specific arguments
Philip Gladstone
2002-05-10 02:17:41 +00:00
283383715f* Add prototype for strlcpy
Philip Gladstone
2002-05-10 02:16:29 +00:00
ccac2e27f1* Add the 'flags' field to the list of codec fields passed from ffserver to ffmpeg. This gives the VideoHighQuality patch a fighting chance.
Philip Gladstone
2002-05-09 12:37:44 +00:00
e7f9c67417- HQ option for ffserver. Thanks to D Richard Felker III.
Juanjo
2002-05-09 07:43:07 +00:00
816d7ff5a8version info for so too
Nick Kurshev
2002-05-09 06:23:37 +00:00
ba9b374f89- Changed default qmin = 3 as ffmpeg.c - Less bitrate tolerance since we are streaming.
Juanjo
2002-05-09 02:33:27 +00:00
afc80f59a7- Segfault fixed when mpeg audio decoder returns a negative data_size.
Juanjo
2002-05-09 02:32:22 +00:00
0edf8a7a65* Don't allocate 0 bytes of memory. It upsets electricFence!
Philip Gladstone
2002-05-09 01:24:27 +00:00
8170f3dc8f* Fix a problem with the first sample when down sampling. * Note that this code needs to be fixed -- the rate conversion from 48000->44100 sounds horrible!
Philip Gladstone
2002-05-09 01:23:49 +00:00
4c3d2e5f86* Every frame is a key_frame
Philip Gladstone
2002-05-09 01:22:51 +00:00
4a663d8042* Start using enumerated types (makes debugging much easier)
Philip Gladstone
2002-05-09 01:22:30 +00:00
afc25d93ea* Make put_wav_header return the number of bytes that it put.
Philip Gladstone
2002-05-09 01:21:56 +00:00
ec6ac5e1fb* Change extern inline to static inline so that it will compile without optimization
Philip Gladstone
2002-05-09 01:21:24 +00:00
5d6ef63fdc* Try and fill out some more of the RV header fields correctly
Philip Gladstone
2002-05-09 01:20:53 +00:00
ac5e6a5bd7* Add defaults to switch statements
Philip Gladstone
2002-05-09 01:19:33 +00:00
ddceb31d93* Add a sleep when doing the post to ffserver. Yes, this is the wrong solution.
Philip Gladstone
2002-05-09 01:19:15 +00:00
28c66901a9Intialize the codec type to video.
Philip Gladstone
2002-05-09 01:18:42 +00:00
20f0154831* Add the gop_size to the video parameters. Also the audio framesize. * Copy the duration over as well, though I'm not 100% certain that that is still needed.
Philip Gladstone
2002-05-09 01:18:08 +00:00
7ac13f0c7e* Change extern inline to static inline. This improves compiling without optimization.
Philip Gladstone
2002-05-09 01:16:45 +00:00
53cafac09c* Add default cases to switch statements.
Philip Gladstone
2002-05-09 01:16:08 +00:00
6d9872f416* Add a duration field to the AVPacket
Philip Gladstone
2002-05-09 01:15:45 +00:00
1de1cce27d* Make it work with sound cards (like mine) that can only capture in stereo. * Add a kludge to allow the left channel to be inverted -- my tv card/sound card ends up with the left channel = minus right channel. Converting to mono by adding the channels doesn't work well.
Philip Gladstone
2002-05-09 01:15:21 +00:00
f80c1ac01b* Many, many changes to make it work (mostly). Information snagged from staring at headers of real ASF files. ASFRecorder and avifile were other useful sources.
Philip Gladstone
2002-05-09 01:13:43 +00:00
f359a5bed8* Updated so that some streams actually work!
Philip Gladstone
2002-05-09 01:11:49 +00:00
bdd3c092bf* These are my notes on streaming
Philip Gladstone
2002-05-09 01:11:27 +00:00
f747e6d343* Fix a nasty problem with output buffering not have enough (or large enough) buffers. In fact, the code was pretty much shot. * Try to fool WMP into thinking that we are a microsoft server. * When we establish a stream to a user, copy the codec information from that saved as part of the stream. This gives us the real frame_size and other important parameters. * ASF needs to know about key frames, so add some logic to copy this information around. * When we get the data from ffmpeg as part of a feed, make sure that we save the actual codec parameters. * Allow configuration of AudioCodec and VideoCodec * Make sure that we delete the feed file before starting. This is not ideal but it makes things work a whole lot better!
Philip Gladstone
2002-05-09 01:11:08 +00:00
51bd4565f7* Fix nasty problem with unitialized memory in the file_table * Add default entries to switch statements to catch programming errors * Fix problem with high CPU usage when capturing live (the audio grabber is non-blocking for some reason). This is the stream_no_data stuff. * Handle the video grabber getting behind in its work -- PKT_FLAG_DROPPED_FRAME
Philip Gladstone
2002-05-09 01:06:59 +00:00
c6a8f2ce07Move the EXTRALIBS to the end of the link line where they actually get used!
Philip Gladstone
2002-05-09 01:04:19 +00:00
a69b930cd3clamp intra matrix to 8bit for mjpeg (workaround for qscale>=25)
Alex Beregszaszi
2002-05-07 17:55:02 +00:00
723106b279added support for various app headers, and writin FFmpeg comment
Alex Beregszaszi
2002-05-07 17:21:38 +00:00