Ffmpeg के साथ केवल डेस्कटॉप ऑडियो कैप्चर करना


13

मैं जानना चाहता हूं कि मैं केवल डेस्कटॉप ऑडियो कैसे पकड़ सकता हूं (इसका मतलब कोई माइक नहीं है!)।

मैं इस कमांड का उपयोग कर रहा हूं:

$ ffmpeg -f x11grab -s 1360x768 -r 30 -i :0.0 -preset ultrafast ~/Videos/out.mp4
ffmpeg version 2.4.3-1ubuntu1~trusty6 Copyright (c) 2000-2014 the FFmpeg developers
  built on Nov 22 2014 17:07:19 with gcc 4.8 (Ubuntu 4.8.2-19ubuntu1)
  configuration: --prefix=/usr --extra-version='1ubuntu1~trusty6' --build-suffix=-ffmpeg --toolchain=hardened --extra-cflags= --extra-cxxflags= --libdir=/usr/lib/x86_64-linux-gnu --shlibdir=/usr/lib/x86_64-linux-gnu --incdir=/usr/include/x86_64-linux-gnu --enable-gpl --enable-shared --disable-stripping --enable-avresample --enable-avisynth --enable-fontconfig --enable-gnutls --enable-ladspa --enable-libass --enable-libbluray --enable-libbs2b --enable-libcaca --enable-libcdio --enable-libflite --enable-libfreetype --enable-libfribidi --enable-libgme --enable-libgsm --enable-libmodplug --enable-libmp3lame --enable-libopenjpeg --enable-libopus --enable-libpulse --enable-librtmp --enable-libschroedinger --enable-libshine --enable-libspeex --enable-libssh --enable-libtheora --enable-libtwolame --enable-libvorbis --enable-libvpx --enable-libwavpack --enable-libwebp --enable-opengl --enable-x11grab --enable-libxvid --enable-libx265 --enable-libdc1394 --enable-libiec61883 --enable-libzvbi --enable-libzmq --enable-frei0r --enable-libx264 --enable-libsoxr --enable-openal --enable-libopencv
  libavutil      54.  7.100 / 54.  7.100
  libavcodec     56.  1.100 / 56.  1.100
  libavformat    56.  4.101 / 56.  4.101
  libavdevice    56.  0.100 / 56.  0.100
  libavfilter     5.  1.100 /  5.  1.100
  libavresample   2.  1.  0 /  2.  1.  0
  libswscale      3.  0.100 /  3.  0.100
  libswresample   1.  1.100 /  1.  1.100
  libpostproc    53.  0.100 / 53.  0.100
[x11grab @ 0x16051e0] device: :0.0 -> display: :0.0 x: 0 y: 0 width: 1360 height: 768
[x11grab @ 0x16051e0] shared memory extension found
Input #0, x11grab, from ':0.0':
  Duration: N/A, start: 1444234613.435347, bitrate: 1002700 kb/s
    Stream #0:0: Video: rawvideo (BGR[0] / 0x524742), bgr0, 1360x768, 1002700 kb/s, 30 tbr, 1000k tbn, 30 tbc
File '/home/elderzz/Videos/out.mp4' already exists. Overwrite ? [y/N] ^A

मैं दूसरे ऐप के साथ माइक कैप्चर कर सकता हूं, लेकिन मुझे माइक ऑडियो एक अलग फाइल में होना चाहिए। मैं केवल डेस्कटॉप ऑडियो कैप्चर करना चाहता हूं!


@LordNeckbeard मैंने pastebin पर कंसोल आउटपुट रखा: pastebin.com/9GSZ1eTr
Elderzz

जवाबों:


12

pavucontrol

यहाँ छवि विवरण दर्ज करें

  1. स्थापित करें pavucontrol
  2. के साथ रिकॉर्डिंग शुरू करें ffmpeg(नीचे उदाहरण उदाहरण देखें)।
  3. शुरू करो pavucontrol
  4. रिकॉर्डिंग टैब पर जाएं और आपको वहां सूचीबद्ध ffmpegया Lavf56.15.102(या समान) मिलेगा ।
  5. आंतरिक ऑडियो एनालॉग स्टीरियो से मॉनिटर करने के लिए आंतरिक ऑडियो एनालॉग स्टीरियो से ऑडियो कैप्चर बदलें ।

अब इसे माइक्रोफ़ोन के बजाय सिस्टम और एप्लिकेशन ऑडियो रिकॉर्ड करना चाहिए।

यह सेटिंग याद रखी जाएगी। अगली बार जब आप के साथ कब्जा करना चाहते हैं ffmpeg, तो यह स्वचालित रूप से सिस्टम ऑडियो रिकॉर्ड करना शुरू कर देगा। यदि आप इसे वापस करना चाहते हैं, तो pavucontrolमाइक्रोफ़ोन इनपुट पर वापस बदलने के लिए फिर से उपयोग करें।

ऊपर दिया गया पाठ HOWTO से अनुकूलित किया गया था : लिनक्स पर स्क्रेनेस्टिंग

उदाहरण ffmpeg कमांड

सिर्फ़ ध्वनि

ffmpeg -f pulse -i default output.wav

स्क्रीन कैप्चर के साथ

ffmpeg -f x11grab -video_size 1360x768 -framerate 30 -i :0.0 -f pulse -i default -preset ultrafast -crf 18 -pix_fmt yuv420p out.mkv

क्या यह रिकॉर्डिंग दोषरहित होगी?
अनमोल सिंह जग्गी

@AnmolSinghJaggi नंबर हानिप्रद -crf 18है, और RGB से YUV 4: 2: 0 कलरस्पेस रूपांतरण के कारण भी नुकसान हुआ है।
ललगन

नहीं, मैं केवल भाग के ऑडियो के बारे में बात कर रहा था।
अनमोल सिंह जग्गी

1
@AnmolSinghJaggi हाँ, ऑडियो दोषरहित होना चाहिए।
ललगन

2
यदि आप स्रोत को मैन्युअल रूप से स्विच नहीं करना चाहते हैं, तो आप pactl list sorucesमॉनिटर स्रोत के आंतरिक नाम का पता लगाने के लिए कमांड का उपयोग कर सकते हैं और फिर -f pulse -i NAMEइसके बजाय का उपयोग कर सकते हैं default, जैसे -f pulse -i alsa_output.pci-0000_00_1f.3.analog-stereo.monitorसटीक नाम सिस्टम से सिस्टम में भिन्न होगा।
रेगनेर

1

आप एमपी 3 को संकुचित कर सकते हैं (अपनी पसंद की थोड़ी दर के साथ) जैसे:

ffmpeg -f alsa -ac 2 -i default -acodec libmp3lame -ab 320k ouput.mp3
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.