ভিএলসি প্রকল্প

এই পৃষ্ঠায় Google সিজন অফ ডক্সের জন্য গৃহীত প্রযুক্তিগত লেখার প্রকল্পের বিশদ বিবরণ রয়েছে৷

প্রকল্পের সারাংশ

ওপেন সোর্স সংস্থা:
ভিএলসি
প্রযুক্তিগত লেখক:
অভিষেক প্রতাপ সিং
প্রকল্পের নাম:
VLC ব্যবহারকারী ডকুমেন্টেশনের আধুনিকীকরণ চালিয়ে যান
প্রকল্পের দৈর্ঘ্য:
স্ট্যান্ডার্ড দৈর্ঘ্য (3 মাস)

প্রকল্পের বিবরণ

ডকুমেন্টেশনের বর্তমান অবস্থা

ভিএলসি ব্যবহারকারী ডকুমেন্টেশন আধুনিকীকরণ এবং আপডেট হওয়ার প্রক্রিয়াধীন রয়েছে। উইকি-ভিত্তিক পুরানো ডকুমেন্টেশন[1] থেকে ReadTheDocs-এ হোস্ট করা আধুনিক ব্যবহারকারী ডকুমেন্টেশন[2]-এ রূপান্তর প্রক্রিয়া চলছে।

লক্ষ্য শ্রোতা

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

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

পৃষ্ঠার শুরুতে প্রাক-প্রয়োজনীয় বিষয়গুলি উল্লেখ করে বা ঐচ্ছিক বিভাগগুলি রেখে সঠিক ভারসাম্য অর্জন করা যেতে পারে যা ভালভাবে পারদর্শী ব্যক্তিরা এড়িয়ে যেতে পারেন।

বিল্ডিং অনুবাদের জন্য, টার্গেট শ্রোতা হল ভিএলসি-এর ডেভেলপার/ব্যবহারকারী যারা ইংরেজি এবং তারা যে ভাষাতে অনুবাদ করবে তার ভালো ধারণা রয়েছে।

টুলস

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

স্ফিংসের জন্য, আমি এটি সম্পর্কে পড়েছিলাম যখন একজন সহকর্মী ওপেন-সোর্স উত্সাহী মন্তব্য করেছিলেন যে কতগুলি সংস্থা তাদের ডকুমেন্টেশন তৈরির জন্য এটি ব্যবহার করছে (ব্লেন্ডারের উল্লেখযোগ্য উদাহরণ সহ, যা তাদের ব্যবহারকারী ম্যানুয়াল[3] এবং API ডকুমেন্টেশন তৈরির জন্য স্ফিঙ্কস ব্যবহার করে [৪])।

আমি ReadTheDocs এর সাথে সামান্য পরিচিত ছিলাম, যা সংস্করণ করার জন্য এবং প্রযুক্তিগত ডকুমেন্টেশন হোস্ট করার জন্য একটি ভাল টুল। তাই, আমি খুব বেশি সমস্যা ছাড়াই ভিএলসি ডকুমেন্টেশন তৈরি করতে সক্ষম হয়েছি এবং আমি পুনর্গঠিত পাঠ্যের সাথে পরিচিত, যে ফর্ম্যাটিং ব্যবহার করা হয়েছে।

অনুবাদের জন্য, VLC i18n এবং l10n বাস্তবায়নের জন্য .po ফাইল তৈরি করতে Babel ব্যবহার করছে। বর্তমানে, আমি নিজেকে Babel ওয়ার্কফ্লো এবং কিভাবে Sphinx ব্যবহার করে .mo ফাইল তৈরি করতে হয় তার সাথে পরিচিত হচ্ছি।

আমি উপরে উল্লিখিত সরঞ্জামগুলির জটিলতার সাথে নিজেকে আরও পরিচিত করার জন্য বন্ধনের সময়কাল ব্যবহার করতে চাই।

বিতরণযোগ্য এবং সাপ্তাহিক টাইমলাইন

2019 প্রকল্পের অংশ হিসাবে, ইনস্টলেশন, ইন্টারফেস, অডিও, ভিডিও, প্লেব্যাক ইত্যাদির অংশগুলি (বেশিরভাগ মৌলিক কার্যকারিতা) ইতিমধ্যেই কভার করা হয়েছে৷ তাই, 2020 প্রকল্পের জন্য, আমি ব্যবহারকারীর ডকুমেন্টেশনের উন্নত ব্যবহার বিভাগে আপডেট এবং কাজ করতে চাই।

