From: Michael Niedermayer <michael@niedermayer.cc> To: FFmpeg development discussions and patches <ffmpeg-devel@ffmpeg.org> Subject: Re: [FFmpeg-devel] [PATCH 5/5] avformat: add sdr support Date: Sun, 18 Jun 2023 15:48:31 +0200 Message-ID: <20230618134831.GW1391451@pb2> (raw) In-Reply-To: <NYD_ij3--3-9@lynne.ee> [-- Attachment #1.1: Type: text/plain, Size: 4073 bytes --] On Sun, Jun 18, 2023 at 02:59:37PM +0200, Lynne wrote: > Jun 17, 2023, 20:37 by michael@niedermayer.cc: > > > On Sat, Jun 17, 2023 at 08:08:11PM +0200, Paul B Mahol wrote: > > [...] > > > >> Which library handles compressed stuff? > >> > > > > For digital stuff like DAB/DVB/... > > > > sdrdemux in libavformat will demodulate, do error correction then return AVPacket > > with H.264 / Mpeg2 video or AAC or wahetever > > That then will get passed to libavcodec, same as with any other demuxer. > > > > This code is not written yet. There is just analog AM demodulation. I posted > > this patch as soon as the first usecase worked > > > > usecase was "listen to random AM radio stations in ffplay" :) > > and it can also grab all AM stations in a 10Mhz window and demodulate all > > (that 10mhz is what my hw and usb bandwidth can do max) > > > > I intend to add FM demodulation, because it seems a fun thing to try to do. > > > > someone will need to add DAB/DVB support, I would be happy if someone else > > comes forth to do that. If noone does ill think about if i want to do it > > or not once FM is done and once this is in git. > > > > The initial reaction from some was a bit spicy, so i need to think > > how much fun this is in FFmpeg. > > But one thing i can say for sure, is, if i cannot use this in ffplay > > then it makes no sense for me to put more time into it > > > > We could implement seeking to next/previous stations differently but > > it seems a bit like creating extra work for everyone. > > I mean a new API in sdrdemux then ffplay needs to support that and then > > other players would need to support it and so on. While really the > > seeking on a realtime input has no other use > > > > I like the new functionality, but I too think that libavformat > should just source the data from a device, and that libavfilter > should demodulate. Can you elaborate on how that would work ? Lets take an example, if i press the right arrow with the current code it picks the next station to the right which it has previously probed This may involve reconfiguring the hardware if that station is outside the captured frequency range. if there is no such station it will instruct the hardware to move the vissible frequcny window to the right for 3-4 blocks and then move to the right again and so on until a suitable station is detected. if libavformat gets the data from the hardware and libavfilter demodulates this becomes much more complex because both components need to act together for moving to the next station next problem: with DAB /DVB the output from demodulation is compressed AAC/H.264 and such we would have a AAC output from a libavfilter. That needs to go to libavcodec or a muxer. if everything is in a demuxer as in the patch, that would just work. But from libavfilter theres no clean way to do this currently as libavfilter sits after the decoder and now would need to get data in before the decoders. Also there are a few little issues here and there, like channels starting and stoping transmission (for example air traffic control and pilots do not continously transmit but just when they speak and also depending on distance with aircrafts moving, so channels would increase over time. a demuxer can easily add channels later, iam not sure how well libavfilter can do this ATM > There are applications for which you'd > like to store the raw Mhz/Ghz audio data as well as the > decoded data. That is actually already possible (it had some bugs in the patch submitted so i need to submit a v2) you can just use the "-dumpurl" option to store the raw data prior to any processing. > Additionally, filters can receive commands, while demuxers can't, > so switching stations would be simpler. That can be fixed if needed thx [...] -- Michael GnuPG fingerprint: 9FF2128B147EF6730BADF133611EC787040B0FAB If you think the mosad wants you dead since a long time then you are either wrong or dead since a long time. [-- Attachment #1.2: signature.asc --] [-- Type: application/pgp-signature, Size: 195 bytes --] [-- Attachment #2: Type: text/plain, Size: 251 bytes --] _______________________________________________ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org https://ffmpeg.org/mailman/listinfo/ffmpeg-devel To unsubscribe, visit link above, or email ffmpeg-devel-request@ffmpeg.org with subject "unsubscribe".
next prev parent reply other threads:[~2023-06-18 13:48 UTC|newest] Thread overview: 33+ messages / expand[flat|nested] mbox.gz Atom feed top 2023-06-16 22:20 [FFmpeg-devel] [PATCH 0/5] " Michael Niedermayer 2023-06-16 22:20 ` [FFmpeg-devel] [PATCH 1/5] avutil/tx_template: extend to 2M Michael Niedermayer 2023-07-22 15:40 ` Michael Niedermayer 2023-07-23 17:48 ` Tomas Härdin 2023-07-24 8:59 ` Michael Niedermayer 2023-07-24 11:06 ` Leo Izen 2023-07-24 12:39 ` Thilo Borgmann 2023-07-24 13:04 ` Rémi Denis-Courmont 2023-07-24 15:45 ` Thilo Borgmann 2023-07-24 8:35 ` Andreas Rheinhardt 2023-07-24 8:57 ` Paul B Mahol 2023-07-24 18:46 ` Tomas Härdin 2023-07-25 6:14 ` Paul B Mahol 2023-06-16 22:20 ` [FFmpeg-devel] [PATCH 2/5] avcodec/pcm: allow Changing parameters Michael Niedermayer 2023-06-16 22:20 ` [FFmpeg-devel] [PATCH 3/5] avcodec/kbdwin: Support arbitrary sized windows Michael Niedermayer 2023-06-16 22:20 ` [FFmpeg-devel] [PATCH 4/5] avcodec: Rename ff_kbd_window_init() as it will be needed from outside libavcodec Michael Niedermayer 2023-06-16 22:20 ` [FFmpeg-devel] [PATCH 5/5] avformat: add sdr support Michael Niedermayer 2023-06-17 6:16 ` Paul B Mahol 2023-06-17 8:46 ` Michael Niedermayer 2023-06-17 11:08 ` Paul B Mahol 2023-06-17 12:48 ` Michael Niedermayer 2023-06-17 18:08 ` Paul B Mahol 2023-06-17 18:37 ` Michael Niedermayer 2023-06-17 18:43 ` Michael Niedermayer 2023-06-18 11:46 ` Paul B Mahol 2023-06-18 12:36 ` Kieran Kunhya 2023-06-24 10:22 ` Tomas Härdin 2023-06-18 12:59 ` Lynne 2023-06-18 13:30 ` Hendrik Leppkes 2023-06-18 13:45 ` Lynne 2023-06-18 13:48 ` Michael Niedermayer [this message] 2023-06-17 13:30 ` Leo Izen 2023-06-17 18:10 ` Michael Niedermayer
Reply instructions: You may reply publicly to this message via plain-text email using any one of the following methods: * Save the following mbox file, import it into your mail client, and reply-to-all from there: mbox Avoid top-posting and favor interleaved quoting: https://en.wikipedia.org/wiki/Posting_style#Interleaved_style * Reply using the --to, --cc, and --in-reply-to switches of git-send-email(1): git send-email \ --in-reply-to=20230618134831.GW1391451@pb2 \ --to=michael@niedermayer.cc \ --cc=ffmpeg-devel@ffmpeg.org \ /path/to/YOUR_REPLY https://kernel.org/pub/software/scm/git/docs/git-send-email.html * If your mail client supports setting the In-Reply-To header via mailto: links, try the mailto: link
Git Inbox Mirror of the ffmpeg-devel mailing list - see https://ffmpeg.org/mailman/listinfo/ffmpeg-devel This inbox may be cloned and mirrored by anyone: git clone --mirror https://master.gitmailbox.com/ffmpegdev/0 ffmpegdev/git/0.git # If you have public-inbox 1.1+ installed, you may # initialize and index your mirror using the following commands: public-inbox-init -V2 ffmpegdev ffmpegdev/ https://master.gitmailbox.com/ffmpegdev \ ffmpegdev@gitmailbox.com public-inbox-index ffmpegdev Example config snippet for mirrors. AGPL code for this site: git clone https://public-inbox.org/public-inbox.git