LinuxForum.Fans
Тема

Проблема с mp32ogg

Автор: Aspedin 17 сообщений 7475 просмотров
#10946

[console]
[TARDIS:~]$ mp32ogg --quality=6 *.mp3
mp32ogg v0.11
(c) 2000-2002 Nathan Walp
Released without warranty under the terms of the Artistic License
Not a GLOB reference at /usr/share/perl5/MP3/Info.pm line 526.
[/console]
Кто сталкивался и как решать проблему?

Кусок(с нумерацией) /usr/share/perl5/MP3/Info.pm

text

 498    # See if a version number was passed. Make sure it's a 1 or a 2
 499    $ver = !$ver ? 0 : ($ver == 2 || $ver == 1) ? $ver : 0;
 500 
 501    if (!(defined $file && $file ne '')) {
 502       $@ = "No file specified";
 503       return undef;
 504    }
 505 
 506    my $filesize = -s $file;
 507 
 508    if (!$filesize) {
 509       $@ = "File is empty";
 510       return undef;
 511    }
 512 
 513    # filehandle passed
 514    if (ref $file) {
 515 
 516       $fh = $file;
 517 
 518    } else {
 519 
 520       open($fh, $file) || do {
 521          $@ = "Can't open $file: $!";
 522          return undef;
 523       };
 524    }
 525 
 526    binmode $fh;
 527 
 528    # Try and find an APE Tag - this is where FooBar2k & others
 529    # store ReplayGain information
 530    if ($find_ape) {
 531 
 532       $has_ape = _parse_ape_tag($fh, $filesize, \%info);
 533    }
 534 
 535    if ($ver < 2) {
 536 
 537       $has_v1 = _get_v1tag($fh, \%info);
 538 
 539       if ($ver == 1 && !$has_v1) {
 540          _close($file, $fh);
 541          $@ = "No ID3v1 tag found";
 542          return undef;
 543       }
 544    }
 545 
 546    if ($ver == 2 || $ver == 0) {
 547       $has_v2 = _get_v2tag($fh, $ver, $raw, \%info);
 548    }
 549 
 550    if (!$has_v1 && !$has_v2 && !$has_ape) {
 551       _close($file, $fh);
 552       $@ = "No ID3 or APE tag found";
 553       return undef;
 554    }
 555 
 556    unless ($raw && $ver == 2) {
 557 

И как дополнение:
Будут-ли интересны заметки о консольных утилитках для перегона звука из одних форматов в другие? В интернете найти легко, но что-бы все и в 1 месте пока не видел.

#10958

Конечно будет интересно. Особенно как перегнать *.cue в flac или в mp3

#11477
elve написал:
Конечно будет интересно. Особенно как перегнать *.cue в flac или в mp3

Ок. Начал писать.
APE;WV - Распаковка в wav.
Нарезка wav по BreakPoints'ам из *.cue.
OGG;MP3;WMA;AAC - Получение из flac|wav и обратно в flac|wav. Ну и перегон из одного в другое.

Кому чего еще хочется пишите.
P.S. Пишу только про консольные решения.

#11497
elve написал:
Конечно будет интересно. Особенно как перегнать *.cue в flac или в mp3

cue2tracks меня выручило, по-моему, как-то...
А ещё не юнихфоруме выкладывали какой-то скриптик... тоже неплохой, его, правда, подправить в одном месте пришлось, чтобы нормально работал. :)

#39078

Ну так что? Как mp32ogg починить так никто и не знает?

#39080
Iced написал:
cue2tracks меня выручило, по-моему, как-то...
А ещё не юнихфоруме выкладывали какой-то скриптик... тоже неплохой, его, правда, подправить в одном месте пришлось, чтобы нормально работал. smile

Он требовал софта, которого не было в портах. Хочется более цивилизованное решение.

#39086
elve написал:
Он требовал софта, которого не было в портах. Хочется более цивилизованное решение.

Да не, у меня всё было нормально. что он требовал, напомни? Может, подскажу.

