سؤال

هل هناك طريقة يمكنني تحويل ملف MP3 إلى WAV / AIFF في تطبيق iPhone الخاص بي؟ لدي MP3 لكنني أريد أن أجمعها مع الملفات الأخرى والطريقة الوحيدة التي أعرفها يمكن القيام بذلك هي عند استخدام تنسيقات PCM.

هل يمكن لأي شخص أن يساعدني هنا؟

شكرا.

بعض الأشياء التي حاولت

حاولت استخدام طريقة AudioconverterTeflockpleXbuffer () واستبدالها لتحويل MP3 إلى CAF ولكن تتم قراءة البايت لكل حزمة ولكل إطار كأي أفكار كيف يمكنني أو ما إذا كان بإمكاني استخدام هذه الوظيفة؟

شكرا لك مرة أخرى.

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

المحلول

WAV و AIFF في كثير من الأحيان (عادة؟) تحتوي على PCM، إذن ما هو الاعتراض هناك؟ أم أنك تقول أنه يجب عليك الحصول على بيانات MP3 الخاصة بك إلى PCM من أجل مزجه (ربما في وحدة صوت متعددة الخلاط Multichannel). إذا كنت ترغب بجدية في القيام بذلك، فابحث في الصوت الأساسية، وتحديدا:

  • خدمات الملفات الصوتية (لقراءة تنسيق MP3 وكتابة AIFF أو WAV)
  • خدمات تحويل الملفات الصوتية (لتحويل بيانات MP3 إلى PCM و / أو الترميز من PCM إلى برنامج الترميز الآخر إذا كنت تريد كتابة ملف). لاحظ أن محول معين لا يمكن تحويله بين تنسيقتين مشفنتين؛ يمكنك القيام باستخدام MP3 إلى PCM أو PCM-TO-AAC، ولكن للقيام MP3 إلى AAC، كنت بحاجة إلى محولين.
  • خدمات الملفات الصوتية الموسعة، والتي تجمع بين كل من أعلاه.

تفحص ال مثال convertFile في الصوت الأساسي SDK. هذا يفتح ملف مصدر للقراءة، يصف التنسيق المطلوب للملف الهدف، يقرأ المخازن المؤقتة من واحد ويكتبها إلى الآخر. يقدم الرمز كلا من الاستخدام المنفصل لخدمات خدمات الملفات + التحويل، والاستخدام المريح لل O ExtAudioOfiles.

تأكد أيضا من فهم الفرق بين برامج الترميز وتنسيقات الملفات، وما هي مجموعات الترميز / تنسيق قانونية. لقد فوجئت في المرة الأولى التي اكتشفت فيها أن PCM يجب أن يكون endian قليلا في WAV، Big-Endian في Aiff.

نصائح أخرى

ربما يمكنك القيام بذلك مع المجموعة المناسبة من وحدات الصوت الأساسية، ولكن من المحتمل أن تستخدم الكثير من وحدة المعالجة المركزية. يجب عليك تحويل البيانات في وقت مبكر (ربما في وقت البناء؟)، إذا استطعت.

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