Goldendict: تحذير: مشغل الصوت: فشل ao_open_live (): لا يمكن فتح الجهاز: النبض

تم إنشاؤها على ١٤ مايو ٢٠١٨  ·  12تعليقات  ·  مصدر: goldendict/goldendict

FFmpeg-4.0

~ $ cat .libao 
default_driver=pulse
quiet

التعليق الأكثر فائدة

إذا كانت هذه المشكلة لا تزال ذات صلة للجميع هنا ، فقد وجدت هذا في سلسلة المحادثات الأخرى.
انتقل إلى تحرير> التفضيلات> الصوت> استخدام برنامج خارجي وإدراج
ffplay -nodisp -autoexit ثم اضغط على OK.
في رأيي ، هذا السطر من الكود هو الحل الأكثر أناقة ، لأن ffplay هو مشغل وسائط بسيط للغاية ويحل محل المشغل الداخلي ، وهو مجرد مشغل وسائط بسيط آخر ، على ما أعتقد. فلماذا تهتم بالمشغل الداخلي إذا كان بإمكانك استخدام مشغل خارجي وسيعمل بنفس الطريقة أو حتى أفضل؟ من الخارج يعمل بشكل لا تشوبه شائبة. آمل أن يساعدنا هذا الحل البديل في إغلاق المشكلة لفترة من الوقت على الأقل.

ال 12 كومينتر

حاول إزالة الخط "الهادئ" وإعادة التشغيل كما هو مقترح هنا .

احتمال آخر: ربما لم يتم تجاهل تكوين libao على مستوى النظام في /etc/libao.conf تمامًا ، ولكن تم دمجه مع التكوين الخاص بالمستخدم. حاول تحريرها كذلك. الوثائق غامضة:

عند تهيئة libao ، فإنه يقرأ ملفي تكوين: التكوين على مستوى النظام في "/etc/libao.conf" وتكوين المستخدم في "~ / .libao". لا يلزم وجود أي من الملفين على النظام حتى يتم تحميل libao. في حالة وجود كلاهما ، تتم قراءة ملف تكوين النظام أولاً ، متبوعًا بملف تكوين المستخدم. الخيارات المحددة في تكوين المستخدم لها الأسبقية.

يمكنك أيضًا تجربة الواجهة الخلفية لمشغل Qt Multimedia الداخلي أو مشغل خارجي.

المشغل الخارجي يعمل بشكل جيد.
لا يوجد نظام '/etc/libao.conf' للأمم المتحدة. تمت إزالته "تمامًا" ، لم يساعد.
لا تريد استخدام Qt Multimedia لأنه يعتمد على GStreamer.