#39712
Aspedin написал:
Ну так что? Как mp32ogg починить так никто и не знает?

Может оно (скрипт на перле) прокатит, вырвал из своей мандривы, у меня работает, только все, что связано с ворбисом и ogg я ставил из сорсов с xiph.org.
*****
info.pm (оно из пакета perl-mp3-info)....
Вот, залил на файлопомойку:
http://upload.com.ua/get/901619890/

#39763

Попробую конечно, надеюсь заработает)

mp32ogg заработал, но выдает какие-то ошибки и не переводит теги в UTF

#42436
Aspedin написал:
mp32ogg заработал, но выдает какие-то ошибки и не переводит теги в UTF

А из чего кодируются? из win1251? Если так, то кодировку оно менять в юникод из win1251 не умеет.
А какие ошибки? Можно на них посмотреть.

#42447
alex-seed написал:
А из чего кодируются? из win1251? Если так, то кодировку оно менять в юникод из win1251 не умеет.

Еще как умеет даже ключь специальный есть --from-charset=cp1251

А какие ошибки? Можно на них посмотреть.

Не вопрос

text
Converting 06 - One Of Us.mp3 to OGG...
*** glibc detected *** /usr/bin: corrupted double-linked list: 0xb79fd2d0 ***
======= Backtrace: =========
/lib/i686/cmov/libc.so.6[0xb765d824]
/lib/i686/cmov/libc.so.6[0xb765f2fb]
/lib/i686/cmov/libc.so.6(cfree+0x6d)[0xb76620dd]
/usr/lib/libmpg123.so.0[0xb777364c]
/usr/bin[0xb7805775]
/lib/i686/cmov/libc.so.6(__libc_start_main+0xe5)[0xb7608b55]
/usr/bin[0xb77faac1]
======= Memory map: ========
b7400000-b7421000 rw-p 00000000 00:00 0 
b7421000-b7500000 ---p 00000000 00:00 0 
b75d3000-b75f0000 r-xp 00000000 08:03 1032197    /lib/libgcc_s.so.1
b75f0000-b75f1000 rw-p 0001c000 08:03 1032197    /lib/libgcc_s.so.1
b75f1000-b75f2000 rw-p 00000000 00:00 0 
b75f2000-b7733000 r-xp 00000000 08:03 1042178    /lib/i686/cmov/libc-2.10.2.so
b7733000-b7735000 r--p 00141000 08:03 1042178    /lib/i686/cmov/libc-2.10.2.so
b7735000-b7736000 rw-p 00143000 08:03 1042178    /lib/i686/cmov/libc-2.10.2.so
b7736000-b7739000 rw-p 00000000 00:00 0 
b7739000-b775d000 r-xp 00000000 08:03 1042189    /lib/i686/cmov/libm-2.10.2.so
b775d000-b775e000 r--p 00023000 08:03 1042189    /lib/i686/cmov/libm-2.10.2.so
b775e000-b775f000 rw-p 00024000 08:03 1042189    /lib/i686/cmov/libm-2.10.2.so
b775f000-b7761000 r-xp 00000000 08:03 1042190    /lib/i686/cmov/libdl-2.10.2.so
b7761000-b7762000 r--p 00001000 08:03 1042190    /lib/i686/cmov/libdl-2.10.2.so
b7762000-b7763000 rw-p 00002000 08:03 1042190    /lib/i686/cmov/libdl-2.10.2.so
b7763000-b7764000 rw-p 00000000 00:00 0 
b7764000-b776b000 r-xp 00000000 08:03 815000     /usr/lib/libltdl.so.7.2.1
b776b000-b776c000 rw-p 00007000 08:03 815000     /usr/lib/libltdl.so.7.2.1
b776c000-b77b7000 r-xp 00000000 08:03 814098     /usr/lib/libmpg123.so.0.25.0
b77b7000-b77b8000 ---p 0004b000 08:03 814098     /usr/lib/libmpg123.so.0.25.0
b77b8000-b77b9000 r--p 0004b000 08:03 814098     /usr/lib/libmpg123.so.0.25.0
b77b9000-b77bb000 rw-p 0004c000 08:03 814098     /usr/lib/libmpg123.so.0.25.0
b77bb000-b77cb000 rw-p 00000000 00:00 0 
b77d6000-b77d8000 rw-p 00000000 00:00 0 
b77d8000-b77d9000 r-xp 00000000 00:00 0          [vdso]
b77d9000-b77f5000 r-xp 00000000 08:03 1033775    /lib/ld-2.10.2.so
b77f5000-b77f6000 r--p 0001b000 08:03 1033775    /lib/ld-2.10.2.so
b77f6000-b77f7000 rw-p 0001c000 08:03 1033775    /lib/ld-2.10.2.so
b77f7000-b7816000 r-xp 00000000 08:03 815464     /usr/bin/mpg123.bin
b7817000-b7818000 r--p 0001f000 08:03 815464     /usr/bin/mpg123.bin
b7818000-b7819000 rw-p 00020000 08:03 815464     /usr/bin/mpg123.bin
b7819000-b781a000 rw-p 00000000 00:00 0 
b79f2000-b7a13000 rw-p 00000000 00:00 0          [heap]
bf92b000-bf940000 rw-p 00000000 00:00 0          [stack]
Aborted
06 - One Of Us.ogg done!

