سؤال

أريد فك تشفير مجرى WMA إلى 16 بت PCM. الآن لدي سؤال بشأن FFMPEG- ما هو تنسيق الإخراج ..

len = avcodec_decode_audio2(c, (int16_t *)outbuf, &outbuf_used, inbuf_ptr, size);

هل هذه هي الوظيفة الصحيحة لهذه المهمة؟

شكرا لك

هل كانت مفيدة؟

المحلول

ملاحظة: حاول طرح هذا السؤال في قائمة مستخدم FFMPEG. سوف تجد بالتأكيد GFMPEG Gurus هناك.

أنا أساسا استخدام FFMPEG لتشفير / فك شفرة الفيديو. لفك تشفير، فإن "AVCODEC_DECODE_ *" هي الأشياء الصحيحة التي يجب استخدامها ... فك التشفيم. ما تحصل عليه ... 16 بت PCM.

ما أعنيه هو أن فك تشفير دفق الوسائط المتعددة يمكن أن يكون صعبا و ffmpeg هو مستوى منخفض المستوى منخفض المستوى. من الصعب أن تكون أكثر دقة مع سطر التعليمات البرمجية التي تقدمها (على الأقل يجب أن تكون أكثر دقة حول المعلمات الخاصة بك).

ما يجب أن تكون حريصا حوله هو أنه عند قراءة مجرى الوسائط المتعددة، يجب عليك توجيه دفق أولا (في بعض الأحيان حتى لو كان هناك دفق واحد فقط في حاوية الحاوية الخاصة بك) ثم فك شفرة ID CREDEC الصحيح. إذا كنت قد قمت بإزالة دفقك بشكل صحيح، فقد قمت بتهيئة سياق الترميز / الترميز بشكل صحيح، ثم يمكنك الاتصال AVCODEC_DECODE وسيعمل :)

كما تذكر C ++ في علاماتك، يمكنك تجربة التفاف C ++ FFMPEG: فوبالاستخدام أكثر بساطة ولكن بالطبع، تفقد السيطرة الدقيقة ...

اتمني ان يكون مفيدا.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top