[FFmpeg-cvslog] DV: detect another case of broken DV files.

Reimar Döffinger git at videolan.org
Sun Mar 25 12:24:44 CEST 2012


ffmpeg | branch: master | Reimar Döffinger <Reimar.Doeffinger at gmx.de> | Sat Mar 24 17:13:55 2012 +0100| [31ff2cb266832a82ac4b5aaa2947719f47e4b425] | committer: Reimar Döffinger

DV: detect another case of broken DV files.

See trac issue #217.
Only the dsf field seems to be used to distinguish between PAL and NTSC.

Signed-off-by: Reimar Döffinger <Reimar.Doeffinger at gmx.de>

> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=31ff2cb266832a82ac4b5aaa2947719f47e4b425
---

 libavcodec/dvdata.c |    4 ++++
 1 files changed, 4 insertions(+), 0 deletions(-)

diff --git a/libavcodec/dvdata.c b/libavcodec/dvdata.c
index ac63938..3dc3ae6 100644
--- a/libavcodec/dvdata.c
+++ b/libavcodec/dvdata.c
@@ -311,6 +311,10 @@ const DVprofile* avpriv_dv_frame_profile2(AVCodecContext* codec, const DVprofile
     if (sys && buf_size == sys->frame_size)
         return sys;
 
+    /* hack for trac issue #217, dv files created with QuickTime 3 */
+    if ((frame[3] & 0x7f) == 0x3f && frame[80 * 5 + 48 + 3] == 0xff)
+        return &dv_profiles[dsf];
+
     return NULL;
 }
 



More information about the ffmpeg-cvslog mailing list