[vlc-devel] commit: Fixed AR setting for dvdsimple, support AR for dvdnav. ( Laurent Aimar )

git version control git at videolan.org
Wed Aug 27 13:45:08 CEST 2008


vlc | branch: master | Laurent Aimar <fenrir at videolan.org> | Wed Aug 27 13:46:33 2008 +0200| [9901a6edca1a7c28c461f2c57da6f37ce4671289] | committer: Laurent Aimar 

Fixed AR setting for dvdsimple, support AR for dvdnav.

> http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=9901a6edca1a7c28c461f2c57da6f37ce4671289
---

 modules/access/dvdnav.c  |    5 ++++-
 modules/access/dvdread.c |   10 ++++++++--
 2 files changed, 12 insertions(+), 3 deletions(-)

diff --git a/modules/access/dvdnav.c b/modules/access/dvdnav.c
index bc4abff..95f91ac 100644
--- a/modules/access/dvdnav.c
+++ b/modules/access/dvdnav.c
@@ -1143,7 +1143,10 @@ static void ESNew( demux_t *p_demux, int i_id )
     {
         switch( p_sys->i_aspect )
         {
-        /* XXX We need the video size to support it */
+        case 1: tk->fmt.video.i_aspect = VOUT_ASPECT_FACTOR; break;
+        case 2: tk->fmt.video.i_aspect = VOUT_ASPECT_FACTOR * 4 / 3; break;
+        case 3: tk->fmt.video.i_aspect = VOUT_ASPECT_FACTOR * 16 / 9; break;
+        case 4: tk->fmt.video.i_aspect = VOUT_ASPECT_FACTOR * 221 / 10; break;
         default:
             tk->fmt.video.i_aspect = 0;
             break;
diff --git a/modules/access/dvdread.c b/modules/access/dvdread.c
index a918dc9..48671c5 100644
--- a/modules/access/dvdread.c
+++ b/modules/access/dvdread.c
@@ -710,9 +710,15 @@ static void ESNew( demux_t *p_demux, int i_id, int i_lang )
     /* Add a new ES */
     if( tk->fmt.i_cat == VIDEO_ES )
     {
-        if( p_sys->i_aspect >= 0 )
+        switch( p_sys->i_aspect )
         {
-            tk->fmt.video.i_aspect = p_sys->i_aspect;
+        case 1: tk->fmt.video.i_aspect = VOUT_ASPECT_FACTOR; break;
+        case 2: tk->fmt.video.i_aspect = VOUT_ASPECT_FACTOR * 4 / 3; break;
+        case 3: tk->fmt.video.i_aspect = VOUT_ASPECT_FACTOR * 16 / 9; break;
+        case 4: tk->fmt.video.i_aspect = VOUT_ASPECT_FACTOR * 221 / 10; break;
+        default:
+            tk->fmt.video.i_aspect = 0;
+            break;
         }
     }
     else if( tk->fmt.i_cat == AUDIO_ES )




More information about the vlc-devel mailing list