বিতরণযোগ্য 1 [সপ্তাহ1-2]: ট্রান্সকোড ডকুমেন্টেশন আপডেট করুন, যেমন #7[5] এ উল্লিখিত হয়েছে।

  • ট্রান্সকোড
  • একাধিক ভিডিও ট্রান্সকোড করুন
  • একটি লোগো যোগ করুন
  • একসাথে ভিডিও মার্জ
  • অডিও এক্সট্রাক্ট করুন এবং ফাইল থেকে অডিও এক্সট্রাক্ট করুন
  • একটি ডিভিডি রিপ করুন

বিতরণযোগ্য 2 [সপ্তাহ 3-4]: ফায়ারফক্স 77, ক্রোম 83 এবং এজ 83-এ পরীক্ষা করার সময় ওয়েব-প্লাগইন হিসাবে VLC ব্যবহার করে আপডেট করুন[6]।

  • ভিডিও দিয়ে ওয়েবপেজ তৈরি করা
  • এম্বেড ট্যাগ বৈশিষ্ট্য
  • জাভাস্ক্রিপ্ট API বিবরণ

বিতরণযোগ্য 3 [সপ্তাহ 5]: কমান্ড লাইন ইন্টারফেস[7] কমান্ড পরীক্ষা করুন এবং সেই অনুযায়ী আপডেট করুন।

  • প্রবাহ
  • মডিউল নির্বাচন
  • আইটেম নির্দিষ্ট বিকল্প
  • ফিল্টার

সপ্তাহ 6: উপরের তিনটি ডেলিভারেবলের জন্য বাফার সপ্তাহ।

বিতরণযোগ্য 4 [সপ্তাহ 7-8]: অনুবাদের জন্য প্রস্তুত হন। আপডেট করা ছাড়াও, আমি অন্যান্য ভাষায় অনুবাদের জন্য প্রস্তুত করব। এটি গুরুত্বপূর্ণ কারণ অনুবাদের পরে, কোন ইংরেজি ব্যাকগ্রাউন্ড নেই এমন ব্যবহারকারীরা ডকুমেন্টেশন পড়তে সক্ষম হবেন (এবং, একটি পাশের নোটে, ভিএলসি বিশ্ব আধিপত্য অর্জনের এক ধাপ কাছাকাছি হবে[8])।

প্রস্তাবের টুলস বিভাগে উল্লেখ করা হয়েছে, VLC বর্তমানে অনুবাদের জন্য .po ফাইল তৈরি করতে Babel ব্যবহার করে। আমি একজন ব্যবহারকারী/স্বেচ্ছাসেবকের জন্য প্রক্রিয়াটি নথিভুক্ত করব:

  • স্থানীয়ভাবে বেস ডকুমেন্টেশন ডাউনলোড এবং তৈরি করুন।
  • প্রয়োজনীয় ফাইল তৈরি করতে Babel ব্যবহার করুন।
  • স্ট্রিংগুলির জন্য অনুবাদ লিখুন।
  • Sphinx ব্যবহার করে অনুবাদিত ডকুমেন্টেশন তৈরি করা।
  • পরিবর্তনগুলি প্রতিশ্রুতিবদ্ধ করুন।

বিতরণযোগ্য 5 [সপ্তাহ 9-10]: মডিউল ডকুমেন্টেশনের জন্য প্রস্তুত করুন। পরামর্শদাতাদের সাথে আলোচনা করা হয়েছে, আমি দুটি অংশে মডিউল ডকুমেন্টেশনের জন্য প্রস্তুত করার পরিকল্পনা করছি।

অংশ - I: একটি স্ক্রিপ্টের মাধ্যমে মডিউলগুলির কাছাকাছি ফাইল তৈরি করা যা কোড বেস থেকে বৈধ বিকল্পগুলি সন্ধান করে এবং সংশ্লিষ্ট উইকি পৃষ্ঠাগুলি থেকে তাদের এক-লাইন ব্যবহার (এবং ডিফল্ট মান) বের করে। এটি একটি মৌলিক খসড়া হিসেবে কাজ করবে।

অংশ - II: একটি প্ল্যাটফর্ম-নির্দিষ্ট কাঠামো তৈরি করা যা একটি নির্দিষ্ট প্ল্যাটফর্মের জন্য সমস্ত মডিউল+প্লাগইন+বিকল্পগুলিকে লিঙ্ক করে (উইন্ডোজ, এবং যদি সময় অনুমতি দেয়, ফেডোরার জন্যও)।

