]> git.sesse.net Git - mlt/commitdiff
Added avformat
authorlilo_booter <lilo_booter@d19143bc-622f-0410-bfdd-b5b2a6649095>
Mon, 26 Jan 2004 12:54:27 +0000 (12:54 +0000)
committerlilo_booter <lilo_booter@d19143bc-622f-0410-bfdd-b5b2a6649095>
Mon, 26 Jan 2004 12:54:27 +0000 (12:54 +0000)
git-svn-id: https://mlt.svn.sourceforge.net/svnroot/mlt/trunk/mlt@94 d19143bc-622f-0410-bfdd-b5b2a6649095

README
docs/services.txt
src/modules/avformat/producer_avformat.c

diff --git a/README b/README
index ff7887cd7e464a9fb795764558f231edb731940f..8e1631301327307a5ca88c6d2e8397c7c9a4e4ec 100644 (file)
--- a/README
+++ b/README
@@ -18,6 +18,7 @@ Directories
                        + core                  - Independent MLT services
                        + dv                    - libdv dependent services
                        + ffmpeg                - ffmpeg dependent services
+                       + avformat              - libavformat dependent services
                        + sdl                   - SDL dependent services
                        + resample              - libresample dependent services
                        + gtk2                  - pango and pixbuf dependent services
index 50f3caddacf8248565d632da77db5083732bde87..390d05d6d8f1e0fa8f3b519215faebb776ef0c94 100644 (file)
@@ -1,6 +1,53 @@
 Producers
 ---------
 
+       avformat
+
+               Description
+
+                       ffmpeg libavformat based producer for video and audio.
+
+               Constructor Argument
+
+                       'file' - producer a/v from file
+
+               Initialisation Properties
+
+                       int video_index - index of video stream to use (-1 is off)
+                       int audio_index - index of audio stream to use (-1 is off)
+                       int in - in point
+                       int out - out point
+
+               Read Only Properties
+
+                       double fps - this is fixed at 25 for PAL currently
+                       double aspect_ratio - this is determined on the first frame read
+
+               Dependencies
+
+                       ffmpeg must be configured as --enable-shared and installed prior
+                       to compilation of mlt.
+
+               Oddities
+
+                       There seems to be a discrepancy between audio and video pts (time
+                       stamps) which causes audio seeking to be unreliable in some cases.
+                       If audio playback is broken, try adding discrepancy=3 as a
+                       property.
+
+                       Not sure of the exact reasons, but am investigating. 
+
+               Known Bugs
+
+                       Fixed frame rate.
+                       Audio sync discrepancy with some content.
+                       Not all libavformat supported formats are seekable.
+                       ogg is currently broken.
+                       Multiple mp3 uses in a single instance causes crash (patch
+                       available on request - submitted to ffmpeg mailing list).
+                       mpeg seeking is inaccurate - doesn't seek to i-frames so you may
+                       get junk for a few frames.
+
        ffmpeg
 
                Description
@@ -24,7 +71,7 @@ Producers
                        int audio_channels - audio channels (default: 2)
                        int audio_track - audio track to use (default: 0)
                        int audio_loop - loop audio until video exhausted (default: 0)
-                       intint in - in point
+                       int in - in point
                        int out - out point
                        double fps - output frames per second (default: 25)
                        double aspect_ratio - aspect ratio of video
index 1b609f8ba96a731c7dd92e4b4f0f6f9d750c9e56..572409ca6027da6ff145f86548e9784d54c7f40c 100644 (file)
@@ -630,8 +630,6 @@ static int producer_get_audio( mlt_frame frame, int16_t **buffer, mlt_audio_form
                                // If we're behind, ignore this packet
                                float current_pts = (float)pkt.pts / 1000000.0;
                                double discrepancy = mlt_properties_get_double( properties, "discrepancy" );
-
-                               fprintf( stderr, "%f < %f\n", discrepancy * current_pts, (float) real_timecode );
                                if ( discrepancy * current_pts < real_timecode )
                                        ignore = 1;
                        }