FAQ - Często Zadawane PytaniaRozwój
Jak mam stworzyć poprawną łatkę do MPlayera?
Przygotowaliśmy krótki dokument
opisujący wszystkie potrzebne szczegóły. Kieruj się zawartymi w nim wskazówkami.
Jak mogę przetłumaczyć MPlayera na nowy język?
Przeczytaj HOWTO tłumaczenia,
powinno wszystko wyjaśnić. Dalszą pomoc uzyskasz na liście dyskusyjnej
mplayer-docs.
Jak mogę wesprzeć rozwój MPlayera?
Jesteśmy bardziej niż szczęśliwi, gdy ofiarowujecie nam sprzęt i oprogramowanie w formie
darów.
Pomagają one nam ciągle ulepszać MPlayera.
Jak mogę zostać deweloperem MPlayera?
Programiści i dokumentatorzy zawsze są mile widziani. Na początek przeczytaj
dokumentację techniczną dla ogólnego zarysu.
Następnie powinieneś zapisać się na listę dyskusyjną
mplayer-dev-eng
i zacząć pisać. Jeżeli chcesz pomóc przy dokumentacji, zapisz się na listę dyskusyjną
mplayer-docs.
Czemu nie używacie autoconf/automake?
Mamy modularny, ręcznie napisany system budowania. Sprawuje się on całkiem nieźle,
więc po co zmieniać? Poza tym nie lubimy narzędzi auto*
tak jak i
inni ludzie.
Kompilacja
Czy istnieją binarne (RPM/deb) paczki z MPlayerem?
Więcej informacji na ten temat znajdziesz w sekcjach
Debian oraz RPM.
Kompilacja kończy się komunikatem błędu podobnym do tego:
cfft.c: In function`passf2':
cfft.c:556: unable to find a register to spill in class `FLOAT_REGS'
cfft.c:556: this is the insn:
(insn 235 233 246 (set (subreg:SF (reg/v:DI 29 rmm0 [110]) 0)
(minus:SF (mem:SF (plus:SI (mult:SI (reg:SI 1 edx [112])
(const_int 8 [0x8]))
(reg/v/f:SI 3 ebx [62])) [4 S4 A32])
(reg:SF 8 st(0) [132]))) 533 {*fop_sf_1_nosse} (insn_list
232 (nil)) (expr_list:REG_DEAD (reg:SF 8 st(0) [132])
(nil)))
cfft.c:556: confused by earlier errors, bailing out
Jest to znany problem z gcc 3.2, aby go rozwiązać
zaktualizuj gcc do wersji 3.3.
Sposób instalacji gcc opisany jest w sekcji
gcc 2.96.
Możesz również użyć zewnętrznaj biblioteki FAAD tak jak opisano w sekcji
AAC.
Kompilacja kończy się komunikatem błędu podobnym do tego:
In file included from mplayer.c:34:
mw.h: In function `mplMainDraw':
mw.h:209: Internal compiler error in print_rtl_and_abort, at flow.c:6458
Please submit a full bug report,
with preprocessed source if appropriate.
Jest to znany problem z gcc 3.0.4, aby go rozwiązać
zaktualizuj kompilator do wersji 3.1.
Sposób instalacji gcc opisany jest w sekcji
gcc 2.96.
Konfiguracja kończy się takim komunikatem i MPlayer nie chce się skompilować!
Your gcc does not support even i386 for '-march' and '-mcpu'
(Twój gcc nie obsługuje nawet i386 dla '-march' oraz '-mcpu')
Twój gcc nie jest poprawnie zainstalowany. Sprawdź configure.log
aby uzyskać szczegóły.
Co jest nie tak z gcc 2.96?
Odradzamy używanie gcc 2.96!
Przeczytaj ten dokument, aby dowiedzieć się
dlaczego Red Hat wypuścił gcc 2.96 i jakie są z nim związane problemy.
Jeżeli ciągle chcesz go używać, zdobądź najnowszą wersję
i przekaż do skryptu configure opcję
.
Pamiętaj, że od tej pory zdany jesteś tylko na siebie.
Nie zgłaszaj błędów,
nie proś o pomoc na listach dyskusyjnych.
Nie zapewniamy żadnego wsparcia w razie gdybyś napotkał jakieś problemy.
Super, mam gcc 3.0.1 od Red Hata/Mandrake'a, więc wszystko jest w porządku!
Nie, ponieważ były/są problemy także z tymi kompilatorami.
Status obsługiwanych przez MPlayera kompilatorów możesz
sprawdzić w sekcji Instalacja.
.. gcc 2.96 ... (Tak, niektórzy ludzie CIĄGLE rzucają się o gcc 2.96!)
Cytat z listu wysłanego przez
A'rpiego na listę mplayer-users
(słowo "ideg" jest opisane poniżej):
No i mamy idegi. Nasz licznik idegów znów się przekręca.
Niestety MPlayer znajduje się poza naszą kontrolą.
Jest używany przez lamerów. Użytkowników Linuksa, którzy nie potrafią
obsługiwać nawet Windowsów i nigdy nie próbowali kompilować jądra.
Zainstalowali (z ustawieniami domyślnymi) Mandrake'a, RedHata lub SuSE
i bez RTFMowania (przeczytanie instrukcji - przyp. tłum) przysyłają nam wiadomości
"Nie działa! Pomocy! Proszę!
Jestem nowy w Linuksie! Pomocy! Och! Pomocy!". Nie możemy ich powstrzymać
ale przynajmniej możemy ich zmusić do RTFMowania i do czytania komunikatów
./configure oraz MPlayera.
I przychodzicie wy - mądrzy kolesie i rzucacie się o gcc 2.96 i paczki binarne.
Zamiast pomagać użytkownikom lub robić łatki pomagające rozwiązać problemy.
Połowa naszego wolnego czasu poświęcana jest na odpowiedzi na głupie maile tutaj
oraz na tworzenie nowych trików i testów configure tak, aby uniknąć takich listów.
Istnieje pewna równowaga. Po jednej stronie jesteście wy - mądrzy kolesie - mówiący,
że my jesteśmy źli, ponieważ nie lubimy wadliwego gcc 2.96. Po drugiej stronie są
"nowi w Linuksie", którzy pokazują nam że gcc 2.96 jest wadliwe.
Wniosek: Nie możemy być tymi dobrymi. Połowa ludzi zawsze stwierdzi, że jesteśmy
źli.
Może powinniśmy zamknąć projekt, zamknąć źródła, skomercjalizować i zapewniać
do niego wsparcie techniczne przy procesie instalacji. Moglibyśmy rzucić obecną pracę i rozwój byłby
szybszy oraz moglibyśmy zarabiać na nim kupę kasy i kupić sobie duży dom itd,
itp. Czy na prawdę tego chcecie? Na to wygląda.
Wyjście SDL nie działa lub się nie kompiluje. Problemem leży w...
Testy zostały przeprowadzone z SDL 1.2.x, może także działać z SDL 1.1.7+.
Nie działa z jakimikolwiek wcześniejszymi
wersjami. Jeżeli wybierzesz taką wersję, zdany jesteś na siebie.
Ciągle mam problemy przy kompilacji z obsługą SDL. gcc mówi:
undefined reference to `SDL_EnableKeyRepeat'
Co teraz?
Gdzie zainstalowałeś biblioteki SDL? Jeżeli zainstalowałeś w
/usr/local (domyślnie), wyedytuj
górnopoziomowy (top level) config.mak
i dodaj -L/usr/local/lib
po X_LIBS=. Teraz wykonaj make.
Gotowe!
Program nie kompiluje się i brakuje mu uint64_t,
inttypes.h i podobnych...
Skopiuj ten plik
inttypes.h do katalogu
/usr/local/include/ lub odpowiadającego mu
i spróbuj ponownie...
Mam Linuksa chodzącego na Pentium III ale ./configure
nie wykrywa SSE...
Tylko jądra w wersji 2.4.x obsługują SSE (możesz sprówować z 2.2.19 lub nowszym,
ale bądź przygotowany na problemy)
Mam Matroksa G200/G400/G450/G550, jak skompilować/używać sterownika mga_vid?
Przeczytaj sekcję mga_vid.
Hmm, dziwne. W logach podczas ładowania modułu jądra
mga_vid.o znalazłem to:
Warning: loading mga_vid.o will taint the kernel: no license
Najnowsze modutils wymagają flagi wskazującej zastosowaną licencję (głównie aby
uniknąć hakerów jądra debugujących sterowniki o zamkniętych źródłach).
Zaktualizuj swoje jądro, modutils oraz MPlayera.
Podczas 'make', MPlayer narzeka na biblioteki X11.
Nie rozumiem, MAM zainstalowane X!?
...ale nie masz zainstalowanej paczki X development lub jest ona źle
zainstalowana. Nazywa się ona XFree86-devel* w Red Hacie i
xlibs-dev w Debianie. Sprawdź także czy istnieją
dowiązania symboliczne do
/usr/X11 oraz
/usr/include/X11 (może to być problem
w systemach Mandrake). Można je utworzyć następującymi poleceniami:
# ln -sf /usr/X11R6 /usr/X11
# ln -sf /usr/X11R6/include/X11 /usr/include/X11
Układ katalogów w Twojej dystrybucji może odbiegać od
Standardu Hierarchii Systemu Plików (FHS) .
Nie mogę skompilować SVGAlib. Używam jądra 2.3/2.4...
Musisz wyedytować z SVGAlib plik Makefile.cfg i
zakomentować BACKGROUND = y.
Skompilowałem MPlayera z obsługą libdvdcss/libdivxdecore, lecz kiedy próbuję go
uruchomić, mówi:
error while loading shared libraries: lib*.so.0: cannot load shared object file: No such file or directory
Sprawdziłem ten plik i JEST w /usr/local/lib...
Dodaj /usr/local/lib do /etc/ld.so.conf
i uruchom ldconfig.
Kompilacja MEncodera zwraca błąd na etapie
linkowania!
To jest problem z linkerem (konsolidatorem). Aktualizacja binutils powinna pomóc
(2.11.92.* lub nowsze powinny być dobre). Ponieważ nie jest to nasza wina, prosimy
tego nie zgłaszać!
MPlayer umiera z błędem segmentation fault przy sprawdzaniu pthread!
chmod 644 /usr/lib/libc.so
Chiałbym skompilować MPlayera na Miniksie!
Ja też. :)
Pytania ogólne
Czy są jakieś listy dyskusyjne o MPlayerze?
Tak. Spójrz na sekcję listy dyskusyjne.
Znalazłem paskudny błąd przy próbie odtworzenia mojego ulubionego filmu! Kogo
powinienem poinformować?
Przeczytaj proszę
wskazówki do zgłoszeń błędów
i kieruj się zawartymi tam instrukcjami.
Mam problemy z odtwarzaniem plików przy użyciu kodeka ... Czy mogę ich używać?
Sprawdź status kodeków,
jeżeli nie zawiera on Twojego kodeka przeczytaj
dokumentację kodeków,
a w szczególności HOWTO importowania kodeków i skontaktuj się z nami.
Gdy zaczynam odtwarzanie wyświetla się następujący komunikat lecz wszystko wydaje się być wporządku.
Linux RTC init: ioctl (rtc_pie_on): Permission denied
Potrzebujesz uprawnień roota lub specjalnie ustawionego jądra, aby używać
nowego kodu synchronizacji czasu.
Aby uzyskać szczegóły, spójrz do sekcji RTC w dokumentacji.
Jak mogę zrobić zrzut ekranu?
Musisz skorzystać ze sterownika wyjścia video, który nie używa nakładki video. Pod X11
wystarczy użyć , pod Windows działa
W lewym górnym rogu jest licznik czasu. Jak mogę się go pozbyć?
Naciśnij o oraz wypróbuj opcję .
Opcja lub nie działa ze sterownikiem x11 ()...
Działa, lecz musisz osobno zażądać skalowania programowego (bardzo wolne)
opcją . Lepiej skorzystaj z obsługi trybu XF86VidMode: musisz
podać opcje oraz i to wszystko.
Upewnij się, że masz odpowiednie definicje trybów graficznych (modelines) w swoim pliku
XF86Config i spróbuj uruchomić
sterownik DGA oraz sterownik SDL DGA. Jest o wiele szybszy. Jeżeli SDL DGA
działa - używaj go. Działa jeszcze szybciej.
Co oznaczają te liczby w wierszu stanu?
Przykład:
A: 2.1 V: 2.2 A-V: -0.167 ct: 0.042 57/57 41% 0% 2.6% 0 4 49%A: pozycja audio w sekundachV: pozycja video w sekundachA-V: różnica audio-video w sekundach (opóźnienie)ct: całkowita dokonana korekcja synchronizacji A-Vramki odtworzone (licząc od ostatniego przewijania)ramki zdekodowane (licząc od ostatniego przewijania)użycie procesora w procentach przez kodek video (dla porcji/pakietów i
DR zawiera także video_out)użycie procesora przez video_outużycie procesora w procentach przez kodek audioramki opuszczone, aby zachować synchronizację A-Vobecny poziom postprocessingu obrazu (gdy używasz
)szybkość odtwarzania będąca mnożnikiem oryginalnej
szybkości
Większość z nich obecna jest dla celów odpluskwiania (debugging) i zostanie w
pewnym momencie usunięta.
A jeżeli nie chcę żeby się pojawiały?
Użyj opcji i przeczytaj stronę man.
Dlaczego użycie procesora przez video_out wynosi zero (0%) dla niektórych
plików?
Nie jest ono zerowe, ale pomiar jest wywołany z kodeka i poprzez to nie
może być mierzone oddzielnie. Powinieneś spróbować odtworzyć plik
używając a potem i
sprawdzić różnicę, aby zobaczyć prędkość video_out.
Używasz Bezpośredniego Renderowania, gdzie kodek renderuje wprost do
pamięci video. W tym przypadku procent dekodowania zawiera także procent
wyświetlania.
Dostaję komunikaty błędów o nie znalezionym pliku /usr/local/lib/codecs/ ...
Ściągnij kodeki Win32 z naszej
strony kodeków
(paczka kodeków avifile ma inny zestaw DLL) i zainstaluj je.
Umm, co to jest "Licznik Ideg (IdegCounter)"?
Kombinacja słowa węgierskiego (ideg) i angielskiego (counter). "Ideg" po węgiersku
oznacza to samo co "nerve" (wkurzenie :) ) w angielskim. Wymawiane jest mniej więcej
"ydaegh". Termin ten po raz pierwszy został użyty, aby zmierzyć zdenerwowanie A'rpiego
po pewnym (umm) "tajemniczym" zniknięciu kodu z CVS ;)
A co to jest "Faszom(C)ounter (licznik Faszom)"?
"Fasz" to węgierskie słowo, którego nie chcesz znać,
reszta jest związana ze zboczonymi umysłami deweloperów
MPlayera.
LIRC nie działa, ponieważ...
Jesteś pewien, że używasz mplayer zamiast
mplayer_lirc? Zwróć uwagę na to, że przez
długi czas, aż do wersji 0.60 włącznie, był mplayer_lirc lecz
niedawno zmieniliśmy z powrotem na mplayer.
Napisy są bardzo ładne, najpiękniejsze jakie widziałem, ale spowalniają
odtwarzanie! Wiem, że to jest niezwykłe...
Po odpaleniu ./configure, wyedytuj config.h
i zamień #undef FAST_OSD na
#define FAST_OSD. Po czym skompiluj ponownie.
OSD (Wyświetlanie na Ekranie) migocze!
Używasz sterownika wyjścia video z pojedynczym buforowaniem (x11, xv). Przy
xv użyj opcji . Spróbuj także
.
Co to właściwie jest to libavcodec?
Spójrz do sekcji libavcodec.
Ale configure mówi mi Checking for libavcodec... no!
Musisz ściągnąć libavcodec z CVSu FFmpeg.
Przeczytaj instrukcję w sekcji libavcodec.
Pasek zadań Icewm zakrywa film w trybie pełnoekranowym!
To nie powinno się już zdarzać, jeżeli jednak tak się dzieje, użyj opcji warstwy
i zgłoś to na liście dyskusyjnej
mplayer-users.
Nie mogę się dostać do menu GUI. Klikam prawym przyciskiem myszy lecz
nie mogę dostać się do żadnych elementów menu!
Czy używasz FVWM? Spróbuj tego:
Start -> Settings -> Configuration -> Base ConfigurationUstaw Use Applications position hints
na Yes
Jak uruchomić MPlayera w tle?
Użyj:
mplayer opcjenazwa_pliku < /dev/null &Problemy z odtwarzaniem
Jak mogę określić ścieżkę audio/napisów z pliku OGM, Matroska, NUT lub DVD?
Musisz użyć (ID audio) lub
(język audio), (ID napisów) lub
(język napisów), na przykład:
mplayer przykład.mkv -alang eng -slang eng
mplayer przykład.mkv -aid 1 -sid 1
Aby zobaczyć jakie są dostępne:
mplayer -vo null -ao null -frames 0 -v nazwa_pliku | grep sid
mplayer -vo null -ao null -frames 0 -v nazwa_pliku | grep aid
Próbuję odtworzyć jakiś strumień z internetu, ale nie udaje mi się.
Spróbuj otworzyć strumień korzystając z opcji .
Ściągnąłem film z sieci P2P i nie chce się odtworzyć!
Prawdopodobnie plik jest uszkodzony lub jest to fałszywka.
Jeżeli dostałeś go od znajomego i on mówi, że u niego działa, to spróbuj
porównać skróty md5sum (md5sum hashes).
Właśnie zainstalowałem MPlayera. W momencie gdy chcę
otworzyć plik video wyskakuje błąd:
Error opening/initializing the selected video_out (-vo) device.
(Błąd przy otwarciu.inicjalizacji wybranego urządzenia video_out (-vo).)
Jak mogę rozwiązać mój problem?
Po prostu zmień urządzenie wyjścia video. Aby uzyskać listę dostępnych
sterowników wyjścia video wydaj następujące polecenie:
mplayer -vo help
Gdy juz wybierzesz odpowiedni sterownik wyjścia video, dodaj go do swojego pliku
konfiguracyjnego.
Dodaj
vo = wybrany_vo
do ~/.mplayer/config i/lub
vo_driver = wybrany_vo
do ~/.mplayer/gui.conf.
Mam problem z wyświetlaniem napisów. Pomocy!
Upewnij się, że poprawnie zainstalowałeś czcionki. Wykonaj jeszcze raz
krok po kroku instrukcje z części
OSD i napisy z sekcji traktującej o
instalacji. Jeżeli używasz czcionek TrueType, upewnij się, że masz zainstalowaną
bibliotekę freetype.
Sprawdź także napisy w edytorze tekstu, bądź z innymi odtwarzaczami. Spróbuj
tekże przekonwertować je na inny format.
Nie mogę zidentyfikować powodu dziwnego problemu z odtwarzaniem.
Czy masz jakiś zawieruszony plik codecs.conf w
~/.mplayer/, /etc/,
/usr/local/etc/ lub podobnym miejscu? Usuń go,
stare pliki codecs.conf mogą powodować brzydkie
problemy. MPlayer użyje zamiast tego wbudowanej wersji.
Dlaczego MPlayer nie działa w Fedora Core?
Prelink, exec-shield i aplikacje używająca windowsowych DLLi
(takie jak MPlayer) nie
współdziałają ze sobą dobrze w Fedorze.
Problem powoduje exec-shield, który ustawia losowy adres, pod który będą
ładowane biblioteki systemowe. Dzieje się to podczas prelinkowania (raz
na dwa tygodnie)
MPlayer próbuje załadować windowsowy DLL pod
określony adres (0x400000). Jeżeli znajduje się tam już ważna biblioteka
systemowa, MPlayer się wykrzaczy. (Typowym objawem
jest błąd naruszenia ochrony pamięci (segfault) przy próbie odtwarzania plików
Windows Media 9.)
Jeżeli napotkasz taki problem, masz dwa wyjścia:
Poczekać dwa tygodnie... Być może znów zacznie działać.Zlinkować wszystkie biblioteki systemowe z innymi opcjami
prelink. Oto instrukcje krok po korku:
Otwórz /etc/syconfig/prelink i zmień
PRELINK_OPTS=-mR
na
PRELINK_OPTS="-mR --no-exec-shield"
touch /var/lib/misc/prelink.force/etc/cron.daily/prelink
(To ponownie linkuje wszystkie aplikacje i zajmuje sporo czasu.)
execstack -s /ścieżka/do/mplayer
(To wyłącza exec-shield dla binarki MPlayera.)
... działa z xine/avifile/... ale nie działa z
MPlayerem.
MPlayer to nie xine/avifile/....
Chociaż te aplikacje mają trochę wspólnego kodu, zestaw kodeków (DLL),
to synchronizacja, demultiplexing itp. są inne i nie powinny być porównywane.
Jeżeli masz plik, którego MPlayer nie odtwarza
poprawnie, lecz nie ma z nim problemów w innych odtwarzaczach, przeczytaj
wskazówki do zgłaszania błędów i wgraj
plik na nasz serwer FTP.
Dźwięk gubi synchronizację przy odtwarzaniu pliku AVI.
Wypróbuj opcje oraz . Jeżeli
nic się nie poprawiło, przeczytaj ten dokument
i wgraj plik na FTP.
MPlayer kończy pracę z jakimś błędem przy korzystaniu z l3codeca.acm.
Sprawdź wynik ldd /usr/local/bin/mplayer. Jeżeli zawiera
libc.so.6 => /lib/libc.so.6 (0x4???????)
gdzie "?" jest jakąkolwiek liczbą to wszysto jest w porządku, błąd tkwi gdzie indziej.
Jeżeli wygląda tak:
libc.so.6 => /lib/libc.so.6 (0x00??????)
to świadczy o problemie z twoim jądrem/libc. Być może używasz jakiś łatek
związanych z bezpieczeństwem (na przykład łatka OpenWall Solar Designera), które
wymuszają ładowanie bibliotek pod bardzo niskie adresy. Poniewaź l3codeca.acm
jest nierelokowalną biblioteką DLL musi być ładowana pod 0x00400000,
nie możemy tego zmienić. Powinieneś używać niełatanego jądra lub skorzystać z opcji
MPlayera ,
aby wyłączyć używanie l3codeca.acm.
Mój komputer odtwarza zbyt wolno pliki AVI MS DivX w rozdzielczości ~ 640x300 i
z dźwiękiem mp3 stereo. Gdy użyję opcji , wszystko jest
OK (lecz bez dźwięku).
Twój komputer jest zbyt wolny lub sterownik karty dźwiękowej jest
zepsuty. Skonsultuj się z dokumentacją, aby zobaczyć, czy możesz poprawić
wydajność.
MPlayer przerywa działanie z komunikatem MPlayer interrupted by
signal 4 in module: decode_video (MPlayer przerwany przez sygnał 4 w
module: decode_video).
Spróbuj uruchamiać MPlayera na maszynie, na której go
skompilowałeś. Albo przekompiluj z detekcją CPU podczas pracy.
(./configure --enable-runtime-cpudetection).
Nie używaj MPlayera na CPU innym niż ten,
na którym był kompilowany, bez użycia przed chwilą wymienionej opcji.
Mam problemy z [Twój manager okien] i pełnoekranowymi trybami xv/xmga/sdl/x11...
Przeczytaj wskazówki do zgłaszania błędów i
wyślij nam poprawne zgłoszenie błędu.
Taki komunikat wyskoczył przy odtwarzaniu plików MPEG: Can't find codec for video format 0x10000001!
Masz starą wersję codecs.conf w
~/.mplayer/,
/etc/,
/usr/local/etc/ lub podobnym miejscu.
Usuń go, nie jest już potrzebny.
LUB masz opcję albo coś
podobnego w swoim pliku(ach) konfiguracyjnym(ch).
Gdy uruchamiam MPlayera pod KDE, pojawia się
czarny ekran i nic się nie dzieje. Po około minucie zaczyna się odtwarzanie
filmu.
Arts - demon dźwięku KDE - blokuje urządzenie dźwiękowe. Albo czekaj aż
rozpocznie się odtwarzanie lub wyłącz demona arts w centrum sterowania. Jeżeli
chcesz używać dźwięku arts, określ wyjście audio przez nasz natywny sterownik
dźwięku arts (). Jeżeli próba się nie powiedzie lub
sterownik nie jest wkompilowany, spróbuj użyć SDL ()
i upewnij się, że twoje SDL poradzi sobie z dźwiękiem arts. Inną możliwością
jest uruchomienie MPlayera z artsdsp.
Mam plik AVI, który daje szary ekran, gdy odtwarzany jest przez
oraz zielony gdy przez .
To nie jest plik DivX, lecz MS MPEG4v3.
Jeżeli masz starą wesję codecs.conf w
~/.mplayer/,
/etc/,
/usr/local/etc/ lub podobnym miejscu,
usuń go.
Podczas odtwarzania filmu pojawia się brak synchronizacji video-audio i/lub
MPlayer wywala się z następującym komunikatem:
DEMUXER: Too many (945 in 8390980 bytes) video packets in the buffer!
Może istnieć kilka powodów.
Twój CPU i/lub karta graficzna
i/lub magistrala jest zbyt wolna.
MPlayer w tym wypadku wyświetli komunikat
(i licznik porzuconych ramek szybko będzie wzrastał).
Jeżeli to plik AVI, to może ma zły przeplot. Wypróbuj opcję
.
Twój sterownik dźwięku jest wadliwy lub używasz ALSA 0.5 z .
Spójrz do sekcji kart dźwiękowych.
Plik AVI ma zły nagłówek, spróbuj użyć opcji i/lub .
Mam plik MJPEG, który działa z innymi odtwarzaczami ale wyświetla czarny obraz w
MPlayerze
Użyj innego kodeka do odtwarzania tego pliku, spróbuj .
Gdy próbuję przechwytywać obraz z mojego tunera, działa lecz kolory są dziwne. Działa
normalnie z innymi aplikacjami.
Twoja karta prawdopodobnie źle zgłasza obsługiwane przez siebie
przestrzenie kolorów.
Spróbuj z YUY2 zamiast standardowego YV12 (spójrz do sekcji TV).
Mam problemy z synchronizacją A/V. Niektóre moje AVI są odtwarzane dobrze, a
niektóre z podwójną szybkością.
Masz wadliwą kartę/sterownik dźwięku. Najwyraźniej jest ustawiona na stałe na
44100Hz i próbujesz odtwarzać plik z dźwiękiem 22050Hz. Wypróbuj filtr zmiany
częstotliwości próbkowania audio (audio resample filter).
Wszystkie pliki WMV (lub inne...), które odtwarzam, tworzą zielone/szare okno i
dostaję tylko dźwięk!
MPlayer wypisuje:
Detected video codec: [null] drv:0 (NULL codec (no decoding))
Jeżeli masz starą wersję codecs.conf w
~/.mplayer/,
/etc/,
/usr/local/etc/ lub podobnym miejscu,
usuń go.
Otrzymuję bardzo dziwne wartości procentowe (o wiele za duże) podczas
odtwarzania plików na moim notebooku.
Jest to wpływ systemu zarządzania energią / oszczędzania energii Twojego
notebooka (w BIOSie, a nie w jądrze). Podłącz zewnętrzne zasilanie
przed włączeniem notebooka. Możesz także
sprawdzić, czy cpufreq
(interfejs SpeedStep dla Linuksa) Ci pomoże.
Audio/video całkowicie traci synchronizację, gdy uruchamiam
MPlayera jako root na moim notebooku. Działa
normalnie, gdy uruchamiam go jako zwykły użytkownik.
To także jest efekt zarządzania energią (patrz wyżej). Podłącz zewnętrzne
zasilanie przed włączeniem swojego notebooka
lub użyj opcji .
Podczas odtwarzania filmu nagle MPlayer zaczyna się dławić
i dostaję następujący komunikat:
Badly interleaved AVI file detected - switching to -ni mode...
Pliki ze złym przeplotem i nie działają razem zbyt
dobrze.
Spróbuj .
Jak mogę odtwarzać pliki audio MPEG Layer 2 (mp2)?
Musisz użyć .
Problemy ze sterownikami wyjścia video/audio (vo/ao)
Jak użyć dmix z
MPlayerem?
Po ustawieniu
asoundrc
użyj .
Podczas odtwarzania filmu nie ma dźwięku i dostaję komunikat podobny do tego:
AO: [oss] 44100Hz 2ch Signed 16-bit (Little-Endian)
audio_setup: Can't open audio device /dev/dsp: Device or resource busy
couldn't open/init audio device -> NOSOUND
Audio: no sound!!!
Start playing...
Czy masz uruchomione KDE lub GNOME z demonem dźwięku ARTS lub ESD? Spróbuj
wyłączyć demona dźwięku lub użyj opcji
lub ,
aby MPlayer używał ARTS lub ESD.
Co jest ze sterownikiem DGA? Nie mogę go znaleźć!
./configure automatycznie wykrywa Twój sterownik DGA.
Jeżeli nie wyświetla DGA to coś jest nie tak z
Twoją instalacją X. Spróbuj
./configure --enable-dga i przeczytaj sekcję
DGA. Możesz również wypróbować sterownik SDL DGA,
używając opcji .
OK, wyświetla sterownik DGA, lecz narzeka na
uprawnienia. Pomocy!
Sterownik działa tylko gdy uruchamiany jako root! Jest to ograniczenie DGA. Powinieneś
stać się rootem (su -) i spróbować jeszcze raz.
Innym rozwiązaniem jest ustawienia bitu SUID na MPlayerze
ale nie jest to zalecane!
chown root /usr/local/bin/mplayer
chmod 755 /usr/local/bin/mplayer
chmod +s /usr/local/bin/mplayer
Jest to duże zagrożenie bezpieczeństwa!
Nigdy nie rób tego na serwerze lub komuterze,
którego nie jesteś w stanie całkowicie kontrolować, ponieważ inni użytkownicy
mogą zdobyć uprawnienia roota poprzez SUID root
MPlayera.
Zostałeś ostrzeżony.
Podczas używania Xvideo mój Voodoo 3/Banshee mówi:
X Error of failed request: BadAccess (attempt to access private resource denied)
Major opcode of failed request: 147 (MIT-SHM)
Minor opcode of failed request: 1 (X_ShmAttach)
Serial number of failed request: 26
Current serial number in output stream:27
Sterownik tdfx w XFree86 4.0.2/4.0.3 miał ten błąd. Zostało to
rozwiązane przez
poprawkę #621 z logu CVS XFree86 4.1.0.
Zaktualizuj więc XFree86 do 4.1.0 lub nowszego.
Możesz także ściągnąć DRI w wersji (przynajmniej) 0.6 ze
strony DRI lub użyj DRI z CVSu.
Wyjście OpenGL () nie działa (zwis/czarne okno/błedy X11/...).
Twój sterownik OpenGL nie obsługuje dynamicznych zmian tekstur (glTexSubImage).
Wiadomo, że nie działa z binarnym śmietnikiem nVidii. Działa z kartami
Utah-GLX/DRI i Matrox G400, jak również z DRI i kartami Radeon. Nie będzie działać z
DRI i innymi kartami. Z kartami 3DFX nie będzie działać z powodu ograniczenia
rozmiaru tekstur do 256x256.
Mam kartę nVidia TNT/TNT2. Mam pasek z dziwnymi kolorami zaraz pod filmem!
Czyja to wina?
Jest to błąd w binarnych sterownikach X nVidii. Te błędy ujawniają się TYLKO
przy kartach TNT/TNT2 i nie możemy nic z tym zrobić. Aby naprawić problem
zaktualizuj binarne sterowniki do najnowszej wersji. Jeżeli ciągle jest
źle, wyżalaj się nVidii!
Mam kartę nVidia XYZ. Gdy klikam na okno wyświetlania GUI, aby włączyć panel GUI,
pojawia się czarny kwadrat w miejscu, w którym kliknąłem. Mam najnowsze
sterowniki.
Tak, nVidia naprawiła poprzedni błąd (powyżej) i przedstawiła nam nowy.
Pogratulujmy im. AKTUALIZACJA: Według nVidii,
błąd został już naprawiony.
Ależ ten świat okrutny...! SDL obsługuje x11 ale nie
xv!
Jeszcze raz spróbuj z x11. Teraz wypróbuj
. Widzisz róznicę? Nie?! OK, oto nadchodzi
oświecenie:
SDL przy wyborze x11 używa xv gdy jest to możliwe, nie musisz się
tym martwić... Zauważ że z SDL możesz wymusić/wyłączyć używanie Xv poprzez
oraz
Odtwarzanie DVD
Co z nawigacją/menu DVD?
MPlayer nie obsługuje menu DVD ze względu na poważne
ograniczenia konstrukcyjne, które uniemożliwiają poprawną obsługę stałych obrazów
i treści interaktywnej. Jeżeli chcesz mieć fajne menu, będziesz musiał użyć innego
odtwarzacza, takiego jak xine,
vlc lub Ogle.
Jeżeli chcesz nawigacji DVD w MPlayerze, to będziesz musiał
sam ją zaimplementować. Bierz jednak pod uwagę, że jest to poważne przedsięwzięcie.
Napotkałem na taki błąd przy odtwarzaniu DVD:
mplayer: ifo_read.c:1143: ifoRead_C_ADT_internal: Assertion nfo_length / sizeof(cell_adr_t) >= c_adt->nr_of_vobs' failed.
Jest to znany błąd libdvdread 0.9.1/0.9.2. Użyj libmpdvdkit2,
który jest obecny w źródłach MPlayera i jest używany
domyślnie.
Czy mogę skompilować libdvdread oraz libdvdcss na moim słodkim SPARCu pod
Solarisem?
Kto wie... Mówią, że działa, więc proszę przetestuj to i przyślij nam
informacje. Zajrzyj do dokumentacji libdvdread oraz jego strony domowej. Nie
jesteśmy autorami libdvdread. Używaj libmpdvdkit2, który jest obecny w źródłach
MPlayera i jest używany domyślnie.
Co z napisami? Czy MPlayer może je wyświetlać?
Tak. Spójrz do rozdziału DVD.
Jak mogę ustawić kod regionu w moim napędzie DVD? Nie mam Windowsów!
Użyj narzędzia regionset.
Czy muszę mieć uprawnienia użytkownika (setuid) root, aby móc odtwarzać DVD?
Nie. Jednakże musisz mieć poprawne prawa ustawione dla wpisu urządzenia DVD
(w /dev/).
Skąd mam wziąć paczki libdvdread oraz libdvdcss?
Nie ma takiej potrzeby. Użwaj libmpdvdkit2,
który jest obecny w źródłach i używany jest domyślnie.
Wspomniane paczki znajdują się na stronie Ogle.
Czy jest możliwe odtwarzanie/kodowanie tylko wybranych rozdziałów?
Tak, spróbuj użyć opcji .
Odtwarzanie DVD jest bardzo wolne!
Użyj opcji (opisana na stronie man) i spróbuj włączyć DMA
dla napędu DVD, używając narzędzia hdparm (opisane w rozdziale
CD).
Skopiowałem DVD używając vobcopy. Jak mogę je odtworzyć/zakodować z dysku
twardego?
Użyj opcji aby odwołać się do katalogu zawierającego
pliki:
mplayer dvd://1 -dvd-device /ścieżka/do/katalogu
Prośby o wprowadzenie nowych możliwości
Jeżeli MPlayer jest zatrzymany i próbuję przewijać lub
nacisnę jakikolwiek klawisz, MPlayer z powrotem wraca
do odtwarzania. Chciałbym móc przwijać zatrzymany film.
Zaimplementowanie tego bez utraty synchronizacji A/V jest bardzo podchwytliwe.
Wszelkie próby do tej pory zakończyły się porażką. Łatki mile widziane.
Chciałbym przeszukiwać o +/- 1 ramkę zamiast 10 sekund.
To nie zostanie zrobione. Była taka możliwość lecz psuła synchronizację A/V.
Nie krępuj się zaimplementować tego i przysłać łatkę. Nie proś o to.
Jak mogę zmusić MPlayera aby zapamiętał opcje jakich
użyłem dla danego pliku?
Stwórz plik movie.avi.conf z opcjami specyficznymi dla
pliku i umieść go w ~/.mplayer lub w tym
samym katalogu co plik.
Kodowanie
Jak mogę kodować?
Przeczytaj sekcję o MEncoderze.
Jak mogę tworzyć VCD?
Wypróbuj skrypt mencvcd z podkatalogu TOOLS. Korzystając z niego, możesz kodować DVD lub
inne filmy do formatu VCD lub SVCD, a nawet wypalać bezpośrednio na CD.
Jak mogę połączyć dwa pliki video?
Dyskusjom na ten temat nie ma końca na mplayer-users. Przeszukaj
archiwa.
aby uzyskać pełną odpowiedź. Jest to skomplikowany temat i odpowiedź w dużym
stopniu zależy od typu plików jakie chcesz połączyć. Pliki MPEG można przy
odrobinie szczęścia powiązać w jeden plik. Dla AVI istnieją dwa narzędzia, które
mogą tego dokonać:
avidemux oraz
avimerge (część zestawu narzędzi
transcode).
Możesz także spróbować MEncodera. Jeżeli masz dwa
pliki o tych samych wymiarach i kodeku, spróbuj
cat plik1 plik2 > plik3
mencoder -ovc copy -oac copy -o plik_wyjściowy.avi -forceidx plik3.avi
Mój tuner działa, słyszę dźwięk i oglądam obraz korzystając z
MPlayera, lecz MEncoder nie
koduje dźwięku!
Kodowanie dźwięku TV w Linuksie w tej chwili nie jest zaimplementowane,
pracujemy nad tym. W tym momencie działa tylko na BSD.
Nie mogę zakodować napisów z DVD do AVI!
Musisz poprawnie określić opcję !
MEncoder przy starcie wykrzacza się z błędem
naruszenia ochrony pamięci (segfault)!
Zaktualizuj DivX4Linux.
Jak mogę zakodować tylko wybrane rozdziały z DVD?
Użyj poprawnie opcji , na przykład:
Próbuję pracować z plikami 2GB+ na systemie plików VFAT. Czy to działa?
Nie, VFAT nie obsługuje plików 2GB+.
Dlaczego zalecany bitrate wypisywany przez MEncodera
jest ujemny?
Ponieważ bitrate (ilość bitów na sekundę) z którym zakodowałeś audio jest za duże, aby film się zmieścił
na jakimkolwiek CD. Sprawdź czy libmp3lame jest zainstalowana poprawnie.
Nie mogę zakodować pliku ASF do AVI/DivX, ponieważ ma on 1000 fps?
Ponieważ ASF używa zmiennego frame rate (ilość ramek na sekundę), a AVI używa
ustalonej wartości, musisz ustawić ją ręcznie używając .
Jak mogę wstawić napisy do pliku wynikowego?
Po prostu przekaż opcję
(lub odpowiednio ) do MEncodera.
Jak zakodować wyłącznie dźwięk z teledysku?
Nie jest to możliwe bezpośrednio lecz możesz sprówować następującego
sposobu (zwróć uwagę na znak
& na końcu polecenia
mplayer):
mkfifo encode
mplayer -ao pcm -aofile encode dvd://1 &
lame your_opts encode music.mp3
rm encode
Ten sposób pozwala na użycie dowolnego kodera, nie tylko
LAME.
Po prostu zamień lame w powyższym poleceniu
na swój ulubiony koder audio.