Хороший плеер, пусть побольше народу познакомится

Модератор: Модераторы разделов
Код: Выделить всё
layman -a rion
Код: Выделить всё
emerge -avD media-sound/cueplayer
Код: Выделить всё
user@user:~/cueplayer$ qmake
WARNING: Found potential symbol conflict of cueplayer.cpp (cueplayer.cpp) in SOURCES
WARNING: Found potential symbol conflict of cueplayer.h (cueplayer.h) in HEADERS
WARNING: Found potential symbol conflict of transcoder.cpp (transcoder.cpp) in SOURCES
WARNING: Found potential symbol conflict of transcoder.h (transcoder.h) in HEADERS
WARNING: Found potential symbol conflict of videowindow.cpp (videowindow.cpp) in SOURCES
WARNING: Found potential symbol conflict of videowindow.h (videowindow.h) in HEADERS
user@user:~/cueplayer$
Было бы замечательно, если можно было бы выбирать при открытии кодировку cue файла.
Cueplayer - просто мечта, ставшая реальностью
Код: Выделить всё
#include <stdio.h>
#include <stdlib.h>
#include <sys/socket.h>
#include <sys/un.h>
int main (int argc, char *argv[])
{
int len, rc;
int sockfd;
struct sockaddr_un addr;
sockfd = socket(AF_UNIX, SOCK_STREAM, 0);
if (sockfd < 0)
{
perror("сокет");
exit(-1);
}
memset(&addr, 0, sizeof(addr));
addr.sun_family = AF_UNIX;
strcpy(addr.sun_path, "/tmp/cueplayer");
rc = connect(sockfd,
(struct sockaddr *)&addr,
sizeof(struct sockaddr_un));
if (rc < 0)
{
perror("соединение");
close(sockfd);
exit(-1);
}
printf("соединение установлено.\n");
len = send(sockfd, argv[1], strlen(argv[1]) + 1, 0);
if (len != strlen(argv[1]) + 1)
{
perror("отправка");
close(sockfd);
exit(-1);
}
printf("аргументы отправлены.\n");
close(sockfd);
}
Код: Выделить всё
ipse@localhost ~/devel $ cc cuesend.c -o cuesend
ipse@localhost ~/devel $ ./cuesend "/home/ipse/spool/Romowe Rikoito - Elegy.mp3"
соединение установлено.
аргументы отправлены.
ipse@localhost ~/devel $
Код: Выделить всё
TITLE "Lemuria"
PERFORMER "THERION"
MESSAGE "YEAR: 2004"
FILE "CDImage.flac" WAVE
TRACK 01 AUDIO
TITLE "Typhon"
PERFORMER "THERION"
MESSAGE ""
ISRC DED830370501
INDEX 01 00:00:00
TRACK 02 AUDIO
TITLE "Uthark Runa"
PERFORMER "THERION"
MESSAGE ""
ISRC DED830370502
INDEX 01 04:36:45
TRACK 03 AUDIO
TITLE "Three Ships Of Berik Part 1: Calling To Arms And Fighting TheBattle"
PERFORMER "THERION"
MESSAGE ""
ISRC DED830370503
INDEX 01 09:18:30
TRACK 04 AUDIO
TITLE "Three Ships Of Berik Part 2: Victory!"
PERFORMER "THERION"
MESSAGE ""
ISRC DED830370504
INDEX 01 12:38:21
TRACK 05 AUDIO
TITLE "Lemuria"
PERFORMER "THERION"
MESSAGE ""
ISRC DED830370505
INDEX 01 13:22:32
TRACK 06 AUDIO
TITLE "Quetzalcoatl"
PERFORMER "THERION"
MESSAGE ""
ISRC DED830370506
INDEX 01 17:37:63
TRACK 07 AUDIO
TITLE "The Dreams Of Swedenborg"
PERFORMER "THERION"
MESSAGE ""
ISRC DED830370507
INDEX 01 21:25:14
TRACK 08 AUDIO
TITLE "An Arrow From The Sun"
PERFORMER "THERION"
MESSAGE ""
ISRC DED830370508
INDEX 01 26:23:45
TRACK 09 AUDIO
TITLE "Abraxas"
PERFORMER "THERION"
MESSAGE ""
ISRC DED830370509
INDEX 01 32:18:36
TRACK 10 AUDIO
TITLE "Feuer Overt\374re / Prometheus Entfesselt"
PERFORMER "THERION"
MESSAGE ""
ISRC DED830370510
INDEX 01 37:40:29
Код: Выделить всё
cdrdao read-toc --device /dev/dvd --with-cddb cd.toc
cueconvert cd.toc CDImage.cue
cdparanoia -O +6 -z "[::]-" CDImage.wav
flac -V -8 -s --cuesheet=CDImage.cue -o "CDImage.flac" CDImage.wav
Первые три строки обозначат информацию о диске. За ними следует информация для каждого трека, снабжаемая отступами.
ii libgstreamer0.10-dev 0.10.19-3 GStreamer core development files
Ну, я его не искусственно придумал. Это результат работы перечисленных программ, стандартных для линюкс. Причем, как я говорил, QMMP подобные файлы проигрывает. Быть может, его создатели знают о такой проблеме и не погнушались подправить свой парсер.ipse666 писал(а): ↑10.02.2010 14:21Дело в том что каждый создает cuesheet как ему вздумается, а потом расчитывает что парсер таки угадает что он имел ввиду.
Привожу цитату из педивикии
Первые три строки обозначат информацию о диске. За ними следует информация для каждого трека, снабжаемая отступами.
http://ru.wikipedia.org/wiki/Cue_sheet
В твоем примере я отступов не заметил.
Код: Выделить всё
PERFORMER "\315\356\343\363 \321\342\345\353\356"
ipse666 писал(а): ↑19.02.2010 20:07Возникла идея, на счет новой концепции программы. Суть такова. Грабишь аудиодиски, строго во флак, монолитный файл с куещитом внутри, можно хранить эти флаки, играть их и потом без потерь восстанавливать в оригинальный CD. Все это куеплеером разумеется.
При моральной поддержке начну реализацию.
Или есть другие способы создать точный образ аудио диска под линюкс?
Код: Выделить всё
cdda2wav -cuefile -tall cddb=1