[vlc-commits] xa: remove struct member

Rémi Denis-Courmont git at videolan.org
Sun Jul 9 15:34:36 CEST 2017


vlc | branch: master | Rémi Denis-Courmont <remi at remlab.net> | Sun Jul  9 16:22:04 2017 +0300| [da721e6fca98c487d5933c1d5164ee58203138e0] | committer: Rémi Denis-Courmont

xa: remove struct member

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

 modules/demux/xa.c | 22 ++++++++++------------
 1 file changed, 10 insertions(+), 12 deletions(-)

diff --git a/modules/demux/xa.c b/modules/demux/xa.c
index cc525cfdfc..92e06bf7b7 100644
--- a/modules/demux/xa.c
+++ b/modules/demux/xa.c
@@ -58,7 +58,6 @@ struct demux_sys_t
 {
     es_out_id_t     *p_es;
 
-    int64_t         i_data_offset;
     unsigned int    i_data_size;
     unsigned int    i_block_frames;
     unsigned int    i_frame_size;
@@ -80,6 +79,8 @@ typedef struct xa_header_t
     uint16_t wBitsPerSample;
 } xa_header_t;
 
+#define HEADER_LENGTH 24
+
 static_assert(offsetof(xa_header_t, wBitsPerSample) == 22, "Bad padding");
 
 #define FRAME_LENGTH 28 /* samples per frame */
@@ -107,7 +108,7 @@ static int Open( vlc_object_t * p_this )
     /* read XA header*/
     xa_header_t xa;
 
-    if( vlc_stream_Read( p_demux->s, &xa, 24 ) < 24 )
+    if( vlc_stream_Read( p_demux->s, &xa, HEADER_LENGTH ) < HEADER_LENGTH )
     {
         free( p_sys );
         return VLC_EGENERIC;
@@ -127,7 +128,6 @@ static int Open( vlc_object_t * p_this )
     fmt.i_bitrate = (fmt.audio.i_rate * fmt.audio.i_bytes_per_frame * 8)
                     / fmt.audio.i_frame_length;
 
-    p_sys->i_data_offset = vlc_stream_Tell( p_demux->s );
     /* FIXME: better computation */
     p_sys->i_data_size = xa.iSize * 15 / 56;
     /* How many frames per block (1:1 is too CPU intensive) */
@@ -167,13 +167,11 @@ static int Demux( demux_t *p_demux )
 {
     demux_sys_t *p_sys = p_demux->p_sys;
     block_t     *p_block;
-    int64_t     i_offset;
+    int64_t     i_offset = vlc_stream_Tell( p_demux->s );
     unsigned    i_frames = p_sys->i_block_frames;
 
-    i_offset = vlc_stream_Tell( p_demux->s );
-
     if( p_sys->i_data_size > 0 &&
-        i_offset >= p_sys->i_data_offset + p_sys->i_data_size )
+        (i_offset - HEADER_LENGTH) >= p_sys->i_data_size )
     {
         /* EOF */
         return 0;
@@ -213,9 +211,9 @@ static int Control( demux_t *p_demux, int i_query, va_list args )
 {
     demux_sys_t *p_sys  = p_demux->p_sys;
 
-    return demux_vaControlHelper( p_demux->s, p_sys->i_data_offset,
-                                   p_sys->i_data_size ? p_sys->i_data_offset
-                                   + p_sys->i_data_size : -1,
-                                   p_sys->i_bitrate, p_sys->i_frame_size,
-                                   i_query, args );
+    return demux_vaControlHelper( p_demux->s, HEADER_LENGTH,
+                                  p_sys->i_data_size
+                                  ? HEADER_LENGTH + p_sys->i_data_size : -1,
+                                  p_sys->i_bitrate, p_sys->i_frame_size,
+                                  i_query, args );
 }



More information about the vlc-commits mailing list