OP25 OP25 WAV Source for P25 VC Decoding

dudegt

KQ4EVS
Premium Subscriber
Joined
Aug 19, 2012
Messages
178
Reaction score
45
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
1,125
Reaction score
402
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.
 

dudegt

KQ4EVS
Premium Subscriber
Joined
Aug 19, 2012
Messages
178
Reaction score
45
Location
Kennesaw, GA
That's correct. You have to blank the "module" itself.
If I have multiple instances running of OP25 would it be recommended to change audio0 and sdr0 per instance that is open to prevent conflicts?
 

wgbecks

Active Member
Joined
Jan 17, 2005
Messages
1,125
Reaction score
402
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,584
Reaction score
991
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
178
Reaction score
45
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,584
Reaction score
991
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
178
Reaction score
45
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