উইন্ডোজ 10 এ upscaling সঙ্গে ffmpeg সঙ্গে কাজ করতে lossless কম্প্রেশন পেতে পারি না


1

আমি PNG ইমেজ একটি ক্রমবর্ধমান ভিডিও একটি upscaling যখন (একই দৃষ্টিপাত অনুপাত রাখা) একটি ক্রম রূপান্তর করার চেষ্টা করছি। আমি একটি PNG ইমেজ সংযুক্ত আছে

png image

যাইহোক, আমি ব্যবহার প্রতিটি ক্ষতিহীন বিকল্প সম্ভবত ক্ষতিগ্রস্ত না, বা দূষিত ভিডিও ফলাফল।

আমি চেষ্টা করেছি ffmpeg -framerate 60 -i %d.png -vf scale=-1:2160 -c:v libx264 -crf 0 -preset veryslow -c:a libmp3lame -b:a 320k output.mp4 আমি cmd লাইন আউটপুট যোগ করার চেষ্টা করেছি কিন্তু এই ওয়েবসাইটটি আমার প্রশ্ন অভিযোগ করে যে আমি যদি স্প্যাম করি এবং আমাকে এটি পোস্ট করতে দেয় না।

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

আমি ছবির সম্পূর্ণ সেটের সাথে এটি পরীক্ষা করেছি, যা আমি একটি ভিডিওতে তৈরি করতে চাই এবং শুধুমাত্র 3 টি ফ্রেম যাতে আমি নিশ্চিত থাকতে পারি যে ইনপুট .png এর সাথে কোনও ভুল নেই, উভয় ক্ষেত্রেই একই ফলাফল ঘটে।

আমি অনলাইন অনুসন্ধান করার পরে পাওয়া গেছে যে যোগ করুন- pix_fmt yuv420p সাহায্য করতে পারেন, তাই এই চেষ্টা করেছেন

ffmpeg -framerate 60 -i %d.png -vf scale=-1:2160 -c:v libx264 -crf 0 -preset veryslow -c:a libmp3lame -b:a 320k -pix_fmt yuv420p output.mp4

এটি করার ফলে VLC এখন এটি খুলতে পারে (তবে ফায়ারফক্স এবং উইন্ডোজ মিডিয়া প্লেয়ার এখনও এটি দূষিত বলে মনে করে)। যাইহোক, এটি এখনও ক্রোম এবং ভিএলসি উভয় মধ্যে সংকুচিত ক্ষতিগ্রস্ত হয়।

আমি তারপর চেষ্টা করেছেন ffmpeg -framerate 60 -i %d.png -vf scale=-1:2160 -c:v libvpx-vp9 -lossless 1 output.webm

যা আমি সংগ্রহ করি তার ফলে লসলেস হওয়া উচিত 1, তবে এই ফলাফলগুলি খুব অদ্ভুত আউটপুট করে। ভিএলসি এবং ফায়ারফক্সে, আউটপুট শুধু কালো। তবে ক্রোমের মধ্যে, আউটপুট প্রধানত একটি সবুজ পটভূমি যা পর্দার নীচে গাঢ় সবুজ থেকে উপরের দিকে সবুজ আলোতে, মাঝখানে একটি গাঢ় সবুজ বৃত্ত সহ, এবং উপরের বাম দিকের লেখাটি গোলাপী হয়ে উঠেছে। উইন্ডোজ মিডিয়া প্লেয়ারে, আউটপুটটি একই রকম হলেও কেন্দ্রটিতে কোনও গাঢ় সবুজ বৃত্ত নেই এবং উপরের বাম দিকের পাঠটি খুব উজ্জ্বল আলোর সবুজতে পরিবর্তিত হয়েছে এবং নিচের রেজোলিউশনে এটি নিজেও ডুপ্লিকেট করা হয়েছে তবে বড় ফন্ট এবং পরিবর্তিত হয়েছে একটি কালো রূপরেখা সঙ্গে একটি গাঢ় গোলাপী। আমি সম্ভবত এই ঘটতে পারে কিভাবে বুঝতে পারছি না

very weird windows media player output

