Лясны жыхар (soko1) wrote in sokolsoft,
Лясны жыхар
soko1
sokolsoft

  • Music:

sllame-1.0beta1

Написал программу (sllame), облегчающую работу с программами "cdparanoia" (запись cdda-диска в wav-файлы) и "lame" (конвертирование wav-файла в mp3).
Пока все по-минимуму в ней. Постепенно добавлю нормальную менюшку, мануал и возможно переведу все на инглишь (кстати, есть добровольцы? а то я английского совсем не знаю).



/* Sllame - программа для облегчения работы с пакетами "cdparanoia" (запись cdda-диска в wav-файлы) и "lame" (конвертирование wav-файла в mp3).
 * Автор: Соколов Алексей <sokolhacker@mail.ru>
 * Лицензия: BSD
 * Версия: 0.1beta1
 */

#include <stdio.h>

/* глобальные переменные */
char command[256]; /* буфер, в котором будет храниться команда */

void
wav_conv() /* функция записи с cd-диска треков в wav-файлы */
{
	char device[256]; /* буфер, хранящий путь к cd-девайсу */
	
	puts ("Введи путь к твоему cd-девайсу (например: /dev/acd0)");
	printf (": ");
	scanf ("%s", device);
	
	sprintf (command, "cdparanoia -d %s -B --", device); /* записываем в переменную */
	system (command); /* выполняем... */
}

void
mp3_conv() /* функция конвертирования wav-файлов в mp3 */
{
	int bit; /* битрейд */
	int ctr; /* счетчик */
	int tracks; /* кол-во треков */

	printf ("Введи кол-во треков: ");
	scanf ("%d", &tracks);
	
	printf ("Введи нужный тебе битрейд: ");
	scanf ("%d", &bit);

	/* это все очень сложно объяснить=) */
	if (tracks < 10) {
		for (ctr = 1; ctr <= tracks; ctr++) {
			sprintf (command, "lame -b %d track0%d.cdda.wav", bit, ctr);
			system (command);
		}
	}
	else {
		while (ctr < 10) {
			for (ctr = 1; ctr < 10; ctr++) {
				sprintf (command, "lame -b %d track0%d.cdda.wav", bit, ctr);
				system (command);
		}
				if (ctr >= 10) {
					for (ctr = ctr; ctr <= tracks; ctr++) {
						sprintf (command, "lame -b %d track%d.cdda.wav", bit, ctr);
						system (command);
					}
				}
			}
	}
}

void
menu() /* функция меню программы */
{
	char key;
	
	puts ("Выберите один из пунктов: ");
	puts ("1. Перегнать в wav");
	puts ("2. Перегнать в mp3");
	puts ("3. Выход");
	printf (": ");

	scanf ("%c", &key);

	switch (key) {
		case '1':
			wav_conv(); /* конвертирования wav-файлов в mp3 */
			break;
		case '2':
			mp3_conv(); /* конвертирования wav-файлов в mp3 */
			break;
		case '3':
			return; /* выходим... */
		default:
			puts ("Ошибка!"); /* вывод сообщения об ошибке */
			break;
	}
}


int
main()
{
menu(); /* меню программы */
}	

  • Post a new comment

    Error

    default userpic
  • 44 comments