А вообще, сейчас занялся разработкой альтернативы mp32ogg http://linuxforum.ru/viewtopic.php?id=3555
когда решу проблемы с кодировкой, выложу говнокод для оптимизации)

#42462
Aspedin написал:
[quote=alex-seed]А из чего кодируются? из win1251? Если так, то кодировку оно менять в юникод из win1251 не умеет.

Еще как умеет даже ключь специальный есть --from-charset=cp1251[/quote]
Ни пробовал даже, думал не может :D

Aspedin написал:
А вообще, сейчас занялся разработкой альтернативы mp32ogg
когда решу проблемы с кодировкой, выложу говнокод для оптимизации)

Это хорошо. На питоне штоль пишется? Люблю питон, только третью ветку, вторая по части синтексиса ущербна.


Про ошибки. Это после тех кодов, кодов, которые я выкладывал? Явная несовместимость всего между дебином и мандривой... :lol:

#42465
alex-seed написал:
Это хорошо. На питоне штоль пишется? Люблю питон, только третью ветку, вторая была по части синтексиса ущербна.

Нет. На bash) Я питон изучал, не понравился.

Ну я так и подумал, что бинарники по разному собирались.

-----Продолжение-----
В debian исправили пакет mp32ogg теперь выглядит забавно лог

text
Converting 01 - Ворона.mp3 to OGG...
Segmentation fault
01 - Ворона.ogg done!

Но все конвертирует и даже теги исправляет.

#43619
Aspedin написал:

-----Продолжение-----
В debian исправили пакет mp32ogg теперь выглядит забавно лог
text
Converting 01 - Ворона.mp3 to OGG...
Segmentation fault
01 - Ворона.ogg done!

Но все конвертирует и даже теги исправляет.

Аж настроение стало лучше :D

#43626

Но если задать несколько папок сразу, то не перекодирует теги.
Копаю дальше в сторону того, чем теги из mp3 вытаскивать.

#43631
Aspedin написал:
Но если задать несколько папок сразу, то не перекодирует теги.
Копаю дальше в сторону того, чем теги из mp3 вытаскивать.

Есть такая вещь, mutagen называется, много в каком софте используется, ей вродь можно и извлекать и править теги как мп3 так и огг ворбис и еще много чего, но точно сказать не могу.
вот сайт:
http://code.google.com/p/quodlibet/wiki/Mutagen
только вот не понял, это модуль для питона или много где использовать можно?

#43633

muttagen на Пузоне...мне-юы что-нибудь с более предсказуемым результатом работы)

Войдите или зарегистрируйтесь, чтобы ответить.