~ $ ldd /usr/bin/goldendict 
        linux-vdso.so.1 (0x00007fff4b9af000)
        libz.so.1 => /lib64/libz.so.1 (0x00007fafe2a38000)
        libbz2.so.1 => /lib64/libbz2.so.1 (0x00007fafe2a24000)
        liblzo2.so.2 => /lib64/liblzo2.so.2 (0x00007fafe29fd000)
        libX11.so.6 => /usr/lib64/libX11.so.6 (0x00007fafe28be000)
        libXtst.so.6 => /usr/lib64/libXtst.so.6 (0x00007fafe28b7000)
        libtiff.so.5 => /usr/lib64/libtiff.so.5 (0x00007fafe23de000)
        libeb.so.13 => /usr/lib64/libeb.so.13 (0x00007fafe2877000)
        libvorbisfile.so.3 => /usr/lib64/libvorbisfile.so.3 (0x00007fafe23d4000)
        libhunspell-1.6.so.0 => /usr/lib64/libhunspell-1.6.so.0 (0x00007fafe2367000)
        libao.so.4 => /usr/lib64/libao.so.4 (0x00007fafe235d000)
        libavutil.so.56 => /usr/lib64/libavutil.so.56 (0x00007fafe22ed000)
        libavformat.so.58 => /usr/lib64/libavformat.so.58 (0x00007fafe20d5000)
        libavcodec.so.58 => /usr/lib64/libavcodec.so.58 (0x00007fafe0e20000)
        libQt5Svg.so.5 => /usr/lib64/libQt5Svg.so.5 (0x00007fafe0dca000)
        libQt5WebKitWidgets.so.5 => /usr/lib64/libQt5WebKitWidgets.so.5 (0x00007fafe0d7e000)
        libQt5PrintSupport.so.5 => /usr/lib64/libQt5PrintSupport.so.5 (0x00007fafe0d0e000)
        libQt5Help.so.5 => /usr/lib64/libQt5Help.so.5 (0x00007fafe0c90000)
        libQt5Widgets.so.5 => /usr/lib64/libQt5Widgets.so.5 (0x00007fafe0651000)
        libQt5WebKit.so.5 => /usr/lib64/libQt5WebKit.so.5 (0x00007fafdd9ce000)
        libQt5X11Extras.so.5 => /usr/lib64/libQt5X11Extras.so.5 (0x00007fafdd9c8000)
        libQt5Gui.so.5 => /usr/lib64/libQt5Gui.so.5 (0x00007fafdd4fd000)
        libQt5Xml.so.5 => /usr/lib64/libQt5Xml.so.5 (0x00007fafdd4c0000)
        libQt5Network.so.5 => /usr/lib64/libQt5Network.so.5 (0x00007fafdd327000)
        libQt5Core.so.5 => /usr/lib64/libQt5Core.so.5 (0x00007fafdce7d000)
        libpthread.so.0 => /lib64/libpthread.so.0 (0x00007fafdcc5d000)
        libstdc++.so.6 => /usr/lib/gcc/x86_64-pc-linux-gnu/8.1.0/libstdc++.so.6 (0x00007fafdcacd000)
        libm.so.6 => /lib64/libm.so.6 (0x00007fafdc734000)
        libgcc_s.so.1 => /usr/lib/gcc/x86_64-pc-linux-gnu/8.1.0/libgcc_s.so.1 (0x00007fafdc71b000)
        libc.so.6 => /lib64/libc.so.6 (0x00007fafdc353000)
        libxcb.so.1 => /usr/lib64/libxcb.so.1 (0x00007fafdc32b000)
        libdl.so.2 => /lib64/libdl.so.2 (0x00007fafdc125000)
        libXext.so.6 => /usr/lib64/libXext.so.6 (0x00007fafdc112000)
        liblzma.so.5 => /lib64/liblzma.so.5 (0x00007fafdc0eb000)
        libjpeg.so.62 => /usr/lib64/libjpeg.so.62 (0x00007fafdc079000)
        libnsl.so.2 => /usr/lib64/libnsl.so.2 (0x00007fafdc060000)
        libvorbis.so.0 => /usr/lib64/libvorbis.so.0 (0x00007fafdc02b000)
        libogg.so.0 => /usr/lib64/libogg.so.0 (0x00007fafdc021000)
        libva.so.2 => /usr/lib64/libva.so.2 (0x00007fafdbffe000)
        libva-drm.so.2 => /usr/lib64/libva-drm.so.2 (0x00007fafdbffa000)
        libva-x11.so.2 => /usr/lib64/libva-x11.so.2 (0x00007fafdbff3000)
        libdrm.so.2 => /usr/lib64/libdrm.so.2 (0x00007fafdbfe1000)
        libgmp.so.10 => /usr/lib64/libgmp.so.10 (0x00007fafdbf60000)
        libssl.so.1.1 => /usr/lib64/libssl.so.1.1 (0x00007fafdbef2000)
        libcrypto.so.1.1 => /usr/lib64/libcrypto.so.1.1 (0x00007fafdbc8b000)
        libswresample.so.3 => /usr/lib64/libswresample.so.3 (0x00007fafdbc6e000)
        libvpx.so.5 => /usr/lib64/libvpx.so.5 (0x00007fafdba4c000)
        libwebpmux.so.3 => /usr/lib64/libwebpmux.so.3 (0x00007fafdba41000)
        libwebp.so.7 => /usr/lib64/libwebp.so.7 (0x00007fafdb9be000)
        libopus.so.0 => /usr/lib64/libopus.so.0 (0x00007fafdb961000)
        libvorbisenc.so.2 => /usr/lib64/libvorbisenc.so.2 (0x00007fafdb8b6000)
        libwavpack.so.1 => /usr/lib64/libwavpack.so.1 (0x00007fafdb88a000)
        libx264.so.152 => /usr/lib64/libx264.so.152 (0x00007fafdb72b000)
        libx265.so.151 => /usr/lib64/libx265.so.151 (0x00007fafdb3e8000)
        libopenh264.so.4 => /usr/lib64/libopenh264.so.4 (0x00007fafdb2de000)
        libQt5Sql.so.5 => /usr/lib64/libQt5Sql.so.5 (0x00007fafdb293000)
        libQt5Quick.so.5 => /usr/lib64/libQt5Quick.so.5 (0x00007fafdae24000)
        libicuuc.so.61 => /usr/lib64/libicuuc.so.61 (0x00007fafdac68000)
        libicui18n.so.61 => /usr/lib64/libicui18n.so.61 (0x00007fafda9b6000)
        libpng16.so.16 => /usr/lib64/libpng16.so.16 (0x00007fafda97b000)
        libhyphen.so.0 => /usr/lib64/libhyphen.so.0 (0x00007fafda974000)
        libxml2.so.2 => /usr/lib64/libxml2.so.2 (0x00007fafda80c000)
        libxslt.so.1 => /usr/lib64/libxslt.so.1 (0x00007fafda7cf000)
        libsqlite3.so.0 => /usr/lib64/libsqlite3.so.0 (0x00007fafda6ae000)
        libQt5Qml.so.5 => /usr/lib64/libQt5Qml.so.5 (0x00007fafda286000)
        librt.so.1 => /lib64/librt.so.1 (0x00007fafda07e000)
        /lib64/ld-linux-x86-64.so.2 (0x00007fafe284c000)
        libGL.so.1 => /usr/lib64/libGL.so.1 (0x00007fafda010000)
        libharfbuzz.so.0 => /usr/lib64/libharfbuzz.so.0 (0x00007fafd9f62000)
        libpcre2-16.so.0 => /usr/lib64/libpcre2-16.so.0 (0x00007fafd9eec000)
        libdouble-conversion.so.1 => /usr/lib64/libdouble-conversion.so.1 (0x00007fafd9edf000)
        libglib-2.0.so.0 => /usr/lib64/libglib-2.0.so.0 (0x00007fafd9dc7000)
        libXau.so.6 => /usr/lib64/libXau.so.6 (0x00007fafd9dc2000)
        libXdmcp.so.6 => /usr/lib64/libXdmcp.so.6 (0x00007fafd9db9000)
        libtirpc.so.3 => /lib64/libtirpc.so.3 (0x00007fafd9d8e000)
        libmvec.so.1 => /lib64/libmvec.so.1 (0x00007fafd9b64000)
        libXfixes.so.3 => /usr/lib64/libXfixes.so.3 (0x00007fafd9b5d000)
        libicudata.so.61 => /usr/lib64/libicudata.so.61 (0x00007fafd81b3000)
        libexpat.so.1 => /usr/lib64/libexpat.so.1 (0x00007fafd8178000)
        libxcb-dri3.so.0 => /usr/lib64/libxcb-dri3.so.0 (0x00007fafd8173000)
        libxcb-xfixes.so.0 => /usr/lib64/libxcb-xfixes.so.0 (0x00007fafd816a000)
        libxcb-present.so.0 => /usr/lib64/libxcb-present.so.0 (0x00007fafd8166000)
        libxcb-sync.so.1 => /usr/lib64/libxcb-sync.so.1 (0x00007fafd815c000)
        libxshmfence.so.1 => /usr/lib64/libxshmfence.so.1 (0x00007fafd8159000)
        libglapi.so.0 => /usr/lib64/libglapi.so.0 (0x00007fafd8127000)
        libXdamage.so.1 => /usr/lib64/libXdamage.so.1 (0x00007fafd8123000)
        libX11-xcb.so.1 => /usr/lib64/libX11-xcb.so.1 (0x00007fafd8120000)
        libxcb-glx.so.0 => /usr/lib64/libxcb-glx.so.0 (0x00007fafd8105000)
        libxcb-dri2.so.0 => /usr/lib64/libxcb-dri2.so.0 (0x00007fafd80fd000)
        libXxf86vm.so.1 => /usr/lib64/libXxf86vm.so.1 (0x00007fafd80f7000)
        libfreetype.so.6 => /usr/lib64/libfreetype.so.6 (0x00007fafd8038000)
        libgraphite2.so.3 => /usr/lib64/libgraphite2.so.3 (0x00007fafd800b000)
        libpcre.so.1 => /lib64/libpcre.so.1 (0x00007fafd7f96000)
        libbsd.so.0 => /usr/lib64/libbsd.so.0 (0x00007fafd7f7b000)
