রাস্পবেরি পাইতে / dev / vchiq কী?


10

আমি রাস্পবেরি পাই 3 এবং রাস্পবিয়ান জেসি ব্যবহার করছি এবং আমি পেরগ-সিজি সহ প্রোগ্রাম (ওমপ্লেয়ার) কল করার চেষ্টা করে / ডি / ভিচিক জুড়ে এসেছি যা আমার রিপিতে কিছু সংগীত বাজায়। এবং আমি এটি কাজ করতে না।

আমি যখন এটি আমার ব্রাউজারটি দিয়ে খুললাম (যেমন লোকালহোস্ট / মুজিকিকা / পুস্টি.পিএল) [অ্যাপাচি ২] এটি বলেছিল " ভ্যাচিক উদাহরণটি খুলতে ব্যর্থ হয়েছে "। সুতরাং আমি / dev / vchiq ফাইলের অনুমতিগুলি xx7 এ পরিবর্তন করেছি এবং এটি আমার রিপিআই পুনরায় চালু না করা অবধি কাজ করে। সুতরাং এটি খুঁজে বের করে www-ডেটা (ব্যবহারকারী যা আমার প্রোগ্রামটি চালাচ্ছে যা আমার পুস্টি.পিএল স্ক্রিপ্ট কল করবে) ভিডিও গ্রুপে যুক্ত করেছে, কারণ / dev / vchiq ভিডিও গ্রুপের অংশ। এবং এটা কাজ করে!

এখন, কী হল / dev / vchiq xD এবং কেন www- ডেটা আমার রাস্পবেরি পাইতে শব্দ বাজানোর জন্য কমপক্ষে পড়া এবং লেখার অনুমতি প্রয়োজন?

আগাম ধন্যবাদ.

উত্তর:


12

আমি আশ্চর্য হয়েছি যে সর্বশক্তিমান গুগলের কাছে "ভিসিআইকিউ কি?" এই প্রশ্নের উত্তর নেই। আমি দীর্ঘকালীন কার্নেল গীক এবং কোনও ব্রডকমের কর্মচারী নই, না আমি বিসিএম ২৮৩ * বিশেষজ্ঞও নই, তবে উত্তরসূরির জন্য আমি যা পেয়েছি তা এখানে:

থেকে রাস্পবেরী Pi কার্নেল শাখা :

বিসিএম 2708 পণ্যের পরিবারের জন্য ভিডিও কোর যোগাযোগের ইন্টারফেসের কার্নেল।

এখানে লক্ষ্য করার মতো বিষয় হ'ল পাইক চালিত এসওসিটির জন্য ভিডিওকোয়ারটি (আশ্চর্য অবাক করে দেওয়া) ভিডিও কন্ট্রোলার এবং এটি প্রদর্শিত হবে যে জিপিইউতে সংযুক্ত বিভিন্ন সাবসিস্টেমগুলিতে কম-বেশি-সরাসরি সরাসরি আইওসিটিএল চালানোর একটি সহজ উপায় this । এটিতে ভিডিওটি অন্তর্ভুক্ত করা কোনও বড় অবাকের বিষয় নয়, তবে আমার ধারণা অনুমান করা যায় যে ক্যামেরা ইন্টারফেসটির ভিডিও কোডোর মধ্যে সিলিকন রয়েছে যা সমস্ত কোডেক স্টাফ ভিডিও করতে হবে।

