]> git.pld-linux.org Git - packages/cinelerra.git/blob - cinelerra-libsndfile1.patch
- mass commit: cosmetics (removed trailing white spaces)
[packages/cinelerra.git] / cinelerra-libsndfile1.patch
1 --- cinelerra-1.1.7/cinelerra/filesndfile.C.orig        Sat Nov  2 10:06:39 2002
2 +++ cinelerra-1.1.7/cinelerra/filesndfile.C     Fri Mar 21 01:19:58 2003
3 @@ -25,7 +25,7 @@
4         SF_INFO fd_config;
5         fd_config.format = 0;
6  //printf("FileSndFile::check_sig 1\n");
7 -       SNDFILE *fd = sf_open_read(asset->path, &fd_config);
8 +       SNDFILE *fd = sf_open(asset->path, SFM_READ, &fd_config);
9  //printf("FileSndFile::check_sig 1 %p\n", fd);
10  
11         if(fd)
12 @@ -56,30 +56,29 @@
13                 case BITSLINEAR8:
14                 case BITSLINEAR16:
15                 case BITSLINEAR24:
16 -                       if(asset->format != FILE_PCM)
17 -                       {
18 -                               fd_config.format |= SF_FORMAT_PCM;
19 -                       }
20 -                       else
21 +                       if(asset->format == FILE_PCM)
22                         {
23                                 if(asset->byte_order)
24 -                                       fd_config.format |= SF_FORMAT_PCM_LE;
25 +                                       fd_config.format |= SF_ENDIAN_LITTLE;
26                                 else
27 -                                       fd_config.format |= SF_FORMAT_PCM_BE;
28 +                                       fd_config.format |= SF_ENDIAN_BIG;
29                         }
30 -                       fd_config.pcmbitwidth = asset->bits;
31 -//printf("FileSndFile::asset_to_format 1 %x %d\n", fd_config.format, fd_config.pcmbitwidth);
32 +                       if(asset->bits == BITSLINEAR8)
33 +                               fd_config.format |= SF_FORMAT_PCM_S8;
34 +                       else if(asset->bits == BITSLINEAR16)
35 +                               fd_config.format |= SF_FORMAT_PCM_16;
36 +                       else
37 +                               fd_config.format |= SF_FORMAT_PCM_24;
38 +//printf("FileSndFile::asset_to_format 1 %x\n", fd_config.format);
39                         break;
40  
41                 case BITSULAW: 
42                         fd_config.format |= SF_FORMAT_ULAW; 
43 -                       fd_config.pcmbitwidth = 16;
44                         break;
45  
46                 case BITSFLOAT: 
47  //printf("FileSndFile::asset_to_format 1\n");
48                         fd_config.format |= SF_FORMAT_FLOAT; 
49 -                       fd_config.pcmbitwidth = 16;
50                         break;
51  
52                 case BITS_ADPCM: 
53 @@ -87,14 +86,13 @@
54                                 fd_config.format |= SF_FORMAT_MS_ADPCM;
55                         else
56                                 fd_config.format |= SF_FORMAT_IMA_ADPCM; 
57 -                       fd_config.pcmbitwidth = 16;
58                         break;
59         }
60  
61         fd_config.seekable = 1;
62         fd_config.samplerate = asset->sample_rate;
63         fd_config.channels  = asset->channels;
64 -//printf("FileSndFile::asset_to_format %x %d %d\n", fd_config.format, fd_config.pcmbitwidth, fd_config.channels);
65 +//printf("FileSndFile::asset_to_format %x %d\n", fd_config.format, fd_config.channels);
66  }
67  
68  void FileSndFile::format_to_asset()
69 @@ -113,7 +111,6 @@
70                                 break;
71                         case SF_FORMAT_AIFF: asset->format = FILE_AIFF; break;
72                         case SF_FORMAT_AU:   asset->format = FILE_AU;   break;
73 -                       case SF_FORMAT_AULE: asset->format = FILE_AU;   break;
74                         case SF_FORMAT_RAW:  asset->format = FILE_PCM;  break;
75                         case SF_FORMAT_PAF:  asset->format = FILE_SND;  break;
76                         case SF_FORMAT_SVX:  asset->format = FILE_SND;  break;
77 @@ -132,17 +129,6 @@
78                 case SF_FORMAT_MS_ADPCM:
79                         asset->bits = BITS_ADPCM;
80                         break;
81 -               case SF_FORMAT_PCM:
82 -                       asset->bits = fd_config.pcmbitwidth;
83 -                       break;
84 -               case SF_FORMAT_PCM_BE:
85 -                       asset->byte_order = 0;
86 -                       asset->bits = fd_config.pcmbitwidth;
87 -                       break;
88 -               case SF_FORMAT_PCM_LE:
89 -                       asset->byte_order = 1;
90 -                       asset->bits = fd_config.pcmbitwidth;
91 -                       break;
92                 case SF_FORMAT_PCM_S8:
93                         asset->signed_ = 1;
94                         asset->bits = BITSLINEAR8;
95 @@ -151,14 +137,30 @@
96                         asset->signed_ = 0;
97                         asset->bits = BITSLINEAR8;
98                         break;
99 +               case SF_FORMAT_PCM_16:
100 +                       asset->bits = BITSLINEAR16;
101 +                       break;
102 +               case SF_FORMAT_PCM_24:
103 +                       asset->bits = BITSLINEAR24;
104 +                       break;
105 +               case SF_FORMAT_PCM_32:
106 +                       asset->bits = BITSLINEAR32;
107 +                       break;
108 +       }
109 +       switch(fd_config.format & SF_FORMAT_ENDMASK) {
110 +               case SF_ENDIAN_LITTLE:
111 +                       asset->byte_order = 1;
112 +                       break;
113 +               case SF_ENDIAN_BIG:
114 +                       asset->byte_order = 0;
115 +                       break;
116         }
117 -
118         asset->audio_data = 1;
119 -       asset->audio_length = fd_config.samples;
120 +       asset->audio_length = fd_config.frames;
121         if(!asset->sample_rate)
122                 asset->sample_rate = fd_config.samplerate;
123         asset->channels = fd_config.channels;
124 -//printf("FileSndFile::format_to_asset %x %d %d %x\n", fd_config.format & SF_FORMAT_TYPEMASK, fd_config.pcmbitwidth, fd_config.samples, fd_config.format & SF_FORMAT_SUBMASK);
125 +//printf("FileSndFile::format_to_asset %x %d %x\n", fd_config.format & SF_FORMAT_TYPEMASK, fd_config.frames, fd_config.format & SF_FORMAT_SUBMASK);
126  //asset->dump();
127  }
128  
129 @@ -172,12 +174,12 @@
130                 if(asset->format == FILE_PCM)
131                 {
132                         asset_to_format();
133 -                       fd = sf_open_read(asset->path, &fd_config);
134 +                       fd = sf_open(asset->path, SFM_READ, &fd_config);
135                         format_to_asset();
136                 }
137                 else
138                 {
139 -                       fd = sf_open_read(asset->path, &fd_config);
140 +                       fd = sf_open(asset->path, SFM_READ, &fd_config);
141  // Doesn't calculate the length
142                         format_to_asset();
143                 }
144 @@ -188,7 +190,7 @@
145  //printf("FileSndFile::open_file 1\n");
146                 asset_to_format();
147  //printf("FileSndFile::open_file 1\n");
148 -               fd = sf_open_write(asset->path, &fd_config);
149 +               fd = sf_open(asset->path, SFM_WRITE, &fd_config);
150  //printf("FileSndFile::open_file 2 %p\n", fd);
151         }
152  
153 @@ -252,7 +254,7 @@
154         }
155  
156  //printf("FileSndFile::read_samples 3\n");
157 -       result = !sf_read_double(fd, temp_double, len * asset->channels, 1);
158 +       result = !sf_read_double(fd, temp_double, len * asset->channels);
159  //printf("FileSndFile::read_samples 4\n");
160  
161         if(result)
162 @@ -305,7 +307,7 @@
163                 }
164         }
165         
166 -       result = !sf_writef_double(fd, temp_double, len, 1);
167 +       result = !sf_writef_double(fd, temp_double, len);
168  
169         return result;
170  }
This page took 0.132002 seconds and 3 git commands to generate.