~ $ ldd /usr/lib64/libao.so
        linux-vdso.so.1 (0x00007ffedf31a000)
        libpthread.so.0 => /lib64/libpthread.so.0 (0x00007f46bd745000)
        libdl.so.2 => /lib64/libdl.so.2 (0x00007f46bd541000)
        libc.so.6 => /lib64/libc.so.6 (0x00007f46bd179000)
        /lib64/ld-linux-x86-64.so.2 (0x00007f46bd965000)

هل يحدث هذا الخطأ لبعض الملفات الصوتية فقط؟ ربما هذه هي نسخة مكررة من # 949؟ حاول لعب الافتراضي \

كان عدم قدرة libao + pulseaudio على تشغيل صوت 32 بت أو fltp هو السبب الرئيسي لتطبيق Qt Multimedia backend.

هل يحدث هذا الخطأ لبعض الملفات الصوتية فقط؟

كلا ، يقوم بتشغيل الصوت في بعض القواميس.

حاول لعب الافتراضي(نشيد) في مقالة "الولايات المتحدة" من ويكيبيديا الإنجليزية - تقوم الواجهة الخلفية FFmpeg بتشغيلها بنجاح على نظامي لأنها 16 بت.

تحذير: مشغل الصوت: ao_open_live () فشل: لا يمكن فتح الجهاز: النبض ، القنوات: 2 ، المعدل: 44100 ، البتات: 32.

