ऑडियो उबंटू 20.04 पर बिना किसी समस्या के काम करता है लेकिन एसडीएल 2 ऑडियो डिवाइस का उपयोग करने में विफल रहता है जबकि इनिशियलाइज़ेशन ठीक है। उबंटू 18.04 पर यह उम्मीद के मुताबिक काम करता है। दोनों स्थापना पर SDL2 को स्रोत कोड (2.0.12) से संकलित किया गया था।

यह कोड उदाहरण है:

#include "SDL2/SDL.h"


int main(void)
{
    if (SDL_InitSubSystem(SDL_INIT_AUDIO) < 0)
        SDL_Log("SDL fails to initialize audio subsystem!\n%s", SDL_GetError());
    else
        SDL_Log("SDL Audio was initialized fine!\n");
    
    SDL_Log("Number of audio devices: %d\n", SDL_GetNumAudioDevices(0));

    SDL_AudioSpec want, have;

    // Set required audio specs
    want.freq = 44100;
    want.format = AUDIO_S16SYS;
    want.channels = 2;
    want.samples = 1024;
    want.padding = 0;
    want.callback = NULL;
    want.userdata = NULL;


    device = SDL_OpenAudioDevice(NULL, 0, &want, &have, 0);

    if (device == 0)
        SDL_Log("Failed to open audio: %s\n", SDL_GetError());
    
    return 0;
}

यह आउटपुट है:

SDL Audio was initialized fine!
Number of audio devices: 0
Failed to open audio: No such audio device
-1
Francesco 2 नवम्बर 2020, 18:59

1 उत्तर

सबसे बढ़िया उत्तर

मुझे समस्या मिली। नए Ubuntu 20.04 इंस्टॉलेशन पर libasound2-dev लाइब्रेरी गायब है। स्रोत कोड से SDL2 संकलित करने से पहले इसे स्थापित करना आवश्यक है।

यह अजीब है कि ड्राइवर के मौजूद न होने पर भी ऑडियो इनिशियलाइज़ेशन ठीक था

0
Francesco 5 नवम्बर 2020, 12:29