You can subscribe to this list here.
2003 |
Jan
|
Feb
(8) |
Mar
(3) |
Apr
|
May
(2) |
Jun
(8) |
Jul
(4) |
Aug
(12) |
Sep
(11) |
Oct
|
Nov
|
Dec
(2) |
---|---|---|---|---|---|---|---|---|---|---|---|---|
2004 |
Jan
(3) |
Feb
(3) |
Mar
(2) |
Apr
(17) |
May
(8) |
Jun
(6) |
Jul
|
Aug
(1) |
Sep
(3) |
Oct
(5) |
Nov
(10) |
Dec
(5) |
2005 |
Jan
(4) |
Feb
|
Mar
(1) |
Apr
(23) |
May
(10) |
Jun
(3) |
Jul
(3) |
Aug
(10) |
Sep
|
Oct
(7) |
Nov
(8) |
Dec
|
2006 |
Jan
(5) |
Feb
(5) |
Mar
(11) |
Apr
(1) |
May
(3) |
Jun
|
Jul
(3) |
Aug
(2) |
Sep
|
Oct
|
Nov
|
Dec
|
2007 |
Jan
|
Feb
(9) |
Mar
(1) |
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
(4) |
Nov
(5) |
Dec
|
2008 |
Jan
|
Feb
|
Mar
|
Apr
(1) |
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
(4) |
Nov
|
Dec
|
2009 |
Jan
|
Feb
|
Mar
|
Apr
(3) |
May
|
Jun
|
Jul
(2) |
Aug
|
Sep
|
Oct
(4) |
Nov
(3) |
Dec
|
2010 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
(1) |
Oct
(4) |
Nov
(2) |
Dec
|
2011 |
Jan
(5) |
Feb
(1) |
Mar
|
Apr
|
May
(4) |
Jun
|
Jul
(3) |
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
2012 |
Jan
|
Feb
|
Mar
|
Apr
(15) |
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
2013 |
Jan
(7) |
Feb
(6) |
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
2014 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
(1) |
Jul
|
Aug
|
Sep
(12) |
Oct
|
Nov
|
Dec
|
2015 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
(1) |
2016 |
Jan
|
Feb
|
Mar
|
Apr
|
May
(3) |
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
2018 |
Jan
|
Feb
|
Mar
|
Apr
(1) |
May
|
Jun
|
Jul
|
Aug
|
Sep
(2) |
Oct
|
Nov
|
Dec
|
2021 |
Jan
|
Feb
|
Mar
(9) |
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
2022 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
(1) |
From: <lin...@te...> - 2012-04-09 01:02:31
|
Quoting jeff welty <we...@ya...>: > It's good to know GWC is still getting some use... I also still use it a good bit. Its most recent "major" workout was processing the WAV files for my CD entitled "Christmas at 78 rpm, con alcuna licenza." I had long wanted to put together such a thing, and finally got it done in time for last Christmas. Most of the 78s went through gwc with pretty conservative settings. It's the best of its kind I've tried, not that I've tried dozens. Thanks for keeping it going! Howard Sanner lin...@te... |
From: Brian B. <br...@pi...> - 2012-04-08 23:17:18
|
On 08/04/12 23:36, jeff welty wrote: > Hi Brian, > > Thanks very much for the more detailed info. I was able to reproduce the > problem, and it is one nasty bug. I guess everyone must've switched over > to using the song marker pairs. BTW, the marker pairs idea allows you to > have gaps between songs, some lead-in audio (like when the the needle > hits the vinyl ;-) ), and some trail out audio. It gives you more > control on what segments of audio you want to appear on the CD tracks. > > Another bit of important trivia, audio tracks must be integral numbers > of audio blocks, which are 588 samples in length, so if you are doing > math with song markers, you'll find small differences because GWC will > create the cdrdao file with the track lengths to the nearest audio block. > > I have patched up the markers.c source code, and it is attached. > > I'll see if I can get hold of the ubuntu maintainers, they'll really > want to have this bugfix! Hi Jeff, Thanks for the quick work. It's bed time in the uk, but I just received your email and so decided to immediately report the bug against the ubuntu oneiric release. I didn't do it earlier in case it turned out to be a "user error". https://bugs.launchpad.net/ubuntu/+source/gwc/+bug/976883 You will see that I haven't yet tested your fix, but I wanted to get it acknowledged quickly because we are only a week away from the release of 12.04 precise pangolin - which will be a 2 year long term support system. I hope I haven't stepped on your toes, but in my experience that is the best way to get a fix pulled into the latest ubuntu distributions. I will try to test your fix as quickly as possible so it can be confirmed to the ubuntu support team. Once again, I appreciate your quick reaction to this problem. I'll leave it to you to roll out the fix on sourceforge. I don't know how quickly the many other linux distributions will pick up the problem and its solution. Brian > Thank you again! > Jeff > > ------------------------------------------------------------------------ > *From:* Brian Burch <br...@pi...> > *To:* "gwc...@li..." > <gwc...@li...> > *Sent:* Sunday, April 8, 2012 1:16 PM > *Subject:* Re: [Gwc-general] Invalid cdrdao toc file > > On 08/04/12 03:19, jeff welty wrote: > > Hi Brian, > > Hi Jeff, > > I'm really pleased that you picked up my question so quickly and I > really appreciate you helping me. > > > Literally nothing has changed in the code that handles the song markers > > and creates the cdrdao toc file since before version 0.21-10. > > I wish I had noticed which version of gwc was running the last time I > used it successfully. If it turns out to be important, I will dig > through my backups to identify it. > > However, I'm fairly confident ubuntu studio was offering something older > than 0.21-10 in its repository about 2 years ago. > > > > It sounds to me like you may have inadvertantly used the > > "Create cdrdao toc file, using marker pairs, As..." > > version of creating the toc file? That causes the first track to start > > not at sample 0, but rather starts the first track at the position of > > the first song marker. > > Yes, I thought of that too because I was intrigued by the menu items > that I didn't recognise from the previous version that I used. > > I am sure I didn't make that mistake, but to be certain I started from > scratch (see below). > > > I am pretty sure you did find a bug though, I'll bet you had an odd > > number of song markers, and gwc read whatever garbage was on the stack > > to find the end position for the last track. > > Can you double check that gwc does create a valid toc file for your > > project with the "Create cdrdao toc file As..." option, just in case you > > did click the wrong one? > > I created a fresh directory and copied a single, large wav file into it > (i.e. there were no pre-existing blah.wav.gwc or blah.toc files. I split > it arbitrarily into three tracks. > > Here is the cdrdao.toc created by gwc: > > CD_TEXT { > LANGUAGE_MAP { > 0: EN > } > LANGUAGE 0 { > TITLE "The Doors" > MESSAGE "Brians clean test" > } > } > TRACK AUDIO > CD_TEXT { > LANGUAGE 0 { > TITLE "part 1" > MESSAGE "" > } > } > FILE "/home/brian/gwc-test/export.wav" 38342565 28204595 > TRACK AUDIO > CD_TEXT { > LANGUAGE 0 { > TITLE "part 2" > MESSAGE "" > } > } > FILE "/home/brian/gwc-test/export.wav" 66547236 50606219 > TRACK AUDIO > CD_TEXT { > LANGUAGE 0 { > TITLE "part 3" > MESSAGE "" > } > } > FILE "/home/brian/gwc-test/export.wav" 0 117153707 > > > ... and here is the "correct" version that I created from the > information available in the gwc window using the same song markers: > > CD_TEXT { > LANGUAGE_MAP { > 0: EN > } > LANGUAGE 0 { > TITLE "The Doors" > MESSAGE "Brians clean test, manual assignment of boundaries" > } > } > TRACK AUDIO > CD_TEXT { > LANGUAGE 0 { > TITLE "part 1" > MESSAGE "" > } > } > FILE "/home/brian/gwc-test/export.wav" 0 38342566 > TRACK AUDIO > CD_TEXT { > LANGUAGE 0 { > TITLE "part 2" > MESSAGE "" > } > } > FILE "/home/brian/gwc-test/export.wav" 38342566 28204672 > TRACK AUDIO > CD_TEXT { > LANGUAGE 0 { > TITLE "part 3" > MESSAGE "" > } > } > FILE "/home/brian/gwc-test/export.wav" 66547238 50606490 > // total number of samples calculated: 117153728 > // total number of samples from gwc : 117153727 > > > Obviously, the first track ought to start with sample zero and it > doesn't. In fact, if you look carefully it seems "first" track has been > built with the start and length values required to define the real > SECOND track! > > The "second" track carries the start and length of the real THIRD track. > > The "third" track starts with sample zero, and its length is /nearly/ > the same as the number of samples in the entire file. > > I definitely added song markers, NOT song marker pairs. I definitely > saved the toc with the correct option, not trying to use marker pairs. > > However, just in case it is significant, I used VIEW -> select all > before creating the toc file. My previous version required EDIT -> > select all, but this no longer exists. > > I would appreciate your thoughts on my latest experiment and evidence. > If you think it is important, I will find out which version of gwc last > worked OK for me using the same procedure. > > n.b. I do NOT place a song marker before the first sample... perhaps I > should try that as an experiment? > > > Thanks very much for the report, regardless. It's good to know GWC is > > still getting some use... > > I think it is a brilliant tool and wouldn't use anything else to clean > up a noisy vinyl recording. I'm very pleased someone is still watching > over it. > > Regards, > > Brian > > > Jeff > > > > ------------------------------------------------------------------------ > > *From:* Brian Burch <br...@pi... <mailto:br...@pi...>> > > *To:* gwc...@li... > <mailto:gwc...@li...> > > *Sent:* Thursday, April 5, 2012 9:34 AM > > *Subject:* [Gwc-general] Invalid cdrdao toc file > > > > I am using GWC 0.21-16, which is currently shipped with the ubuntu > > studio 12.04 precise pangolin beta 2. It is also the current version > > with my production ubuntu studio 11.10 system. > > > > It isn't strictly relevant, but I convert vinyl to digital using an > > Edirol FA-66 firewire device controlled by jackd and captured by Ardour. > > > > I use Ardour to export a single wav file for the entire vinyl album and > > then use gwc to clean up the recording. > > > > When I have a wav file that I like, I then manually mark the boundary of > > each track with "Markers -> Add Song Marker". Finally, I "View -> > > SelectAll" and then "File -> Create cdrdao toc file As...". > > > > I manually fill in the album and track names on the toc dialogue and > > save the file. I write a new CD with "cdrdao --speed 4 export.toc". This > > is a procedure I've been following for several years without any > problems. > > > > However, since I upgraded gwc to 0.21-16, cdrdao has complained about > > the toc files and refused to write the cd as follows: > > > > brian@schizo:~/WeatherReport-sportinLife/export$ cdrdao write --speed 4 > > export.toc > > Cdrdao version 1.2.3 - (C) Andreas Mueller <an...@da... > <mailto:an...@da...> > > <mailto:an...@da... <mailto:an...@da...>>> > > ERROR: Track 7: Requested length (89737555 + 12992447 samples) exceeds > > length of audio file > > "/home/brian/WeatherReport-sportinLife/export/export.wav" (102729733 > > samples at offset 0). > > ERROR: The toc check function detected at least one warning. > > ERROR: If you record this toc the resulting CD might be unusable > > ERROR: or the recording process might abort with error. > > ERROR: Use option --force to ignore the warnings. > > ERROR: Toc file "export.toc" is inconsistent. > > > > The toc file is fairly badly wrong - the first track does not even start > > with sample number zero! > > > > I took a copy of the bad toc file and manually edited all the track > > start and length sample counters. I took the actual boundaries by > > displaying the sample counters for each of the song markers displayed by > > gwc, so we were working off the same wav file and analysis. My manual > > sample counters were very different to those automatically generated > by gwc. > > > > I've googled, but not found anything relevant. Am I using the > > appropriate dialogue to create my toc file on this release of gwc (i.e. > > this is a user error), or does this sound like a bug? (I notice you've > > added new toc file features in recent releases, so perhaps this is > > collateral damage.) > > > > I don't know whether your mailing list strips attachments, so I won't > > send the two files at this time. I'm happy to send them in-line if > > anyone feels they would help in diagnosis. > > > > Obviously this isn't urgent for me because I have a tedious but viable > > bypass for the problem. However, this version of gwc is being pushed out > > as 0.21.16~dfsg-3build (precise) and 0.21.16~dfsg-3 (oneiric) from the > > ubuntu repositories, so it has a wide exposure! > > > > Regards, > > > > Brian Burch > > > > > > > ------------------------------------------------------------------------------ > > Better than sec? Nothing is better than sec when it comes to > > monitoring Big Data applications. Try Boundary one-second > > resolution app monitoring today. Free. > > http://p.sf.net/sfu/Boundary-dev2dev > > _______________________________________________ > > Gwc-general mailing list > > Gwc...@li... > <mailto:Gwc...@li...> > <mailto:Gwc...@li... > <mailto:Gwc...@li...>> > > https://lists.sourceforge.net/lists/listinfo/gwc-general > > > > > > > ------------------------------------------------------------------------------ > For Developers, A Lot Can Happen In A Second. > Boundary is the first to Know...and Tell You. > Monitor Your Applications in Ultra-Fine Resolution. Try it FREE! > http://p.sf.net/sfu/Boundary-d2dvs2 > _______________________________________________ > Gwc-general mailing list > Gwc...@li... <mailto:Gwc...@li...> > https://lists.sourceforge.net/lists/listinfo/gwc-general > > |
From: jeff w. <we...@ya...> - 2012-04-08 22:36:21
|
/***************************************************************************** * Gnome Wave Cleaner Version 0.19 * Copyright (C) 2001 Jeffrey J. Welty * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU General Public License * as published by the Free Software Foundation; either version 2 * of the License, or (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. *******************************************************************************/ /* markers.c */ #include <errno.h> #include <stdio.h> #include <stdlib.h> #include <stdarg.h> #include <libgen.h> #include <sys/stat.h> #include <sys/types.h> #include <sys/time.h> #include <fcntl.h> #include <unistd.h> #include <string.h> #include <signal.h> #include <gnome.h> #include "gtkledbar.h" #include "gwc.h" long cdtext_length; char *cdtext_data = NULL; /* The file selection widget and the string to store the chosen filename */ GtkWidget *file_selector; gchar *selected_filename; gchar save_cdrdao_toc_filename[255] ; extern long num_song_markers, song_markers[] ; extern gchar wave_filename[] ; extern struct sound_prefs prefs ; extern struct view audio_view; extern double song_key_highlight_interval ; extern double song_mark_silence ; char *find_text(long length,char *data, char *str) { char *ret = NULL; char *end = data + length; int len; while (data < end && ret == NULL) { len = strlen(data); if (strcmp(data, str) == 0) { ret = data + len + 1; } else { data = data + len + 1; /* Skip field value */ len = strlen(data); data = data + len + 1; } } return ret; } int only_blank(char *str) { while (*str != 0) { if (*str++ != ' ') return 0; } return 1; } static int use_song_marker_pairs ; /* song markers are positioned at start AND end of each song? */ #define ARRAYSIZE(x) (sizeof(x) / sizeof(x[0])) /* CD Tracks must be multiple of 588 or they will be padded with zeros */ #define SONG_BLOCK_LEN 588 void cdrdao_toc_info(char *filename) { GtkWidget *dlg ; GtkWidget *dialog_table ; GtkWidget *song_table ; int dres ; int row = 0; struct { char *title; char *fieldid; char *init; int always_write; GtkWidget *widget; } album_info[] = { {"Language", "LANGUAGE", "EN", 1, NULL}, /* This is special and must be first */ {"Title", "TITLE", "", 1, NULL}, {"Performer", "PERFORMER", "", 0, NULL}, {"Songwriter", "SONGWRITER", "", 0, NULL}, {"Arranger", "ARRANGER", "", 0, NULL}, {"Composer", "COMPOSER", "", 0, NULL}, {"Disc_ID", "DISC_ID", "", 0, NULL}, {"Message", "MESSAGE", "", 1, NULL} }; struct { char *title; char *fieldid; char *init; int always_write; } song_info[] = { {"Title", "TITLE", "", 1}, {"Message", "MESSAGE", "", 1} }; GtkWidget *song_widget[MAX_MARKERS+1][ARRAYSIZE(song_info)]; int i,j; GtkWidget *scrolled; int new_cdtext_length = 0; char *new_cdtext; int new_cdtext_loc; char buf[200], buf2[200]; dlg = gtk_dialog_new_with_buttons("Cdrdao CD Text Information", NULL, GTK_DIALOG_DESTROY_WITH_PARENT, GTK_STOCK_OK, GTK_RESPONSE_OK, GTK_STOCK_CANCEL, GTK_RESPONSE_CANCEL, NULL, NULL); gtk_window_set_policy(GTK_WINDOW(dlg), FALSE, TRUE, FALSE); dialog_table = gtk_table_new(5,2,0) ; gtk_table_set_row_spacings(GTK_TABLE(dialog_table), 4) ; gtk_table_set_col_spacings(GTK_TABLE(dialog_table), 6) ; gtk_widget_show (dialog_table); for (i = 0; i < ARRAYSIZE(album_info); i++) { char *init; init = find_text(cdtext_length, cdtext_data, album_info[i].fieldid); if (init == NULL) { init = album_info[i].init; } album_info[i].widget = add_number_entry_with_label(init, album_info[i].title, dialog_table, row++) ; } song_table = gtk_table_new(5,2,0) ; gtk_table_set_row_spacings(GTK_TABLE(song_table), 4) ; gtk_table_set_col_spacings(GTK_TABLE(song_table), 6) ; scrolled = gtk_scrolled_window_new(NULL, NULL); gtk_scrolled_window_set_policy (GTK_SCROLLED_WINDOW (scrolled), GTK_POLICY_NEVER, GTK_POLICY_ALWAYS); gtk_scrolled_window_add_with_viewport(GTK_SCROLLED_WINDOW(scrolled), song_table); gtk_widget_set_usize(scrolled,300,300); gtk_widget_show (scrolled); gtk_widget_show (song_table); row = 0; for (j = 0; j < num_song_markers+1; j += 1+use_song_marker_pairs) { for (i = 0; i < ARRAYSIZE(song_info); i++) { char *init; snprintf(buf, sizeof(buf), "Song %2d %s", j+1, song_info[i].title); /* Duplicated below, and new_cdtext_length adjusted by 3 for %3d */ snprintf(buf2, sizeof(buf2), "%3d%s", j+1, song_info[i].fieldid); init = find_text(cdtext_length, cdtext_data, buf2); if (init == NULL) { init = song_info[i].init; } song_widget[j][i] = add_number_entry_with_label(init, buf, song_table, row++) ; } } gtk_box_pack_start (GTK_BOX (GTK_DIALOG(dlg)->vbox), dialog_table, TRUE, TRUE, 0); gtk_box_pack_start (GTK_BOX (GTK_DIALOG(dlg)->vbox), scrolled, TRUE, TRUE, 0); dres = gwc_dialog_run(GTK_DIALOG(dlg)) ; if(dres == 0) { FILE *toc; toc = fopen(filename,"w"); if (toc == NULL) { snprintf(buf, sizeof(buf), "Unable to open %s: %s", filename, strerror(errno)); warning(buf); } else { int found_text = 0; for (i = 0; i < ARRAYSIZE(album_info); i++) { char *str; str = (char *)gtk_entry_get_text(GTK_ENTRY(album_info[i].widget)); /* +2 for null at end of both strings*/ new_cdtext_length += strlen(str) + strlen(album_info[i].fieldid) + 2 ; if (strlen(album_info[i].init) == 0 && !only_blank(str)) found_text = 1;; } for (j = 0; j < num_song_markers+(1-use_song_marker_pairs); j += 1+use_song_marker_pairs) { for (i = 0; i < ARRAYSIZE(song_info); i++) { char *str; str = (char *)gtk_entry_get_text(GTK_ENTRY(song_widget[j][i])); /* We add 3 digit song # to fieldid when storing */ new_cdtext_length += strlen(str) + strlen(song_info[i].fieldid) + 3 + 2; if (!only_blank(str)) found_text = 1;; } } new_cdtext_loc = 0; if (found_text) { new_cdtext = calloc(new_cdtext_length, 1); fprintf(toc, "CD_TEXT {\n LANGUAGE_MAP {\n 0: %s\n }\n", gtk_entry_get_text(GTK_ENTRY(album_info[0].widget))); fprintf(toc, " LANGUAGE 0 {\n"); for (i = 0; i < ARRAYSIZE(album_info); i++) { char *str; str = (char *)gtk_entry_get_text(GTK_ENTRY(album_info[i].widget)); if (album_info[i].always_write || !only_blank(str)) { /* First entry, language added to file above */ if (i > 0) { fprintf(toc, " %s \"%s\"\n", album_info[i].fieldid, str); } strcat(&new_cdtext[new_cdtext_loc], album_info[i].fieldid); new_cdtext_loc += strlen(&new_cdtext[new_cdtext_loc]) + 1; strcat(&new_cdtext[new_cdtext_loc], str); new_cdtext_loc += strlen(&new_cdtext[new_cdtext_loc]) + 1; } } fprintf(toc, " }\n}\n"); } else { new_cdtext = NULL; } for (j = 0; j < num_song_markers+(1-use_song_marker_pairs); j += 1+use_song_marker_pairs) { long end; int j1 = j+1 ; long length ; long start ; if(use_song_marker_pairs) { start = song_markers[j] ; if(j1 < num_song_markers) { length = song_markers[j+1] - start + 1 ; } else { /* no last song marker in last pair, assume end of audio for end of last track */ length = (prefs.n_samples-1) - start + 1 ; } } else { if (j == 0) { start = 0 ; length = song_markers[j] - start + 1 ; } else if (j == num_song_markers) { start = song_markers[j-1] ; length = (prefs.n_samples-1) - start + 1 ; } else { start = song_markers[j-1] ; length = song_markers[j] - start + 1 ; } } #define AUDIO_BLOCK_LEN 588 length = ((length + AUDIO_BLOCK_LEN / 2) / AUDIO_BLOCK_LEN) * AUDIO_BLOCK_LEN ; end = start + length -1 ; while(end > (prefs.n_samples-1) && end > 2*AUDIO_BLOCK_LEN) { end -= AUDIO_BLOCK_LEN ; } length = end - start + 1 ; fprintf(toc, "TRACK AUDIO\n"); if (found_text) { fprintf(toc, " CD_TEXT {\n LANGUAGE 0 {\n"); for (i = 0; i < ARRAYSIZE(song_info); i++) { char *str; str = (char *)gtk_entry_get_text(GTK_ENTRY(song_widget[j][i])); if (song_info[i].always_write || !only_blank(str)) { fprintf(toc, " %s \"%s\"\n", song_info[i].fieldid, str); /* Duplicated above */ snprintf(buf, sizeof(buf), "%3d%s", j+1, song_info[i].fieldid); strcat(&new_cdtext[new_cdtext_loc], buf); new_cdtext_loc += strlen(&new_cdtext[new_cdtext_loc]) + 1; strcat(&new_cdtext[new_cdtext_loc], str); new_cdtext_loc += strlen(&new_cdtext[new_cdtext_loc]) + 1; } } fprintf(toc, " }\n }\n"); } fprintf(toc, " FILE \"%s\" %ld %ld\n", wave_filename, start, end - start) ; } fclose(toc); if (cdtext_data != NULL) { free(cdtext_data); } cdtext_data = new_cdtext; /* Loc is the actual length we filled */ cdtext_length = new_cdtext_loc; } } gtk_widget_destroy(dlg) ; } void store_cdrdao_toc(GtkFileSelection * selector, gpointer user_data) { int fd_new; gtk_widget_hide_all (GTK_WIDGET(file_selector)); strcpy(save_cdrdao_toc_filename, gtk_file_selection_get_filename(GTK_FILE_SELECTION(file_selector))) ; if(strcmp(save_cdrdao_toc_filename, wave_filename)) { int l ; l = strlen(save_cdrdao_toc_filename) ; d_print("Save cdrdao_toc to %s\n", save_cdrdao_toc_filename) ; fd_new = open(save_cdrdao_toc_filename, O_RDONLY) ; if(fd_new > -1) { char buf[1000] ; close(fd_new) ; sprintf(buf, "%s exists, overwrite ?", save_cdrdao_toc_filename) ; if(yesno(buf)) { return ; } } cdrdao_toc_info(save_cdrdao_toc_filename) ; } else { warning("Cannot save selection over the currently open file!") ; } } void save_cdrdao_toc(GtkWidget * widget, gpointer data) { char pathname[256] = "./cdrdao.toc"; if (num_song_markers == 0) { info("No songs marked, Use Markers->Mark Songs"); } else { /* Create the selector */ file_selector = gtk_file_selection_new("Filename to save cdrdao toc to:"); gtk_file_selection_set_filename(GTK_FILE_SELECTION(file_selector), pathname) ; gtk_signal_connect(GTK_OBJECT (GTK_FILE_SELECTION(file_selector)->ok_button), "clicked", GTK_SIGNAL_FUNC(store_cdrdao_toc), NULL); /* Ensure that the dialog box is destroyed when the user clicks a button. */ gtk_signal_connect_object(GTK_OBJECT (GTK_FILE_SELECTION(file_selector)-> ok_button), "clicked", GTK_SIGNAL_FUNC(gtk_widget_destroy), (gpointer) file_selector); gtk_signal_connect_object(GTK_OBJECT (GTK_FILE_SELECTION(file_selector)-> cancel_button), "clicked", GTK_SIGNAL_FUNC(gtk_widget_destroy), (gpointer) file_selector); /* Display the dialog */ gtk_widget_show(file_selector); } } void save_cdrdao_tocs(GtkWidget * widget, gpointer data) { use_song_marker_pairs = 0 ; save_cdrdao_toc(widget, data) ; } void save_cdrdao_tocp(GtkWidget * widget, gpointer data) { use_song_marker_pairs = 1 ; save_cdrdao_toc(widget, data) ; } int _add_song_marker(long loc) { int i,j; if (num_song_markers >= MAX_MARKERS - 1) { set_status_text("No more song markers available"); return 0 ; } else { for (i = 0; i < num_song_markers; i++) { if (song_markers[i] > loc) { break; } } for (j = num_song_markers - 1; j >= i; j--) { song_markers[j+1] = song_markers[j]; } song_markers[i] = loc ; num_song_markers++; return 1 ; } } void add_song_marker(void) { long loc = audio_view.selected_first_sample; if(_add_song_marker(loc)) main_redraw(FALSE, TRUE); } void add_song_marker_pair(void) { int r ; long loc = audio_view.selected_first_sample; r = _add_song_marker(loc) ; loc = audio_view.selected_last_sample; r += _add_song_marker(loc) ; if(r > 0) main_redraw(FALSE, TRUE); } void delete_song_marker(void) { int i,j; i = 0; while (i < num_song_markers) { if (song_markers[i] >= audio_view.selected_first_sample && song_markers[i] <= audio_view.selected_last_sample) { for (j = i; j < num_song_markers - 1; j++) { song_markers[j] = song_markers[j+1]; } num_song_markers--; } else { i++; } } main_redraw(FALSE, TRUE); } void adjust_song_marker_positions(long pos, long delta) { int i,j; i = 0; while (i < num_song_markers) { if (song_markers[i] >= pos) { song_markers[i] += delta; if (song_markers[i] <= pos || song_markers[i] >= prefs.n_samples) { for (j = i; j < num_song_markers - 1; j++) { song_markers[j] = song_markers[j+1]; } num_song_markers--; } else { i++; } } else { i++; } } } void move_song_marker(void) { int i; long loc = audio_view.selected_first_sample; long err; int min_err_loc = 0; long min_err = LONG_MAX; if (num_song_markers == 0) { set_status_text("No song markers"); } else { for (i = 0; i < num_song_markers; i++) { err = abs(loc - song_markers[i]); if (err < min_err) { min_err = err; min_err_loc = i; } } song_markers[min_err_loc] = (loc / SONG_BLOCK_LEN) * SONG_BLOCK_LEN; main_redraw(FALSE, TRUE); } } void select_song_marker(void) { int i; long loc = audio_view.selected_last_sample; if (num_song_markers == 0) { set_status_text("No song markers"); } else { if (loc > song_markers[num_song_markers-1]) { loc = 0; } for (i = 0; i < num_song_markers && song_markers[i] < loc; i++); audio_view.selected_last_sample = MIN(prefs.n_samples - 1, song_markers[i] + prefs.rate * song_key_highlight_interval / 2) ; audio_view.selected_first_sample = MAX(0, song_markers[i] - prefs.rate * song_key_highlight_interval / 2) ; audio_view.selection_region = TRUE ; main_redraw(FALSE, TRUE); } } #define DETECT_GAPS_NOT #ifdef DETECT_GAPS double sample_rms(struct sample_block *sample_buffer, int i, int w) { int istart=i-w/2 ; if(istart < 0) istart=0 ; int iend=i+w/2 ; double sum=0 ; double n=iend-istart+1.0 ; for(i=istart ; i <= iend ; i++) { sum += (sample_buffer[i].rms[0]+sample_buffer[i].rms[1])/2.0 ; } return sum/n ; } #endif void mark_songs(GtkWidget * widget, gpointer data) { struct sample_block *sample_buffer ; int n_blocks ; int i; double max_song = 0.0, min_song = 999999999.0; double song_amp; double song_window_amp = 0.0; double *delay; /* These might be good as preferences */ double MIN_SONG_LEN = 35.0; long min_song_blocks; /* Length of sliding window in seconds to average audio over */ double AVG_LEN = song_mark_silence*.75; int avg_blocks; long min_silence_blocks; double SILENCE_EST = .3; double silence; double sec_per_block; double silence_scale; int found_short; int valid_delay; int delay_cntr; int last_silence; int silence_cntr; char buf[200]; int last_song_block; num_song_markers = 0; n_blocks = get_sample_buffer(&sample_buffer) ; if (n_blocks > 0) { sec_per_block = (double) sample_buffer[0].n_samples / prefs.rate; } else { sec_per_block = 0.0; } if (n_blocks * sec_per_block < MIN_SONG_LEN * 3) { snprintf(buf, sizeof(buf), "Must have at least %4.0f seconds of music", MIN_SONG_LEN*3); info(buf); return; } min_silence_blocks = MAX(.25,song_mark_silence) / sec_per_block; min_song_blocks = MIN_SONG_LEN / sec_per_block; avg_blocks = MAX(.25*.75,AVG_LEN) / sec_per_block; delay = malloc(avg_blocks * sizeof(delay[0])); /* First find minimum and maximum level in a sliding window */ valid_delay = 0; delay_cntr = 0; song_window_amp = 0.0; for (i = 0; i < avg_blocks; i++) delay[i] = 0.0; for (i = min_song_blocks; i < n_blocks - min_song_blocks; i++) { song_amp = (sample_buffer[i].max_value[0] + sample_buffer[i].max_value[1]); song_window_amp += song_amp - delay[delay_cntr]; delay[delay_cntr] = song_amp; delay_cntr = (delay_cntr + 1) % avg_blocks; if (delay_cntr == 0) valid_delay = 1; if (valid_delay) { if (song_window_amp > max_song) max_song = song_window_amp; if (song_window_amp < min_song) min_song = song_window_amp; } } /* Now step the threshold up until we find something too short to be a */ /* song. */ found_short = 0; for (silence_scale = 2.0; silence_scale < 32.0 && !found_short; ) { last_silence = -min_song_blocks; valid_delay = 0; delay_cntr = 0; song_window_amp = 0.0; silence_cntr = 0; for (i = 0; i < avg_blocks; i++) delay[i] = 0.0; for (i = min_song_blocks; i < n_blocks - min_song_blocks && !found_short; i++) { song_amp = (sample_buffer[i].max_value[0] + sample_buffer[i].max_value[1]); song_window_amp += song_amp - delay[delay_cntr]; delay[delay_cntr] = song_amp; delay_cntr = (delay_cntr + 1) % avg_blocks; if (delay_cntr == 0) valid_delay = 1; if (valid_delay) { if (song_window_amp > min_song * silence_scale) { silence_cntr = 0; } else { silence_cntr++; if (silence_cntr > min_silence_blocks) { if (i - last_silence > min_silence_blocks * 3 && i - last_silence < min_song_blocks) { found_short = 1; } last_silence = i; } } } } if (!found_short) silence_scale *= 1.5; } /* Pick a threshold between the minimum level and the two high level from */ /* above. Use it to mark the songs. Might be good to look for minimum */ /* silence level to help center the song break better */ silence = min_song + min_song * silence_scale * SILENCE_EST; valid_delay = 0; delay_cntr = 0; song_window_amp = 0.0; silence_cntr = 0; last_silence = 0; last_song_block = 0; for (i = 0; i < avg_blocks; i++) delay[i] = 0.0; for (i = min_song_blocks; i < n_blocks - min_song_blocks; i++) { song_amp = (sample_buffer[i].max_value[0] + sample_buffer[i].max_value[1]); song_window_amp += song_amp - delay[delay_cntr]; delay[delay_cntr] = song_amp; delay_cntr = (delay_cntr + 1) % avg_blocks; if (delay_cntr == 0) valid_delay = 1; if (valid_delay) { if (song_window_amp > silence) { if (last_silence && i - last_song_block > min_song_blocks) { int loc = (i + (last_silence - min_silence_blocks)) / 2 * sample_buffer[i].n_samples; song_markers[num_song_markers++] = (loc / SONG_BLOCK_LEN) * SONG_BLOCK_LEN; if (num_song_markers >= MAX_MARKERS - 2) break; last_song_block = i; } last_silence = 0; silence_cntr = 0; } else { silence_cntr++; if (silence_cntr > min_silence_blocks) { if (!last_silence) { last_silence = i; } } } } } #ifdef DETECT_GAPS if(1) { /* this attempts to detect entire gaps between songs, it does not work * well yet and should be disabled except for testing... */ long tmp_markers[MAX_MARKERS] ; int n_tmp = num_song_markers ; for(i = 0 ; i < num_song_markers ; i++) tmp_markers[i] = song_markers[i] ; num_song_markers=0 ; for(i=0 ; i < n_tmp ; i++) { int iblk = tmp_markers[i]/SBW ; #define bsw 256 #define hbsw 64 double midpt_rms = sample_rms(sample_buffer,iblk,bsw) ; int j ; for(j = hbsw ; j < min_song_blocks ; j += hbsw) { double lead_rms = sample_rms(sample_buffer,iblk-j,bsw) ; if(lead_rms > midpt_rms*1.3) break ; } if(j > hbsw) song_markers[num_song_markers++] = (iblk-j)*SBW ; for(j = hbsw ; j < min_song_blocks ; j += hbsw) { double tail_rms = sample_rms(sample_buffer,iblk+j,bsw) ; if(tail_rms > midpt_rms*1.5) break ; } if(j > hbsw) song_markers[num_song_markers++] = (iblk+j)*SBW ; } } #endif snprintf(buf, sizeof(buf), "Marked %ld songs", num_song_markers + 1); set_status_text(buf); free(delay); main_redraw(FALSE, TRUE) ; } |
From: Brian B. <br...@pi...> - 2012-04-08 20:16:33
|
On 08/04/12 03:19, jeff welty wrote: > Hi Brian, Hi Jeff, I'm really pleased that you picked up my question so quickly and I really appreciate you helping me. > Literally nothing has changed in the code that handles the song markers > and creates the cdrdao toc file since before version 0.21-10. I wish I had noticed which version of gwc was running the last time I used it successfully. If it turns out to be important, I will dig through my backups to identify it. However, I'm fairly confident ubuntu studio was offering something older than 0.21-10 in its repository about 2 years ago. > It sounds to me like you may have inadvertantly used the > "Create cdrdao toc file, using marker pairs, As..." > version of creating the toc file? That causes the first track to start > not at sample 0, but rather starts the first track at the position of > the first song marker. Yes, I thought of that too because I was intrigued by the menu items that I didn't recognise from the previous version that I used. I am sure I didn't make that mistake, but to be certain I started from scratch (see below). > I am pretty sure you did find a bug though, I'll bet you had an odd > number of song markers, and gwc read whatever garbage was on the stack > to find the end position for the last track. > Can you double check that gwc does create a valid toc file for your > project with the "Create cdrdao toc file As..." option, just in case you > did click the wrong one? I created a fresh directory and copied a single, large wav file into it (i.e. there were no pre-existing blah.wav.gwc or blah.toc files. I split it arbitrarily into three tracks. Here is the cdrdao.toc created by gwc: CD_TEXT { LANGUAGE_MAP { 0: EN } LANGUAGE 0 { TITLE "The Doors" MESSAGE "Brians clean test" } } TRACK AUDIO CD_TEXT { LANGUAGE 0 { TITLE "part 1" MESSAGE "" } } FILE "/home/brian/gwc-test/export.wav" 38342565 28204595 TRACK AUDIO CD_TEXT { LANGUAGE 0 { TITLE "part 2" MESSAGE "" } } FILE "/home/brian/gwc-test/export.wav" 66547236 50606219 TRACK AUDIO CD_TEXT { LANGUAGE 0 { TITLE "part 3" MESSAGE "" } } FILE "/home/brian/gwc-test/export.wav" 0 117153707 ... and here is the "correct" version that I created from the information available in the gwc window using the same song markers: CD_TEXT { LANGUAGE_MAP { 0: EN } LANGUAGE 0 { TITLE "The Doors" MESSAGE "Brians clean test, manual assignment of boundaries" } } TRACK AUDIO CD_TEXT { LANGUAGE 0 { TITLE "part 1" MESSAGE "" } } FILE "/home/brian/gwc-test/export.wav" 0 38342566 TRACK AUDIO CD_TEXT { LANGUAGE 0 { TITLE "part 2" MESSAGE "" } } FILE "/home/brian/gwc-test/export.wav" 38342566 28204672 TRACK AUDIO CD_TEXT { LANGUAGE 0 { TITLE "part 3" MESSAGE "" } } FILE "/home/brian/gwc-test/export.wav" 66547238 50606490 // total number of samples calculated: 117153728 // total number of samples from gwc : 117153727 Obviously, the first track ought to start with sample zero and it doesn't. In fact, if you look carefully it seems "first" track has been built with the start and length values required to define the real SECOND track! The "second" track carries the start and length of the real THIRD track. The "third" track starts with sample zero, and its length is /nearly/ the same as the number of samples in the entire file. I definitely added song markers, NOT song marker pairs. I definitely saved the toc with the correct option, not trying to use marker pairs. However, just in case it is significant, I used VIEW -> select all before creating the toc file. My previous version required EDIT -> select all, but this no longer exists. I would appreciate your thoughts on my latest experiment and evidence. If you think it is important, I will find out which version of gwc last worked OK for me using the same procedure. n.b. I do NOT place a song marker before the first sample... perhaps I should try that as an experiment? > Thanks very much for the report, regardless. It's good to know GWC is > still getting some use... I think it is a brilliant tool and wouldn't use anything else to clean up a noisy vinyl recording. I'm very pleased someone is still watching over it. Regards, Brian > Jeff > > ------------------------------------------------------------------------ > *From:* Brian Burch <br...@pi...> > *To:* gwc...@li... > *Sent:* Thursday, April 5, 2012 9:34 AM > *Subject:* [Gwc-general] Invalid cdrdao toc file > > I am using GWC 0.21-16, which is currently shipped with the ubuntu > studio 12.04 precise pangolin beta 2. It is also the current version > with my production ubuntu studio 11.10 system. > > It isn't strictly relevant, but I convert vinyl to digital using an > Edirol FA-66 firewire device controlled by jackd and captured by Ardour. > > I use Ardour to export a single wav file for the entire vinyl album and > then use gwc to clean up the recording. > > When I have a wav file that I like, I then manually mark the boundary of > each track with "Markers -> Add Song Marker". Finally, I "View -> > SelectAll" and then "File -> Create cdrdao toc file As...". > > I manually fill in the album and track names on the toc dialogue and > save the file. I write a new CD with "cdrdao --speed 4 export.toc". This > is a procedure I've been following for several years without any problems. > > However, since I upgraded gwc to 0.21-16, cdrdao has complained about > the toc files and refused to write the cd as follows: > > brian@schizo:~/WeatherReport-sportinLife/export$ cdrdao write --speed 4 > export.toc > Cdrdao version 1.2.3 - (C) Andreas Mueller <an...@da... > <mailto:an...@da...>> > ERROR: Track 7: Requested length (89737555 + 12992447 samples) exceeds > length of audio file > "/home/brian/WeatherReport-sportinLife/export/export.wav" (102729733 > samples at offset 0). > ERROR: The toc check function detected at least one warning. > ERROR: If you record this toc the resulting CD might be unusable > ERROR: or the recording process might abort with error. > ERROR: Use option --force to ignore the warnings. > ERROR: Toc file "export.toc" is inconsistent. > > The toc file is fairly badly wrong - the first track does not even start > with sample number zero! > > I took a copy of the bad toc file and manually edited all the track > start and length sample counters. I took the actual boundaries by > displaying the sample counters for each of the song markers displayed by > gwc, so we were working off the same wav file and analysis. My manual > sample counters were very different to those automatically generated by gwc. > > I've googled, but not found anything relevant. Am I using the > appropriate dialogue to create my toc file on this release of gwc (i.e. > this is a user error), or does this sound like a bug? (I notice you've > added new toc file features in recent releases, so perhaps this is > collateral damage.) > > I don't know whether your mailing list strips attachments, so I won't > send the two files at this time. I'm happy to send them in-line if > anyone feels they would help in diagnosis. > > Obviously this isn't urgent for me because I have a tedious but viable > bypass for the problem. However, this version of gwc is being pushed out > as 0.21.16~dfsg-3build (precise) and 0.21.16~dfsg-3 (oneiric) from the > ubuntu repositories, so it has a wide exposure! > > Regards, > > Brian Burch > > > ------------------------------------------------------------------------------ > Better than sec? Nothing is better than sec when it comes to > monitoring Big Data applications. Try Boundary one-second > resolution app monitoring today. Free. > http://p.sf.net/sfu/Boundary-dev2dev > _______________________________________________ > Gwc-general mailing list > Gwc...@li... <mailto:Gwc...@li...> > https://lists.sourceforge.net/lists/listinfo/gwc-general > > |
From: jeff w. <we...@ya...> - 2012-04-08 02:19:24
|
Hi Brian, Literally nothing has changed in the code that handles the song markers and creates the cdrdao toc file since before version 0.21-10. It sounds to me like you may have inadvertantly used the "Create cdrdao toc file, using marker pairs, As..." version of creating the toc file? That causes the first track to start not at sample 0, but rather starts the first track at the position of the first song marker. I am pretty sure you did find a bug though, I'll bet you had an odd number of song markers, and gwc read whatever garbage was on the stack to find the end position for the last track. Can you double check that gwc does create a valid toc file for your project with the "Create cdrdao toc file As..." option, just in case you did click the wrong one? Thanks very much for the report, regardless. It's good to know GWC is still getting some use... Jeff ________________________________ From: Brian Burch <br...@pi...> To: gwc...@li... Sent: Thursday, April 5, 2012 9:34 AM Subject: [Gwc-general] Invalid cdrdao toc file I am using GWC 0.21-16, which is currently shipped with the ubuntu studio 12.04 precise pangolin beta 2. It is also the current version with my production ubuntu studio 11.10 system. It isn't strictly relevant, but I convert vinyl to digital using an Edirol FA-66 firewire device controlled by jackd and captured by Ardour. I use Ardour to export a single wav file for the entire vinyl album and then use gwc to clean up the recording. When I have a wav file that I like, I then manually mark the boundary of each track with "Markers -> Add Song Marker". Finally, I "View -> SelectAll" and then "File -> Create cdrdao toc file As...". I manually fill in the album and track names on the toc dialogue and save the file. I write a new CD with "cdrdao --speed 4 export.toc". This is a procedure I've been following for several years without any problems. However, since I upgraded gwc to 0.21-16, cdrdao has complained about the toc files and refused to write the cd as follows: brian@schizo:~/WeatherReport-sportinLife/export$ cdrdao write --speed 4 export.toc Cdrdao version 1.2.3 - (C) Andreas Mueller <an...@da...> ERROR: Track 7: Requested length (89737555 + 12992447 samples) exceeds length of audio file "/home/brian/WeatherReport-sportinLife/export/export.wav" (102729733 samples at offset 0). ERROR: The toc check function detected at least one warning. ERROR: If you record this toc the resulting CD might be unusable ERROR: or the recording process might abort with error. ERROR: Use option --force to ignore the warnings. ERROR: Toc file "export.toc" is inconsistent. The toc file is fairly badly wrong - the first track does not even start with sample number zero! I took a copy of the bad toc file and manually edited all the track start and length sample counters. I took the actual boundaries by displaying the sample counters for each of the song markers displayed by gwc, so we were working off the same wav file and analysis. My manual sample counters were very different to those automatically generated by gwc. I've googled, but not found anything relevant. Am I using the appropriate dialogue to create my toc file on this release of gwc (i.e. this is a user error), or does this sound like a bug? (I notice you've added new toc file features in recent releases, so perhaps this is collateral damage.) I don't know whether your mailing list strips attachments, so I won't send the two files at this time. I'm happy to send them in-line if anyone feels they would help in diagnosis. Obviously this isn't urgent for me because I have a tedious but viable bypass for the problem. However, this version of gwc is being pushed out as 0.21.16~dfsg-3build (precise) and 0.21.16~dfsg-3 (oneiric) from the ubuntu repositories, so it has a wide exposure! Regards, Brian Burch ------------------------------------------------------------------------------ Better than sec? Nothing is better than sec when it comes to monitoring Big Data applications. Try Boundary one-second resolution app monitoring today. Free. http://p.sf.net/sfu/Boundary-dev2dev _______________________________________________ Gwc-general mailing list Gwc...@li... https://lists.sourceforge.net/lists/listinfo/gwc-general |
From: Brian B. <br...@pi...> - 2012-04-05 16:52:00
|
I am using GWC 0.21-16, which is currently shipped with the ubuntu studio 12.04 precise pangolin beta 2. It is also the current version with my production ubuntu studio 11.10 system. It isn't strictly relevant, but I convert vinyl to digital using an Edirol FA-66 firewire device controlled by jackd and captured by Ardour. I use Ardour to export a single wav file for the entire vinyl album and then use gwc to clean up the recording. When I have a wav file that I like, I then manually mark the boundary of each track with "Markers -> Add Song Marker". Finally, I "View -> SelectAll" and then "File -> Create cdrdao toc file As...". I manually fill in the album and track names on the toc dialogue and save the file. I write a new CD with "cdrdao --speed 4 export.toc". This is a procedure I've been following for several years without any problems. However, since I upgraded gwc to 0.21-16, cdrdao has complained about the toc files and refused to write the cd as follows: brian@schizo:~/WeatherReport-sportinLife/export$ cdrdao write --speed 4 export.toc Cdrdao version 1.2.3 - (C) Andreas Mueller <an...@da...> ERROR: Track 7: Requested length (89737555 + 12992447 samples) exceeds length of audio file "/home/brian/WeatherReport-sportinLife/export/export.wav" (102729733 samples at offset 0). ERROR: The toc check function detected at least one warning. ERROR: If you record this toc the resulting CD might be unusable ERROR: or the recording process might abort with error. ERROR: Use option --force to ignore the warnings. ERROR: Toc file "export.toc" is inconsistent. The toc file is fairly badly wrong - the first track does not even start with sample number zero! I took a copy of the bad toc file and manually edited all the track start and length sample counters. I took the actual boundaries by displaying the sample counters for each of the song markers displayed by gwc, so we were working off the same wav file and analysis. My manual sample counters were very different to those automatically generated by gwc. I've googled, but not found anything relevant. Am I using the appropriate dialogue to create my toc file on this release of gwc (i.e. this is a user error), or does this sound like a bug? (I notice you've added new toc file features in recent releases, so perhaps this is collateral damage.) I don't know whether your mailing list strips attachments, so I won't send the two files at this time. I'm happy to send them in-line if anyone feels they would help in diagnosis. Obviously this isn't urgent for me because I have a tedious but viable bypass for the problem. However, this version of gwc is being pushed out as 0.21.16~dfsg-3build (precise) and 0.21.16~dfsg-3 (oneiric) from the ubuntu repositories, so it has a wide exposure! Regards, Brian Burch |
From: Guy S. <jim...@gm...> - 2011-07-04 00:50:30
|
Jeff, Thanks for the reply. I decided to go off on a completely different direction. I've installed PCLinuxOS in a dual-boot configuration on my HP laptop. We'll see how long it lasts. But I have been able to run gwc and do what I wanted to do with it, which was the point after all. Guy Stalnaker jim...@gm... On Sun, Jul 3, 2011 at 6:52 PM, jeff welty <we...@ya...> wrote: > Hi Guy, > > Sorry to take a while to respond, just got back from vacation. > > I think even if you could get past the u_char problem (which would be > pretty simple to do), the next problem may be there is no OSS or ALSA sound > libraries available for cygwin. If neither OSS or ALSA is available for > cygwin then you are not going to get anywhere. I would check that out > before going any farther... > > Good luck, and let us know what you find out. > Jeff > > > ------------------------------ > *From:* Guy Stalnaker <jim...@gm...> > > *To:* gwc...@li... > *Sent:* Saturday, July 2, 2011 7:44 PM > *Subject:* [Gwc-general] Fwd: Help with compile on cygwin 1.7 > > Jeff, > > I'm hoping you can help me out. I LOVE your application. I used it > extensively to record some old holiday albums which I made as a Christmas > gift to my siblings. Now I want to use it again. Unfortunately, in the > interim, my laptop has, for various reasons, been reverted to its original > Windows OS and thus I no longer have an Ubuntu install I can use your > program in. > > So, I've looked at the two options I have, run it in a VM (Sun VirtualBox) > and run it under cygwin. The VM route won't work at all. I was able to > install it, but the data files are >1 Gb and just loading one takes 15 > minutes, then, unfortunately, gwc crashes. Not enough RAM, etc. is my > thinking. > > I turned to cygwin. Things were looking pretty good, actually. I have the > devel packages installed and configure runs to completion without error. > Make starts and all is looking fine until it gets to audio_util.c. Then all > hell breaks loose :-) Unfortunately I'm no C programmer and even with make > in debug mode there is little I can make sense of. Make is successful on > these files: > > tap_reverb_file_io.c > tap_reverb.c > reverb.c > dialog.c > gwc.c > audio_device.c > audio_edit.c > > Here's the make output on audio_util.c at this point: > > <quote> > gcc -DDATADIR=\"\" -DLIBDIR=\"/usr/local/lib\" > -DAPPNAME=\"gnome_wave_cleaner\" -DHAVE_FFTW3 -DFFTWPREC=2 > -D_FILE_OFFSET_BITS=64 -Wall -O6 -DORBIT2=1 -D_REENTRANT > -I/usr/include/libgnomeui-2.0 -I/usr/include/libart-2.0 > -I/usr/include/gconf/2 -I/usr/include/gnome-keyring-1 > -I/usr/include/libgnome-2.0 -I/usr/include/libbonoboui-2.0 > -I/usr/include/libgnomecanvas-2.0 -I/usr/include/gtk-2.0 > -I/usr/include/gnome-vfs-2.0 -I/usr/lib/gnome-vfs-2.0/include > -I/usr/include/orbit-2.0 -I/usr/include/dbus-1.0 -I/usr/lib/dbus-1.0/include > -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include > -I/usr/include/libbonobo-2.0 -I/usr/include/bonobo-activation-2.0 > -I/usr/include/libxml2 -I/usr/include/pango-1.0 -I/usr/include/gail-1.0 > -I/usr/include/freetype2 -I/usr/include/atk-1.0 -I/usr/lib/gtk-2.0/include > -I/usr/include/cairo -I/usr/include/gio-unix-2.0/ -I/usr/include/pixman-1 > -I/usr/include/libpng12 -c audio_util.c > In file included from audio_util.c:44: > fmtheaders.h:36: error: syntax error before "u_char" > fmtheaders.h:36: warning: useless keyword or type name in empty declaration > fmtheaders.h:36: warning: empty declaration > fmtheaders.h:37: error: syntax error before "u_short" > fmtheaders.h:37: warning: useless keyword or type name in empty declaration > fmtheaders.h:37: warning: empty declaration > fmtheaders.h:38: error: syntax error before "u_int" > fmtheaders.h:38: warning: useless keyword or type name in empty declaration > fmtheaders.h:38: warning: empty declaration > fmtheaders.h:39: error: syntax error before "u_long" > fmtheaders.h:39: warning: useless keyword or type name in empty declaration > fmtheaders.h:39: warning: empty declaration > fmtheaders.h:40: error: parse error before "quad_t" > fmtheaders.h:40: warning: type defaults to `int' in declaration of `quad_t' > fmtheaders.h:40: warning: data definition has no type or storage class > fmtheaders.h:41: error: parse error before "u_quad_t" > fmtheaders.h:41: warning: type defaults to `int' in declaration of > `u_quad_t' > fmtheaders.h:41: warning: data definition has no type or storage class > fmtheaders.h:42: error: parse error before "fsid_t" > fmtheaders.h:42: warning: type defaults to `int' in declaration of `fsid_t' > fmtheaders.h:42: warning: data definition has no type or storage class > audio_util.c: In function `save_selection_as_wavfile': > audio_util.c:515: warning: unused variable `fd_new' > audio_util.c:516: warning: unused variable `sndfile_new' > audio_util.c:517: warning: unused variable `sfinfo_new' > audio_util.c:520: warning: unused variable `total_bytes' > audio_util.c: In function `read_raw_wavefile_data': > audio_util.c:825: warning: unused variable `bufsize' > make: *** [audio_util.o] Error 1 > </quote> > > I checked fmtheaders.h and the lines that gcc is hollering about seem to > be: > > <quote> > # ifndef MAC_OS_X > # ifndef __u_char_defined > typedef __u_char u_char; > typedef __u_short u_short; > typedef __u_int u_int; > typedef __u_long u_long; > typedef __quad_t quad_t; > typedef __u_quad_t u_quad_t; > typedef __fsid_t fsid_t; > # define __u_char_defined > # endif > # endif /* MAC_OS_X*/ > </quote> > > And that's it. I would not have thought the warnings would lead to > catastrophic failure (other c files also produce such warnings yet compile > successfully). I've tried running just gcc on audio_utils.c with the right > syntax and -o audio_utils.o for output and gcc reports the same warnings, no > errors and no abort, but also no object file output. > > I know this is still a long way from done done -- but it's a start. I wish > I had the programming chops to figure this out (just reading through the c > code makes me glad that I only need to do the occasional shell/Perl script > :-), but I don't so I have to turn to you. I did check the cygports project > and they don't make your excellent tool as part of it. > > Guy Stalnaker > jim...@gm... > > > > ------------------------------------------------------------------------------ > All of the data generated in your IT infrastructure is seriously valuable. > Why? It contains a definitive record of application performance, security > threats, fraudulent activity, and more. Splunk takes this data and makes > sense of it. IT sense. And common sense. > http://p.sf.net/sfu/splunk-d2d-c2 > _______________________________________________ > Gwc-general mailing list > Gwc...@li... > https://lists.sourceforge.net/lists/listinfo/gwc-general > > > |
From: jeff w. <we...@ya...> - 2011-07-03 23:52:14
|
Hi Guy, Sorry to take a while to respond, just got back from vacation. I think even if you could get past the u_char problem (which would be pretty simple to do), the next problem may be there is no OSS or ALSA sound libraries available for cygwin. If neither OSS or ALSA is available for cygwin then you are not going to get anywhere. I would check that out before going any farther... Good luck, and let us know what you find out. Jeff ________________________________ From: Guy Stalnaker <jim...@gm...> To: gwc...@li... Sent: Saturday, July 2, 2011 7:44 PM Subject: [Gwc-general] Fwd: Help with compile on cygwin 1.7 Jeff, I'm hoping you can help me out. I LOVE your application. I used it extensively to record some old holiday albums which I made as a Christmas gift to my siblings. Now I want to use it again. Unfortunately, in the interim, my laptop has, for various reasons, been reverted to its original Windows OS and thus I no longer have an Ubuntu install I can use your program in. So, I've looked at the two options I have, run it in a VM (Sun VirtualBox) and run it under cygwin. The VM route won't work at all. I was able to install it, but the data files are >1 Gb and just loading one takes 15 minutes, then, unfortunately, gwc crashes. Not enough RAM, etc. is my thinking. I turned to cygwin. Things were looking pretty good, actually. I have the devel packages installed and configure runs to completion without error. Make starts and all is looking fine until it gets to audio_util.c. Then all hell breaks loose :-) Unfortunately I'm no C programmer and even with make in debug mode there is little I can make sense of. Make is successful on these files: tap_reverb_file_io.c tap_reverb.c reverb.c dialog.c gwc.c audio_device.c audio_edit.c Here's the make output on audio_util.c at this point: <quote> gcc -DDATADIR=\"\" -DLIBDIR=\"/usr/local/lib\" -DAPPNAME=\"gnome_wave_cleaner\" -DHAVE_FFTW3 -DFFTWPREC=2 -D_FILE_OFFSET_BITS=64 -Wall -O6 -DORBIT2=1 -D_REENTRANT -I/usr/include/libgnomeui-2.0 -I/usr/include/libart-2.0 -I/usr/include/gconf/2 -I/usr/include/gnome-keyring-1 -I/usr/include/libgnome-2.0 -I/usr/include/libbonoboui-2.0 -I/usr/include/libgnomecanvas-2.0 -I/usr/include/gtk-2.0 -I/usr/include/gnome-vfs-2.0 -I/usr/lib/gnome-vfs-2.0/include -I/usr/include/orbit-2.0 -I/usr/include/dbus-1.0 -I/usr/lib/dbus-1.0/include -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include -I/usr/include/libbonobo-2.0 -I/usr/include/bonobo-activation-2.0 -I/usr/include/libxml2 -I/usr/include/pango-1.0 -I/usr/include/gail-1.0 -I/usr/include/freetype2 -I/usr/include/atk-1.0 -I/usr/lib/gtk-2.0/include -I/usr/include/cairo -I/usr/include/gio-unix-2.0/ -I/usr/include/pixman-1 -I/usr/include/libpng12 -c audio_util.c In file included from audio_util.c:44: fmtheaders.h:36: error: syntax error before "u_char" fmtheaders.h:36: warning: useless keyword or type name in empty declaration fmtheaders.h:36: warning: empty declaration fmtheaders.h:37: error: syntax error before "u_short" fmtheaders.h:37: warning: useless keyword or type name in empty declaration fmtheaders.h:37: warning: empty declaration fmtheaders.h:38: error: syntax error before "u_int" fmtheaders.h:38: warning: useless keyword or type name in empty declaration fmtheaders.h:38: warning: empty declaration fmtheaders.h:39: error: syntax error before "u_long" fmtheaders.h:39: warning: useless keyword or type name in empty declaration fmtheaders.h:39: warning: empty declaration fmtheaders.h:40: error: parse error before "quad_t" fmtheaders.h:40: warning: type defaults to `int' in declaration of `quad_t' fmtheaders.h:40: warning: data definition has no type or storage class fmtheaders.h:41: error: parse error before "u_quad_t" fmtheaders.h:41: warning: type defaults to `int' in declaration of `u_quad_t' fmtheaders.h:41: warning: data definition has no type or storage class fmtheaders.h:42: error: parse error before "fsid_t" fmtheaders.h:42: warning: type defaults to `int' in declaration of `fsid_t' fmtheaders.h:42: warning: data definition has no type or storage class audio_util.c: In function `save_selection_as_wavfile': audio_util.c:515: warning: unused variable `fd_new' audio_util.c:516: warning: unused variable `sndfile_new' audio_util.c:517: warning: unused variable `sfinfo_new' audio_util.c:520: warning: unused variable `total_bytes' audio_util.c: In function `read_raw_wavefile_data': audio_util.c:825: warning: unused variable `bufsize' make: *** [audio_util.o] Error 1 </quote> I checked fmtheaders.h and the lines that gcc is hollering about seem to be: <quote> # ifndef MAC_OS_X # ifndef __u_char_defined typedef __u_char u_char; typedef __u_short u_short; typedef __u_int u_int; typedef __u_long u_long; typedef __quad_t quad_t; typedef __u_quad_t u_quad_t; typedef __fsid_t fsid_t; # define __u_char_defined # endif # endif /* MAC_OS_X*/ </quote> And that's it. I would not have thought the warnings would lead to catastrophic failure (other c files also produce such warnings yet compile successfully). I've tried running just gcc on audio_utils.c with the right syntax and -o audio_utils.o for output and gcc reports the same warnings, no errors and no abort, but also no object file output. I know this is still a long way from done done -- but it's a start. I wish I had the programming chops to figure this out (just reading through the c code makes me glad that I only need to do the occasional shell/Perl script :-), but I don't so I have to turn to you. I did check the cygports project and they don't make your excellent tool as part of it. Guy Stalnaker jim...@gm... ------------------------------------------------------------------------------ All of the data generated in your IT infrastructure is seriously valuable. Why? It contains a definitive record of application performance, security threats, fraudulent activity, and more. Splunk takes this data and makes sense of it. IT sense. And common sense. http://p.sf.net/sfu/splunk-d2d-c2 _______________________________________________ Gwc-general mailing list Gwc...@li... https://lists.sourceforge.net/lists/listinfo/gwc-general |
From: Guy S. <jim...@gm...> - 2011-07-03 02:45:02
|
Jeff, I'm hoping you can help me out. I LOVE your application. I used it extensively to record some old holiday albums which I made as a Christmas gift to my siblings. Now I want to use it again. Unfortunately, in the interim, my laptop has, for various reasons, been reverted to its original Windows OS and thus I no longer have an Ubuntu install I can use your program in. So, I've looked at the two options I have, run it in a VM (Sun VirtualBox) and run it under cygwin. The VM route won't work at all. I was able to install it, but the data files are >1 Gb and just loading one takes 15 minutes, then, unfortunately, gwc crashes. Not enough RAM, etc. is my thinking. I turned to cygwin. Things were looking pretty good, actually. I have the devel packages installed and configure runs to completion without error. Make starts and all is looking fine until it gets to audio_util.c. Then all hell breaks loose :-) Unfortunately I'm no C programmer and even with make in debug mode there is little I can make sense of. Make is successful on these files: tap_reverb_file_io.c tap_reverb.c reverb.c dialog.c gwc.c audio_device.c audio_edit.c Here's the make output on audio_util.c at this point: <quote> gcc -DDATADIR=\"\" -DLIBDIR=\"/usr/local/lib\" -DAPPNAME=\"gnome_wave_cleaner\" -DHAVE_FFTW3 -DFFTWPREC=2 -D_FILE_OFFSET_BITS=64 -Wall -O6 -DORBIT2=1 -D_REENTRANT -I/usr/include/libgnomeui-2.0 -I/usr/include/libart-2.0 -I/usr/include/gconf/2 -I/usr/include/gnome-keyring-1 -I/usr/include/libgnome-2.0 -I/usr/include/libbonoboui-2.0 -I/usr/include/libgnomecanvas-2.0 -I/usr/include/gtk-2.0 -I/usr/include/gnome-vfs-2.0 -I/usr/lib/gnome-vfs-2.0/include -I/usr/include/orbit-2.0 -I/usr/include/dbus-1.0 -I/usr/lib/dbus-1.0/include -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include -I/usr/include/libbonobo-2.0 -I/usr/include/bonobo-activation-2.0 -I/usr/include/libxml2 -I/usr/include/pango-1.0 -I/usr/include/gail-1.0 -I/usr/include/freetype2 -I/usr/include/atk-1.0 -I/usr/lib/gtk-2.0/include -I/usr/include/cairo -I/usr/include/gio-unix-2.0/ -I/usr/include/pixman-1 -I/usr/include/libpng12 -c audio_util.c In file included from audio_util.c:44: fmtheaders.h:36: error: syntax error before "u_char" fmtheaders.h:36: warning: useless keyword or type name in empty declaration fmtheaders.h:36: warning: empty declaration fmtheaders.h:37: error: syntax error before "u_short" fmtheaders.h:37: warning: useless keyword or type name in empty declaration fmtheaders.h:37: warning: empty declaration fmtheaders.h:38: error: syntax error before "u_int" fmtheaders.h:38: warning: useless keyword or type name in empty declaration fmtheaders.h:38: warning: empty declaration fmtheaders.h:39: error: syntax error before "u_long" fmtheaders.h:39: warning: useless keyword or type name in empty declaration fmtheaders.h:39: warning: empty declaration fmtheaders.h:40: error: parse error before "quad_t" fmtheaders.h:40: warning: type defaults to `int' in declaration of `quad_t' fmtheaders.h:40: warning: data definition has no type or storage class fmtheaders.h:41: error: parse error before "u_quad_t" fmtheaders.h:41: warning: type defaults to `int' in declaration of `u_quad_t' fmtheaders.h:41: warning: data definition has no type or storage class fmtheaders.h:42: error: parse error before "fsid_t" fmtheaders.h:42: warning: type defaults to `int' in declaration of `fsid_t' fmtheaders.h:42: warning: data definition has no type or storage class audio_util.c: In function `save_selection_as_wavfile': audio_util.c:515: warning: unused variable `fd_new' audio_util.c:516: warning: unused variable `sndfile_new' audio_util.c:517: warning: unused variable `sfinfo_new' audio_util.c:520: warning: unused variable `total_bytes' audio_util.c: In function `read_raw_wavefile_data': audio_util.c:825: warning: unused variable `bufsize' make: *** [audio_util.o] Error 1 </quote> I checked fmtheaders.h and the lines that gcc is hollering about seem to be: <quote> # ifndef MAC_OS_X # ifndef __u_char_defined typedef __u_char u_char; typedef __u_short u_short; typedef __u_int u_int; typedef __u_long u_long; typedef __quad_t quad_t; typedef __u_quad_t u_quad_t; typedef __fsid_t fsid_t; # define __u_char_defined # endif # endif /* MAC_OS_X*/ </quote> And that's it. I would not have thought the warnings would lead to catastrophic failure (other c files also produce such warnings yet compile successfully). I've tried running just gcc on audio_utils.c with the right syntax and -o audio_utils.o for output and gcc reports the same warnings, no errors and no abort, but also no object file output. I know this is still a long way from done done -- but it's a start. I wish I had the programming chops to figure this out (just reading through the c code makes me glad that I only need to do the occasional shell/Perl script :-), but I don't so I have to turn to you. I did check the cygports project and they don't make your excellent tool as part of it. Guy Stalnaker jim...@gm... |
From: jeff w. <we...@ya...> - 2011-05-15 20:00:46
|
Thanks for the reports. My experience on Fedore core 14 is that both pulseaudio and alsa drivers work find regardless whether or not pulseaudio is running. Here's my experience on Ubuntu 10.04: Pulseaudio works fine. Alsa is really strange -- it will open the alsa device, even set parameters on the device (parameters like audio rate, # channels, etc.) But when gwc attempts to write audio data to the device, it bombs with an alsa error of "invalid parameter" generated by the snd_pcm_writei() function call -- which I have yet to track down. I am perplexed. As time allows I'll see if I can track it down further, in the meantime there is no strong reason not to use the pulseaudio driver, it's just the alsa driver would be a little more efficient with I/O and the cursor tracking would be slightly better (but probably not enough to make visual difference...) Cheers, Jeff ----- Original Message ---- From: Chris Craig <ch...@ci...> To: gwc...@li... Sent: Thu, May 12, 2011 4:24:14 AM Subject: Re: [Gwc-general] 0.21-16 and alsa On 05/12/2011 06:03 AM, zcx wrote: > Many thanks for the new release Jeff. Sadly still can't make it work > with alsa. > > It works fine with aoss and /dev/dsp as the audio device. > > Using Ubuntu 10.04 LTS. Standard pulseaudio and alsa. Here's the > alsa configuration... <snip > Tried hw:0,0 hw:0,1 hw:0,2 hw:0,3 hw 0,0 hw 0,1 hw 0,2 hw 0,3, but no > sound playback from gwc. Just get the Failed to open output device... > warning. I can't remember if it's been mentioned, but I use "default:" for the audio device and it works fine for me. -- Chris Craig ------------------------------------------------------------------------------ Achieve unprecedented app performance and reliability What every C/C++ and Fortran developer should know. Learn how Intel has extended the reach of its next-generation tools to help boost performance applications - inlcuding clusters. http://p.sf.net/sfu/intel-dev2devmay _______________________________________________ Gwc-general mailing list Gwc...@li... https://lists.sourceforge.net/lists/listinfo/gwc-general |
From: Chris C. <ch...@ci...> - 2011-05-12 11:37:20
|
On 05/12/2011 06:03 AM, zcx wrote: > Many thanks for the new release Jeff. Sadly still can't make it work > with alsa. > > It works fine with aoss and /dev/dsp as the audio device. > > Using Ubuntu 10.04 LTS. Standard pulseaudio and alsa. Here's the > alsa configuration... <snip > Tried hw:0,0 hw:0,1 hw:0,2 hw:0,3 hw 0,0 hw 0,1 hw 0,2 hw 0,3, but no > sound playback from gwc. Just get the Failed to open output device... > warning. I can't remember if it's been mentioned, but I use "default:" for the audio device and it works fine for me. -- Chris Craig |
From: zcx <zc...@hi...> - 2011-05-12 10:38:41
|
Many thanks for the new release Jeff. Sadly still can't make it work with alsa. It works fine with aoss and /dev/dsp as the audio device. Using Ubuntu 10.04 LTS. Standard pulseaudio and alsa. Here's the alsa configuration... $ cat /proc/asound/modules 0 snd_emu10k1 $ aplay -l | grep -i playback **** List of PLAYBACK Hardware Devices **** card 0: Live [SB Live! 5.1 [SB0060]], device 0: emu10k1 [ADC Capture/Standard PCM Playback] card 0: Live [SB Live! 5.1 [SB0060]], device 2: emu10k1 efx [Multichannel Capture/PT Playback] card 0: Live [SB Live! 5.1 [SB0060]], device 3: emu10k1 [Multichannel Playback] $ cat /proc/asound/devices 2: : timer 3: : sequencer 4: [ 0- 0]: hardware dependent 5: [ 0- 0]: raw midi 6: [ 0- 3]: digital audio playback 7: [ 0- 2]: digital audio playback 8: [ 0- 2]: digital audio capture 9: [ 0- 1]: digital audio capture 10: [ 0- 0]: digital audio playback 11: [ 0- 0]: digital audio capture 12: [ 0] : control 13: [ 0- 2]: hardware dependent 14: [ 0- 1]: raw midi 15: [ 0- 2]: raw midi $ cat /proc/asound/oss/devices 0: [0- 0]: mixer 1: : sequencer 2: [0- 0]: raw midi 3: [0- 0]: digital audio 4: [0- 0]: digital audio 8: : sequencer 9: [0- 0]: raw midi 12: [0- 1]: digital audio 13: [0- 1]: raw midi 14: [0- 1]: raw midi $ cat /proc/asound/pcm 00-00: emu10k1 : ADC Capture/Standard PCM Playback : playback 32 : capture 1 00-01: emu10k1 mic : Mic Capture : capture 1 00-02: emu10k1 efx : Multichannel Capture/PT Playback : playback 8 : capture 1 00-03: emu10k1 : Multichannel Playback : playback 1 Tried hw:0,0 hw:0,1 hw:0,2 hw:0,3 hw 0,0 hw 0,1 hw 0,2 hw 0,3, but no sound playback from gwc. Just get the Failed to open output device... warning. HTH zcx |
From: jeff w. <we...@ya...> - 2011-05-11 12:48:07
|
0.21-16 is released. After some research, I found a reliable way to make it work on the Pulse Audio/ALSA configuration which seems to be typical linux audio setup these days. I recommend you try to build it with the default configuration, which uses ALSA. Even when Pulse Audio is running, this configuration can still connect directly to the ALSA sound driver. Using ALSA is preferred because there will be less overall overhead (Pulse Audio ends up calling ALSA anyway), and the cursor tracking is a lot better in ALSA. If this works for you, please send a note back to the gwc-general mailing list. And, especially, if it doesn't work for you let me know that too! Cheers, Jeff |
From: jeff w. <we...@ya...> - 2011-02-01 03:26:48
|
Bugfix on the pulse audio driver. Pulse audio didn't indicate the output buffer was flushed, so GWC would sit indefinitely thinking audio was still playing and not allow any editing. Fixed that issue. Also, discovered (via user feedback :D) libsndfile cannot open wav files in Read/Write mode that have strings in the header (i.e. titles, songnames etc), so the error from libsndfile is now fed back to the user. Enjoy, Jeff --- On Sat, 11/20/10, jeff welty <we...@ya...> wrote: > From: jeff welty <we...@ya...> > Subject: [Gwc-announce] 0.21-12 released (alpha with Pulse Audio driver) > To: Gwc...@li... > Cc: gwc...@li... > Date: Saturday, November 20, 2010, 6:43 PM > I've noticed a few people with Ubuntu > having problems with GWC. > > I suspect it is something not right in Ubuntu's > configuration of gnome, but I could only guess. > > I have a netbook with ubuntu on it, and while I could > compile GWC, I couldn't make the sound > work using the ALSA driver. So I coded up the pulse > audio driver, and got that working > on my main workstation. I have not yet tried it on my > netbook, but here's GWC with direct > support for Pulse audio. Let me know how it works. > > I probably haven't got the configure script quite > right. Pulse audio is enabled by default > on this version. A "./configure" will attempt to find > the pulse audio development files. > On fedora, the package is named "pulseaudio-libs-devel", > I'm not sure what the equivalent > ubuntu package is named... > > Cheers, > Jeff > > > > > ------------------------------------------------------------------------------ > Beautiful is writing same markup. Internet Explorer 9 > supports > standards for HTML5, CSS3, SVG 1.1, ECMAScript5, and > DOM L2 & L3. > Spend less time writing and rewriting code and more > time creating great > experiences on the web. Be a part of the beta today > http://p.sf.net/sfu/msIE9-sfdev2dev > _______________________________________________ > Gwc-announce mailing list > Gwc...@li... > https://lists.sourceforge.net/lists/listinfo/gwc-announce > |
From: Chris C. <ch...@ci...> - 2011-01-16 15:28:50
|
On 01/16/2011 06:43 AM, zcx wrote: > All my other ALSA apps work fine, so rather than change the alsa > configuration I've used alsa-oss Well I would argue that using alsa-oss changes the alsa configuration, and that alsa-oss is a bit of a kludge (you may find that the audio lags, for example). But the main thing is that it works for you! You may find some time in the future that alsa-oss is no longer available... I wonder if using gconf-editor to configure the audio settings would also work, for those using Gnome? -- Chris Craig |
From: zcx <zc...@hi...> - 2011-01-16 11:43:50
|
Thanks for your comments. Georg, I'm already using gwc-0.21-12. Chris, I tried default as an ALSA device name, no change. All my other ALSA apps work fine, so rather than change the alsa configuration I've used alsa-oss http://alsa.opensrc.org/OSS_emulation It's as simple as $sudo apt-get install alsa-oss $aoss gwc blah.wav Setting the device name to /dev/dsp means I can now listen to the track in gwc whilst editing. OSS applications e.g. sweep now work on playback also. zcx |
From: Chris C. <ch...@ci...> - 2011-01-15 04:16:34
|
On 01/14/2011 11:37 AM, Georg Holzmann wrote: > The problem is that with the version shipped with Ubuntu you cannot > set the playback device to hw:0,0. I have mine set to "default:" for some reason, I think it was due to issues with ALSA. If I recall, I had to create the attached .alsaconf and it's currently working for me. -- Chris Craig |
From: Georg H. <gr...@mu...> - 2011-01-14 16:37:15
|
Hallo! I had the same problem a few weeks ago on Ubuntu 10.10. > In gwc under settings, miscellaneous, audio device tried all the > playback devices in the list (e.g. hw:0,0) but get the Warning "Failed > to open output device: hw:0,0, check settings -> miscellaneous for > device information" and no sound of course. The problem is that with the version shipped with Ubuntu you cannot set the playback device to hw:0,0. I installed the latest gwc from source (http://sourceforge.net/projects/gwc/, gwc 0.21.12) and now it's possible to play files again ;) LG Georg -- http://grh.mur.at |
From: zcx <zc...@hi...> - 2011-01-14 13:26:25
|
Using Ubuntu 10.04LTS to transcribe some old vinyl records. Can create .wav files successfully using arecord. Can play these files using aplay, audacious, vlc etc. Want to use gwc to clean up the .wav files. Installed gwc from the repos which crashed when I tried to load a .wav file. Removed it. Downloaded the tar ball and compiled gwc 0.21-12 successfully. Files now load correctly and all the clean up tools seem to work. It would be nice to play the .wav files from within gwc while editing, but can't seem to get it to work with alsa devices. $ cat /proc/asound/devices 2: : timer 3: : sequencer 4: [ 1- 0]: digital audio playback 5: [ 1- 0]: digital audio capture 6: [ 1] : control 7: [ 0- 0]: hardware dependent 8: [ 0- 0]: raw midi 9: [ 0- 3]: digital audio playback 10: [ 0- 2]: digital audio playback 11: [ 0- 2]: digital audio capture 12: [ 0- 1]: digital audio capture 13: [ 0- 0]: digital audio playback 14: [ 0- 0]: digital audio capture 15: [ 0] : control 16: [ 0- 2]: hardware dependent 17: [ 0- 1]: raw midi 18: [ 0- 2]: raw midi In gwc under settings, miscellaneous, audio device tried all the playback devices in the list (e.g. hw:0,0) but get the Warning "Failed to open output device: hw:0,0, check settings -> miscellaneous for device information" and no sound of course. Can anyone help please? zcx |
From: jeff w. <we...@ya...> - 2010-11-21 02:43:14
|
I've noticed a few people with Ubuntu having problems with GWC. I suspect it is something not right in Ubuntu's configuration of gnome, but I could only guess. I have a netbook with ubuntu on it, and while I could compile GWC, I couldn't make the sound work using the ALSA driver. So I coded up the pulse audio driver, and got that working on my main workstation. I have not yet tried it on my netbook, but here's GWC with direct support for Pulse audio. Let me know how it works. I probably haven't got the configure script quite right. Pulse audio is enabled by default on this version. A "./configure" will attempt to find the pulse audio development files. On fedora, the package is named "pulseaudio-libs-devel", I'm not sure what the equivalent ubuntu package is named... Cheers, Jeff |
From: John C. <ci...@pu...> - 2010-10-27 22:25:32
|
John, GWC is meant for linux operating system and not for Windows. But there is another freeware editor that can be used on Windows and it is called Audacity. Though it is designed to be a multitrack recorder/editor, it has click and hiss filters and many other features that may be what you want. It is more like Adobe Audition. I don't know how good their filters are, but it may work for you. See their webpage at http://audacity.sourceforge.net. Note they have separate downloads for Windows, Linux, and MacOS so make sure you get the one for Windows. John John Petrozzi wrote: > > Hi there, > > I’ve downloaded gwc from the sourgeforce site but am having troubles > opening it. I am using Windows XP as my operatin system does that mean > that I won’t be able to use this program? > > If not do you have any other suggestions for me? Your program seems to > be able to do just what I am after. > > Thanks. > > John > > ------------------------------------------------------------------------ > > |
From: Erik de C. L. <ml...@me...> - 2010-10-27 07:58:52
|
John Petrozzi wrote: > I've downloaded gwc from the sourgeforce site but am having troubles opening > it. WinZip should be able to open it. You may need to rename the file from gwc-0.21-11.tgz to gwc-0.21-11.tar.gz > I am using Windows XP as my operatin system does that mean that I won't > be able to use this program? The file you have downloaded is the program source code. The source code needs to be compiled into a program. Unfortunately for you, this program was designed to be compiled and run on Linux. Its extremely unlikely it will compile on windows. Erik -- ---------------------------------------------------------------------- Erik de Castro Lopo http://www.mega-nerd.com/ |
From: Christian Z. <ost...@gm...> - 2010-10-12 20:34:40
|
Hi! I wanted to try out GWC and had no problem compiling it on Ubuntu Studio 64 Karmic but when I open the program, I cannot see the main menu. That means I cannot open files (or check out what else would be in the menu ...:) The two toolbars show up nevertheless. Thanks for any help!! chrisi _______________________________ http://www.zaunerelektronik.net _______________________________ |
From: Jeff W. <we...@ha...> - 2010-09-20 11:13:38
|
I just put the new version on sourceforge. No major changes. A few bugfixes, and better batch handling -- many thanks to Michael Gruhn for the patch. Enjoy, Jeff |
From: James T. <ja...@ta...> - 2009-11-03 00:26:55
|
On Monday 02 November 2009 15:26:52 jeff welty wrote: jw> Sorry I've not been checking the inbox as often. jw> jw> I think you are working on a problem, which I think really is a user jw> interface issue. jw> jw> The problem with song markers, is that they assume songs end, and start jw> on a single sample boundary. jw> jw> Problem with that, if you think about a recording from a multi-track jw> source like vinyl LP, is that it allows for no lead-in, no separation jw> between tracks, and no tail-out of silence on the recording. jw> jw> I think the real solution is to make song markers identify not an exact jw> sample, but rather the start of a song, and the length of the song. In jw> the GUI, songs could be displayed with alternating highlights or jw> anything that indicates the start of a song and its length. jw> jw> What do you think? jw> Hi Jeff, all I think that while the idea you suggest has its merits, but for most purposes the silence between songs on an LP is about the right length and usually I have far too much lead in and tail out on the start and end of the disk that I have to cut off. Therefore I think that for maybe 80-90% of cases the present system does what is needed. Actually for the majority of what I do, I build my own TOC files by hand as when there are 1 or 2 numbers per side (and occasionally a single number is spread over 2 sides) and a dozen or so sides in the entire work it's easier to do it that way. James -- James Tappin, O__ "I forget the punishment for using ja...@ta... -- \/` Microsoft --- Something lingering http://www.tappin.me.uk/ with data loss in it I fancy" |