তাহলে কেন অডিও নিয়ন্ত্রণটি ভিডিওকোরের মাধ্যমেও চালিত হয় (অন্যথায় এটি নিয়ন্ত্রণের জন্য ভিসিআইকিউ প্রয়োজন হবে না)? আমি সন্দেহ করি যে, ভিসির এইচ .264 এবং অন্যান্য কোডেকগুলির জন্য হার্ডওয়্যার সমর্থন রয়েছে (এবং আপনি এইচডিএমআই এর মাধ্যমে অডিও রুট করতে পারেন) এই কারণে সিলিকন স্থাপনের জন্য এটি কেবল সহজতম জায়গা ছিল। ঠিক আছে, এবং বিসিএম চিপটিতে দুটি এমএমইউ রয়েছে (একটি ভিসি + এআরএমের জন্য, অন্যটি সাধারণ ওএস ব্যবহারের জন্য - অন্য পৃষ্ঠা 5 এ চিত্র দেখুন ), যা শূন্য-অনুলিপি ডিএমএকে সম্ভব করে তোলে (জিনিসগুলিতে জিনিসগুলি অনুলিপি করার প্রয়োজন নেই) অডিও সিলিকন - কেবল এটি বলুন যে মেমরির একটি অংশ এটির অন্তর্গত এবং সিপিইউ নয় Dun ডান্নো এখনও তারা যদি কভারের নীচে এটি করে তবে আপনি কেন করবেন না?)।

দ্রষ্টব্য যে VCHIQ- এ আইওসিটিএলগুলি সত্যিকার অর্থে ডেটা স্থানান্তর করে না - তারা ডিএমএ এবং অন্যান্য ক্রিয়াকলাপ মেমরি খণ্ডগুলির মধ্যে স্থাপন করে এবং বিভিন্ন বিটগুলিতে আদেশ পাঠায়। এটি অত্যন্ত বিপজ্জনক হতে পারে, যেহেতু আপনি সম্ভবত ব্যবহারকারীর স্থান থেকে অভ্যন্তরীণ কার্নেল ডেটা স্ট্রাকচারগুলি দিয়ে স্ক্রি করতে পারেন, জিপিইউ ক্র্যাশ করতে পারেন, দুর্নীতিগ্রস্থ ডেটা ঘিরে ফেলছেন ইত্যাদি So 777 মোডে সেট করবেন না!

যাই হোক না কেন, "VCHIQ কি?" এর সংক্ষিপ্ত উত্তর এটা এখানে:

ভিএইচআইকিউ হ'ল ভিডিওকোর সিলিকনে চলমান লিনাক্স কার্নেল এবং পেরিফেরিলের (অন্যান্য জিনিসের মধ্যে) মধ্যে একটি কমান্ড ইন্টারফেস। / dev / vhciq ক্যামেরা এবং অডিও সাবসিস্টিমেও (কমপক্ষে) ব্যবহারের জন্য সেই কমান্ডগুলিতে জেনেরিক ইউজারস্পেস অ্যাক্সেস সরবরাহ করে। এলোমেলো প্রোগ্রামগুলিতে প্রকাশের জন্য এটি একটি শঙ্কিত বিপদজনক ইন্টারফেস, সুতরাং ডিফল্টরূপে কিছুটা সীমাবদ্ধ অনুমতি রয়েছে।

এমন ব্যক্তিরা আছেন যাঁরা আরপিআই সম্প্রদায়ের বিসিএম হার্ডওয়্যারগুলিতে চোখের জল ফেলে; আমি তাদের একজন নই (কয়েক ঘন্টার গবেষণার পরে আমি সম্ভবত গোড়ালি-গভীর :-))। এটি বলেছিল, আমি মনে করি এটি একটি শালীন উচ্চ-স্তরের ওভারভিউ এবং সংযোজন / সংশোধনকে স্বাগত জানাবে।

ডাব্লু-ডেটা অনুমোদনের প্রয়োজন কেন, আপনার সিজিআই প্রোগ্রামটি সেই ব্যবহারকারী হিসাবে শিশু প্রক্রিয়াগুলি তৈরি করছে। আমি সেই বিশেষ খেলোয়াড়কে ভালভাবে জানি না, তবে সাধারণত ভাল কোনও অনুশীলন হ'ল কোনও শিশুকে সরাসরি জন্মদানের পরিবর্তে ইউএনএক্স সকেট বা অনুরূপ ইন্টারফেস ব্যবহার করে সিজিআই থেকে এটি নিয়ন্ত্রণ করতে এবং প্রোগ্রামটি নিয়ন্ত্রণের জন্য কিছু বিশেষ ডেমন চালানো হয়।

