OP25 OP25 WAV Source for P25 VC Decoding

dudegt

KQ4EVS
Premium Subscriber
Joined
Aug 19, 2012
Messages
151
Location
Kennesaw, GA
Setting "module" to blank prevents your JSON from opening sockaudio.py. This is necessary when using Liquidsoap to avoid
conflicts in that the source input() function contained in the LIQ script calls audio.py that in turn imports sockaudio.py.

You still have the option of using local speaker or headphone audio in addition to streaming by enabling the appropriate
"Local Audio Output" operator in your LIQ script.

Keep in mind the "Default" UDP audio port in op25 is 23456 and you'll need to set the "Channel Destination" to this port, or you
can opt to configure audio.py (inside of your LIQ script) to match a different port selected for your "Channel Destination".

JSON:
 "audio": {
        "module": "",
        "instances": [
            {
                "instance_name": "audio0",
                "device_name": "default",
                "udp_port": 23466,
                "audio_gain": 1.0,
                "number_channels": 1
            }
Okay so I want the module to be blank, NOT instance_name

cause I was running it like this

Code:
"audio": {
        "module": "sockaudio.py",
        "instances": [
            {
                "instance_name": "",
                "device_name": "default",
                "udp_port": 22388,
                "audio_gain": 1.0,
                "number_channels": 1
            }
        ]
    }
 

wgbecks

Active Member
Joined
Jan 17, 2005
Messages
931
Location
NE Wisconsin
Okay so I want the module to be blank, NOT instance_name

cause I was running it like this

Code:
"audio": {
        "module": "sockaudio.py",
        "instances": [
            {
                "instance_name": "",
                "device_name": "default",
                "udp_port": 22388,
                "audio_gain": 1.0,
                "number_channels": 1
            }
        ]
    }
That's correct. You have to blank the "module" itself.
 

wgbecks

Active Member
Joined
Jan 17, 2005
Messages
931
Location
NE Wisconsin
Multiple instances of rx.py or multiple instances of muti_rx.py? You do need to assign unique file names when running multiple instances and different or unique labels for multiple receivers, devices, and etc. within you JSON files used to run mult_rx.py.

It would be helpful to your configs with any passwords redacted.
 

boatbod

Member
Joined
Mar 3, 2007
Messages
3,359
Location
Talbot Co, MD
Blanking the instance name is sufficient to disable op25 from grabbing the udp port. Blanking the module name works too, but totally disabled it for all instances.
 

dudegt

KQ4EVS
Premium Subscriber
Joined
Aug 19, 2012
Messages
151
Location
Kennesaw, GA
Multiple instances of rx.py or multiple instances of muti_rx.py? You do need to assign unique file names when running multiple instances and different or unique labels for multiple receivers, devices, and etc. within you JSON files used to run mult_rx.py.

It would be helpful to your configs with any passwords redacted.
Multi_rx
 

boatbod

Member
Joined
Mar 3, 2007
Messages
3,359
Location
Talbot Co, MD
Why would you need multiple instances of multi_rx.py? The whole point of that architecture is that you can run one manager and share (or not share) trunking data between the various channels/streams as needed. If you're going to run multiple instances of multi_rx.py you might just as well run multiple instances of rx.py with a whole lot less configuration setup.
 

dudegt

KQ4EVS
Premium Subscriber
Joined
Aug 19, 2012
Messages
151
Location
Kennesaw, GA
Why would you need multiple instances of multi_rx.py? The whole point of that architecture is that you can run one manager and share (or not share) trunking data between the various channels/streams as needed. If you're going to run multiple instances of multi_rx.py you might just as well run multiple instances of rx.py with a whole lot less configuration setup.
would I still be able to use a WAV file as an input for rx.py?
 
Top