Git Inbox Mirror of the ffmpeg-devel mailing list - see https://ffmpeg.org/mailman/listinfo/ffmpeg-devel
 help / color / mirror / Atom feed
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: Sat, 17 Jun 2023 14:48:42 +0200
Message-ID: <20230617124842.GN1391451@pb2> (raw)
In-Reply-To: <CAPYw7P4hLsyZ9pY7oHvh00ZVLL5dkfvnD40qv4D0-P6s427W_A@mail.gmail.com>


[-- Attachment #1.1: Type: text/plain, Size: 2509 bytes --]

Hi

On Sat, Jun 17, 2023 at 01:08:45PM +0200, Paul B Mahol wrote:
[...]

> But the biggest issue is your claim of demultiplexing, which your code does
> not do, its done by called library.

libsoapy is used just as a thin and common interface to the SDR hardware

If you comment all uses of libsoapy out and use a file, it will still work.
To be clear, you can dump a raw file with the "-dumpurl" option and
lets say dump the radio spectrum from 6mhz to 16mhz (thats 40mbyte per second)
and sdrfile with no libsoapy (if you comment that out) will play all AM radio
stations from that range from just that file. That might be 10 or many more
from the single input stream.
Neither the SDR hardware nor libsoapy have split the radio stations in that
40mbyte/sec stream. Its basically just raw data from the hardware analog digital
converter(s).

The way SDR HW works is very simple. It has an antena an amplifer and at that
point it might have 1khz to 6ghz of spectrum.
that is then run through a mixer or 2 to shift the part of the spectrum one
is interested in, into the lower frequencies (where its easier to work with)
and that is then run through a low pass filter and 1 or 2 analog digital
converters and their output goes over your favorte USB cable into sdrdemux

that time domain signal that sdrdemux/sdrfile then gets is then analyzed in
sdrdemux to find all radio stations and then depending on how its configured
it will demodulate one or all.


> 
> The correct place for this code is in libavfilter. Where user could select

Besides that sematically its the wrong place (as i said in my previous reply)
libavfilter is technically wrong too

sdrdemux for DAB will return a AVStream with digital compressed AAC
sdrdemux for DVB will return a AVStream with digital compressed H.264 or MPEG2 video

AVFilter has no support for digital compressed output.

In fact really what sdrdemux will output is quite similar to what a matroska demuxer
would, its a bunch of compressed and uncompressed streams, video and audio.
That does not fit in avfilter.
And you dont want it hacked into libavfilter either.
One would want to use the AAC and h.264 streams losslessly, maybe store them in
a matroska file but avfilter can only handle decompressed audio and video.

Thank you for your comments!

[...]

-- 
Michael     GnuPG fingerprint: 9FF2128B147EF6730BADF133611EC787040B0FAB

Those who are best at talking, realize last or never when they are wrong.

[-- 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".

  reply	other threads:[~2023-06-17 12: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 [this message]
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
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=20230617124842.GN1391451@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