আমি তারপর যোগ হিসাবে -pix_fmt yuv420p যোগ করার চেষ্টা করেছি, ffmpeg -framerate 60 -i %d.png -vf scale=-1:2160 -c:v libvpx-vp9 -lossless 1 -pix_fmt yuv420p output.webm

এটি করার সময়, ভিএলসি এবং ফায়ারফক্সের আউটপুটটি এখনও ফাঁকা, তবে ক্রোম এবং উইন্ডোজ মিডিয়া প্লেয়ার এখন স্বাভাবিক আউটপুট দেখায়, তবে ফলাফলটি সম্ভবত আবারও ক্ষতিকারক কম্প্রেশন।

আমি তারপর ffmpeg -framerate 60 -i% d.png চেষ্টা করেছি -vf স্কেল = -1: 2160 -c: v ffv1 -c: একটি libmp3lame -b: একটি 320k output.avi

তবে আউটপুট VLC এ কেবল একটি ফাঁকা কালো পর্দা, উইন্ডোজ 10 মেশিন এবং উবুন্টু মেশিনে উভয়ই ইনস্টল করা হয়েছে। এই জন্য cmd আউটপুট হয়

ffmpeg -framerate 60 -i %d.png -vf scale=-1:2160 -c:v ffv1 -c:a libmp3lame -b:a 320k output.avi ffmpeg version N-91999-g148a21611d Copyright (c) 2000-2018 the FFmpeg developers built with gcc 8.2.1 (GCC) 20180813 configuration: --enable-gpl --enable-version3 --enable-sdl2 --enable-fontconfig --enable-gnutls --enable-iconv --enable-libass --enable-libbluray --enable-libfreetype --enable-libmp3lame --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libopenjpeg --enable-libopus --enable-libshine --enable-libsnappy --enable-libsoxr --enable-libtheora --enable-libtwolame --enable-libvpx --enable-libwavpack --enable-libwebp --enable-libx264 --enable-libx265 --enable-libxml2 --enable-libzimg --enable-lzma --enable-zlib --enable-gmp --enable-libvidstab --enable-libvorbis --enable-libvo-amrwbenc --enable-libmysofa --enable-libspeex --enable-libxvid --enable-libaom --enable-libmfx --enable-amf --enable-ffnvcodec --enable-cuvid --enable-d3d11va --enable-nvenc --enable-nvdec --enable-dxva2 --enable-avisynth libavutil 56. 19.101 / 56. 19.101 libavcodec 58. 30.100 / 58. 30.100 libavformat 58. 18.102 / 58. 18.102 libavdevice 58. 4.103 / 58. 4.103 libavfilter 7. 32.100 / 7. 32.100 libswscale 5. 2.100 / 5. 2.100 libswresample 3. 2.100 / 3. 2.100 libpostproc 55. 2.100 / 55. 2.100 Input #0, image2, from '%d.png': Duration: 00:00:10.00, start: 0.000000, bitrate: N/A Stream #0:0: Video: png, rgb24(pc), 3840x1408, 60 fps, 60 tbr, 60 tbn, 60 tbc Codec AVOption b (set bitrate (in bits/s)) specified for output file #0 (output.avi) has not been used for any stream. The most likely reason is either wrong type (e.g. a video option with no video streams) or that it is a private option of some encoder which was not actually used for any stream. Stream mapping: Stream #0:0 -> #0:0 (png (native) -> ffv1 (native)) Press [q] to stop, [?] for help Output #0, avi, to 'output.avi': Metadata: ISFT : Lavf58.18.102 Stream #0:0: Video: ffv1 (FFV1 / 0x31564646), bgr0, 5891x2160, q=2-31, 200 kb/s, 60 fps, 60 tbn, 60 tbc Metadata: encoder : Lavc58.30.100 ffv1 frame= 600 fps=4.0 q=-0.0 Lsize= 100850kB time=00:00:10.00 bitrate=82616.4kbits/s speed=0.067x video:100830kB audio:0kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: 0.019776%

সংযুক্ত ফাইল আউটপুট একটি লিঙ্ক https://cernbox.cern.ch/index.php/s/ggEtDZmwxqzap3Y

কিভাবে আমি একটি ক্ষতিগ্রস্ত সংকুচিত ভিডিওতে PNG চিত্রগুলির ক্রমটি চালু করব?