প্রকৃতপক্ষে, কোনও সুরক্ষা বিক্রেতা তাদের মেশিনে তাদের ওয়েব সার্ভারের রুট অ্যাক্সেসের অনুমতি দেওয়ার জন্য কিছুক্ষণ আগেই ফাঁস হয়ে গেল । তারা সম্ভবত এই ধরনের মাঝারি স্তরটি লেখার চেয়ে প্রক্রিয়া পরিচালনা সহজ করার জন্য এটি করেছিলেন তবে এটি কোনও সুরক্ষা নয়। মূলত জিপিইউ ডিএমএ-তে অ্যাপাচি দেওয়া নিখরচায় অ্যাক্সেস দেওয়া সমান একটি খারাপ ধারণা (যদিও আমি স্বীকার করি এটির পক্ষে আরও শক্ত)।

আশা করি এটি আপনার প্রশ্নের উত্তর দেয়।


1
"তাহলে কেন ভিডিওর মাধ্যমে অডিও নিয়ন্ত্রণও চালিত হয় (অন্যথায় এটি নিয়ন্ত্রণের জন্য ভিসিআইকিউ প্রয়োজন হবে না)?" -> নোট করুন যে /dev/vhciqসাধারণত অডিও চালানোর জন্য আপনার অ্যাক্সেসের প্রয়োজন হবে না - এই ক্ষেত্রে এটি কারণ ওপি এটি করতে ব্যবহার omxplayerকরছে যা সম্ভবত আদর্শ নয়।
স্বর্ণিলকস

হুম। আমি প্রত্যাশা করি একটি ALSA ড্রাইভার আছে যা উপযুক্ত ব্যবহারকারী ল্যান্ড ইন্টারফেস তৈরি করে। আমি ৫-সেকেন্ডের গুগল অনুসন্ধান ব্যতীত ওমপ্লেয়ার সম্পর্কে কিছুই জানি না এবং ভাবছি না যে এটি অডিওতে অতিরিক্ত প্রবেশাধিকারের সাথে আকর্ষণীয় কিছু করছে (যেমন একটি হার্ডওয়্যার কোডেক ব্যবহার করে) বা নির্বোধভাবে কোনও ডিভাইস খোলার প্রয়োজন নেই যা এটির দরকার নেই। আকর্ষণীয়, এবং আমি এও কল্পনা করতে পারি যে ALSA ড্রাইভার কভারের নীচে VHCIQ ব্যবহার করে (সরাসরি কার্নেলস্পেসের মধ্যে, ন্যাচ)। ঝরঝরে স্টাফ!
বিজে ব্ল্যাক

1
আসলে কী ঘটেছিল তা আমি জানি না তবে জল্পনা ... জিপিইউতে হার্ডওয়্যার এমপিইজি ডিকোড রয়েছে এবং এতে এমপি 3 অডিও অন্তর্ভুক্ত থাকতে পারে (কোনওভাবেই রেফ খুঁজে পাচ্ছেন না), এবং একটি হার্ডওয়্যার ডিকোডার সম্ভবত কিছুটা কম গ্রাস করবে সফটওয়্যার ডিকোড চেয়ে রস। সুরক্ষা ব্যয়ের জন্য এটি মোটামুটি উপযুক্ত নয়, তবে সম্ভবত আকর্ষণীয়।
বিজে ব্ল্যাক

1
হাহ। ঝরঝরে। কেবল pqru.qr.ai এর মাধ্যমে দেখে মনে হচ্ছে ALSA ড্রাইভারটি প্রচ্ছদের নীচে সত্যই VHCIQ ব্যবহার করে (/ dev / vhciq এর সাথে কথা বলার দরকার নেই কারণ এটি সরাসরি কার্নেল এপিআইতে কল করতে পারে তবে এখনও ...)।
বিজে ব্ল্যাক

2
অবশ্যই। মূলত এখানে যা ঘটছে তা হ'ল ব্রডকম চিপটি দুটি প্রধান অংশে কেটে গেছে - সিপিইউ (যা লিনাক্স সাধারণ উদ্দেশ্যমূলক সফ্টওয়্যারের সাথে কথা বলে এবং চালায়) এবং জিপিইউ (যা একটি স্বাধীন ফার্মওয়্যার চালায় এবং ভিডিও পরিচালনা করে ইত্যাদি)। ভিপিআইকিউ হল ইন্টারফেস যা সিপিইউ জিপিইউর সাথে কথা বলতে ব্যবহার করে। এটি একটি সরলীকরণ, তবে সম্ভবত এখনই যথেষ্ট ভাল।
বিজে ব্ল্যাক

