![]() |
![]() |
![]() ![]()
Post
#1
|
|
![]() Grupa: Zarejestrowani Postów: 102 Pomógł: 12 Dołączył: 27.01.2007 Skąd: north Poziom: 158 Tytuł: Miszcz Ostrzeżenie: (0%) ![]() ![]() |
Składnia lame.exe:
Kod E:\Pulpit\stream>lame -h LAME 32bits version 3.98.2 (http://www.mp3dev.org/) usage: lame [options] <infile> [outfile] <infile> and/or <outfile> can be "-", which means stdin/stdout. Mam problem z konwertowaniem mp3. Używam lame, ale zamiast standardowego odczytu z pliku i zapisu do pliku, wolę użyć proc_open i pipe'y (uchwyty do plików, czy jakkolwiek to sie tłumaczy). Gdy podam zamiast wejścia - plik, wszystko działa jak trzeba:
I otrzymuje na w $sPipe[1] poprawnie zakodowane dane. Gdy podam zamiast wyjścia - plik, też działa jak trzeba:
W stdin ląduje poprawnie piosenka, a w pliku song.mp3 są poprawne dane. Ale, (jak zawsze, coś gdzieś musi polec) gdy wrzuce jako wejscie i wyjście stdin i stdout:
Zacina się przy pierwszym wykonaniu pętli na fwrite(). Tzn. nie idzie dalej. Gdy umieszczę fwrite poza pętlą - to samo. Gdy zapiszę jedną paczkę danych odczytuje i zapisuje 8192 bajty, otrzymuje: 7914. (czyli niby ok). Jakiś pomysł ? Najprawdopodobniej jest to wina lame, ale rozgryźć tego nie potrafię. Zawartość encoder_error.txt: Kod ID3v2 found. Be aware that the ID3 tag is currently lost when transcoding.
LAME 3.98.2 32bits (http://www.mp3dev.org/) CPU features: MMX (ASM used), SSE (ASM used), SSE2 Using polyphase lowpass filter, transition band: 16538 Hz - 17071 Hz Encoding <stdin> to <stdout> Encoding as 44.1 kHz j-stereo MPEG-1 Layer III (11x) 128 kbps qval=3 Error writing mp3 output Ten post edytował carbolymer 1.06.2009, 23:58:39 -------------------- Blog | plugin system by carbolymer
Residence: #php.pl @ IRCNet "Pralki powstały po to, aby kobiety też mogły programować" |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 300 Pomógł: 32 Dołączył: 31.07.2006 Ostrzeżenie: (0%) ![]() ![]() |
Spójrz na http://pl2.php.net/manual/en/function.proc-open.php#89338
Być może będziesz musiał ustawić wejście i wyjście na nieblokujące, i wykonywać na zmianę zapis/odczyt do pipe - pomimo tego, że pewnie nie odczytasz ani bajta póki lame nie skończy działać. |
|
|
![]()
Post
#3
|
|
![]() Grupa: Moderatorzy Postów: 15 467 Pomógł: 1451 Dołączył: 25.04.2005 Skąd: Szczebrzeszyn/Rzeszów ![]() |
AFAIK, to podobnie, jak przy odpalaniu ffmpeg. Ja korzystam z czegoś takiego (znalezione
![]()
-------------------- ![]() ZCE :: Pisząc PW załączaj LINK DO TEMATU i TYLKO w sprawach moderacji :: jakiś błąd - a TREŚĆ BŁĘDU? :: nie ponaglaj z odpowiedzią via PW! |
|
|
![]()
Post
#4
|
|
![]() Grupa: Zarejestrowani Postów: 102 Pomógł: 12 Dołączył: 27.01.2007 Skąd: north Poziom: 158 Tytuł: Miszcz Ostrzeżenie: (0%) ![]() ![]() |
Nie można ustawiać dla proc_open wejścia i wyjścia na nieblokujące. Próbowałem z ustawianiem bufora, nic, gdy użyję takiej konfiguracji deskryptora:
dane lądują w semaphore.mp3. Nie mam pojęcia w jakiej kolejności powinienem odczytywać dane, aby odbywało się to płynnie. Gdy próbowałem po fwrite użyć stream_get_contents() (lub fread() ) zacinało się na tej funkcji. Za wszelkie pomysły lub sugestie będę wdzięczny. ![]() -------------------- Blog | plugin system by carbolymer
Residence: #php.pl @ IRCNet "Pralki powstały po to, aby kobiety też mogły programować" |
|
|
![]()
Post
#5
|
|
![]() Grupa: Moderatorzy Postów: 15 467 Pomógł: 1451 Dołączył: 25.04.2005 Skąd: Szczebrzeszyn/Rzeszów ![]() |
Cytat Nie można ustawiać dla proc_open wejścia i wyjścia na nieblokujące. A próbowałeś? ![]() -------------------- ![]() ZCE :: Pisząc PW załączaj LINK DO TEMATU i TYLKO w sprawach moderacji :: jakiś błąd - a TREŚĆ BŁĘDU? :: nie ponaglaj z odpowiedzią via PW! |
|
|
![]()
Post
#6
|
|
![]() Grupa: Zarejestrowani Postów: 102 Pomógł: 12 Dołączył: 27.01.2007 Skąd: north Poziom: 158 Tytuł: Miszcz Ostrzeżenie: (0%) ![]() ![]() |
Próbowałem. Bez różnicy czy ustawie na blokujące, czy nie, zachowuje sie jak blokujące.
-------------------- Blog | plugin system by carbolymer
Residence: #php.pl @ IRCNet "Pralki powstały po to, aby kobiety też mogły programować" |
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 14.08.2025 - 09:35 |