কোন সাহায্যের জন্য আপনাকে ধন্যবাদ


প্রথম কমান্ডের ক্ষেত্রে বিশেষতঃ কীভাবে "সুস্পষ্টভাবে ক্ষতিকারক" এর অর্থ কী? যা আপনি চান তা উত্পাদন করা উচিত, অনেক খেলোয়াড় YUV 4: 4: 4 পিক্সেল ফর্ম্যাট হিসাবে পরিচালনা করতে পারে না। আপনি VLC এর কিছুটা সাম্প্রতিক সংস্করণ ব্যবহার করছেন তা নিশ্চিত করুন। আপনার প্রয়োজন যে ভিডিওটি বেশিরভাগ ডিভাইস / প্লেয়ারগুলিতে চালানো উচিত? এই ক্ষেত্রে আপনি "সম্পূর্ণরূপে ক্ষতিকারক" যেতে পারবেন না, কারণ রঙ 4: 2: 0 এ সাবস্পপ্লড করতে হবে।
slhck

@ স্লেক নং, আমার কোনও প্রয়োজনীয়তা নেই যে এটি আমার নিজের ব্যতীত কোনও ডিভাইসে চালানো উচিত। স্পষ্টভাবে ক্ষতিকারক দ্বারা আমি বলতে পারি যে আমি অবিলম্বে দেখতে পারি আউটপুটটি খুব সংকুচিত হয়, প্রথম ছবিতে ছড়িয়ে থাকা লাল গোলাকার স্পট রঙের খুব দৃশ্যমান পুরু ঘনকীয় ব্যান্ডগুলির সিরিজের মতো বের হয়।
Jack

@Slhck আমি সম্ভবত পোস্টযোগ্য ভিডিওর স্ক্রিনশট অন্তর্ভুক্ত করতে প্রধান পোস্টটি সম্পাদনা করেছি। (আমি সম্ভবত এটি upscaling সঙ্গে করতে হবে মনে হতে পারে কিন্তু আমি upscaling ছাড়া চেষ্টা এবং একই ঘনীভূত ব্যান্ড দৃশ্যমান হয়) আমি মোটামুটি আত্মবিশ্বাসী আমি VLC একটি সাম্প্রতিক সংস্করণ ব্যবহার করা উচিত। আমি নিশ্চিত নই যে কোনও নির্দিষ্ট সংস্করণটি আপনি কীভাবে পরীক্ষা করেন, তবে আমি কেবল গতকাল থেকে এটি ডাউনলোড করেছি videolan.org/vlc/download-windows.html (বিশেষ করে উইন্ডোজ মিডিয়া প্লেয়ার এটি লোড করবে না) এবং যখন আমি আপডেটগুলি পরীক্ষা করে দেখি তখন এটি আমাকে বলে যে আমার কাছে VLC মিডিয়া প্লেয়ারের সর্বশেষ সংস্করণ রয়েছে।
Jack

আপনি যে সমস্যার সম্মুখীন হচ্ছে (রঙ ব্যান্ডিং) RGB রঙের স্থান থেকে YUV রূপে রূপান্তরিত হচ্ছে (কঠোরভাবে YCbCr বলছে)। RGB রঙের স্থানকে সমর্থন করে এমন একটি ভিডিও কোডেক ব্যবহার করুন, উদাঃ। ffv1 (এটি ক্ষতিগ্রস্ত, কোন পরামিতি সেট করার প্রয়োজন নেই)
slhck

হাই @ স্লেক, অনেক ধন্যবাদ। দুঃখিত আমি ভিডিও এনকোডিং সম্পর্কে খুব কম জানি, তাই শুধু ডাবল চেক করার জন্য, আপনি কি ffmpeg -framerate 60 -i% d.png -vf scale = -1: 2160 -c: v libx264 -crf 0 -preset veryslow -c পরিবর্তন করতে চান? একটি libmp3lame -b: একটি 320k output.mp4 থেকে ffmpeg -framerate 60 -i% d.png -vf scale = -1: 2160 -c: v ffv1 -c: একটি libmp3lame -b: একটি 320k output.mp4? আবার সাহায্যের জন্য ধন্যবাদ
Jack
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.