মডিউলগুলির কাছাকাছি ফাইল তৈরি করা নিশ্চিত করবে যে ডকুমেন্টেশনটি সোর্স কোডের কাছাকাছি। নীচের-শীর্ষের পদ্ধতি ব্যবহার করে, প্রধান মডিউল ডকুমেন্টেশন তৈরি করা হবে অংশ - I তে তৈরি ফাইলগুলিকে একত্রিত করে এবং অংশ - II তে তৈরি কাঠামোটিকে একটি রেফারেন্স হিসাবে ব্যবহার করে৷

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

বোনাস বিতরণযোগ্য [সপ্তাহ 11]: 4.0 প্রকাশের জন্য প্রস্তুত হন। যদি প্রকল্পটি সময়সূচীতে থাকে, আমি একটি বোনাস বিতরণযোগ্য প্রস্তাব করতে চাই। পরামর্শদাতাদের সাথে আলোচনা করা হয়েছে, 4.0 রিলিজের জন্য প্রস্তুতি মানে 3.0 সংস্করণের জন্য একটি স্থিতিশীল এবং প্রায় সম্পূর্ণ ডকুমেন্টেশন থাকা।

তাই, উল্লেখিত পদ্ধতিগুলি যাচাই ও আপডেট করার জন্য আমি নিম্নলিখিত বিভাগগুলির ইতিমধ্যে সম্পূর্ণ ডকুমেন্টেশনের মধ্য দিয়ে যাব:

  • মৌলিক ব্যবহার: মিডিয়া, প্লেব্যাক, অডিও, ভিডিও, সাবটাইটেল, হটকি, রেকর্ডিং, সেটিংস, টিপস এবং কৌশল।
  • উন্নত ব্যবহার: প্লেয়ার, ইন্টারফেস, ট্রান্সকোড, স্ট্রিমিং, অস্বাভাবিক কেস।
  • অ্যাড-অন: এক্সটেনশন, স্কিনস।

সপ্তাহ 12: উপরের তিনটি বিতরণযোগ্য + চূড়ান্ত প্রতিবেদনের জন্য বাফার সপ্তাহ।

আমি কেন এই প্রকল্পের জন্য সঠিক ব্যক্তি?

একজন প্রযুক্তি উত্সাহী হিসাবে, আমার সফ্টওয়্যার ব্যবহার/পরীক্ষা করার অভিজ্ঞতা আছে এবং মাঝে মাঝে, তাদের কোড বেস থেকে বোঝার চেষ্টা করি। প্রকৃতপক্ষে, একটি ওপেন-সোর্স সংস্থার কোড বেস বোঝার চেষ্টা করার সময় আমি প্রথমবারের মতো ডকুমেন্টেশনের গুরুত্ব বুঝতে পেরেছিলাম। আরও, একজন সঙ্গীত উত্সাহী হিসাবে, আমার কাছে ভিএলসি এর সাথে টুইট করার অনেক অভিজ্ঞতা আছে :)

তা ছাড়া, আমি সারাজীবন একজন গবেষক এবং লেখক হয়েছি। আমি কিছু না লিখলে, আমি কখনই তা বুঝতে পারি না এবং এই অভ্যাসটি আমাকে একজন দক্ষ নোট গ্রহণকারী এবং ডকুমেন্টার করে তুলেছে।

এই দুটি অভ্যাসের ছেদ আমাকে প্রযুক্তিগত ডকুমেন্টেশনের জন্য উপযুক্ত করে তোলে। ব্যবহারকারীরা বুঝতে পারে এমনভাবে আমার অনুসন্ধান/প্রক্রিয়াগুলি নথিভুক্ত করার পাশাপাশি আমি প্রযুক্তিগত দিকগুলির মাধ্যমে আমার পথ খুঁজে পেতে পারি।

লিঙ্ক: [1] https://wiki.videolan.org/Documentation:User_Guide/ [2] https://vlc-user-documentation.readthedocs.io/en/latest/index.html [3] https:// docs.blender.org/manual/en/latest/ [4] https://docs.blender.org/api/current/index.html [5] https://code.videolan.org/docs/vlc-user/-/issues/7 [6] https://wiki.videolan.org/Documentation:WebPlugin/ [7] https://wiki.videolan.org /ডকুমেন্টেশন:Command_line/ [8] https://trac.videolan.org/vlc/ticket/35