[Ratkaisu] Rytmilaatikon Jamendo-liitännäinen ei toimi

Lähtökohta
Olen käynnistänyt Rytmilaatikko-musiikkisoittimen. Olen ottanut käyttöön Jamendo-liitännäisen. Kun valitsen Sivupaneelista Jamendo-näkymän, Jamendon esittelysivu avautuu. Haluan kuunnella Jamendosta ladattavaa musiikkia.
Ongelma
En voi valita Jamendossa olevia musiikkikappaleita kuunneltaviksi mistään. Jos kirjoitan hakukenttään hakusanan, Tilarivi ilmoittaa hakusanaa vastaavien osumien määrän, mutta itse osumia ei näy missään. Jamendo-näkymässä näkyy vain Jamendon esittelysivu, eikä sitä saa pois ikkunasta poistumatta kokonaan Jamendo-näkymästä.
Ongelman syy
Jamendo-liitännäisessä on ohjelmavirhe, joka estää Jamendon kokoelmien selailun Rytmilaatikolla.
Ratkaisu

Korjaan liitännäisessä olevan virheen. Korjaaminen tapahtuu liitännäisen lähdekoodia muokkaamalla, minkä jälkeen korjattu liitännäinen täytyy kääntää.

  1. Suljen Rytmilaatikon.
  2. Siirrän viallisen liitännäisen väliaikaisesti toiseen hakemistoon. Tämä tapahtuu seuraavalla komennolla:

    sudo mv /usr/lib/rhythmbox/plugins/jamendo/JamendoSource.pyc /tmp/
  3. Muokkaan liitännäisen lähdekoodia.

    1. Avaan lähdekoodin muokattavaksi seuraavalla komennolla:

      sudo gedit /usr/lib/rhythmbox/plugins/jamendo/JamendoSource.py
    2. Etsin rivin numero 332, joka näyttää seuraavalta:

      self.__db.set(entry, rhythmdb.PROP_TRACK_NUMBER, int(track['trackno']))

      Korvaan tämän rivin seuraavilla kolmella rivillä:

      trackno = int(track['trackno'])
      if trackno >= 0:
      self.__db.set(entry, rhythmdb.PROP_TRACK_NUMBER, trackno)
    3. Sisennän lisäämäni rivit siten, että kaksi ensimmäistä on sisennetty samalle sarakkeelle kuin niitä edeltävä rivi ylempänä, ja kolmas on yhden sisennystason sisempänä kuin kaksi muuta.
    4. Tallennan tiedoston ja suljen geditin.
  4. Käynnistän Rytmilaatikon Päätteestä komennolla sudo rhythmbox
  5. Käännän korjatun liitännäisen ottamalla sen käyttöön. Tämä tapahtuu valitsemalla Rytmilaatikon Muokkaa-valikosta kohta Liitännäiset... ja merkkaamalla sen jälkeen avautuvasta Liitännäisten määrittelyt -ikkunasta Jamendo-liitännäinen käyttöön valituksi. Lopuksi suljen Liitännäisten määrittelyt -ikkunan.
  6. Suljen Rytmilaatikon.
  7. Poistan aiemmin ladatun Jamendo-luettelon. Tämä tapahtuu seuraavalla komennolla:

    rm ~/.gnome2/rhythmbox/jamendo/*

Kun tämän jälkeen käynnistän Rytmilaatikon Sovellukset → Ääni & video -valikosta, valitsen Sivupaneelista Jamendo-näkymän ja odotan, että Jamendon luettelo latautuu, voin sen jälkeen selata Jamendon musiikkivalikoimia kirjoittamalla sopivan hakusanan.

Kun uusi, korjattu liitännäinen toimii, voin poistan vanhan, viallisen liitännäisen tilapäisestä sijoituspaikastaan seuraavalla komennolla:

sudo rm /tmp/JamendoSource.pyc
Huomautus
Olen pannut tarjolle valmiiksi korjatun kopion lähdekooditiedostosta (14 kt:n Python-tiedosto).

Joidenkin QuickTime-videoiden ääni pätkii GStreamerilla (Totemilla) toistettaessa

Lähtökohta
Olen ladannut 12.2.2008 ilmestyneen jakson Rocketboom -ohjelmasta (37,7 Mt:n videotiedosto). Synaptic-pakettienhallinnassa totem, totem-gstreamer ja gstreamer0.10-ffmpeg on asennettu.
Ongelma
Kun avaan videotiedoston Totem-elokuvasoittimella ja käynnistän sen toiston, ääni kuulostaa samalta kuin äänilevytallenteen toisto kuulostaa silloin, kun levy pyörii hieman liian hitaasti: ääni on matalampi kuin sen pitäisi olla. Muutaman sekunnin välein ääni myös hyppää yli lyhyen matkaa. Haluan, että ääni toistuu tarkoitetun korkuisena eikä hyppelehdi.
Ongelman syy

Äänen mataluus johtuu siitä, että ääniraita, jonka oikea näytteenottotaajuus on 48000 Hz, soitetaan Totemissa ikään kuin sen taajuus olisi 44100 Hz.

Hyppelehtiminen johtuu luultavasti siitä, että ääni synkronoidaan kuvan kanssa muutaman sekunnin välein, ja liian hitaasti pyörivä ääni jää muutamassa sekunnissa selvästi jälkeen normaalinopeudella pyörivästä kuvasta.

Ratkaisu

Ratkaisua ei vielä ole, mutta ongelman voi kiertää Rocketboomin kohdalla tilaamalla videot WMV-muodossa. WMV-muotoisina Rocketboom-videot vaikuttaisivat toimivan niin kuin pitääkin.

Lisäksi ohjelmasta on tarjolla HD-laatuinen syöte. HD-laatuisten videoiden ääni toimii oikein, mutta omalla koneellani kuva nykii hieman, arvatenkin riittämättömän suoritintehon takia.

Huomautus

Olen ladannut samana päivänä ilmestyneen jakson Meet the GIMP -ohjelmasta (22,4 Mt:n videotiedosto). Kun toistan Meet the GIMP -videon Totemilla, se pyörii oikein. Komento mplayer -frames 1 -ao null -vo null -identify meetthegimp032.mp4 kertoo videosta seuraavaa:

Quicktime/MOV file format detected.
ID_VIDEO_ID=0
ID_AUDIO_ID=1
VIDEO:  [mp4v]  640x480  24bpp  25.000 fps    0.0 kbps ( 0.0 kbyte/s)
ID_FILENAME=meetthegimp032.mp4
ID_DEMUXER=mov
ID_VIDEO_FORMAT=mp4v
ID_VIDEO_BITRATE=0
ID_VIDEO_WIDTH=640
ID_VIDEO_HEIGHT=480
ID_VIDEO_FPS=25.000
ID_VIDEO_ASPECT=0.0000
ID_AUDIO_FORMAT=mp4a
ID_AUDIO_BITRATE=0
ID_AUDIO_RATE=44100
ID_AUDIO_NCH=2
ID_LENGTH=1199.88
==========================================================================
Opening video decoder: [ffmpeg] FFmpeg's libavcodec codec family
Selected video codec: [ffodivx] vfm: ffmpeg (FFmpeg MPEG-4)
==========================================================================
ID_VIDEO_CODEC=ffodivx
==========================================================================
Forced audio codec: mad
Opening audio decoder: [faad] AAC (MPEG2/4 Advanced Audio Coding)
FAAD: compressed input bitrate missing, assuming 128kbit/s!
AUDIO: 44100 Hz, 2 ch, s16le, 128.0 kbit/9.07% (ratio: 16000->176400)
ID_AUDIO_BITRATE=128000
ID_AUDIO_RATE=44100
ID_AUDIO_NCH=2
Selected audio codec: [faad] afm: faad (FAAD AAC (MPEG-2/MPEG-4 Audio) decoder)
==========================================================================
AO: [null] 44100Hz 2ch s16le (2 bytes per sample)
ID_AUDIO_CODEC=faad
Starting playback...
VDec: vo config request - 640 x 480 (preferred colorspace: Planar YV12)
VDec: using Planar YV12 as output csp (no 0)
Movie-Aspect is 1.33:1 - prescaling to correct movie aspect.
ID_VIDEO_ASPECT=1.3333
VO: [null] 640x480 => 640x480 Planar YV12
A:   0.0 V:   0.0 A-V:  0.030 ct:  0.000   1/  1 ??% ??% ??,?% 0 0 

Komento mplayer -frames 1 -ao null -vo null -identify rb_08_feb_12.mov kertoo Rocketboom-videosta seuraavaa:

ISO: File Type Major Brand: Original QuickTime
Quicktime/MOV file format detected.
ID_AUDIO_ID=0
ID_VIDEO_ID=1
VIDEO:  [mp4v]  480x270  24bpp  23.976 fps    0.0 kbps ( 0.0 kbyte/s)
ID_FILENAME=rb_08_feb_12.mov
ID_DEMUXER=mov
ID_VIDEO_FORMAT=mp4v
ID_VIDEO_BITRATE=0
ID_VIDEO_WIDTH=480
ID_VIDEO_HEIGHT=270
ID_VIDEO_FPS=23.976
ID_VIDEO_ASPECT=0.0000
ID_AUDIO_FORMAT=mp4a
ID_AUDIO_BITRATE=64000
ID_AUDIO_RATE=48000
ID_AUDIO_NCH=1
ID_LENGTH=297.92
==========================================================================
Opening video decoder: [ffmpeg] FFmpeg's libavcodec codec family
Selected video codec: [ffodivx] vfm: ffmpeg (FFmpeg MPEG-4)
==========================================================================
ID_VIDEO_CODEC=ffodivx
==========================================================================
Forced audio codec: mad
Opening audio decoder: [faad] AAC (MPEG2/4 Advanced Audio Coding)
AUDIO: 48000 Hz, 2 ch, s16le, 64.0 kbit/4.17% (ratio: 8000->192000)
ID_AUDIO_BITRATE=64000
ID_AUDIO_RATE=48000
ID_AUDIO_NCH=2
Selected audio codec: [faad] afm: faad (FAAD AAC (MPEG-2/MPEG-4 Audio) decoder)
==========================================================================
AO: [null] 48000Hz 2ch s16le (2 bytes per sample)
ID_AUDIO_CODEC=faad
Starting playback...
VDec: vo config request - 480 x 270 (preferred colorspace: Planar YV12)
VDec: using Planar YV12 as output csp (no 0)
Movie-Aspect is 1.78:1 - prescaling to correct movie aspect.
ID_VIDEO_ASPECT=1.7778
VO: [null] 480x270 => 480x270 Planar YV12
A:   0.1 V:   0.0 A-V:  0.021 ct:  0.002   2/  2 ??% ??% ??,?% 0 0

Väärän näytetaajuuden käyttö Totemissa käy ilmi, kun videon pyöriessä ohjelmassa valitsen Elokuva-valikosta Ominaisuudet: Sivupalkkiin avautuvien tietojen Ääni-osiossa Näytetaajuudeksi ilmoitetaan 44100 Hz. Mplayer, jonka mukaan siis ääniraidan taajuus on 48000 Hz, toistaa ääniraidan oikein.

Miro can't play this file

Lähtökohta

Olen lisännyt Participatory Culture Foundationin pakettivaraston Synaptic-pakettienhallinnan pakettivarastoihin ja asentanut sieltä uusimman Miro Internet TV:n. Olen asettanut Miron Asetukset-ikkunan Toisto-välilehdeltä kohdan Toista videot peräkkäin valituksi.

Olen lisännyt /apps/miro/renderers -asetusavaimen listaan arvon gstrenderer, eli Miro toistaa nyt videot käyttäen samoja ohjelmistorutiineja kuin Totem-elokuvasoitin.

Olen tilannut Miroon kanavia, ja Miro on ladannut kanavilta uusia videoita. Otan Mirossa esille uusien, ladattujen videoiden näkymän ja aloitan videoiden pyörityksen käynnistämällä listan ensimmäisen videon.

Ongelma
Videon vaihtuessa, eli edellisen videon loputtua Miro ilmoittaa uuden videon kohdalla Miro can't play this file. You may be able to open it with a different program. Näin ei tapahdu joka kerta vaan (näennäisen) satunnaisesti. Haluan, että Miro toistaa videon virheilmoituksen antamisen sijasta.
Ongelman syy
Ei vielä tiedossa.
Ratkaisu

Ratkaisua ei vielä ole, mutta ongelman voi kiertää kahdella eri tavalla.

  • Palaan Mirossa uusien videoiden näkymään ja aloitan vidoiden pyörityksen tällä kertaa käynnistämällä ensimmäisenä äsken ongelmaan liittyneen videon. Se pyörii nyt normaalisti.
  • Virheilmoituksen yhteydessä on REVEAL FILE -linkki, jonka valittuani Miro avaa videotiedostokansionäkymän. Jos haen kansionäkymästä Mirossa ongelmaan liittyneen videon, avaan ja pyöritän sen Totem-elokuvasoittimella, se toimii normaalisti.
Huomautuksia
  • Ongelma ilmeni edellisen Miron päivityksen jälkeen. Päivitin silloin miro- ja miro-data -paketit versiosta 1.1.1-3 versioon 1.1.2-0pcf1. Ennen päivitystä ongelmaa ei ollut.
  • Miron foorumeilta löysin yhden tätä virheilmoitusta käsitelleen viestisäikeen. Siinä käyttäjä oli onnistunut ratkaisemaan ongelman asentamalla Ubuntun päivityksiä. Omassa järjestelmässäni ongelman ilmenemisen jälkeen ilmestyneiden päivityksien asentaminen ei ole vaikuttanut ongelmaan.

[Ratkaisu] Subwoofer ei toimi ilman Duplicate Frontin valitsemista

Lähtökohta
Asennuksen jälkeen tietokoneeni äänet toimivat, eli esimerkiksi sisäänkirjautumisen yhteydessä soiva äänitehoste kuulu etukaiuttimista. Tietokoneeni, Shuttle SN45G jossa on nForce2-piirisarjalla varustettu FN45-emolevy, tarjoaa surround-äänet eli äänikanavat kahdelle etukaiuttimelle, yhdelle keskikaiuttimelle, kahdelle surround-kaiuttimelle ja lisäksi LFE-kanavan subwooferille. Olen kytkenyt 5.1 -kaiuttimiston tietokoneeseen sen takapaneelissa olevien ääniliittimien kautta ja käynnistänyt tietokoneen lisäksi kaiuttimiston sen virtakatkaisijasta. Olen kirjautunut sisään työpöydälleni. Olen avannut Rytmilaatikko-musiikkisoittimen ja pannut musiikkikappaleen soimaan.
Ongelma

Subwooferista ei kuulu ääntä.

Jos merkitsen Äänenvoimakkuuden hallinnassa, Kytkimet-välilehdellä Duplicate Front -kohdan valituksi, subwooferista kuuluu ääntä, mutta silloin etukanavien ääni toistetaan etukaiuttimien lisäksi takakaiuttimista. Haluan, että LFE-kanava toimii niin, että etukanavien ääni toistetaan ainoastaan etukaiuttimissa vaikka LFE-kanava toistetaankin subwooferissa.

Ongelman syy
Asetukset Äänenvoimakkuuden hallinnassa ovat pielessä.
Ratkaisu

Otan Äänenvoimakkuuden hallinnassa Muokkaa-valikosta esille Asetukset, ja otan listalta valituksi merkitsemällä pääikkunassa esiin seuraavat raidat:

  • Pää
  • PCM
  • Surround
  • Surround Jack Mode
  • Center
  • LFE
  • Linjatulo
  • CD
  • Mikrofoni
  • Mikrofoni Kaappaus
  • Mic Boost (+20dB)
  • PC-kaiutin
  • Kaappaus
  • Mix
  • Channel Mode
  • Duplicate Front
  • Exchange Center/LFE
  • Swap Surround Slot

Suljen asetusikkunan.

Äänenvoimakkuuden hallinnan Toisto-välilehdellä asetan liukusäätimien alapuolella olevia kaiuttimenkuvia käyttämällä PC-kaiuttimen mykistetyksi (jonka merkkinä kaiuttimen päälle tulee punainen ruksi) ja muut pois mykistystilasta (jolloin kaiuttimen päällä ei ole punaista ruksia). Varmistan lisäksi, että Linjatuloa ja PC-kaiutinta lukuunottamatta kaikki välilehden liukusäätimet on asetettu maksimiinsa (yläasentoon).

Nauhoitetaan-välilehdellä varmistan, että Kaappaus ei ole mykistetty kaiuttimen eikä mikrofonin osalta, ja säädän liukusäätimet maksimiinsa.

Kytkimet-välilehdellä merkitsen valituiksi kohdat Mikrofoni Kaapppaus, Mic Boost (+20dB), ja Exchange Center/LFE. Valitsemattomiksi jätän kohdat Mix, Duplicate Front ja Swap Surround Slot.

Asetukset-välilehdellä valitsen Surround Jack Mode -valitsimen alasvetovalikosta kohdan Independent. Channel Mode -valitsimen alasvetovalikosta valitsen kohdan 6ch.

Suljen Äänenvoimakkuuden hallinnan. Tämän jälkeen LFE-kanavan toisto subwooferilla toimii ilman, että etukanavien signaali toistettaisiin takakaiuttimista etukaiuttimien lisäksi.

Huomautus
Äänikanavia voi testata komennolla speaker-test -Dplug:surround51 -c6 -l1 -twav, joka toistaa ääninäytteitä kultakin kanavalta erikseen, vuoron perään.

[Ratkaisu] Speaker-test ilmoittaa äänentoiston avausvirheestä

Lähtökohta
Olen kirjautunut sisään työpöydälleni, käynnistänyt Rytmilaatikko-musiikkisoittimen ja pannut sen soittamaan podcast-jaksoa. Olen keskeyttänyt jakson soiton ennen sen loppumista jatkaakseni kuuntelua myöhemmin. Olen avannut Päätteen. Haluan testata äänentoistolaitteistoni toimintaa, joten komennan päätteestä speaker-test -Dplug:surround51 -c6 -l1 -twav.
Ongelma

Kaiutintestisovellus speaker-test ilmoittaa seuraavaa:

Äänentoistolaite on plug:surround51
Stream parameters are 48000Hz, S16_LE, 6 channels
WAV tiedosto(t)
Äänentoiston avausvirhe: -16, Device or resource busy
Äänentoiston avausvirhe: -16, Device or resource busy
Äänentoiston avausvirhe: -16, Device or resource busy

Äänentoistolaitteen avausvirheestä ilmoittava rivi tulostuu yhä uudelleen kunnes keskeytän speaker-testin ajon näppäinyhdistelmällä Control + C. Haluan, että virheilmoituksen sijasta speaker-test toistaa kaiuttimien testaamiseksi ääninäytteitä eri kanavilta.

Ongelman syy
Speaker-test ei kykene jakamaan äänentoistolaitteistoa toisen ohjelman kanssa, ja Rytmilaatikko on varannut äänentoistolaitteiston käyttöönsä.
Ratkaisu
Suljen Rytmilaatikon. Sen jälkeen komennan speaker-testiä uudestaan, jolloin se toimii haluamallani tavalla.