إذا الخلفية للوFFMPEG يعمل في بعض القواميس، ثم وربما هو نفس المسألة - مكررة من 949 #.

من المحتمل أنك قمت بتشغيل ملف صوتي مختلف (من قاموس آخر؟) ، لأن ملف الصوت "الولايات المتحدة" الذي اقترحته به تنسيق

العصا مع لاعب خارجي

بعد ترقية النظام الهائلة ، بما في ذلك ffmpeg 4.0 ، انخفض عدد الملفات الصوتية التي تم نطقها بنجاح بواسطة FFmpeg + libao backend بشكل كبير. يتضمن هذا النطق من "الولايات المتحدة" و "Star-Spangled Banner" في ويكيبيديا الإنجليزية بالإضافة إلى بعض الملفات الصوتية في قواميس المحلية. يبلغ إصدار FFmpeg الجديد (وبالتالي جميع التطبيقات التي تستخدمه) أن هذه الملفات الصوتية هي 32 بت fltp أو 24 بت ، في حين أن الإصدار الأقدم FFmpeg 3.4 أبلغ عنها بأنها 16 بت أو أقل. هذا يعني أن المكون الإضافي pulseaudio الخاص بـ libao يرفض تشغيل هذه الملفات عند تثبيت أحدث إصدار من FFmpeg.

إذن هذه المشكلة ليست مكررة ، لكنها تفاقم للرقم 949 بسبب التغييرات في FFmpeg 4.0.

نيابة عن vedgy أنا أعد فتح القضية.

إذا كانت هذه المشكلة لا تزال ذات صلة للجميع هنا ، فقد وجدت هذا في سلسلة المحادثات الأخرى.
انتقل إلى تحرير> التفضيلات> الصوت> استخدام برنامج خارجي وإدراج
ffplay -nodisp -autoexit ثم اضغط على OK.
في رأيي ، هذا السطر من الكود هو الحل الأكثر أناقة ، لأن ffplay هو مشغل وسائط بسيط للغاية ويحل محل المشغل الداخلي ، وهو مجرد مشغل وسائط بسيط آخر ، على ما أعتقد. فلماذا تهتم بالمشغل الداخلي إذا كان بإمكانك استخدام مشغل خارجي وسيعمل بنفس الطريقة أو حتى أفضل؟ من الخارج يعمل بشكل لا تشوبه شائبة. آمل أن يساعدنا هذا الحل البديل في إغلاق المشكلة لفترة من الوقت على الأقل.

يقوم تطبيق المشغل الخارجي لـ Goldendict بكتابة البيانات الصوتية في ملف مؤقت ، ويبدأ عملية مشغل خارجي ، ثم يحذف الملف المؤقت. هذا أقل كفاءة بشكل كبير من تمرير المخزن المؤقت لبيانات الصوت في الذاكرة إلى مشغل داخلي. بمعنى آخر ، تعمل المشغلات الداخلية ( FFmpeg + libao و Qt Multimedia ) بصرامة في ذاكرة الوصول العشوائي دون لمس محرك الأقراص الثابتة أو SSD. بالطبع ، تمكّن بعض التوزيعات (معظمها) tmpfs افتراضيًا ، لذا فإن هذا الاختلاف في الأداء غير ذي صلة بالعديد من المستخدمين.

لاحظ أيضًا أن الحل ffplay قد يكون بسيطًا وأنيقًا لمستخدمي GNU / Linux ، لكنه ليس بهذه البساطة لمستخدمي Windows و Mac الفقراء الذين ليس لديهم ffplay في نظامهم PATH . على الرغم من أنني لا أعرف حتى ما إذا كانت أنظمة التشغيل الأخرى قد تأثرت. ربما هذه مشكلة خاصة بـ GNU / Linux.

مرحبا @ perfect7gentleman. لقد تحققت من أن هذه المشكلة تم إصلاحها بواسطة 1273 #. يرجى إغلاقها إذا كانت الواجهة الخلفية للمشغل الداخلي Ffmpeg + libao تعمل معك أيضًا.

تؤكد. مثبت.

هل كانت هذه الصفحة مفيدة؟
0 / 5 - 0 التقييمات