0

আমার ক্ষেত্রে আমি একই সমস্যা ছিল যখন আমি ডিফল্ট ব্যবহারকারীর পাশাপাশি একটি নতুন ব্যবহারকারী তৈরি করেছিলাম এবং আমার কেবল শব্দটিই নয়, ওয়াইফাইটির কনফিগারেশন, সিরিয়াল পোর্টে অ্যাক্সেস ইত্যাদি সমস্যা ছিল ... তারপরে আমি / ইত্যাদি খুললাম / গ্রুপ ফাইল। এবং আমি আমার ব্যবহারকারীকে এমন সমস্ত গ্রুপে যুক্ত করেছি যেখানে ব্যবহারকারী 'পাই' inোকানো হয়েছিল এবং সমস্ত কিছুই নিখুঁতভাবে কাজ করেছিল। নিম্নরূপ:

মূল: x: 0:
ডিমন: x: 1:
বিন: x: 2:
সিএস: এক্স: 3:
মানা: x: 4: পাই, কার্লোস 
টিটি: এক্স: 5: পাই, কার্লোস
ডিস্ক: x: 6:
এলপি: এক্স: 7:
মেল: এক্স: 8:
সংবাদ: এক্স: 9:
uucp: x: 10:
মানুষ: x: 12:
প্রক্সি: x: 13:
কেমিএম: এক্স: 15:
ডায়ালআউট: x: 20: পাই, কার্লোস
ফ্যাক্স: x: 21:
ভয়েস: x: 22:
সিড্রোম: x: 24: পাই, কার্লোস
ফ্লপি: এক্স: 25:
টেপ: x: 26:
sudo: x: 27: pi, কার্লোস 
অডিও: x: 29: পাই, কার্লোস , টিপুন
ডিপ: এক্স: 30:
www-ডেটা: এক্স: 33:
ব্যাকআপ: এক্স: 34:
অপারেটর: এক্স: 37:
তালিকা: এক্স: 38:
রৌদ্র: x: 39:
src: x: 40:
gnats: x: 41:
ছায়া: x: 42:
উত্তম: x: 43:
ভিডিও: x: 44: পাই, কার্লোস
এসএএসএল: এক্স: 45:
প্লাগদেব: x: 46: পাই, কার্লোস
স্টাফ: এক্স: 50:
গেমস: এক্স: 60: পাই, কার্লোস 
ব্যবহারকারী: x: 100: পাই, কার্লোস
নোগ্রুপ: এক্স: 65534:
ইনপুট: এক্স: 101: পাই, কার্লোস
সিস্টেমড-জার্নাল: এক্স: ১০২:
সিস্টেমড-টাইমসিঙ্ক: এক্স: 103:
সিস্টেমড-নেটওয়ার্ক: এক্স: 104:
সিস্টেমড-রেজোলিউশন: এক্স: 105:
সিস্টেমড-বাস-প্রক্সি: x: 106:
ক্রোনটব: এক্স: 107:
নেটদেব: x: 108: পাই, কার্লোস
পাই: x: 1000:
মেসেজবাস: এক্স: 109:
ssh: x: 110:
ব্লুটুথ: x: 111:
আভাহি: এক্স: 112:
স্পি: x: 999: পাই, কার্লোস 
i2c: x: 998: পাই, কার্লোস 
জিপিও: এক্স: 997: পাই, কার্লোস
লাইটডিএম: এক্স: 113:
এপিএমডি: এক্স: 114:
এসএসএল-সার্ট: x: 115:
কার্লোস: এক্স: 1001:
আরটিকিট: এক্স: 116:
টিপুন: এক্স: 117:
নাড়ি-অ্যাক্সেস: এক্স: 118:
 

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.