سؤال

أواجه صعوبة في محاولة تسجيل شيء آخر غير PCM الخطي على iPhone:-(العينات التي وجدتها (SDK's Speakhere و Zdziarski's و Sadun's Books and the the One at trailsinthesand.com) تستخدم جميعها PCM الخطية ولكن أنا ' D مثل التنسيق المضغوط شائع الاستخدام بدلاً من ذلك (لا IMA4 أو أي شيء هو ...).

لا يمكنني معرفة كيفية تعديل نموذج التعليمات البرمجية لاستخدامه مع AAC أو MP3 أو AMR على سبيل المثال.أي اقتراحات وتلميحات حول كيفية القيام بذلك هي موضع تقدير كبير!

(راجع للشغل، لا أعتقد أن برنامج تشفير MP3 أو برنامج تشفير AMR متاحان بسبب مشكلات الترخيص، ولكن AAC موجود، أو؟؟؟)

تحرير/تحديث: عثرت على النص التالي في "دليل برمجة تطبيقات الآيفون" الخاص بشركة Apple، 06-01-2009، الصفحة 137، القسم:تسجيل الصوت:
"يمكنك تسجيل الصوت بأي من التنسيقات المدرجة في "تنسيقات الصوت المفضلة في نظام التشغيل iPhone OS" (صفحة 140)"، وتنسيقات الصوت المفضلة في الصفحة 140 هي:"للحصول على صوت مضغوط عند تشغيل صوت واحد في كل مرة، وعندما لا تحتاج إلى تشغيل الصوت في وقت واحد باستخدام تطبيق iPod، استخدم تنسيق AAC الموجود في ملف CAF أو m4a."
وبالتالي، أفسر ذلك على أنه إشارة واضحة إلى أنه ليس من الممكن فحسب، بل من الأفضل أيضًا، تسجيل الصوت بتنسيق AAC ملفوفًا في ملف m4a، وهو ما أريده تمامًا.ولكنني مازلت غير قادر على تحقيق ذلك؟!

شكرا ، /جون

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

المحلول

استمر في النظر إلى تلك المستندات.في "أساسيات الصوت الأساسية"، قسم "مكونات الصوت الأساسية:"وحدات الصوت وبرامج الترميز" تشير إلى ما يلي:

يحتوي iPhone OS على برامج ترميز التسجيل المدرجة في الجدول 2-5.كما ترون ، لا يتوفر تسجيل MP3 أو AAC.ويرجع ذلك إلى ارتفاع وحدة التحكم في وحدة المعالجة المركزية ، وتصريف البطارية الناتج عن هذه التنسيقات.

يسرد الجدول 2-5 العديد من التنسيقات، لكن الملاحظات النصية لا تتضمن التنسيقات التي تبحث عنها.إذا كنت تريد هذه التنسيقات، فسيتعين عليك إحضار برنامج التشفير الخاص بك.

نصائح أخرى

من الممكن في iPhone 3GS و iPod الجيل الثاني وما فوق.لديهم جهاز تشفير لـ AAC.يوجد مشروع مثال لشركة Apple لهذا يفعل بالضبط ما تريد القيام به:

iPhoneExtAudioFileConvertTest

نصيحة لاستخدام faac للتحويل من ملفات PCM الخطية لإخراج iPhone إلى تنسيق aac:

لقد وجدت من خلال التجربة أنه يجب عليك استخدام -X علامة على إصدار سطر الأوامر من FAAC (تشغيل على Mac OS X) ، والتي "تبادل بايت الإدخال." (أعتقد أنه يغير endian-ness.)

لذلك، على سبيل المثال، إذا قمت بتسجيل الملف صوتيًا linear.pcm على جهاز iPhone الخاص بك، يمكنك بعد ذلك تشغيل:

faac -XP linear.pcm

على جهاز Mac الخاص بك لتحويل ذلك إلى ملف AAC linear.aac.

أعتقد أن هذا يعني أنك قد تكون قادرًا على استخدام faac داخل تطبيقك لإجراء التحويل، إذا أردت ذلك، نظرًا لأنها مكتبة C.

لاحظ أيضًا، من الناحية الفنية، أن الملفات التي يتم إخراجها بواسطة خدمات الصوت الخاصة بـ iPhone هي عادةً ملفات CAF، تنسيق الصوت الأساسي، وهو نوع من التنسيق المجمّع حول مجموعة من الترميزات المحتملة: مستندات Apple على CAF.سطر الأوامر أعلاه يعمل بشكل جيد بالنسبة لي على الرغم من ذلك linear.pcm يبدأ بـ caff header.

هل جربت عاجِز التشفير mp3؟أو faac/faad الترميز AAC؟يمكنك تضمينها فيها ffmpeg لمزيد من برامج الترميز الصوتية.

لماذا لا تحاول TPAACaudioConverter كتبها أسطوري مايكل تايسون ؟

TpaacaudiOconverter هي فئة Objective-C بسيطة تقوم بتحويل أي ملف صوتي إلى M4A مشفرة AAC ، بشكل غير متزامن مع مندوب ، أو يحول أي صوت يتم توفيره بواسطة فئة مصدر بيانات (والتي توفر التسجيل مباشرة إلى AAC).

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